Привязка топографических карт в SAGA

Материал из GIS-Lab
Перейти к навигации Перейти к поиску
Эта страница является черновиком статьи.


Последовательность шагов по привязке листа топокарты в географической системе координат (ГСК Pulkovo 42) и последующему переходу из нее – в спроецированную (ПСК UTM WGS 84)

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

Традиционно процесс координатной привязки состоит из следующих этапов:

  1. Расстановка точек привязки
  2. Проверка точности и правильности расстановки точек
  3. Выбор метода передискретизации элементов изображения
  4. Выбор модели трансформации
  5. Выбор размера ячейки результирующего изображения
  6. Осуществление трансформации

Как и большинство современных ГИС, SAGA предоставляет пользователю инструменты координатной привязки картографических материалов, а также инструменты перехода между проекциями, реализующиеся встроенными библиотеками Proj.4 и GeoTRANS. Однако важно отметить, что процесс координатной привязки в SAGA происходит по несколько упрощенной схеме:

  1. Расстановка точек привязки
  2. Проверка точности и правильности расстановки точек
  3. Выбор метода передискретизации элементов изображения
  4. Выбор модели трансформации
  5. Выбор размера ячейки результирующего изображения
  6. Осуществление трансформации

Такой «сокращенный» вариант не всегда способен обеспечить высокую точность привязки, однако при качественно отсканированных материалах он позволяет добиться хороших результатов. Рассмотрим процедуру пошагово.

Импорт отсканированных материалов

Прежде чем начать работу с отсканированными материалами, которые могут предоставляться в таких распространенных форматах как *.JPEG, *.TIF или *.BMP, их необходимо импортировать в рабочую среду SAGA, т.е. перевести в собственный растровый формат данной ГИС.

Запустите GUI SAGA и загрузите файл отсканированной топографической карты (в нашем случае М-37-12.JPEG). Для этого в библиотеке модулей (вкладка Modules рабочей области или аналогичный элемент панели меню) выберите Import/Export – Images => Import Image (bmp, jpeg, png…) двойным кликом. После этого в диалоговом окне модуля укажите путь к файлу и нажмите Okay.

После появления в окне сообщений Module execution succeeded перейдите на вкладку рабочей области Data и дважды кликните по элементу М-37-121, чтобы он отобразился в главном окне в виде карты.

Сохраните импортированный файл – кликните на элементе М-37-121 правой кнопкой мыши, в контекстном меню выберите Save As…, а в диалоге Save Grid укажите путь к папке проекта (в нашем случае – \georeferencing).

Обратите внимание, что теперь файл по умолчанию сохраняется в собственном растровом формате SAGA Grid - *.SGRD.

Для удобства дальнейшей работы создайте файл проекта - он объединит все файлы, которыми вы будете оперировать. Последовательно выберите на панели меню File => Project => Save Project As… и сохраните файл проекта в рабочей папке (в нашем случае – topomap_georeferencing. Собственный формат файлов проектов SAGA Project - *.SPRJ предлагается по умолчанию.

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

Расстановка точек привязки

Для введения точек привязки из библиотеки модулей выберите Projection – Georeferencing => Create reference points [interactive], двойным кликом активизируйте модуль и не меняя параметров диалогового окна нажмите Оkay.

После активизации модуля в окне сообщений появится предложение Interactive module execution has been started, после чего можно приступить к непосредственному вводу точек привязки.

  • Увеличьте необходимый фрагмент карты (например, верхний левый угол), используя инструмент панели меню Saga georef zoom.pngZoom. Лист карты удобнее двигать инструментом Saga georef pan.pngPan, а для возвращения к первичному размеру используйте кнопку Saga georef fullext.pngZoom To Full Extent;
  • Используя инструмент Saga georef action.pngAction поставьте двойным кликом точку на карте, а в появившемся диалоговом окне Point Position введите координаты точки в десятичных градусах, используя в качестве разделителя знак . «точка», а не , «запятая».
  • Чтобы в дальнейшем видеть поставленные точки нужно открыть рабочий файл с точками привязки в компоновку-вид с топографической картой. Для этого на вкладке Data дважды кликните по Reference points (Origin) и в диалоговом окне Add layer to selected map выберите уже имеющуюся 01. М-37-121 и нажмите ОК.

Чтобы убедиться что все сделано верно, перейдите на вкладку Maps, которая должна иметь следующий вид:

Saga georef 10.png

Обратите внимание на то, что поставленная вами точка привязки теперь стала видимой.

  • Аналогичным образом проставьте следующие точки по углам рамки и центру листа - 4-5 точек будет вполне достаточно. После этого остановите модуль расстановки точек привязки – в меню Modules уберите галочку рядом с Create Reference Points.
Saga georef 11.png
  • Сохраните файл с расставленными точками привязки. Для этого на вкладке Data выберите элемент Reference Point (Origin) и в контекстном меню укажите Save As… . В окне диалога Save Shapes сохраните файл в рабочую папку (в нашем случае как - reference_points_pnt.SHP).

Переход из локальной (файловой) в географическую систему координат

Используя файл с введенными точками привязки переведем карту из локальной в географическую систему координат на основании известных координат точек. Для этого активизируйте модуль привязки растров Projection – Georeferencing => Georeferencing Grids и установите в диалоговом окне следующие параметры:

  • выберите в качестве файла точек привязки созданный ранее шейп-файл;
  • проставьте координаты Х и У;
  • укажите растр для которого будет проводится операция;
  • в качестве метода передискретизации выберите Nearest Neighbor.
Saga georef 12.png

Назначение известной системы координат (ГСК Pulkovo 1942)

Для прописывания уже известной системы координат воспользуемся модулем Projection – Proj.4 => Set Coordinate Reference System, который позволяет сделать это несколькими альтернативными способами:

  1. записать в формате кода библиотеки Proj.4;
  2. установить вручную, воспользовавшись диалогом из 30 исходных параметров;
  3. импортировать из уже готового текстового .prj-файла;
  4. записать код EPSG;
  5. выбрать соответствующий код EPSG из имеющегося списка географических систем координат;
  6. выбрать соответствующий код EPSG из имеющегося списка спроецированных систем координат;
  7. импортировать данные о системе координат из растра;
  8. импортировать данные о системе координат из шейп-файла.
Saga georef 13.png

В данном случае нам известно, что исходная карта использует систему координат 1942 года, базирующуюся на эллипсоиде Красовского, т.е. мы имеем дело с ГСК Pulkovo 1942. Выбрав соответствующий код EPSG из имеющегося списка географических систем координат (опция 5), мы получим следующую запись в формате кода Proj.4:

+proj=longlat +ellps=krass +no_defs

Поскольку в дальнейшем планируется переход от датума Pulkovo 42 к WGS 84, для удобства сразу же зададим параметры этой трансформации на основании ГОСТ Р 51794-2008. Для этого дополним код группой параметров towgs84:

+proj=longlat +ellps=krass +towgs84=23.57,-140.95,-79.8,0,-0.35,-0.79,-0.22 +no_defs
Saga georef 14.png

Аналогичным образом можно описать проекцию и через диалог из 30-ти параметров (опция 2), который по окончании будет иметь следующий вид

Saga georef 15.png

После того, как вы удобным для вас способом описали проекцию и в поле Data Objects => Grids указали соответствующий файл, можно присваивать проекцию. По окончании работы модуля появится соответствующее сообщение. Если теперь перейти на вкладку Description окна Object Properties, то можно увидеть, что информация о системе координат файла выглядит следующим образом:

Saga georef 16.png

Не забудьте сохранить изменения, нажав Save в контекстном меню файла.

Переход из географической системы координат (Pulkovo 1942) в спроецированную (UTM WGS 84)

Переходы между системами координат и проекциями в SAGA, реализуемые с помощью библиотеки Proj.4, возможно осуществить несколькими альтернативными способами:

  1. Projection - Proj.4 => Proj.4 (Command Line Arguments, Grid) - параметры перехода задаются в виде командной строки в формате Proj.4;
  2. Projection - Proj.4 => Proj.4 (Dialog, Grid) - параметры перехода задаются в диалоговом режиме на основании 28 предустановленных показателей.

Аналогичные модули реализованы для шейп-файлов (Proj.4 (Dialog, Shapes) или Proj.4 (Command Line Arguments, Shapes)), а также нескольких файлов (Proj.4 (Command Line Arguments, List of Shapes Layers), Proj.4 (Dialog, List of Shapes Layers), Proj.4 (Command Line Arguments, List of Grids), Proj.4 (Dialog, List of Grids)).

Способ 1 - строка аргументов Proj.4

В диалоговом окне соответствующего модуля сначала выбираем файл, которому мы уже присвоили ранее СК Pulkovo 1942 - в таком случае информация о проекции в строке ее описания появится автоматически. Далее, описываем параметры новой проекции:

+proj=utm +zone=37 +ellps=WGS84 +datum=WGS84 +units=m +no_defs

В качестве метода интерполяции указываем Nearest Neighbor и жмем Okay. После этого появится окно с информацией об основных параметрах получаемого растра, согласившись с которыми вы запустите процесс трансформации.

Saga georef 17.png
Saga georef 18.png

По окончании во вкладке Data появится новый элемент к названию которого будет добавлено [Universal Transverse Mercator (UTM)]. Воспользовавшись контекстным меню, сохраните новый файл под удобным для вас именем.

NB К сожалению, SAGA не присваивает файлу информацию о проекции автоматически, поэтому чтобы ее добавить по завершении трансформации вновь воспользуйтесь модулем Projection - Proj.4 => Set Coordinate Reference System.

Способ 2 - установка параметров через диалог

В диалоге Projection - Proj.4 => Proj.4 (Dialog, Grid) сначала описываем параметры исходной проекции Source Projection Parameters аналогично тому, как это делалось при назначении ГСК Pulkovo 1942. В результате диалог должен выглядеть следующим образом:

Saga georef 19.png

При этом часть диалога General Settings остается без изменений, исходным файлом устанавливается растр в ГСК.

Переходим к диалогу описания целевой проекции Target Projection Parameters, который должен выглядеть следующим образом:

Saga georef 20.png

В этом случае в General Settings прописываются такие параметры проекции как центральный меридиан (в соответствии с зоной UTM), ложное смещение на восток, масштабный коэффициент. Разобравшись с целевой проекцией снова возвращаемся в главное окно диалога, устанавливаем Nearest Neighbor в качестве метода интерполяции и запускаем процесс трансформации.

Saga georef 21.png

После этого перед вами сначала появится окно где нужно будет вести номер зоны UTM, а затем - окно с параметрами создаваемого растра.

Saga georef 22.png
Saga georef 23.png

Последовательное нажатие Okay в каждом из них позволит завершить трансформацию.