Найти в Дзене

Автоматизация рабочих процессов. Часть 1: пакетная геообработка

Зачастую рабочие процессы в ГИС состоят из рутинных и повторяющихся задач.

Однако функционал ArcGIS позволяет существенно упростить жизнь ГИС-специалистам с помощью различных средств автоматизации.

С точки зрения сложности реализации для ГИС-специалиста, их можно условно разделить на три уровня:

  • Простой уровень: пакетная геообработка
  • Средний уровень: ModelBuilder
  • Сложный уровень: геообработка с помощью Python

Часть 1: пакетная геообработка

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

Например, можно запустить инструмент Растр в полигоны в пакетном режиме, чтобы преобразовать несколько наборов растровых данных в полигональные классы пространственных объектов.

Пакетный режим определяется количеством итераций запуска инструмента и управляется его параметрами.

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

Для настройки работы инструмента в пакетном режиме найдите его в списке инструментов, щелкните правой кнопкой мыши и в контекстном меню выберите Пакетно (или Batch в английском интерфейсе):

Контекстное меню и опция пакетного режима
Контекстное меню и опция пакетного режима

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

В нашем примере это будет Входной растр, т.е каждая итерация при запуске, по очереди, будет использовать один из указанных наборов растровых данных:

Настройка параметров пакетного режима
Настройка параметров пакетного режима

В следующем окне настроек пакетного режима мы укажем местоположение обрабатываемых растровых данных, а также настроим динамическое наименование выходных данных:

Входные данные для пакетного режима
Входные данные для пакетного режима

Для чего нужно динамическое наименование входных данных?

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

Реализовать это можно с помощью переменной %Имя% (или %Name% в английском интерфейсе), которую необходимо добавить в поле выходного набора данных:

Пример настройки динамического наименования выходных данных
Пример настройки динамического наименования выходных данных

В нашем примере, мы дополнительно к переменной %Имя% добавили префикс poly_, что позволит проще идентифицировать готовые наборы данных.

Результатом работы инструмента с такой настройкой пакетной геообработки, станут шесть отдельных полигональных классов объектов в выходной базе геоданных, в названии которых присутствует префикс poly_ и название исходного растра, присвоенное переменной %Имя%:

Результаты пакетной геообработки в базе геоданных
Результаты пакетной геообработки в базе геоданных

Конечно, в формате заметки блога невозможно осветить все тонкости и нюансы пакетной геообработки, поэтому если вы хотите погрузиться в данную тему более глубоко, то рекомендуем ознакомиться с этой информацией: Использование пакетной геообработки

Другие статьи цикла:

Автоматизация рабочих процессов. Часть 2: ModelBuilder

Автоматизация рабочих процессов. Часть 3: Python