Экспорт geotiff в матрицы ascii/grd

Вопросы по свободной ГИС QGIS. Сообщения об ошибках, предложения по улучшению, локализация.
Ответить
speleorad
Новоприбывший
Сообщения: 14
Зарегистрирован: 17 авг 2021, 09:53
Репутация: 4
Ваше звание: Hec-Ras
Откуда: Москва
Контактная информация:

Экспорт geotiff в матрицы ascii/grd

Сообщение speleorad » 27 фев 2023, 22:23

Доброго времени суток. Подскажите страждущему: есть ли штатные средства, как из слоя c geotiff вытащить матрицы высот в форматах ascii или серферовский GRD (в качестве примера, я приложил два файла с такой матрицей, где все ячейки имеют одинаковую отметку 162, матрица 60*60 с размером ячейки 5м.)
Пробовал Raster/conversion/translate.... результат неудовлетворительный.

В качестве исходного слоя специально подготовил геотифф с таким-же количеством столбцов, строк и размером ячеек:
Пример.jpg
Пример.jpg (628.92 КБ) 1888 просмотров
Но все варианты экспорта в файлы со знакомыми расширениями дают какую-то дичь. (даже с учетом указания EXTENT). Нашел видео с написанием кода на питоне, пока выдохнул в надежде обойтись штатными плагинами/инструментами.
162_matrix_from_pm_grd.txt
(154.69 КБ) 116 скачиваний
это GRD аля серфер (насколько я понимаю). X Y условные, а не абсолютные координаты (судя по шагу в 5м).
162_matrix_from_pm.txt
(49.36 КБ) 101 скачивание
а это ascii

к сожалению исходный геотиф не прикрепляет, наверное сильно большой (

Константин Силкин
Завсегдатай
Сообщения: 420
Зарегистрирован: 21 мар 2012, 07:37
Репутация: 67
Откуда: Воронеж

Re: Экспорт geotiff в матрицы ascii/grd

Сообщение Константин Силкин » 27 фев 2023, 22:33

Здравствуйте! Загрузите исходный файл в облачное хранилище и дайте ссылку, пожалуйста

speleorad
Новоприбывший
Сообщения: 14
Зарегистрирован: 17 авг 2021, 09:53
Репутация: 4
Ваше звание: Hec-Ras
Откуда: Москва
Контактная информация:

Re: Экспорт geotiff в матрицы ascii/grd

Сообщение speleorad » 27 фев 2023, 22:44

Константин Силкин писал(а):
27 фев 2023, 22:33
Здравствуйте! Загрузите исходный файл в облачное хранилище и дайте ссылку, пожалуйста
О! Это легко :) https://disk.yandex.ru/i/T1X3ZV_aJTC57g

gamm
Гуру
Сообщения: 4056
Зарегистрирован: 15 окт 2010, 08:33
Репутация: 1054
Ваше звание: программист
Откуда: Казань

Re: Экспорт geotiff в матрицы ascii/grd

Сообщение gamm » 28 фев 2023, 07:37

непонятно, в чем проблема - обе версии Surfer в QGIS на правой кнопке мышки на слое, Export/Save as ...
surfer.png
surfer.png (46.32 КБ) 1788 просмотров

Константин Силкин
Завсегдатай
Сообщения: 420
Зарегистрирован: 21 мар 2012, 07:37
Репутация: 67
Откуда: Воронеж

Re: Экспорт geotiff в матрицы ascii/grd

Сообщение Константин Силкин » 28 фев 2023, 09:25

Прошу прощения, что не отвечаю на ваш вопрос точно. Я не силён в экспортных операциях в QGIS. Они мне и не только в связи с вашей проблемой часто доставляли проблемы тоже. Так что пошёл туда, где проблем всегда на порядок меньше – в GlobalMapper. Результат получил за пару минут. Перформатировал ваш GeoTIFF в Surfer Grid v7
Как вы понимаете, это карта из Surfer. Там у вас, правда, большая часть исходного GeoTIFF, а как следствие, и сёрферовской сетки заполнена значениями NoData, но на маленьком участке карта построилась нормально. Уже в Srtfer изменил проекцию с прямоугольной WSG UTM N37 на географическую WGS84.
Кстати, Surfer строит по вашим GeoTIFF свои карты без проблем. Попробовал, работает. Так что, если ваша задача импортировать данные в Surfer, то зря вы этот огород с QGIS городили.
Вложения
2023-02-28_09-17-33.png
2023-02-28_09-17-33.png (25.82 КБ) 1778 просмотров

speleorad
Новоприбывший
Сообщения: 14
Зарегистрирован: 17 авг 2021, 09:53
Репутация: 4
Ваше звание: Hec-Ras
Откуда: Москва
Контактная информация:

Re: Экспорт geotiff в матрицы ascii/grd

Сообщение speleorad » 28 фев 2023, 11:47

gamm писал(а):
28 фев 2023, 07:37
непонятно, в чем проблема - обе версии Surfer в QGIS на правой кнопке мышки на слое, Export/Save as ...
вот в том и дело, что прямой экспорт не подошел. Причем задавая плановые границы модели (север,юг, запад, восток) ни структура файла, ни значения, которые получаются, не выходят.

PS. Мне эта матрица нужна для экспорта высотных отметок в расчетную сетку. Processing Mofdlow 8. Программа старая, и есть вот такая беда с ней, кушает вот такой формат:
162_matrix_from_pm.txt
(49.36 КБ) 110 скачиваний
первая строка это размер матрицы 60*60.
Потом ячейка с отметкой 188 - это верхний левый угол (указал на принскрине). Ну заобно и форматы файлов.
изображение_2023-02-28_114722246.png
изображение_2023-02-28_114722246.png (473.88 КБ) 1731 просмотр
Константин Силкин писал(а):
28 фев 2023, 09:25
Кстати, Surfer строит по вашим GeoTIFF свои карты без проблем. Попробовал, работает. Так что, если ваша задача импортировать данные в Surfer, то зря вы этот огород с QGIS городили.
Задача на самом деле максимально просто поженить tin поверхности из цивил 3д в старый расчетчик :lol:

gamm
Гуру
Сообщения: 4056
Зарегистрирован: 15 окт 2010, 08:33
Репутация: 1054
Ваше звание: программист
Откуда: Казань

Re: Экспорт geotiff в матрицы ascii/grd

Сообщение gamm » 28 фев 2023, 14:47

speleorad писал(а):
28 фев 2023, 11:47
вот в том и дело, что прямой экспорт не подошел.
что такое "не подошел"? текстовый формат нкжен? так бы и сказали.
тогда вам сюда тыц
да, на всяки случай - учтите, что трансляцию выполняет GDAL, поэтому никаких русских букв и прочего мусора в путях и именах файлов быть не должно.

P.S. Мы для Modflow растры грузили в R, а потом писали наружу в нужном формате, без проблем.

speleorad
Новоприбывший
Сообщения: 14
Зарегистрирован: 17 авг 2021, 09:53
Репутация: 4
Ваше звание: Hec-Ras
Откуда: Москва
Контактная информация:

Re: Экспорт geotiff в матрицы ascii/grd

Сообщение speleorad » 28 фев 2023, 16:06

gamm писал(а):
28 фев 2023, 14:47
что такое "не подошел"? текстовый формат нкжен? так бы и сказали.
тогда вам сюда тыц
да, на всяки случай - учтите, что трансляцию выполняет GDAL, поэтому никаких русских букв и прочего мусора в путях и именах файлов быть не должно.
:D :D
Воооо!!! В получившемся файле вижу знакомые цифры высотных отметок! :D

Но вопросы продолжаются: в начале файла транскрайбер мне написал

ncols 353
nrows 251
xllcorner 388807.764199570578
yllcorner 6172101.905794274993
cellsize 5.000000000000
NODATA_value 3.4028234663852885981e+38

В моем исходном геотифе пикселей 60 строк*60 колонок. вот как бы мне перед экспортом указать только на интересующий меня сегмент 60*60 с начальными координатами угла X -389230 Y-6172570 чтобы избежать ячеек No data?
gamm писал(а):
28 фев 2023, 14:47
P.S. Мы для Modflow растры грузили в R, а потом писали наружу в нужном формате, без проблем.
вот я так далек от этой задачи что даже не понял о чем речь. :D Я действительно раньше делал растровую подложку и долгими вечерами вырисовывал по этой подложке мышкой матрицы TOP Elevation и Hydraulic head. Очень надоело, учитывая, что "гидрологический" Hec-Ras вообще проглатывает геотифф и не морщится, захотелось комфорта и в фильтрационных моделях.

gamm
Гуру
Сообщения: 4056
Зарегистрирован: 15 окт 2010, 08:33
Репутация: 1054
Ваше звание: программист
Откуда: Казань

Re: Экспорт geotiff в матрицы ascii/grd

Сообщение gamm » 28 фев 2023, 17:01

speleorad писал(а):
28 фев 2023, 16:06
Но вопросы продолжаются: в начале файла транскрайбер мне написал
ncols 353
nrows 251
xllcorner 388807.764199570578
yllcorner 6172101.905794274993
cellsize 5.000000000000
NODATA_value 3.4028234663852885981e+38

В моем исходном геотифе пикселей 60 строк*60 колонок.
так не бывает, вы, похоже, как-то умудрились вставить свою сетку в растр большего размера. Об этом же писал выше уважаемый Константин Силкин , он и картинку нарисовал. Ищите, где накосячили :mrgreen:
Например, задали extent, и программа дополнила сетку до нужного размера чем-то по умолчанию, видимо NoData

gamm
Гуру
Сообщения: 4056
Зарегистрирован: 15 окт 2010, 08:33
Репутация: 1054
Ваше звание: программист
Откуда: Казань

Re: Экспорт geotiff в матрицы ascii/grd

Сообщение gamm » 28 фев 2023, 18:54

speleorad писал(а):
28 фев 2023, 16:06
Я действительно раньше делал растровую подложку и долгими вечерами вырисовывал по этой подложке мышкой матрицы TOP Elevation и Hydraulic head
Лучше конвертер написать. У нас много всякого было, типа сгущения сетки, встраивания речек, и поворота сетки вдоль реки, деталей уже не помню. Давно это было ...

speleorad
Новоприбывший
Сообщения: 14
Зарегистрирован: 17 авг 2021, 09:53
Репутация: 4
Ваше звание: Hec-Ras
Откуда: Москва
Контактная информация:

Re: Экспорт geotiff в матрицы ascii/grd

Сообщение speleorad » 01 мар 2023, 14:59

Мужуки, всем спасибо, помогли! Задачу решил. Кратко опишу ниже, если в будущем кому понадобится :D

Перенос данных рельефа из civil 3d в матрицу Processing modflow 8:
а) создаем в civil 3d поверхность ровно по границам будущей расчетной сетки в PM. Если бОльшую поверхность ограничить внешней границей, то появляются ячейки no_data (о чем выше было и написано). Поэтому потребуется извлечь ребра из нужного участка и построить tin с нуля по этим ребрам.
б) Экспортируем tin поверхность в geotiff, настраиваем размер ячейки, аналогичный расчетной сетке в PM
в) открываем полученный geotiff в qgis и при помощи Raster/conversion/translate конвертируем в ASC
г) полученный ASC браузер матриц в PM еще не сожрет, надо:
- заменить разделитель ячеек "один пробел" на "одиннадцать пробелов" (если высотные отметки трехзначные, если высотные отметки четырехзначные, то десять пробелов и тд.)
- удалить "шапку таблицы, и вместо нее первой строкой вставить "№............№.пробел" где N - это число строк и столбцов в нашей матрице.
PM.jpg
PM.jpg (546.22 КБ) 1526 просмотров

Ответить

Вернуться в «QGIS»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 3 гостя