Растровые данные – обычно, это отсканированные бумажные карты или наборы аэрофотоснимков или спутниковых изображений. Наборы данных, полученные путем сканирования карт, обычно не имеют пространственной привязки (ни внутри набора, ни в виде отдельного файла). Иногда информация о местоположении, поставляемая с аэрофотоснимками или спутниковыми снимками, является неточной, и такие данные не удается корректно совместить с другими имеющимися пространственными данными. Поэтому, для использования некоторых наборов растровых данных совместно с другими вашими пространственными данными, необходимо осуществить пространственную привязку этих наборов растровых данных в системе координат карты. Система координат карты задается с помощью проекции карты (способ проецирования неплоской поверхности Земли на плоскую поверхность).
Пространственная привязка растровых данных выполняется указанием местоположения, с использованием координат карты, и присвоением системы координат фрейму данных. Пространственно привязанные растровые данные позволяют просматривать данные, выполнять к ним запросы и анализировать их вместе с другими географическими данными. Панель инструментов Пространственная привязка позволяет выполнять пространственная привязку наборов растровых данных и слоев наборов растровых данных (которые могут иметь растровые функции), сервисов изображений и растровых продуктов.
В основном, для привязки растра необходимо выполнить три шага:
- В ArcMap, добавьте растровые данные, которые вы хотите совместить с вашими спроецированными данными.
- Добавьте связи, которые соединяют известные местоположения набора растровых данных с теми же точками на карте. Инструмент Авторегистрация помогает автоматически создавать связи.
- Сохраните информацию о пространственной привязке, если результат вас устраивает.
Привязка растра по опорным точкам
В основном, пространственная привязка растровых данных происходит с использованием имеющихся пространственных данных (целевых данных), таких как растры с пространственной привязкой или класс векторных объектов, которые имеют нужную систему координат карты. Этот процесс включает определение серии опорных точек (известных координат x,y), которые связывают местоположения в наборе растровых данных с соответствующими местами в данных, имеющих пространственную привязку (целевых данных). Опорными точками являются такие местоположения, которые можно точно определить в наборе растровых данных и в реальных координатах. В качестве определяемых местоположений можно использовать многие различные типы объектов, например, перекрестки дорог, устья рек, обнажения горных пород, концы причалов, углы полей, углы улиц или пересечения лесозащитных полос.
Опорные точки используются для трансформирования методом полиномов, которое сместит набор растровых данных из существующего положения в пространственно корректное местоположение. Соединение между опорной точкой набора растровых данных (точка от) и соответствующей точкой уже выровненных данных (точка к) называется связью.
На примере ниже показана опорная «точка к» (желтый крест), расположенная на целевом слое векторных данных на перекрестке улиц, и ассоциированная с ней опорная «точка от» (зеленый крест), расположенная на растре. Связь показана голубой линией, соединяющей обе точки.
Необходимое количество связей зависит от сложности преобразования, которое вы планируете использовать для привязки набора растровых данных к карте. Добавление дополнительных связей не обязательно повышает точность преобразования. Если возможно, то лучше равномерно распределить связи по всему набору растровых данных, а не концентрировать их в одном месте. Обычно, наличие одной связи в каждом углу растра и нескольких по всему растру обеспечивает наилучший результат.
В основном, чем больше область перекрытия между набором растровых данных и целевыми данными, тем лучше результат привязки, поскольку опорные точки, по которым она строится, можно распределить наиболее равномерно. Например, если ваши целевые данные занимают четверть области набора растровых данных, опорные точки будут сконцентрированы только в этом районе. Таким образом, все, что не попадает в область перекрытия, скорее всего, будет привязано некорректно.
Имейте в виду, что точность данных, для которых вы выполняете пространственную привязку, не будет выше точности тех данных, по которым вы это делаете. Чтобы уменьшить количество ошибок, осуществлять пространственную привязку следует по данным самого высокого разрешения и самого крупного масштаба.
Трансформирование растра
После того, как вы создали достаточное количество связей, вы можете привязать или трансформировать набор растровых данных, чтобы он соответствовал координатам целевых данных. Чтобы добиться максимального совпадения координат для каждой ячейки, вы можете использовать трансформацию методом полиномов, сплайн, методом подгонки или подобия.
Трансформирование методом полиномов использует построение полинома на основе опорных точек и подгонку методом наименьших квадратов (LSF). Этот способ оптимизирован для соблюдения общей точности, но не гарантирует локальной точности. Трансформирование методом полиномов использует две формулы: одна для вычисления координат x по входным координатам (x,y) местоположения, а вторая – для вычисления координат y. Задача метода наименьших квадратов – рассчитать общую формулу, которая применима ко всем точкам, обычно за счет небольшого смещения позиций опорных точек. Количество некоррелированных опорных точек, требующееся для этого метода, составляет 1 для нулевого порядка, 3 для первого порядка (аффинного), 6 – для второго и 10 – для третьего порядка. Полиномы низших порядков имеют тенденцию к ошибке случайного типа, тогда как полиномы высших порядков - к ошибке экстраполяции.
Трансформирование методом полиномов первого порядка обычно используется для пространственной привязки изображения. Ниже приведено уравнение для трансформации набора растровых данных, с использованием аффинного (первого порядка) полиномиального преобразования. Шесть параметров определяют трансформацию строк и столбцов растра в координаты карты.
Полином нулевого порядка будет использован для смещения ваших данных. Это часто используется в ситуации, когда ваши данные уже имеют пространственную привязку, но небольшой сдвиг лучше выровняет ваши данные. Для выполнения смещения ваших данных методом полинома нулевого порядка необходима только одна связь. Рекомендуется создать несколько связей, затем выбрать ту, которая выглядит наиболее точной.
Используйте трансформацию первого порядка (аффинную) для сдвига, масштабирования или поворота набора растровых данных. Это приводит к тому, что прямые линии исходного растра выглядят прямыми и в трансформированном наборе растровых данных. Таким образом, квадраты и прямоугольники набора растровых данных обычно деформируются в параллелограммы с произвольным масштабированием и угловой ориентацией.
Всего с тремя связями, математическое выражение, используемое в трансформации первого порядка, может точно привязать каждую точку растра к целевым данным. Использование более трех связей вносит искажения, или невязку, которые распределяются по всем связям. Однако, следует задавать более трех связей, поскольку, если одна из них окажется неточной, это окажет гораздо большее влияние на процесс трансформирования. Следовательно, несмотря на увеличение математической ошибки трансформации при увеличении числа связей, общая точность трансформации также будет увеличиваться.
Чем выше порядок трансформации, тем более сложные искажения могут быть скорректированы. Однако трансформация выше третьего порядка используется очень редко. Трансформации высокого порядка требуют большее количество связей и, следовательно, больше времени на обработку. Как правило, если набор растровых данных необходимо растянуть, повернуть или изменить его размер, следует использовать трансформацию первого порядка. Для более сложного преобразования применяются трансформации второго или третьего порядка.
Трансформация методом сплайна – это истинный метод резинового листа, оптимизированный для обеспечения локальной, но не глобальной точности привязки. Она основана на сплайн-функции – кусочном полиноме, который обеспечивает гладкие непрерывные переходы между соседними полиномами. Она обеспечивает точное совмещение исходной и конечной опорных точек, но точность совпадения удаленных пикселов не гарантируется. Эта трансформация удобна, если правильное размещение опорных точек имеет первостепенное значение. Добавление дополнительных опорных точек может увеличить общую точность сплайн трансформации. Для нее требуется как минимум 10 опорных точек.
Применение трансформирования оптимизирует как общую точность (метод наименьших квадратов, LSF), так и локальную. Она построена на алгоритме, который оптимизирует методы интерполяции полиномиальной трансформации и нерегулярной триангуляционной сети (TIN). Трансформирование методом полиномов выполняется с помощью двух наборов опорных точек, которые располагают их максимально точно с учетом техники интерполяции TIN. Для подгонки границ необходимо как минимум три опорных точки.
Проективное преобразование может сохранить линии так, что они останутся прямыми. При этом параллельные линии могут оказаться непараллельными. Проективное преобразование особенно полезно для перспективных изображений, отсканированных карт и спутниковых продуктов Landsat или Digital Globe. Для выполнения проективного преобразования необходимо как минимум четыре связи. При наличии четырех связей среднеквадратическая ошибка (RMS) будет равняться нулю. При наличии большего количества связей ошибка RMS будет чуть выше нуля.
Преобразование подобия является трансформацией первого порядка, которая пытается сохранить форму исходного растра. Среднеквадратичная ошибка имеет тенденцию к возрастанию, по сравнению с другими полиномными трансформациями, поскольку сохранение формы является более приоритетным, чем точная подгонка.
Интерпретация среднеквадратической ошибки
Когда общая формула выведена и применена к опорным точкам, производится измерение ошибки – невязки. Эта ошибка является разницей между реальным и вычисленным положением «точки к». Общая ошибка вычисляется из квадратного корня (RMS) суммы ошибок всех невязок. Это значение описывает степень согласования трансформации между всеми опорными точками (связями). Если ошибка слишком велика, для ее уменьшения можно удалить или добавить опорные точки.
Хотя ошибка RMS является хорошей оценкой точности трансформации, не следует путать маленькую величину ошибки RMS с точностью привязки. Например, результат преобразования может иметь значительные неточности из-за неверного выбора опорных точек. Чем больше правильных опорных точек вы используете, тем более точным будет результат конвертации исходных данных. Обычно, трансформация методом подгонки границ и сплайна дают ошибку RMS около нуля или ноль; однако это не означает, что изображение точно привязано в пространстве.
Прямая невязка показывает ошибку в тех же единицах измерения, что и установлены пространственной привязкой фрейма данных. Обратная невязка отображают ошибку в единицах измерения - пикселах. Прямая и обратная невязка – это мера точности, которая отображается в пикселах. Значения невязок, близкие к нулю, рассматриваются как более точные.
Пересчет набора растровых данных
Когда вы трансформируете, проецируете или пересчитываете набор растровых данных, конвертируете его из одной проекции в другую или изменяете размер ячейки, вы выполняете геометрическое преобразование. Геометрическое преобразование – процесс изменения геометрии набора растровых данных из одного координатного пространства в другое. К геометрическим преобразованиям относятся «резиновый лист» (обычно используется в пространственной привязке), проекция (используется информация о проекции для трансформации данных в другую проекцию), сдвиг (одинаковое смещение всех координат), поворот (вращение всех координат на одинаковый угол) и изменение размера ячейки набора растровых данных.
После выполнения геометрического преобразования, центры ячеек исходного растра редко совпадают с центрами ячеек итогового; однако, значения должны быть привязаны к центрам.
Вам может показаться, что каждая ячейка набора растровых данных трансформируется в новое местоположение карты, но, на самом деле этот процесс происходит не так. Во время выполнения пространственной привязки, с использованием координат карты вычисляется матрица пустых ячеек. Каждой пустой ячейке затем присваивается значение, основанное на результате пересчета.
Три наиболее часто использующиеся метода пересчета это: ближайшего соседа, билинейная интерполяция и кубическая свертка. Все эти методы присваивают значение каждой пустой ячейке по результатам обработки ячеек набора растровых данных, не имеющего пространственную привязку.
Трансформирование методом ближайшего соседа является наиболее быстрым методом пересчета и хорошо подходит для обработки категорийных или тематических данных, поскольку при этом не изменяются значения входных ячеек. После того, как положение центров ячеек выходных данных сопоставлено с центрами ячеек входного растра, метод ближайшего соседа определяет положение центра ближайшей ячейки входного растра и присваивает это значение ячейке выходного растра.
При использовании метода ближайшего соседа, значения ячеек входного растра не изменяются. Значение 2 во входном растре всегда останется значением 2 в выходном; оно не будет изменено на 2,2 или 3. Поскольку выходные значения остаются неизменными, метод Ближайшего соседа следует использовать с номинальными или порядковыми данными, где каждое значение представляет класс, функциональную единицу или классификацию – это могут быть категорийные данные, такие как типы почвы, лесов или землепользования.
Билинейная интерполяция использует значения четырех ближайших центров входных ячеек для вычисления одного значения в выходном растре. Значение выходной ячейки является средневзвешенным значением этих четырех входных ячеек, уточненным согласно их удаленности от центра соответствующей ячейки входного растра. По сравнению с методом ближайшего соседа, этот метод пересчета позволяет получить более гладкое изображение.
Поскольку значения выходных ячеек вычисляются в зависимости от их относительного положения и значений входных ячеек, билинейная интерполяция подходит для данных, в которых положение относительно известной точки или явления определяет значение ячейки – т.е. для непрерывных поверхностей. Высоты, уклоны, интенсивность шума аэропорта или степень солености грунтовых вод вокруг устья реки представляют собой явления, которые отображаются с помощью непрерывных поверхностей и лучше всего пересчитываются с помощью метода билинейной интерполяции.
Кубическая свертка похожа на билинейную интерполяцию, отличие состоит в том, что средневзвешенное значение вычисляется по значениям в центрах 16 ближайших ячеек. Кубическая свертка позволяет получить более резкое изображение, чем билинейная интерполяция, т.к. большее количество ячеек участвует в процессе вычисления выходного значения. Поэтому этот метод пересчета часто используется для обработки изображений, таких как спутниковые и аэрофотоснимки.
Билинейная интерполяция и кубическая свертка не должны использоваться с категорийными данными, поскольку в выходных данных категории сохранены не будут. Однако, все три метода могут использоваться с непрерывными данными, при этом метод ближайшего соседа вызывает появление блочных структур, билинейная интерполяция дает более сглаженный результат, а кубическая свертка позволяет получить самое четкое изображение. Приступая к работе над большим проектом пересчета, рекомендуется создать прототип и опробовать несколько методов пересчета, чтобы определить метод, наиболее подходящий к вашим данным.
Необходимо ли трансформировать растр?
Вы можете сохранить трансформированный набор растровых данных после выполнения пространственной привязки, используя команду Трансформировать на панели инструментов Пространственная привязка, или с помощью инструмента Трансформировать. Кроме того, вы можете сохранить информацию о преобразовании в дополнительном файле, используя команду Обновить пространственную привязку на панели инструментов Пространственная привязка.
Трансформирование создает новый набор растровых данных, имеющий пространственную привязку в координатах карты. Вы можете сохранить его как файл BIL, BIP, BMP, BSQ, DAT, GIF, GRID, IMG, JPEG, JPEG 2000, PNG или TIFF. ArcGIS не требует обязательного постоянного трансформирования набора растровых данных для отображения его вместе с другими пространственными данными; однако, это следует сделать, если вы собираетесь анализировать его или использовать в других программах, которые не распознают пространственную привязку, хранящуюся в отдельном файле привязки.
При обновлении пространственной привязки, преобразование будет сохраняться в отдельном файле – новый набор растровых данных создан не будет, как это происходит при сохранении преобразования набора растровых данных. Для набора растровых данных в виде файла, такого как TIFF, трансформирование будет сохранено во внешнем файле XML с расширением .aux.xml. Если набор растровых данных является необработанным изображением, таким как BMP, а преобразование является аффинным, оно будет записано в файл привязки. Если набор растровых данных хранится в базе геоданных, при выполнении команды Обновить пространственную привязку, преобразование также будет сохранено в базе, в виде дополнительной информации, относящейся к этому набору растровых данных. Обновление растрового слоя, сервиса изображения или слоя мозаики выполнит обновление слоя внутри документа карты, но не сохранит измененную пространственную привязку в исходном файле.
В таблице ниже показано, как сохраняется каждый целевой тип.
Пространственная привязка различных растров
Тип данных | Результат |
---|---|
Набор растровых данных | Команда Обновить пространственную привязку обновляет набор растровых данных. |
Растровый слой | Команда Обновить пространственную привязку обновляет слой растровых данных, растры-источники не затрагиваются. |
Слой сервиса изображений | Сервис изображений на сервере не обновляется. После выполнения команды Обновить пространственную привязку можно либо сохранить документ карты (.mxd), либо создать файл слоя (.lyr), чтобы сохранить работу по пространственной привязке. |
Растровый продукт | Растровый продукт не обновляет подлежащие файлы набора растровых данных. После выполнения команды Обновить пространственную привязку можно либо сохранить документ карты (.mxd), либо создать файл слоя (.lyr), чтобы сохранить работу по пространственной привязке. |
Растр с функцией | Растровая функция не обновляет подлежащие файлы растров. После выполнения команды Обновить пространственную привязку можно либо сохранить документ карты (.mxd), либо создать файл слоя (.lyr), чтобы сохранить работу по пространственной привязке. |