http://wiki.gis-lab.info/w/GRASS_Graphical_Modeler
Статья рассчитана на тех, кто не знаком с GRASS Graphical Modeler, но умеет пользоваться справкой.
Конструктивная критика принимается

Геоинформационные системы (ГИС) и Дистанционное зондирование Земли
А в цикле всё-таки было бы эффективнее, хоть в моделлере, хоть в скриптеrhot писал(а): Цикла никакого нет...
Каждая команда вручную вводится...
Может, стоит честно предупредить юзеров?Note: the tool is currently under development and distributed as experimental prototype.
Время начала запуска: 9:34:16; время окончания работы модели: 9:41:35.
Сделано!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.
А что, в цикле уже нельзя задать только нужные комбинации каналов?rhot писал(а):В данном случае это не уместно - мне все подряд комбинации каналов не нужны.amuriy писал(а):А в цикле всё-таки было бы эффективнее, хоть в моделлере, хоть в скрипте![]()
Не будем увлекаться меряньем чего-то тамrhot писал(а):Не согласен, предлагаю сделать "тест-драйв": моя модель против "вручную" (хотите если, используйте историю команд). Время выполнения модели на моём компьютере приведено в статье. Могу привести данные по "железу", если надо![]()
Буду рад, если приведёте пример с указанными комбинациями - я не знаю как это сделать.amuriy писал(а):А что, в цикле уже нельзя задать только нужные комбинации каналов?
В шелле это выглядит как-то так: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
Например, чтобы переименовать растры типа LT50720882005312HOA02_B1, LT50720882005312HOA02_B2... в B.1, B.2..., делаем :rhot писал(а): Ещё хотелось бы групповое переименование сделать, если это возможно средствами GRASS (g.rename), но я не уверен, что регулярные выражения поддерживаются в этой команде.
Код: Выделить всё
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
То же самое, но на питоне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)
Код: Выделить всё
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)
Ага, на более высоком уровне абстракции.rhot писал(а):amuriy, перепишем скрипт переименования на питон и будет рабочий пример использования Modeler'a на высшем уровне
- Лучше сказать, что моделлер уже есть у вас, если ваша GRASS версией не ниже 6.4.2 собрана с wxGUIНачиная с версии GRASS 6.4.2 это расширение включено в программу по умолчанию, отдельная установка не требуется.
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость
© GIS-Lab и авторы, 2002-2017. При использовании материалов сайта, ссылка на GIS-Lab и авторов обязательна. Содержание материалов - ответственность авторов (подробнее).