Привязка векторных данных находящихся в неизвестной или файловой системе координат

Материал из GIS-Lab
Перейти к навигации Перейти к поиску
Эта страница опубликована в основном списке статей сайта
по адресу http://gis-lab.info/qa/shapewarp.html


Решение задачи с которой часто приходится сталкиваться при работе с непривязанными векторными данными


На заре ГИС, пользователи (особенно начинающие) мало внимания внимания уделяли присваиванию системы координат создаваемым данным. Зачастую, отсканированные материалы, минуя процесс географической привязки сразу отправлялись на оцифровку, такое явление нередко и в наши дни и является типичной ошибкой начинающих пользователей. Результатом такого подхода обычно являются данные, не имеющие географической системы координат, которые, соответственно, невозможно наложить на другие - привязанные данные, трансформировать в другую систему координат, производить по ним вычисления длин, углов, координат объектов и т.д.

В качестве локальной системы координат, в принципе, может выступать любая неизвестная вам СК. То есть если Вы получили набор данных, который, как заведомо известно, находится в определенной географической или прямоугольной СК, но определить ее Вам не удалось, можно рассматривать эти данные как данные в локальной СК и трансформировать их в нужную вам систему используя подход описанный ниже.

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

Непривязанный растр -> Привязанный растр -> Вектор

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

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

Независимо от ПО, исходной и конечной системы координат, для привязки имеющегося набора данных (как и вообще для привязки любых данных) понадобится источник координат: точки GPS или уже привязанный материал (растровый, векторный).

Принцип работы:

  1. Загрузить привязываемый набор данных и набор данных к которому будет осуществляться привязка;
  2. Расставить точки привязки (в терминологии ArcGIS: displacement links), ОТ непривязанного К привязываемому набору данных;
  3. Выбрать модель трансформации (аффиная, полиномиальная и т.д.) в зависимости от количества расставленных точек привязки;
  4. Запустить процесс трансформации, который создаст новый набор данных или изменит существующий;
  5. Проверить качество привязки, т.е. соответствие только что привязанного набора данных тому набору данных, который использовался в качестве источника правильных координат.

В зависимости от ПО, данная задача решается несколько по разному:

Arcview GIS

При работе в Arcview GIS, для выполнения операции трансформации необходимо воспользоваться бесплатным расширением Shapewarp. (подробное описание работы с ним)

ArcGIS

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

Для трансформации используется панель Spatial Adjustment (View\Toolbars\Spatial Adjustment). Для начала работы необходимо загрузить трансформируемый набор данных и начать его редактирование (Editor\Start editing). Далее следует следовать общему принципу работы.

панель Spatial Adjustment

Внимание, перед выполнением данной операции настоятельно рекомендуется сделать запасную копию данных.

  1. Открыть ArcGIS
  2. Загрузить привязываемый набор данных
  3. Включить панели Editor и Spatial Adjustment
  4. Начать редактирование привязываемого набора данных, Editor\Start Editing
  5. Указать трансформируемый набор данных, выбрать трансформацию всех объектов, Spatial adjustment\Set adjust data, All features in these layers.
  6. Загрузить данные к которым осуществляется привязка (если привязка осуществляется по набору известных координат, то можно этот этап пропустить или создать из этого набора точечный shape-файл)
  7. Используя инструменты Displacement links и Modify displacement links расставить векторы привязки (внивание: ОТ привязываемого материала - К привязанному). Если привязка осуществляется к набору координат, т.е. второй - привязанной темы нет, то вектора привязки надо расставить таким образом, чтобы их начало стояло в точке на привязываемой карте, конец вектора может быть в любом месте, на следующем шаге он будет изменен.
  8. Если вы привязываете к некой уже привязанной теме, то этот шаг можно пропустить. Если привязка осуществлялась к набору координат, то далее нужно открыть таблицу векторов привязки и в полях X и Y destination указать правильные координаты для каждой точки (X - долгота, Y - широта). Координаты вводятся в формате dd.ddddddd (десятичные градусы). Если ваши координаты в отличном от этого формате, [dms2dd.html необходимо их пересчитать].
  9. Выбрать метод трансформации, выбор метода зависит от количества векторов привязки, которые вы расставили.
  10. После этого на панели Spatial Adjustment станет доступной опция Adjust, которую и надо выбрать. В результате этой операции привязываемый векторный набор данных должен визуально измениться.
  11. Теперь нужно либо сохранить внесенные изменения, либо, чтобы более дальновидно, сохранить их под новым именем. Для этого нужно правой кнопкой мыши выбрать привязываемую тему (темы) и выбрать Data\Data export. Соответственно, сохранять изменения в исходной теме не нужно.
  12. Критический момент данной операции - проверка качества привязки, здесь может пригодиться любой shape-файл на ту же территорию, про который заранее известно, что он правильно привязан. Если вы еще не сконвертировали набор координат в точечный shape-файл, то стоит это сделать сейчас, чтобы можно было, наложив точки, к которым осуществлялась привязка можно было оценить насколько она удалась, т.е. точки которые расставлялись в процессе соответствуют точкам с известными координатами.


Ссылки по теме