Растровые данные обычно получаются путем сканирования бумажных карт или обработки аэрофотоснимков или спутниковых снимков. Наборы данных, полученные путем сканирования карт, обычно не имеют пространственной привязки (ни внутри набора, ни в виде отдельного файла). Иногда информация о местоположении, поставляемая в наборах данных аэрофотоснимков или космических снимков, является неточной, и такие данные не удается корректно совместить с другими имеющимися пространственными данными. Поэтому, для использования некоторых наборов растровых данных совместно с другими вашими пространственными данными, необходимо осуществить пространственную привязку этих наборов растровых данных в картографической системе координат. Картографическая система координат задается с помощью картографической проекции (способ проецирования искривленной поверхности Земли на плоскость).
Пространственная привязка растровых данных выполняется указанием местоположения, с использованием координат карты, и присвоением системы координат фрейму данных. Пространственно привязанные растровые данные позволяют просматривать данные, выполнять к ним запросы и анализировать их вместе с другими географическими данными. Панель инструментов Пространственная привязка позволяет выполнять пространственная привязку наборов растровых данных и слоев наборов растровых данных (которые могут иметь растровые функции), сервисов изображений и растровых продуктов.
В основном, для задания пространственной привязки набора растровых данных используются следующие шаги:
- В 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, а преобразование является аффинным, он будет записан в world-файл (world file). Если набор растровых данных хранится в базе геоданных, при выполнении команды Обновить пространственную привязку, преобразование также будет сохранено в базе, в виде дополнительной информации, относящейся к этому набору растровых данных. Обновление растрового слоя, сервиса изображения или слоя мозаики выполнит обновление слоя внутри документа карты, но не сохранит измененную пространственную привязку в исходном файле.
В таблице ниже показано, как сохраняется каждый целевой тип.
Пространственная привязка различных растров
Тип данных | Результат |
---|---|
Набор растровых данных | Команда Обновить пространственную привязку обновляет набор растровых данных. |
Растровый слой | Команда Обновить пространственную привязку обновляет слой растровых данных, растры-источники не затрагиваются. |
Слой сервиса изображений | Сервис изображений на сервере не обновляется. После выполнения команды Обновить пространственную привязку можно либо сохранить документ карты (.mxd), либо создать файл слоя (.lyr), чтобы сохранить работу по пространственной привязке. |
Растровый продукт | Растровый продукт не обновляет подлежащие файлы набора растровых данных. После выполнения команды Обновить пространственную привязку можно либо сохранить документ карты (.mxd), либо создать файл слоя (.lyr), чтобы сохранить работу по пространственной привязке. |
Растр с функцией | Растровая функция не обновляет подлежащие файлы растров. После выполнения команды Обновить пространственную привязку можно либо сохранить документ карты (.mxd), либо создать файл слоя (.lyr), чтобы сохранить работу по пространственной привязке. |