Упражнение 17 Пространственная интерполяция
17.1 Введение
Цель — научиться на основе точечных данных восстанавливать поля распределения непрерывных показателей различными способами. Осуществлять визуализацию методом изолиний с послойной окраской, строить профили по полученным поверхностям.
Параметр | Значение |
---|---|
Теоретическая подготовка | Построение растровых поверхностей. Интерполяция по данным в нерегулярно расположенных точках. Методы интерполяции: обратно взвешенных расстояний, естественного соседа, тренда, сплайнов, кригинга. |
Практическая подготовка | Знание основных компонент интерфейса ArcGIS Desktop (каталог, таблица содержания, карта). Настройка символики и подписей объектов. Пространственные и атрибутивные запросы, оверлей. Создание базы геоданных и классов пространственных объектов. Редактирование классов пространственных объектов. Инструменты геообработки ArcToolbox. Создание компоновки карты: название легенда, масштаб, градусная сетка. |
Исходные данные | Данные дрейфующих буев ARGO на акваторию Северной Атлантики, границы стран мелкомасштабной картографической основы. |
Результат | Поверхности температуры за 30.01.2011, построенные различными методами; поверхность кригинга, полученная после обработки фильтром 3х3; изолинии по данной поверхности с шагом 2,5 градуса; профиль температуры по меридиану 38° з.д.; карта с названием, легендой, масштабом и профилем |
Ключевые слова | Интерполяция, аппроксимация, гидрометеорологические поля, картографирование, профили. |
17.1.1 Контрольный лист
- Добавить на карту границы стран и точки наблюдений, оформить в соответствии с указаниями
- Оценить максимально возможное разрешение растра
- Построить поверхность методом обратно взвешенных расстояний
- Построить поверхность методом естественного соседа
- Построить поверхность методом сплайнов с натяжением
- Построить поверхности методом полиномиального тренда со степенями 1,2,3,4,5
- Построить поверхность методом кригинга
- Сгладить данную поверхность фильтром с плавающим окном размера 3х3
- Построить изолинии по данной поверхности
- Построить профиль по меридиану 38° з.д.
- Оформить карту с легендой и масштабом
17.1.2 Аннотация
Моделирование физических полей — основа гидрометеорологического картографирования. Типичный рабочий процесс при создании карт температуры, давления, скорости ветра и прочих непрерывных в пространстве явлений заключается в восстановлении поверхности на основе точечных измерений (или модельных значений). Полученные поверхности можно визуализировать, выполнять их анализ, строить профили и разрезы.
В задании предлагается восстановить поле температуры в Северной Атлантике по данным дрейфующих буев ARGO; проанализировать отличия поверхностей, полученных разными методами. В заключении работы необходимо построить профиль и оформить карту в режиме компоновки.
17.2 Оформление базовых слоев
Скопируйте каталог Ex17 в свой рабочий каталог.
Подключитесь в окне каталога к вашей папке Ex17. Убедитесь, что в ней находится база геоданных Argo.gdb.
Используя контекстное меню базы данных, назначьте ее базой данных по умолчанию.
-
Добавьте на карту слои ArgoBuoys и Countries и оформите их следующим образом:
- ArgoBuoys — черные кружки диаметром 3 пункта
- Countries — заливка серым цветом 30%, обводка серым цветом 60%
-
Включите подписи слоя ArgoBuoys по полю Temp, установите размер шрифта равным 7 пунктам.
Картографическое изображение примет следующий вид:
Снимок экрана №1. Исходные данные
Сохраните документ карты в свою папку под названием Ex17_Interpolation.mxd
17.3 Оценка необходимого разрешения растра
Для оценки минимально необходимого разрешения растра следует вычислить для массива исходных точек среднее расстояние до ближайшего соседа (Nearest Neighbor Distance, NND), которое дает оценку пространственной частоты. Согласно теореме Котельникова, потерь данных можно избежать, если частота дискретизации будет вдвое больше максимальной пространственной частоты. Данная частота дискретизации именуется частотой Найквиста. Интерпретируя это утверждение в терминах растрового анализа, можно сказать, что разрешение растра R должно быть по крайней мере в 2 раза мельче, чем среднее расстояние до ближайшего соседа.
-
Запустите инструмент геообработки Analysis Tools > Proximity > Near и задайте его параметры следующим образом:
Параметр Значение Input Features ArgoBuoys Near Features ArgoBuoys Нажмите ОК:
После завершения работы инструмента откройте атрибутивную таблицу слоя ArgoBuoys и в контекстном меню заголовка поля Near_DIST выберите команду Statistics, чтобы открыть диалог со статистикой поля.
Найдите в диалоговом окне строку Mean (среднее значение), разделите его пополам и округлите полученное значение в меньшую сторону до ближайшего числа, кратного 0,5. Если все сделано правильно, то в результате должно получиться разрешение 2,5 градуса.
Более подробно с решением проблемы выбора оптимального разрешения растра вы можете ознакомиться в статье Hengl T. Finding the right pixel size // Comput. Geosci. 2006. Vol. 32, № 9. P. 1283–1298.
17.4 Интерполяция поверхностей
Используя инструменты геообработки, находящиеся в ArcToolbox в группе Spatial Analyst Tools > Interpolation, постройте растровые поверхности нижеуказанными методами:
Метод | Инструмент геообработки | Выходной растр |
---|---|---|
Обратно взвешенных расстояний | IDW | .Ex17/Argo.gdb/Temp_IDW |
Естественного соседа | Natural Neighbor | …/Ex17/Argo.gdb/Natural |
Сплайнов | Spline | …/Ex17/Argo.gdb/Spline |
Кригинга | Kriging | …/Ex17/Argo.gdb/Temp_Kriging |
Тренда 1,2,3,4,5 степени | Trend (для указания степени полинома используйте параметр Polynomial Order) |
…/Ex17/Argo.gdb/Trend1 ,…/Ex17/Argo.gdb/Trend2 ,…/Ex17/Argo.gdb/Trend3 ,…/Ex17/Argo.gdb/Trend4 ,…/Ex17/Argo.gdb/Trend5
|
Используя гиперссылки в таблице, вы можете перейти на страницу справки и изучить принципы работы каждого из методов интерполяции.
Для всех инструментов будут общими следующие параметры:
Параметр | Значение |
---|---|
Input Point Features | ArgoBuoys |
Z value field | Temp |
Output Cell Size | 2,5 |
Если все выполнено верно, то в вашей базе геоданных и таблице содержания должно появиться 9 новых растров, отражающих поверхность распределения температуры:
Снимок экрана №2. Построенные поверхности
17.5 Настройка отображения поверхностей
Для того чтобы поверхности можно было сравнивать, необходимо визуализировать их в единой цветовой шкале и с одинаковым шагом температуры. Рассмотрим последовательность действий на примере растра, полученного методом кригинга:
Убедитесь, что в свойствах слоя Temp_Kriging на вкладке Symbology включен режим отображения Classified. Нажмите на этой же вкладке кнопку Classify…
-
В появившемся диалоге выберите метод классификации Defined (заданный интервал), установите интервал равным 2,5 метра и нажмите ОК:
-
Выберите сине-бело-красную шкалу для отображения температуры. Диалог свойств слоя примет следующий вид:
-
Нажмите ОК. Картографическое изображение примет следующий вид:
Снимок экрана №3. Поле температуры методом кригинга
Повторите эту операцию для оставшихся растров.
Поочередно включая только нужный растр (так чтобы на карте был виден именно он) сделайте снимки экрана:
Снимок экрана №4. Поле температуры методом обратно взвешенных расстояний
Снимок экрана №5. Поле температуры методом естественного соседа
Снимок экрана №6. Поле температуры методом сплайнов
Снимок экрана №7. Поле температуры методом тренда 1 степени
Снимок экрана №8. Поле температуры методом тренда 2 степени
Снимок экрана №9. Поле температуры методом тренда 3 степени
Снимок экрана №10. Поле температуры методом тренда 4 степени
Снимок экрана №11. Поле температуры методом тренда 5 степени
17.6 Сглаживание поверхности, полученной методом кригинга
Мелкие неровности поверхности, обусловленные методом интерполяции, можно устранить с помощью сглаживания. Для этого часто используется фильтрация с помощью плавающего окна.
Отключите все растры кроме построенного методом кригинга.
-
Запустите инструмент Spatial Analyst Tools > Neighborhood > Focal Statistics и настройте его параметры следующим образом:
Параметр Значение Input Raster Temp_Kriging Output Raster Ex17\Argo.gdb\Temp_Kriging_3x3
Остальные параметры (включая размер окна 3×3) оставьте по умолчанию. Нажмите ОК. После выполнения сглаженный растр будет добавлен в таблицу содержания:
Обратите внимание на размер ячейки.
Визуализируйте сглаженный растр аналогично созданным ранее растрам. Для этого вам потребуется сменить способ его отображения на Classified.
-
Нажмите ОК. Изображение примет цветной, но по прежнему пикселизованный вид:
-
Дважды щелкните на слое Temp_Kriging_3x3, перейдите на вкладку Display и установите режим передискретизации слоя Сubic Convolution (кубическая свертка):
-
Нажмите ОК. Изображение примет более привычный гладкий вид непрерывной поверхности:
Снимок экрана №12. Сглаженная поверхность поля температуры
17.7 Построение линии профиля
Распространенная задача при анализе полей температуры, солености, давление — построение профилей или разрезов. Вам предлагается построить профиль температуры по меридиану 38° з.д.
Создайте в базе геоданных Argo линейный класс пространственных объектов c названием Profile и системой координат WGS84 из группы Geographic Coordinate Systems > World.
Добавьте этот слой на карту и смените его символ на линию черного цвета.
Включите режим редактирования.
-
Выберите в окне Create Features слой Profiles и щелкните правой кнопкой мыши на карте. В появившемся диалоге выберите команду Absolute X,Y чтобы задать координаты первой точки профиля:
-
В появившемся мини-диалоге введите значения для долготы и широты соответственно -38 и 0 и нажмите на клавиатуре Enter.
Повторите эту операцию для ввода конечной точки профиля (координаты -38 и 63 соответственно)
-
Нажмите на клавиатуре F2, чтобы завершить создание линии:
Завершите сеанс редактирования, выбрав на панели Editor команду Editor > Stop Editing.
17.8 Определение температур по линии профиля
Для построения профиля вдоль созданной линии необходимо перенести величины температур с поверхности на узлы линии профиля. Для этого можно воспользоваться функцией интерполяции объектов.
Интерполяция объектов позволяет перенести информацию с поверхности на перекрывающиеся с ней объекты. В частности, при интерполяции линии каждый ее узел получит значение, интерполированное в той же точке с поверхности растра.
-
Запустите инструмент 3D Analyst Tools > Functional Surface > Interpolate Shape и заполните его параметры следующим образом:
Параметр Значение Input Surface Temp_Kriging_3x3 Input Feature Class Profile Output Feature Class .Ex17\Argo.gdb\Profile_Temp
Остальные параметры оставьте по умолчанию и нажмите ОК.
Для корректного отображения широты конвертируйте линию в точки. Для этого запустите инструмент Data Management Tools > Features > Feature Vertices to Points. Назовите выходной класс Profile_Temp_Pts.
Добавьте в точки значения широты, долготы и температуры. Для этого воспользуйтесь инструментом Data Management Tools > Features > Add XY Coordinates.
-
Откройте атрибутивную таблицу получившегося слоя. Она должна иметь следующий вид:
-
Выберите команду меню View > Graphs > Create Graph:
-
Настройте параметры графика следующим образом:
Параметр Значение Graph Type Vertical Line Layer/Table Profile_Temp_Pts Y Field POINT_Z X Field POINT_Y Add to Legend Отключено Диалог примет следующий вид:
-
Нажмите Next и настройте отображение графика следующим образом:
Параметр Значение Title Профиль температуры по меридиану 38° з.д. Axis Properties > Left Температура, °С Axis Properties > Bottom Широта, ° Диалог примет следующий вид:
-
Нажмите Finish. Построенный профиль будет добавлен в окно приложения:
Снимок экрана №13. Профиль температуры
17.9 Оформление карты
Переключитесь в режим компоновки.
Установите масштаб равным 1:70 000 000.
Щелкните на профиле правой кнопкой мыши и выберите команду Add To Layout, чтобы добавить его на страницу компоновки.
-
Оформите карту в соответствии с нижеприведенным изображением. Добавьте на нее название, легенду и численный масштаб:
Для установки нулевого расстояния между плашками цветовой шкалы дважды щелкните на легенде, перейдите на вкладку Layout и установите параметр Vertical Patch Gap равным 0 pt:
Экспортируйте изображение в файл формата PNG и вставьте его в отчет.
Сохраните документ карты.
17.10 Контрольные вопросы
Каким образом выбирается разрешение растра?
Как работает метод обратно взвешенных расстояний?
Как работает метод естественного соседа?
Как работает метод тренда?
Как работает метод кригинга?
Опишите отличия в созданных растрах
Что позволяет сделать фильтрация растра?
Что такое передискретизация растра и для чего она нужна?
Обратите внимание, что поверхность кригинга не всегда соответствует исходным значениям в точках. Чем это может быть обусловлено?