Очень хочу гидрологически связать полигоны

Вопросы по свободной ГИС QGIS. Сообщения об ошибках, предложения по улучшению, локализация.
Александр Мурый
Гуру
Сообщения: 5173
Зарегистрирован: 26 сен 2009, 16:26
Репутация: 793
Ваше звание: званий не имею
Откуда: Москва

Re: Очень хочу гидрологически связать полигоны

Сообщение Александр Мурый » 10 июл 2018, 18:05

Jasen писал(а):
10 июл 2018, 11:19
Так, Александр, какие картинки, если неизвестно, как их делать ) Задачу я, вроде бы, описал исчерпывающе.
Это был вообще совет на будущее лично из моего скромного опыта. Можно не полениться сделать скриншот из ГИС, где отображены ваши исходные данные, и приложить к теме. А также схематически отобразить желаемый результат (хотя бы на листике от руки). Не все могут быстро визуализировать в уме, картинки всяко проще смотреть.
Редактор материалов, модератор форума

Александр Мурый
Гуру
Сообщения: 5173
Зарегистрирован: 26 сен 2009, 16:26
Репутация: 793
Ваше звание: званий не имею
Откуда: Москва

Re: Очень хочу гидрологически связать полигоны

Сообщение Александр Мурый » 10 июл 2018, 18:21

Похоже на желаемый результат?

Я загнал ЦМР в GRASS, гидрологически откорректировал (r.hydrodem), построил речную сеть и бассейны (r.stream.extract + r.stream.basins), потом получил порядки водотоков с использованием всех этих данных - модуль <r.stream.order>. Вот он-то как раз и выдаёт (как оказалось) ID следующего по порядку водотока. ID водотока в данном случае равен ID субводосбора, осталось перенести это в атриб.таблицу субводосборов.

P.S. На мой взгляд, GRASS куда лучше обрабатывает ЦМР и выдаёт более реалистичные результаты (там, правда, есть некоторые хитрости, о них напишу потом).
Вложения
Selection_080.png
Selection_080.png (392.89 КБ) 5427 просмотров
Редактор материалов, модератор форума

Аватара пользователя
Jasen
Активный участник
Сообщения: 100
Зарегистрирован: 27 янв 2006, 18:33
Репутация: 4
Ваше звание: Специалист
Откуда: Москва
Контактная информация:

Re: Очень хочу гидрологически связать полигоны

Сообщение Jasen » 11 июл 2018, 10:49

Александр, то есть, вы советуете переобработать сырую ЦМР в GRASS?
Да, вот этого-то я и хотел. И как раз удачно, что ID водотока соответствует ID водосбора, потому что в остальных программах это не так, есть только порядок по Хортону или Стралеру, я пытался придумать, как связать порядок с нижележащими водосборами, но безуспешно.
Теперь мне осталось только проверить, работают ли эти модули на Винде :) Если нет, получается, придется создавать машину на Юнихе.
Что написал - то написал!

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

Re: Очень хочу гидрологически связать полигоны

Сообщение gamm » 11 июл 2018, 10:54

Александр Мурый писал(а):
10 июл 2018, 18:21
там, правда, есть некоторые хитрости, о них напишу потом
а можно в виде текста оформить весь процесс, с картинками и приложенными данными, проектами, и т.д. - было бы шикарно.

Аватара пользователя
Jasen
Активный участник
Сообщения: 100
Зарегистрирован: 27 янв 2006, 18:33
Репутация: 4
Ваше звание: Специалист
Откуда: Москва
Контактная информация:

Re: Очень хочу гидрологически связать полигоны

Сообщение Jasen » 11 июл 2018, 10:54

Александр Мурый писал(а):
10 июл 2018, 18:05
А также схематически отобразить желаемый результат (хотя бы на листике от руки)
Это вообще всегда пожалуйста! Если помогает - будем изображать на листике. Вот сейчас как раз и займусь этим в другой теме про регриддинг )
Что написал - то написал!

Аватара пользователя
Jasen
Активный участник
Сообщения: 100
Зарегистрирован: 27 янв 2006, 18:33
Репутация: 4
Ваше звание: Специалист
Откуда: Москва
Контактная информация:

Re: Очень хочу гидрологически связать полигоны

Сообщение Jasen » 11 июл 2018, 11:32

gamm писал(а):
11 июл 2018, 10:54
а можно в виде текста оформить весь процесс, с картинками и приложенными данными, проектами, и т.д. - было бы шикарно
Процесс я и сам собираюсь уже давно оформить. В интернете не хватает большой статьи о гидроподготовке рельфа и построении водосборов на русском языке. Предлагаю совместно написать и сделать раздел сайта по этой теме. У нас уже есть процесс в SAGA и GRASS.

Только давайте вынесем вердикт: на Windows модули r.stream.* работают все-таки или нет? И если нет, как сделать, чтобы они заработали.
Что написал - то написал!

Александр Мурый
Гуру
Сообщения: 5173
Зарегистрирован: 26 сен 2009, 16:26
Репутация: 793
Ваше звание: званий не имею
Откуда: Москва

Re: Очень хочу гидрологически связать полигоны

Сообщение Александр Мурый » 11 июл 2018, 12:09

gamm писал(а):
11 июл 2018, 10:54
а можно в виде текста оформить весь процесс, с картинками и приложенными данными, проектами, и т.д. - было бы шикарно.
Было бы хорошо, но обещать не буду))
Jasen писал(а):
11 июл 2018, 11:32
Предлагаю совместно написать и сделать раздел сайта по этой теме. У нас уже есть процесс в SAGA и GRASS.
Идея хорошая, осталась самая малость - заняться и сделать)) Обсудим ещё потом.
Jasen писал(а):
11 июл 2018, 11:32
Только давайте вынесем вердикт: на Windows модули r.stream.* работают все-таки или нет? И если нет, как сделать, чтобы они заработали.
<r.stream.extract>,<r.stream.basins> и <r.stream.order> работают. Они написаны на Си и ставятся через <g.extension> под Windows в виде скомпилированных exe-файлов. Под Линуксом запускается компиляция при установке.
Редактор материалов, модератор форума

Аватара пользователя
Jasen
Активный участник
Сообщения: 100
Зарегистрирован: 27 янв 2006, 18:33
Репутация: 4
Ваше звание: Специалист
Откуда: Москва
Контактная информация:

Re: Очень хочу гидрологически связать полигоны

Сообщение Jasen » 11 июл 2018, 13:11

Попробовал для начала r.hydrodem из исходного рельефа, скачанного с сайта dwtkns.com/srtm30m/:

Код: Выделить всё

r.hydrodem -a input=N55E035 output=filled_dem                                   
Load elevation map
ERROR: No non-NULL cells loaded from input map
Что написал - то написал!

Александр Мурый
Гуру
Сообщения: 5173
Зарегистрирован: 26 сен 2009, 16:26
Репутация: 793
Ваше звание: званий не имею
Откуда: Москва

Re: Очень хочу гидрологически связать полигоны

Сообщение Александр Мурый » 11 июл 2018, 14:49

А

Код: Выделить всё

g.region rast=N55E035
сначала было сделано?
Редактор материалов, модератор форума

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

Re: Очень хочу гидрологически связать полигоны

Сообщение gamm » 11 июл 2018, 16:48

Jasen писал(а):
11 июл 2018, 11:32
У нас уже есть процесс в SAGA и GRASS.
из нашего опыта наилучшие результаты при выделении бассейнов дает TAS (ныне WhiteBox). Все остальное там тоже вроде есть, но я его в основном использовал для построения бассейнов и вычисления разной морфометрии.

Аватара пользователя
Jasen
Активный участник
Сообщения: 100
Зарегистрирован: 27 янв 2006, 18:33
Репутация: 4
Ваше звание: Специалист
Откуда: Москва
Контактная информация:

Re: Очень хочу гидрологически связать полигоны

Сообщение Jasen » 12 июл 2018, 12:29

Пробую WHITEBOX.

Гидрологические Инструменты -> Предварительная обработка ЦМР -> Fill Depressions (Planchon and Darboux)
Гидрологические Инструменты -> Указатели потока -> FD8 Flow Pointer: это Flow Direction
Гидрологические Инструменты -> Аккумуляция стока -> FD8 Flow Accumulation
      Exponent Parameter set to 1.1
      Threshhold in cells set to 1000000
      Output Type: number of upslope grid cells
Гидрологические Инструменты -> Анализ Сети Потока -> Extract Streams
      Channelization Threshhold set to 5000
      Background Value set to 0 (transparent background)
            Результат - водотоки рисуются с утолщениями
Гидрологические Инструменты -> Инструменты для Водосборного Бассейна -> Sub-basins
      Streams Raster and Flow Pointer as INPUT

Все равно, мне это больше нравится, чем ситуация, когда рисуются параллельно идущие водотоки в плоских долинах.
Вопрос первый: какие-то параметры, может быть, стоит выставить по-другому?
Вопрос второй: а может быть провести основные водотоки вручную по растру и сделать Burn Streams?
Вопрос третий: а какой инструмент добавляет озёра для верного построения речной сети?
Вложения
whitebox.PNG
whitebox.PNG (110.67 КБ) 5321 просмотр
Что написал - то написал!

Аватара пользователя
Jasen
Активный участник
Сообщения: 100
Зарегистрирован: 27 янв 2006, 18:33
Репутация: 4
Ваше звание: Специалист
Откуда: Москва
Контактная информация:

Re: Очень хочу гидрологически связать полигоны

Сообщение Jasen » 12 июл 2018, 13:00

Александр Мурый писал(а):
11 июл 2018, 14:49
сначала было сделано?
Пытаюсь сейчас.

https://grasswiki.osgeo.org/wiki/WinGRA ... oj.dll..22 тут говорят переименовать (?)
Вложения
grass1.PNG
grass1.PNG (22.74 КБ) 5316 просмотров
Что написал - то написал!

Александр Мурый
Гуру
Сообщения: 5173
Зарегистрирован: 26 сен 2009, 16:26
Репутация: 793
Ваше звание: званий не имею
Откуда: Москва

Re: Очень хочу гидрологически связать полигоны

Сообщение Александр Мурый » 12 июл 2018, 13:08

GRASS вообще запущена? Я что-то не вижу. В граф. интерфейсе модули запускаются нормально?
Редактор материалов, модератор форума

Аватара пользователя
Jasen
Активный участник
Сообщения: 100
Зарегистрирован: 27 янв 2006, 18:33
Репутация: 4
Ваше звание: Специалист
Откуда: Москва
Контактная информация:

Re: Очень хочу гидрологически связать полигоны

Сообщение Jasen » 12 июл 2018, 13:28

Александр Мурый писал(а):
12 июл 2018, 13:08
GRASS вообще запущена?
Да, извините, не в том окне команды запускал.
Теперь так. Аккумуляцию отдельно не считал. Там все Input-растры надо подготовить, stream.extract сам недостающие не считает?
Вложения
grass2.PNG
grass2.PNG (16.37 КБ) 5310 просмотров
Что написал - то написал!

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

Re: Очень хочу гидрологически связать полигоны

Сообщение gamm » 12 июл 2018, 13:28

Jasen писал(а):
12 июл 2018, 12:29
Пробую WHITEBOX.
рельеф нужно предварительно обработать - "прожечь" артефакты, это breaching. Никаких fill depression делать не надо без острой необходимости

параметры по умолчанию работают удовлетворительно, но стоит поэкспериментировать.

Ответить

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

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

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