Форум Блог
pix

Использование GDAL для привязки растровых материалов

Описание работы с библиотекой GDAL для привязки растровых данных

Библиотека GDAL - очень полезный, бесплатно распространяемый набор инструментов и библиотек с открытым исходным кодом. Использование этих инструментов это один из немногих способов осуществить географическую привязку растрового изображения используя исключительно бесплатное (и легальное) ПО.

Привязка растровых изображений, которые кроме файловой (пиксельной) другой системы координат не имеют (например отсканированных изображений) проводится в два шага. Если растр уже имеет географическую или спроектированную систему координат и ее нужно изменить на другую то следует переходить сразу к шагу 2.

1Назначение контрольных точек:

На этом этапе, информация о том, какие конечные координаты (Lat, Long) должен получить определенный пиксел (имеющий пиксельные координаты X,Y). Конечные координаты не обязательно должны быть широтой долготой, они также могут быть иметь и спроектированную прямоугольную систему координат:

gdal_translate.exe -of GTiff -gcp X Y Long Lat source.tif output.tif

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

gdal_translate.exe -of GTiff -gcp 136 172 49 -11.3333 -gcp 3363 187 49.5 -11.3333 -gcp 56594 208 50 -11.3333 source.tif output.tif

Проверить, правильно ли прописались контрольные точки можно с помощью listgeo:

listgeo.exe test.tif

В случае если операция осуществлена корректно, в тэгах GeoTIFF должна появиться информация о контрольных точках:

запуск listgeo

Трансформация растра

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

-s_rsr - исходная система координат, в формате строки описания системы координат PROJ. Исходная система координат должна соответствовать системе координат введенных на первом этапе контрольных точек.

-t_srs - конечная система координат, если необходимо только трансформировать растр в систему координат контрольных точек, то она должна быть равна исходной.

gdalwarp.exe -s_srs "+proj=longlat +ellps=krass +datum=Pulkovo_1942" -t_srs "+proj=longlat +ellps=krass +datum=Pulkovo_1942" output.tif result.tif

либо можно ее вообще не указывать, опять же, в этом случае будет просто произведена аффинная или полиномиальная трансформация растра (подробнее), которые к проективным преобразованиям отношения не имеют:

gdalwarp.exe output.tif result.tif

Примечания:

  • Названия файлов не рекомендуется начинать с цифр
  • По умолчанию для трансформации используется полиномиальное преобразование, причем его порядок определяется количеством точек, что не всегда удобно, так как если у вас много контрольных точек, то выбрано будет преобразование высокого порядка, которое сильно деформирует растр, что в большинстве случаев неприемлемо. Чтобы установить определенный порядок полиномиального преобразования, нужно использовать ключ -order n, где n - порядок полинома.
  • GDAL также позволяет использовать преобразование thin-plate spline, для этого нужно использовать ключ -tps.

Благодарим за идею Григория Морозова

Обсудить в форуме (Комментариев - 0)

См. также:

Координатная привязка карты в ArcMap >>>
gdalwarp >>>
gdal_translate >>>

Последнее обновление: March 29 2008
(Наверх)

E-mail: 3 цифры: Введите 3 цифры с картинки в поле
Комментарий, вопрос, ошибка: (?)

Если Вы обнаружили на сайте ошибку, выберите фрагмент текста и нажмите Ctrl+Enter (?)

О нас : Статьи : Программы : Форум (все) : Документация : Контакты : Участие : English

Новости сайта:(?)

горные лыжи новости; Подробнее о строительство дачных домов Россия; Дизельные электростанции производства Cummins.