Обработка на лету и динамическое составление мозаик растровых изображений в ArcGIS: новое решение традиционных задач

Серебрянная О.Л. (компания Esri CIS, e-mail: apodemus@esri-cis.ru), Глебова К.С.

 Dynamic Raster Mosaicking in ArcGIS

 

В ArcGIS 10 представлена новая мощная модель баз геоданных для управления растрами. Она сокращает время их обработки, поддерживает информацию частично перекрывающихся снимков и облегчает управление большими разрозненными архивами данных.

Набор данных мозаики позволяет как составлять каталоги растровых данных и изображений, так и задавать и редактировать метаданные и способы обработки данных. Эти наборы могут быть разного объема, от нескольких изображений до огромных коллекций – в отношении как общего размера файла, так и числа наборов данных, задействованных в мозаике. Пользователи ArcGIS Desktop могут обращаться к наборам данных мозаики напрямую, либо средством многопользовательского доступа к ним может служить сервис изображений. Наборы данных мозаики представляют собой динамические составленные из отдельных файлов изображения, которые могут управляться и дорабатываться конечным пользователем, делая доступным все информационное содержание изображения. Описание некоторых терминов по данному вопросу приведено в табл. 1.

Составление динамических мозаик

Набор данных мозаики ссылается на исходные пикселы и содержит свойства, метаданные и информацию об обработке снимков. Он может храниться в любой базе геоданных (файловой или ArcSDE) и включен в ArcGIS 10. Хотя открыть и просмотреть наборы данных мозаики можно в ArcGIS на лицензии любого уровня, для их создания или редактирования требуется ArcEditor или ArcInfo. Для обслуживания наборов данных мозаики средствами ArcGIS Server требуется дополнительный модуль Image.

Создавать и управлять наборами данных мозаик можно с помощью простых инструментов геообработки, а в ArcMap их можно интерактивно редактировать и отображать. Кроме того, для автоматизации и управления наборами данных мозаики можно применять модели геообработки и среду разработки Python.

 


При создании набора данных мозаики используются источники данных, методы составления мозаик и функции. Обработка на лету создает изображения-мозаики по запросу.


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


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

 

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

Таблица 1. Краткий словарь терминов по наборам данных мозаики.

Термин Описание
Функция Непостоянная обработка на лету одного или более растров по мере получения к ним доступа.
Мозаика/Мозаичное изображение Изображение, составленное из множества соединенных вместе изображений. Мозаика может быть статичной, например кэш карты, созданный из одного набора растровых данных, или динамической, полученной из набора данных мозаики.
Набор данных мозаики Совокупность наборов растровых данных (изображений), хранящаяся в виде каталога и рассматриваемая как динамическое мозаичное изображение. Свойства исходного изображения сохраняются, а перекрывающиеся изображения могут быть упорядочены как требуется.
Слой мозаики Слой, ссылающийся на набор данных мозаики. В ArcMap выглядит как составной слой, состоящий из границ, контуров и слоев изображений. Он также может использоваться инструментами геообработки для получения доступа к данным конкретных пикселов.
Метод составления мозаик Правило упорядочивания перекрывающихся растров при просмотре мозаичного изображения, позволяющее сделать так, чтобы оптимальное изображение отображалось поверх прочих.
Обзоры Наборы данных пониженного разрешения, построенные для повышения скорости отображения мозаики.
Пирамидные слои Набор растров с пониженным разрешением, связанный с набором растровых данных, который позволяет быстрее отображать растры на мелких масштабах.
Каталог растров Набор растров, заданный в таблице. Каждая запись в таблице представляет отдельный набор растровых данных в каталоге. Управляемый каталог растров может применяться для хранения изображений непосредственно в базе данных.
Набор растровых данных Растры любого корректного формата содержат один или несколько каналов. Каждый канал состоит из матрицы или массива равномерно расположенных по рядам и столбцам ячеек (пикселов). У каждого пиксела в наборе растровых данных есть свое значение. У наборов растровых данных имеются такие свойства, как пространственная привязка и метаданные.
Контур растра Детализированный экстент набора растровых данных. Изображение за пределами контура вырезается из видимого изображения.
Растровый слой Слой, ссылающийся на растровые данные, в котором можно задать дополнительную обработку или функции, применяемые к изображению.
Тип растра Определяет, как импортировать детальные свойства набора данных мозаики и метаданных, например пространственную привязку, дату сбора данных и тип сенсора, а также формат растра.

Наборы данных мозаики представляют собой модели данных в базе геоданных. Входящие в данную модель растры могут быть как в виде динамической мозаики, составленной из изображений, так и каталогом с таблицами, содержащими геометрию и метаданные. Это предоставляет многочисленные возможности для организации растровых данных и управления ими (см. табл. 2). Функции могут применяться к любому входному растру, добавляемому в набор данных мозаики, и определяют варианты его обработки при создании мозаичного изображения по требованию. Набору данных мозаики также могут быть заданы способы построения мозаики, определяющие порядок изображений по умолчанию.

Кроме того, создание справочных наборов данных мозаики позволяет из одного и того же источника создавать различные наборы продукции, каждый с определенными методами построения мозаики и функциями набора данных мозаики. Справочный набор данных мозаики ведет себя как обычный, но записи, задающие параметры обработки отдельных растров, и метаданные не могут редактироваться, поскольку на них ссылается исходный набор. Например, вы можете создать набор данных мозаики для управления всеми своими данными для цифровой модели рельефа (ЦМР), а затем набор данных мозаики, из которого строится отмывка рельефа, и ещё один, из которого строится уклон. При обновлении данных о рельефе автоматически обновляются отмывка и уклон. Другой пример управления очень большими коллекциями изображений – создание набора данных мозаики, который использует другие наборы как входные данные.

Таблица 2.

Свойства наборов данных мозаики
Каталог/Библиотека/Совокупность

  • Изображений
  • Свойств изображений
  • Метаданных изображений
  • Функций обработки растров
Хранение в базе геоданных
Масштабируемы
Ссылаются на исходные пикселы (файлы или базы данных)
Поддерживаются в ArcGIS Desktop
Для автоматизации используются инструменты геообработки и ArcObjects
Доступны как

  • Динамические мозаичные изображения, обрабатываемые на лету
  • Таблица каталога с геометрией и метаданными

Обработка на лету

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

Наборы данных мозаики хранят информацию о пространственной и временнОй информации, которая находилась в атрибутах исходных наборов растровых данных. Таким образом, набор данных мозаики может легко поддерживать различные данные: например, спектральные, пространственные, временнЫе и радиометрические.

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

 


Набор данных мозаики состоит из каталога (источника пикселов), свойств, метаданных, функций обработки и контуров растров; включает класс объектов, определяющий границу; и применяет правила составления мозаик для динамического сбора в мозаику перекрывающихся изображений.


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


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

 

Создание наборов данных мозаики

Набор данных мозаики состоит из класса пространственных объектов контуров, который работает как каталог, уточняющий экстент каждого растра и ссылающийся на исходные пикселы со свойствами, метаданными и функциями обработки. Он также включает класс пространственных объектов границ, определяющих экстент набора данных мозаики и страницы свойств, которые ссылаются на правила составления мозаик по умолчанию и другие свойства, определяющие доступ к изображениям и метаданным. Кроме того, набор данных мозаики содержит таблицу для регистрации загружаемых данных и других свойств. Еще он может содержать класс объектов линий сшивки для составления сшитых мозаик.

Создание наборов данных мозаики, даже для терабайтов предварительно обработанных изображений, является простым процессом – не сложнее, чем указать в системе нужную директорию. Заметьте, что наборы данных мозаики могут управлять и более сложными данными съемки, полученными непосредственно с различных сенсоров, установленных на спутниках и самолетах. Сложные наборы данных мозаики могут создаваться так, что изображения из различных источников и сенсоров соединяются на основе решений и соображений, принятых в процессе создания и изменения набора данных мозаики. Эти соображения включают в себя выбор свойств набора данных мозаики, методов составления мозаики и функций набора данных мозаики, а также использование пространственно привязанных мозаик и наборов данных мозаики, использующих другие наборы в качестве источника.

Приведем пошаговую инструкцию по построению набора данных мозаики

  • Создайте или укажите целевую базу геоданных. Если возможности ArcSDE не будут задействованы, рекомендуется использовать файловую базу геоданных.
  • В приложении ArcCatalog щёлкните правой кнопкой мыши на базе геоданных и выберите Новый > Набор данных мозаики.
  • Введите имя набора данных мозаики.
  • Укажите систему координат, которая будет использоваться для управления набором данных мозаики. Растры могут находиться в любой системе.
  • Добавьте растры в набор.
  • Определите типы растра в диалоговом окне Свойства типа растров. По мере добавления наборов растров в базу мозаик, для каждого набора растров создается контур, а для всего набора данных мозаики – граница. Обзоры создаются для целого набора данных мозаики и невелики по сравнению с полным набором данных. Вместо создания обзоров вы можете использовать другие доступные изображения с низким разрешением или другой источник изображений, например с ресурса ArcGIS Online.
  • В Дополнительных опциях можно, если это необходимо, отметить пункты Построить пирамидные слои и Вычислить статистику. Установите свойства, которые отвечают за то, как мозаичное изображение будет представлено клиенту.
  • Щёлкните правой кнопкой мыши на наборе данных мозаики в окне Каталога, чтобы открыть диалоговое окно Свойства набора данных мозаики. На закладке По умолчанию вы можете изменить такие заданные по умолчанию свойства как Допустимые методы сжатия, Качество сжатия по умолчанию, Метод пересчета по умолчанию и Допустимые методы создания мозаики. Эти свойства применяются тогда, когда набор данных мозаики доступен для пользователей, но может ими изменяться при необходимости. На закладке Функции вы можете добавлять дополнительные функции обработки изображений, которые будут применены к мозаике. Эти функции применяются к изображению после его составления из различных источников, но до его отображения на экране. После этого набор данных мозаики можно добавить в таблицу содержания и использовать. Функции, связанные с каждым растром, тоже могут быть изменены, если это требуется.

Типы растров

Растровые данные добавляются в набор данных мозаики путем указания типа растра. Набор растровых данных, тип растра по умолчанию, может использоваться для всех стандартных источников данных, таких как файлы GeoTIFF или MrSID. Эти типы растров могут применяться для упрощения использования более сложных данных и определения метаданных, например даты поступления данных и типа сенсора, а также формата растров и возможной дополнительной обработки данных. Типы растров можно легко настроить и сохранить для дальнейшего использования, чтобы было удобнее добавлять аналогичные данные в автоматическом режиме.

Методы составления мозаик

Метод составления мозаик, являющийся одним из заданных свойств набора данных мозаики, определяет, как в этом наборе происходит управление перекрывающимися изображениями. Методы составления мозаик задают порядок сбора растров в единую мозаику. Метод создания мозаик По атрибуту обычно используется для упорядочивания изображений на основании такого атрибута, как дата. Например, Дату можно установить на ‘Самая поздняя’ или ‘Ближайшая к маю 2001 года’. Этот же метод можно использовать для упорядочивания изображений по другим атрибутам (например, ‘Наибольший угол солнца’). Похожие методы составления мозаик можно использовать для установки ориентации изображения на север, юг, восток или запад, что может улучшить обзор таких пространственных объектов, как стороны домов при широкоугольной или перспективной фотосъемке. Метод составления мозаик по умолчанию задается при создании набора данных мозаики, однако пользователь может изменить его в зависимости от своих требований. Методы составления мозаик приведены в табл. 3.

Таблица 3. Краткое описание методов создания мозаик.

Метод составления мозаик Описание
По атрибуту Упорядочивает изображения на основе атрибутов, приведенных в таблице. Используется в тех случаях, когда интерес представляют изображения с конкретными свойствами.
Ближайший к центру Помещает наверх растр с центром, ближайшим к области интереса. Это установка по умолчанию для большинства перекрывающихся изображений с определенными атрибутами.
Ближайший к надиру Сопоставляет область интереса и точку надира растра вместо центральной точки изображения. Оптимизирует изображение для вертикального обзора.
Ближайший к точке обзора Выбирает верхнее изображение на основе заданного клиентом направления. Функция полезна для обзора боковых частей зданий.
Блокировать растр Отображает только определенные растры, независимо от изменений области интереса.
Нет Не задан никакой порядок. Упорядочивание изображений основано на порядке записей в таблице набора данных мозаики, который может меняться.
Северо-запад Наверху отображается растр, центр которого находится в северо-западном углу мозаики. Это простой способ зафиксировать порядок изображений.
Линия сшивки Фиксирует порядок изображений на основании атрибутов и применяет специальное свойство геометрии линий шва как место, где изображения состыковываются. Метод применяется тогда, когда нужно создать статичную мозаику и сгладить переход от одного изображения к другому.

Функции наборов данных мозаики

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

Вот некоторые общие процессы, применяемые к наборам данных мозаики через функции:

  • Растянуть, Извлечь каналы, Нормализованно-разностный вегетационный индекс (НРВИ, NDVI) – для повышения качества изображения
  • Вырезать, Маска –  чтобы исключить или классифицировать области
  • Ортотрансформирование, Панхроматическое слияние – для обработки спутниковых или аэрофотоснимков
  • Уклон, Экспозиция, Отмывка – при работе с данными о рельефе.

Функции могут добавляться как к отдельным растрам, так и ко всему набору. Управление функциями происходит внутри набора данных мозаики. Заметьте, что при добавлении в этот набор определенных растровых данных (например, данных с сенсора, установленного на спутнике) некоторые функции добавляются автоматически, поскольку они были заданы как часть типа растра. Таким образом, задание типа растра позволяет определять и применять подходящие функции к исходным наборам растровых данных.

Вот более полный обзор некоторых функций, которые могут быть использованы при работе с данными о рельефе:

  • Экспозиция – определяет направление наибольшего изменения уклона между ячейкой и соседними ячейками.
  • Отмывка рельефа – создает шкалу серого для изображения рельефа с заданным положением Солнца, приводящим к отбрасыванию тени.
  • Затененный рельеф – создает затененный рельеф с помощью цифровой модели рельефа и цветовой шкалы.
  • Уклон – рассчитывает величину изменения высоты для каждой ячейки цифровой модели рельефа.
  • Растяжка – повышает качество изображения за счет изменения таких свойств, как яркость, контраст и гамма путем растягивания.
  • Кубическая свертка – Выполняет фильтрацию над значениями в растре, которая может использоваться для повышения резкости изображения, размывания изображения, определения ребер в пределах изображения или других усовершенствований, основанных на ядре.

Более детальное описание доступных функций приведено в табл. 4.

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

Обслуживание наборов данных мозаики

Сервисы изображений – это сервисы, предоставляемые ArcGIS Server для оптимизации обслуживания изображений. Любой набор растровых данных или растровый слой может обслуживаться как сервис изображений, доступный для широкого круга настольных и веб-приложений. Эти сервисы изображений являются динамическими. Клиентские приложения задают такие свойства, как запрашиваемый экстент, проекция и метод передискретизации. Когда сервер получает запрос на изображение, он извлекает и обрабатывает изображение, исходя из требований. Запросы клиента могут включать также информацию о сжатии при передаче. Установка более низкого качества сжатия позволяет получать быстрый доступ к изображениям через сети с малой пропускной способностью (например, в целях навигации) и затем устанавливать высокое качество, чтобы получить подходящие для анализа изображения. Сервисы изображений могут возвращать изображение в виде картинки, которая подходит для использования в качестве фона для приложений, или в виде значений данных, которые могут быть использованы для анализа. Сервисы изображений предоставляют взаимосвязи между исходными наборами растровых данных и сервисами изображений. Один набор растровых данных может быть обслужен различными способами. Если набор функциональных возможностей в клиентских приложениях расширяется, то становится также возможной его дополнительная обработка на сервере.

Дополнительный модуль Image позволяет ArcGIS Server обслуживать наборы данных мозаики. Это способствует созданию огромной коллекции изображений, которые будут обслуживаться как единое виртуальное изображение в различных формах. При использовании модуля Image облегчается обращение к большим коллекциям изображений. Эти сервисы изображений доступны не только как рисунки, но и как каталог, который активирует приложения для получения доступа к метаданным или для задания парметров запроса, чтобы найти или изменить изображение. Если пользователю требуется скачать изображение себе на локальный диск, оно может быть экспортировано в нужный размер или формат, либо можно скачать исходные пикселы.

Заключение

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

  • Сокращение времени обработки, поскольку изображения могут быть использованы напрямую без объемной обработки.
  • Поддержка информации по перекрывающимся изображениям, которая обычно теряется при создании статического изображения-мозаики.
  • Простое управление большими разрозненными наборами изображений, например снимками территорий вдоль трубопроводов или транспортных коридоров.
  • Управление наборами данных с различным разрешением без необходимости то и дело подбирать подходящее изображение.
  • Сокращение передискретизации исходных растров, сохраняя тем самым качество и единство изображения.
  • Сокращение архива за счет удаления лишних данных, обычно создаваемых вместе с многочисленными изображениями.
  • Упрощение хранения, поскольку изображения могут добавляться или меняться по требованию.
  • Сохранение ценной информации, благодаря поддержке метаданных.

Дополнительную информацию по данной тематике можно посмотреть на сайте help.arcgis.com в разделе «Essential raster data vocabulary» (Словарь основных терминов по растровым данным). Статья основана на материалах, опубликованных в журнале ArcUser.

Со всеми вопросами обращайтесь к экспертам Esri CIS и DATA+.

Таблица 4. Детализированный список доступных функций управления набором данных мозаики.

Имя функции Описание
Арифметическая (Arithmetic) Выполняет арифметические операции между двумя частично или полностью пространственно перекрывающимися растрами или между растром и одним или несколькими постоянными значениями.
Экспозиция (Aspect) Устанавливает направление уклона максимальной скорости изменения значений от каждой ячейки до соседних с ней.
Вырезать (Clip) Извлекает или исключает область в растре в соответствии с набором экстентов.
Преобразование цветовой модели (Color Model Conversion) Конвертирует цветовую модель изображения. Например, из HSV (оттенок, насыщенность и значение) в RGB (красный, зелёный и синий) или наоборот.
Цветовая карта (Colormap) Преобразует значения пикселов для отображения растровых данных в качестве серого или красного, зелёного, синего (RGB) изображения на основе цветовой карты.
Цветовая карта в RGB (Colormap To RGB) Конвертирует одноканальный растр с цветовой картой в трёхканальный (красный, зелёный и синий) растр.
Комплексная (Complex) Вычисляет значение модуля комплексного числа.
Объединить каналы (Composite Band) Комбинирует растры для создания многоканального растра.
Константа (Constant) Создаёт виртуальный растр с одним значением для всех его пикселов.
Свёртка (Convolution) Выполняет фильтрацию над значениями пикселов в изображении, которая может использоваться при выполнении слияния с панхроматическим изображением, размывании изображения, определении граней в пределах изображения или других способах повышения качества изображения, основанных на ядре.
Извечь канал (Extract Band) Изменяет порядок каналов или извлекает их из растра.
Геометрическая (Geometric) Исправляет изображение на основе преобразования геоданных, которое предоставляется с растром. Может использоваться для ортотрансформации растров на основе определения сенсора и модели поверхности.
Оттенки серого (Grayscale) Конвертирует многоканальные растры в растр оттенков серого.
Отмывка (Hillshade) Создает модель поверхности в оттенках серого при относительном положении солнца, учитываемом при затенении рельефа.
Идентичность (Identity) Функция по умолчанию, требуется всем растрам набора данных мозаики, если нет другой функции.
Маска (Mask) Создаёт значения NoData, определяя диапазон значений пикселов. Все значения вне диапазона будут выдаваться как NoData.
NDVI Вычисляет значения индекса NDVI, используя двухканальный растр, состоящий из красного (Red) и близкого к инфракрасному каналов.
Слияние (Pan-sharpening) Улучшает пространственное разрешение многоканального изображения путём его слияния с панхроматическим изображением более высокого разрешения.
Информация о растре (Raster Info) Изменяет свойства растра, например, битовую глубину.
Цветная отмывка (Shaded Relief) Создает цветную отмывку из модели рельефа и цветовой карты.
Уклон (Slope) Вычисляет коэффициент изменений высоты для каждой ячейки ЦМР (DEM).
Спектральная конверсия (Spectral Conversion) Применяет матрицу к многоканальному изображению, чтобы влиять на спектральные значения выходных данных. Может использоваться для конвертации ложного цветового изображения в псевдо цветовое изображение.
Статистика (Statistics) Вычисляет фокальную статистику для каждой ячейки растра на основе заданной фокальной окрестности.
Растяжка (Stretch) Улучшает изображение путём изменения свойств, таких как яркость, контраст и гамма, через разнообразные типы растяжки.