Краткое описание GRASS Graphical Modeler: различия между версиями

Материал из GIS-Lab
Перейти к навигации Перейти к поиску
Строка 104: Строка 104:
[http://en.wikipedia.org/wiki/ERDAS_IMAGINE#ERDAS_IMAGINE_Spatial_Modeler ERDAS IMAGINE Spatial Modeler (википедия)]
[http://en.wikipedia.org/wiki/ERDAS_IMAGINE#ERDAS_IMAGINE_Spatial_Modeler ERDAS IMAGINE Spatial Modeler (википедия)]


[Файл:L7 toar composite.zip Файл модели и скрипт для переименования каналов LANDSAT]
[[Файл:L7 toar composite.zip Файл модели и скрипт для переименования каналов LANDSAT]]

Версия от 10:50, 9 октября 2012

GRASS Graphical Modeler - это расширение GRASS, которое позволяет пользователю создавать, редактировать, управлять и выполнять моделями геопространственного анализа. GRASS Graphical Modeler написана командой разработчиков GRASS. Документация была создана Мартином Ланда. Начиная с версии GRASS 6.4.2 это расширение включено в программу по умолчанию, отдельная установка не требуется.

На момент написания статьи расширение находилось в стадии разработки.

Введение

Расширение wxGUI Modeler в некоторой степени напоминает ArcGIS ModelBuilder, который в свою очередь, похож на ERDAS IMAGINE Spatial Modeler. Согласно Википедии, Spatial Modeler впервые появилась в 1993 году. После этого в 2004 году ESRI (Environmental Systems Research Institute) создали собственный инструмент под названием ModelBuilder, сообщает Википедия.

Расширение позволяет выполнять следующее:

  • задавать действия (команды GRASS);
  • задавать входящие данные (растровые, векторные и 3D-растровые);
  • устанавливать связи между действиями и входными данными;
  • задавать циклы и условия выполнения;
  • проверять модель на работоспособность;
  • запускать модель;
  • сохранять настройки модели в файл (*.gxm);
  • экспортировать модель в скрипт на Python'е;
  • экспортировать концептуальную модель в изображение (поддерживаемые форматы: PNG, BMP, GIF, JPG, PCX, PNM, TIF, XPM).

Работа расширения GRASS wxGUI Modeler рассматривается на примере создания серии композитных изображений по данным LANDSAT 7. Если неохота искать и качать сцены с сайта USGS, то можно потренироваться на доступных данных на этом сайте.

Задача

Часто нужно сделать композитные изображения различных каналов LANDSAT. Обычно этот процесс разделён на несколько этапов:

  1. Импорт растров в GRASS (модуль r.in.gdal);
  2. Атмосферная коррекция для устранения влияния атмосферы (модуль i.landsat.toar);
  3. Автоматическое улучшение цветовой карты (модуль i.landsat.rgb);
  4. Создание композитного изображения (модуль r.composite).

Цель

Автоматически создавать скорректированные по атмосфере, композитные изображения следующих комбинаций каналов: 321, 453, 543, 742, 745, 754.

Инструменты и данные

  • Операционная система Ubuntu 11.10
  • GRASS 7.0.svn50461 (2012)
  • Любой набор снимков LANDSAT (сенсор ETM+)

Решение

Предположим, что растры уже импортированы в GRASS, район GRASS установлен корректно и метод, используемый при атмосферной коррекции - "uncorrected".

Алгоритм действий

  1. Переименовать растры по шаблону B.* Например, ххххххххххххххх_B10 → B.1 (можно воспользоваться скриптом для переименования);
  2. Запустить расширение через меню File → Graphical Modeler или кликая на иконку Modeler icon
  3. Добавить команды, необходимые для решения поставленной задачи
  • i.landsat.toar -t --overwrite --verbose input_prefix=B. output_prefix=toar. metfile=%metfile sensor=tm7 method=uncorrected percent=0.01 pixel=1000 sat_zenith=8.2000 rayleigh=0.0
  • i.landsat.rgb --verbose red=toar.3 green=toar.2 blue=toar.1 strength=98
  • r.composite --overwrite --verbose red=toar.3 green=toar.2 blue=toar.1 levels=32 output=321
  • i.landsat.rgb --verbose red=toar.4 green=toar.5 blue=toar.3 strength=98
  • r.composite --overwrite --verbose red=toar.4 green=toar.5 blue=toar.3 levels=32 output=453
  • i.landsat.rgb --verbose red=toar.5 green=toar.4 blue=toar.3 strength=98
  • r.composite --overwrite --verbose red=toar.5 green=toar.4 blue=toar.3 levels=32 output=543
  • i.landsat.rgb --verbose red=toar.7 green=toar.4 blue=toar.2 strength=98
  • r.composite --overwrite --verbose red=toar.7 green=toar.4 blue=toar.2 levels=32 output=742
  • i.landsat.rgb --verbose red=toar.7 green=toar.4 blue=toar.5 strength=98
  • r.composite --overwrite --verbose red=toar.7 green=toar.4 blue=toar.5 levels=32 output=745
  • i.landsat.rgb --verbose red=toar.7 green=toar.5 blue=toar.4 strength=98
  • r.composite --overwrite --verbose red=toar.7 green=toar.5 blue=toar.4 levels=32 output=754
  1. Задать переменные (в нашем случае она одна - %metfile)
  2. Проверить модель на работоспособность
  3. Запустить модель

Добавляем команды

Прежде всего, следует начать с добавления новых команд (меню Model -> Add command).

Диалоговое окно Add command в GRASS wxGUI Modeler

Задаём переменные

Переменные задаются знаком %, т.е. переменная %metfile обозначает название заголовока файла (.met / MTL.txt) для сенсоров Landsat ETM + или TM5. Переменные могут быть следующих типов: строковые, целые числа, числа с плавающей точкой, векторные, растровые, набор данных или путь к файлу. Все переменные, используемые в модели, должны быть добавлены на вкладке Variables.

Вкладка Variables, позволяющая управлять переменными в GRASS Graphical Modeler

Таким образом, первая команда будет выглядеть так:

i.landsat.toar -t –overwrite –verbose input_prefix=B. output_prefix=toar. metfile=%metfile sensor=tm7 method=uncorrected percent=0.01 pixel=1000 sat_zenith=8.2000 rayleigh=0.0

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

Список команд, которые будут выполнены автоматически при запуске модели в wxGUI Modeler

Если вернуться к вкладке Model, то можно увидеть блок-схему всего процесса.

Изначальная блок-схема в окне wxGUI Modeler

Реорганизуем блок-схему

Я советую реорганизовать схему так, чтобы она выглядела более или менее понятной для тех, кто будет использовать модель позже.

Блок-схема, приведённая в нормальный вид

Проверяем и запускам модель

И наконец, следует проверить модель и запустить её!

Модель в действии

Выводы

В результате запуска модели, шесть растров были готовы менее, чем за десять минут.

Коллаж из растров, созданных в результате работы GRASS wxGUI Modeler.

Время начала запуска: 9:34:16; время окончания работы модели: 9:41:35. Кроме того, помимо собственно композитных изображений были созданы скорректированные по атмосфере растры всех каналов, которые могут быть использованы для дальнейшего анализа. Впоследствии возможно сделать экспорт в сценарий Pyhton для более тонкой доработки модели.

Ссылки

Источник: Vladimir Naumov – Graphical Modeler in GRASS

Официальная страница GRASS Graphical Modeler

Справка ArcGIS ModelBuilder

ERDAS IMAGINE Spatial Modeler (википедия)

Файл:L7 toar composite.zip Файл модели и скрипт для переименования каналов LANDSAT