GIS-LAB

Географические информационные системы и дистанционное зондирование


Форумы GIS-Lab.info

Геоинформационные системы (ГИС) и Дистанционное зондирование Земли


GRASS Graphical Modeler

Обсуждение материалов сайта: вопросы, замечания, предложения

GRASS Graphical Modeler

Сообщение rhot » 24 июл 2012, 17:06

Прошу заценить потенциальную статью
http://wiki.gis-lab.info/w/GRASS_Graphical_Modeler

Статья рассчитана на тех, кто не знаком с GRASS Graphical Modeler, но умеет пользоваться справкой.
Конструктивная критика принимается :)
  • 0

___________(¯`·.¸(¯`·.¸ Scientia potentia est _/ {SILVA}:::{FOSS}:::{GIS} \_ Знание сила ¸.·´¯)¸.·´¯)___________
Аватара пользователя
rhot
ВольныйИсследователь
 
Зарегистрирован: 25 янв 2011
Откуда: Архангельск (на карте)
 
Сообщения: 1513
Репутация: 109
Статьи: 1

Re: GRASS Graphical Modeler

Сообщение KolesovDmitry » 24 июл 2012, 17:41

Спасибо, интересно было прочитать. Какие места, на мой взгляд, стоит подправить:

* Во введении сказать, что вы описываете Graphical Modeler на конкретной задаче.
* В разделе Решение стоит дать список последовательности действий, которые описываются ниже, и дать к каждому шагу краткую аннотацию -- для чего это шаг нужен, каковы его цели.
* (это я попросту не сумел для себя уяснить -- наверное, я не один такой буду) Не понятно, как получается цикл по комбинациям каналов (321, 453, 543, 742, 745, 754) -- он создается автоматически, или же приходится каждую команду руками добавлять?

А в целом -- полезная статья, спасибо!
  • 0

KolesovDmitry
Гуру
 
Зарегистрирован: 22 авг 2007
Откуда: Казань (на карте)
 
Сообщения: 801
Репутация: 116
Статьи: 18
Проекты: 4

Re: GRASS Graphical Modeler

Сообщение rhot » 24 июл 2012, 17:48

Спасибо за отзыв, подправлю.

Цикла никакого нет, но можно сделать для несколько другой задачи, если будет время. Например, я использовал цикл для перепроицирования набора растров в другую систему координат.
Каждая команда вручную вводится, а комбинации каналов выбраны просто как наиболее используемые мной.
  • 0

___________(¯`·.¸(¯`·.¸ Scientia potentia est _/ {SILVA}:::{FOSS}:::{GIS} \_ Знание сила ¸.·´¯)¸.·´¯)___________
Аватара пользователя
rhot
ВольныйИсследователь
 
Зарегистрирован: 25 янв 2011
Откуда: Архангельск (на карте)
 
Сообщения: 1513
Репутация: 109
Статьи: 1

Re: GRASS Graphical Modeler

Сообщение Максим Дубинин » 24 июл 2012, 18:29

Приятно видеть новые статьи новых авторов)

Мелкие придирки на первый взгляд:

1. Картинки с огромными белыми полями следует обрезать по значимому углу
2. Я бы избежал фразы "ESRI (Environmental Systems Research Institute) скопировали идею". Дело темное кто у кого скопировал и вообще это не важно. Я бы объединил это предложение с предыдущим.
3. В сэмплаху нас есть сцена ландсат, на которую можно ссылаться для примера, можно ли ее также обозначить в тексте (написать типа "если хотите попробовать сами - вот...") . Ссылка на сцену: http://gis-lab.info/data/samples/lt5170 ... 41mor00.7z
4. Кое где уменьшение картинок не оправдано, например: http://wiki.gis-lab.info/w/%D0%A4%D0%B0 ... module.png Не стоит сильно экономить.
  • 0

пристегивайтесь, турбулентность прямо по курсу
Аватара пользователя
Максим Дубинин
NextGIS
 
Зарегистрирован: 06 окт 2003
Откуда: Москва (на карте)
 
Сообщения: 8855
Репутация: 613
Статьи: 231
Проекты: 12/6

Re: GRASS Graphical Modeler

Сообщение Александр Мурый » 24 июл 2012, 18:30

rhot писал(а):Цикла никакого нет...
Каждая команда вручную вводится...

А в цикле всё-таки было бы эффективнее, хоть в моделлере, хоть в скрипте :)
А то уменьшается кол-во профита от автоматизации.. "Вручную" (особенно с историей команд) можно настучать быстрее.

По статье:
  • Всё-таки официально моделлер называется "wxGUI Modeler" (акцент на исп-ии wxGUI). Т.е. полностью "GRASS wxGUI Modeler". Занудство, знаю :)
  • В описании специально выделено:
    Note: the tool is currently under development and distributed as experimental prototype.

    Может, стоит честно предупредить юзеров?
  • Хотелось бы больше общего описания функций самого моделлера (что там вообще можно делать и зачем именно в нём).
  • Согласен с Максимом -- всегда интереснее с пробными данными, на которых можно поиграться..
  • Это, IMHO, немного не в тему.
    Время начала запуска: 9:34:16; время окончания работы модели: 9:41:35.
  • 0

Редактор материалов, модератор форума
Александр Мурый
званий не имею
 
Зарегистрирован: 26 сен 2009
Откуда: Москва (на карте)
 
Сообщения: 4815
Репутация: 647
Статьи: 3
Проекты: 5/1

Re: GRASS Graphical Modeler

Сообщение rhot » 09 окт 2012, 13:54

Прошу прощения за оверквотинг, но по-другому никак :)
KolesovDmitry писал(а):Во введении сказать, что вы описываете Graphical Modeler на конкретной задаче.
Сделано!
KolesovDmitry писал(а):В разделе Решение стоит дать список последовательности действий, которые описываются ниже, и дать к каждому шагу краткую аннотацию -- для чего это шаг нужен, каковы его цели.
Сделано!
Максим Дубинин писал(а):Картинки с огромными белыми полями следует обрезать по значимому углу
Не совсем понятно о чём речь...
Максим Дубинин писал(а):Я бы избежал фразы "ESRI (Environmental Systems Research Institute) скопировали идею".
Исправил.
Максим Дубинин писал(а):В сэмплаху нас есть сцена ландсат, на которую можно ссылаться для примера, можно ли ее также обозначить в тексте (написать типа "если хотите попробовать сами - вот...")
Ссылку привёл.
Максим Дубинин писал(а):Кое где уменьшение картинок не оправдано, например: http://wiki.gis-lab.info/w/%D0%A4%D0%B0 ... module.png Не стоит сильно экономить.
Вернул размер картинки на оригинальный.
amuriy писал(а):А в цикле всё-таки было бы эффективнее, хоть в моделлере, хоть в скрипте :)
А то уменьшается кол-во профита от автоматизации..
В данном случае это не уместно - мне все подряд комбинации каналов не нужны. Времени больше уйдёт (дефицит от времени, однако :) ) на создание абсолютно всех композитов, чем на только тех, которыми я часто пользуюсь.
amuriy писал(а):"Вручную" (особенно с историей команд) можно настучать быстрее.
Не согласен, предлагаю сделать "тест-драйв": моя модель против "вручную" (хотите если, используйте историю команд). Время выполнения модели на моём компьютере приведено в статье. Могу привести данные по "железу", если надо :)
amuriy писал(а):Всё-таки официально моделлер называется "wxGUI Modeler" (акцент на исп-ии wxGUI). Т.е. полностью "GRASS wxGUI Modeler".
Исправил.
amuriy писал(а):В описании специально выделено:

Note: the tool is currently under development and distributed as experimental prototype.


Может, стоит честно предупредить юзеров?
Предупредил как мог :)
amuriy писал(а):Хотелось бы больше общего описания функций самого моделлера (что там вообще можно делать и зачем именно в нём).
Сделано!
amuriy писал(а):Это, IMHO, немного не в тему.

Время начала запуска: 9:34:16; время окончания работы модели: 9:41:35.
Давайте, укажу тогда просто общее время выполнения модели?
  • 0

___________(¯`·.¸(¯`·.¸ Scientia potentia est _/ {SILVA}:::{FOSS}:::{GIS} \_ Знание сила ¸.·´¯)¸.·´¯)___________
Аватара пользователя
rhot
ВольныйИсследователь
 
Зарегистрирован: 25 янв 2011
Откуда: Архангельск (на карте)
 
Сообщения: 1513
Репутация: 109
Статьи: 1

Re: GRASS Graphical Modeler

Сообщение Александр Мурый » 09 окт 2012, 15:51

rhot писал(а):
amuriy писал(а):А в цикле всё-таки было бы эффективнее, хоть в моделлере, хоть в скрипте :)
В данном случае это не уместно - мне все подряд комбинации каналов не нужны.

А что, в цикле уже нельзя задать только нужные комбинации каналов?
rhot писал(а):Не согласен, предлагаю сделать "тест-драйв": моя модель против "вручную" (хотите если, используйте историю команд). Время выполнения модели на моём компьютере приведено в статье. Могу привести данные по "железу", если надо :)

Не будем увлекаться меряньем чего-то там :) Всем нравится работать по-разному.
  • 0

Редактор материалов, модератор форума
Александр Мурый
званий не имею
 
Зарегистрирован: 26 сен 2009
Откуда: Москва (на карте)
 
Сообщения: 4815
Репутация: 647
Статьи: 3
Проекты: 5/1

Re: GRASS Graphical Modeler

Сообщение rhot » 09 окт 2012, 16:03

amuriy писал(а):А что, в цикле уже нельзя задать только нужные комбинации каналов?
Буду рад, если приведёте пример с указанными комбинациями - я не знаю как это сделать.
Ещё хотелось бы групповое переименование сделать, если это возможно средствами GRASS (g.rename), но я не уверен, что регулярные выражения поддерживаются в этой команде.
  • 0

___________(¯`·.¸(¯`·.¸ Scientia potentia est _/ {SILVA}:::{FOSS}:::{GIS} \_ Знание сила ¸.·´¯)¸.·´¯)___________
Аватара пользователя
rhot
ВольныйИсследователь
 
Зарегистрирован: 25 янв 2011
Откуда: Архангельск (на карте)
 
Сообщения: 1513
Репутация: 109
Статьи: 1

Re: GRASS Graphical Modeler

Сообщение Александр Мурый » 09 окт 2012, 18:49

rhot писал(а):Буду рад, если приведёте пример с указанными комбинациями - я не знаю как это сделать.

В шелле это выглядит как-то так:
Код: [ Загрузить ] [ Спрятать ]
for bands in 321 453 543 742 745 754; do
    band_1=$(echo $bands | cut -c1)
    band_2=$(echo $bands | cut -c2)
    band_3=$(echo $bands | cut -c3)
   
    i.landsat.rgb --verbose red=toar.${band_1} green=toar.${band_2} blue=toar.${band_3} strength=98
    r.composite --overwrite --verbose red=toar.${band_1} green=toar.${band_2} blue=toar.${band_3} levels=32 output=$bands
done
 

rhot писал(а):Ещё хотелось бы групповое переименование сделать, если это возможно средствами GRASS (g.rename), но я не уверен, что регулярные выражения поддерживаются в этой команде.

Например, чтобы переименовать растры типа LT50720882005312HOA02_B1, LT50720882005312HOA02_B2... в B.1, B.2..., делаем :
Код: [ Загрузить ] [ Спрятать ]
for i in $(g.mlist rast pat="LT50720882005312HOA02_B?"); do
    a=$(echo $i | cut -d'_' -f2)
    b=$(echo $a | cut -c1)
    c=$(echo $a | cut -c2)
    g.rename rast=$i,${b}.${c}
done
 
  • 0

Редактор материалов, модератор форума
Александр Мурый
званий не имею
 
Зарегистрирован: 26 сен 2009
Откуда: Москва (на карте)
 
Сообщения: 4815
Репутация: 647
Статьи: 3
Проекты: 5/1

Re: GRASS Graphical Modeler

Сообщение rhot » 10 окт 2012, 14:57

amuriy писал(а):В шелле это выглядит как-то так:

То же самое, но на питоне
Код: Выделить всё
for x in ["321", "453", "543", "742", "745", "754"]:
    result = re.findall(r"(\d)", x)
    band1 = result[0]
    band2 = result[1]
    band3 = result[2]
    grass.run_command(i.landsat.rgb --verbose red=toar.band1 green=toar.band2 blue=toar.band3 strength=98)
    grass.run_command(r.composite --overwrite --verbose red=toar.band1 green=toar.band2 blue=toar.band3 levels=32 output=x)
  • 0

Последний раз редактировалось rhot 10 окт 2012, 17:05, всего редактировалось 1 раз.
___________(¯`·.¸(¯`·.¸ Scientia potentia est _/ {SILVA}:::{FOSS}:::{GIS} \_ Знание сила ¸.·´¯)¸.·´¯)___________
Аватара пользователя
rhot
ВольныйИсследователь
 
Зарегистрирован: 25 янв 2011
Откуда: Архангельск (на карте)
 
Сообщения: 1513
Репутация: 109
Статьи: 1

Re: GRASS Graphical Modeler

Сообщение Александр Мурый » 10 окт 2012, 16:42

Тот же цикл на питоне, более лаконичная версия :)
Код: [ Загрузить ] [ Спрятать ]
list = ["321", "453", "543", "742", "745", "754"]

for band in list:
    grass.run_command("i.landsat.rgb",
                      red="toar."+band[0],
                      green="toar."+band[1],
                      blue="toar."+band[2],
                      strength=98)
   
    grass.run_command("r.composite",
                      red="toar."+band[0],
                      green="toar."+band[1],
                      blue="toar."+band[2],
                      levels=32,
                      output=band)
 
  • 0

Последний раз редактировалось Александр Мурый 10 окт 2012, 17:32, всего редактировалось 1 раз.
Редактор материалов, модератор форума
Александр Мурый
званий не имею
 
Зарегистрирован: 26 сен 2009
Откуда: Москва (на карте)
 
Сообщения: 4815
Репутация: 647
Статьи: 3
Проекты: 5/1

Re: GRASS Graphical Modeler

Сообщение rhot » 10 окт 2012, 16:57

amuriy, перепишем скрипт переименования на питон и будет рабочий пример использования Modeler'a на высшем уровне :)
  • 0

___________(¯`·.¸(¯`·.¸ Scientia potentia est _/ {SILVA}:::{FOSS}:::{GIS} \_ Знание сила ¸.·´¯)¸.·´¯)___________
Аватара пользователя
rhot
ВольныйИсследователь
 
Зарегистрирован: 25 янв 2011
Откуда: Архангельск (на карте)
 
Сообщения: 1513
Репутация: 109
Статьи: 1

Re: GRASS Graphical Modeler

Сообщение Александр Мурый » 10 окт 2012, 17:03

rhot писал(а):amuriy, перепишем скрипт переименования на питон и будет рабочий пример использования Modeler'a на высшем уровне :)

Ага, на более высоком уровне абстракции. :) Надо ещё дооформить начало скрипта с <i.landsat.toar> и можно в рецепты.
  • 0

Редактор материалов, модератор форума
Александр Мурый
званий не имею
 
Зарегистрирован: 26 сен 2009
Откуда: Москва (на карте)
 
Сообщения: 4815
Репутация: 647
Статьи: 3
Проекты: 5/1

Re: GRASS Graphical Modeler

Сообщение Александр Мурый » 10 окт 2012, 23:28

Ещё по поводу будущей статьи.

- Явно не хватает раздела с общим описанием wxGUI Modeler (какие кнопочки за что отвечают и т.п.), не показан в явном виде профит от экспорта моделей в питон-скрипт (как "шаблон" GRASS-скрипта для начинающих).

Начиная с версии GRASS 6.4.2 это расширение включено в программу по умолчанию, отдельная установка не требуется.

- Лучше сказать, что моделлер уже есть у вас, если ваша GRASS версией не ниже 6.4.2 собрана с wxGUI

- В моделях можно делать циклы и выборки данных по шаблону через g.mlist (кнопка "Add loop/series"), с этим тоже не очень понятно

rhot, у тебя, похоже, устаревшая версия моделлера. У меня на недавно собранной GRASS 6.4.3svn внизу окна есть ещё вкладка "Python editor":
wxgui_mod_py_editor.png
wxgui_mod_py_editor.png (12.59 КБ) Просмотров: 9784
  • 0

Редактор материалов, модератор форума
Александр Мурый
званий не имею
 
Зарегистрирован: 26 сен 2009
Откуда: Москва (на карте)
 
Сообщения: 4815
Репутация: 647
Статьи: 3
Проекты: 5/1

Re: GRASS Graphical Modeler

Сообщение rhot » 11 окт 2012, 01:00

Да, я в курсе, что появился ещё и редактор питона, писалось-то всё ой как давно...
  • 0

___________(¯`·.¸(¯`·.¸ Scientia potentia est _/ {SILVA}:::{FOSS}:::{GIS} \_ Знание сила ¸.·´¯)¸.·´¯)___________
Аватара пользователя
rhot
ВольныйИсследователь
 
Зарегистрирован: 25 янв 2011
Откуда: Архангельск (на карте)
 
Сообщения: 1513
Репутация: 109
Статьи: 1

След.

Вернуться в Материалы сайта

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

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


(Геокруг)

© GIS-Lab и авторы, 2002-2013. При использовании материалов сайта, ссылка на GIS-Lab и авторов обязательна. Содержание материалов - ответственность авторов (подробнее).