Перевод из одной системы координат в другую

Вопросы по нескольким пакетам сразу, или вопросы, которые непонятно к какой ГИС отнести
database
Новоприбывший
Сообщения: 3
Зарегистрирован: 18 мар 2009, 00:26
Репутация: 0

Перевод из одной системы координат в другую

Сообщение database » 18 мар 2009, 13:18

Добрый день!

Есть в наличии карта в файл (bmp) размером 30720x23040 пикселей. Файл содержит только изображение, других данных нет. То есть по углам карты нет никаких координат. Фрагмент карты. На карте мне известны координаты всех строений (домов), но эти координаты представлены в локальной системе координат, то есть задаются по оси x и y.

Мне необходимо привязать эти данные к Google Maps.

В идеале хочется получить:

Преобразовать все точки с карты в координаты для Google Maps, которые хранятся в MySql'e. + пересчет всех точек делать автоматически.

Написать программу, которая будет переводить все в нужные координаты могу, но не понимаю принципа перевода.

Заранее спасибо!

geologic
Гуру
Сообщения: 852
Зарегистрирован: 15 сен 2005, 13:19
Репутация: 6
Откуда: москва
Контактная информация:

Re: Перевод из одной системы координат в другую

Сообщение geologic » 18 мар 2009, 16:36

Прежде чем что-либо делать - рассчитывать, строить, преобразовывать - вам нужно привязать вашу картинку (ваш растр). Привязывать надо не просто "к имеющимся данным" (координатам), а к данным в какой-либо известной системе координат. По научному это называется "геореференсировать". Поскольку системы координат и проекции на их основе бывают разные, нужно выбрать одну. Удобнее привязывать к "родной" проекции, к той, в которой карта изначально была сделана. Для российских топокарт и планов это, как правило, Проекция Гаусса-Крюгера на основе СК Пулково-42. Как установить проекцию и как привязывать, зависит от софта, которым вы умеете пользоваться - OZI Explorer, Mapinfo, ArcView, ArcGIS etc.

Общие принципы геопривязки, привязка в ArcView/ArcMap
http://www.geofaq.ru/art/2wld.shtm
О проекциях вообще, типовые вопросы-ответы
http://gis-lab.info/qa/proj-sk-faq.html

Сводка для начинающих вот
http://www.geofaq.ru/pbylevels.php?level=1&cat=geo

Аватара пользователя
Максим Дубинин
MindingMyOwnBusiness
Сообщения: 9129
Зарегистрирован: 06 окт 2003, 20:20
Репутация: 748
Ваше звание: NextGIS
Откуда: Москва
Контактная информация:

Re: Перевод из одной системы координат в другую

Сообщение Максим Дубинин » 18 мар 2009, 18:03

Написать программу, которая будет переводить все в нужные координаты могу, но не понимаю принципа перевода.
Не надо писать, разумеется все давно написано. Берете например свободный gdal и привязываете.
пристегивайтесь, турбулентность прямо по курсу

Tonic
Новоприбывший
Сообщения: 12
Зарегистрирован: 16 фев 2009, 09:11
Репутация: 0

Re: Перевод из одной системы координат в другую

Сообщение Tonic » 19 мар 2009, 10:33

geologic писал(а):Привязывать надо не просто "к имеющимся данным" (координатам), а к данным в какой-либо известной системе координат. По научному это называется "геореференсировать". Поскольку системы координат и проекции на их основе бывают разные, нужно выбрать одну. Удобнее привязывать к "родной" проекции, к той, в которой карта изначально была сделана. Для российских топокарт и планов это, как правило, Проекция Гаусса-Крюгера на основе СК Пулково-42.
sim писал(а):Не надо писать, разумеется все давно написано. Берете например свободный gdal и привязываете.
Сюда вопрос! Как при помощи gdal (может еще что есть) "геореференсировать" карты из Пулково-42 в WGS-84(или в другую)??? Это надо для того чтобы корректно нарезать советские карты с помощью программы MapCruncher (здесь инструкция по ней).
При простой привязки карт с ее помощью идут погрешности.

p/s Кажется MapCruncher использует не WGS (MapCruncher uses an approximation to reproject to-scale maps from their original projections into VE’s Mercator projection)

geologic
Гуру
Сообщения: 852
Зарегистрирован: 15 сен 2005, 13:19
Репутация: 6
Откуда: москва
Контактная информация:

Re: Перевод из одной системы координат в другую

Сообщение geologic » 19 мар 2009, 10:45

Конкретно про GDAL думаю, sim расскажет, это действительно бесплатный и хороший софт. Я же поправлю чисто логику ваших рассуждений. Вы, похоже, не очень прочитали мои объяснения, ну и по ссылкам тем более не дошли до сути?

Геореференсировать ваш лист надо не из одной проекции с другую, а В ОДНОЙ проекции ДО того, как вы будете преобразовывать. Ну как бы чтобы программы знали, в какой географической системе составлены ваши данные или идут на данный момент. Им пачпорт, тскать, оформить, точнее, регистрацию ;) Эти азы хорошо изложено по ГИС-лабовской ссылке. Лучше геореференсировать в ГК, но можно и сразу на WGS натянуть. В географическую систему (широта-долгота) нежелательно, в любом софте будут те самые искажения, которых вы опасаетесь.

После этого можно будет корректно трансформировать ваши данные (вашу карту) из одной проекции в любую другую, можно тем же софтом, что и привязывали, можно другим, согласно "пачпорту" (геопривязке).
Последний раз редактировалось geologic 19 мар 2009, 12:04, всего редактировалось 1 раз.

Tonic
Новоприбывший
Сообщения: 12
Зарегистрирован: 16 фев 2009, 09:11
Репутация: 0

Re: Перевод из одной системы координат в другую

Сообщение Tonic » 19 мар 2009, 10:57

geologic писал(а):не очень прочитали мои объяснения
Извиняюсь, что влез не в свою тему, но вопросы похожие, только у меня он проще (ИМХО), т.к. я знаю первоначальные данные растровых изображений (советские карты в Пулково-42, причем привязанные в OziExplorer-е), т.е. "пачпорт" известен (осталось сменить гражданство и получить новый "пачпорт") :) .
А вот каким софтом это сделать и как правильно? (желательно со свободной лицензией)

database
Новоприбывший
Сообщения: 3
Зарегистрирован: 18 мар 2009, 00:26
Репутация: 0

Re: Перевод из одной системы координат в другую

Сообщение database » 19 мар 2009, 12:44

geologic писал(а):Прежде чем что-либо делать - рассчитывать, строить, преобразовывать - вам нужно привязать вашу картинку (ваш растр). Привязывать надо не просто "к имеющимся данным" (координатам), а к данным в какой-либо известной системе координат. По научному это называется "геореференсировать". Поскольку системы координат и проекции на их основе бывают разные, нужно выбрать одну. Удобнее привязывать к "родной" проекции, к той, в которой карта изначально была сделана. Для российских топокарт и планов это, как правило, Проекция Гаусса-Крюгера на основе СК Пулково-42. Как установить проекцию и как привязывать, зависит от софта, которым вы умеете пользоваться - OZI Explorer, Mapinfo, ArcView, ArcGIS etc.

Общие принципы геопривязки, привязка в ArcView/ArcMap
http://www.geofaq.ru/art/2wld.shtm
О проекциях вообще, типовые вопросы-ответы
http://gis-lab.info/qa/proj-sk-faq.html

Сводка для начинающих вот
http://www.geofaq.ru/pbylevels.php?level=1&cat=geo
Но у меня вообще нет никаких данных, кроме точек по осям x и y.

Как я пытался делать: искал подходящую точку на своей карте, искал эту же точку в гугле, получал ее координаты. Так поступал несколько раз. И пытался по этим данным соотнести все мои точки с координатами на гугле. Ничего не вышло. Совсем глупость делал? Для меня всё это - темный лес, поэтому обратился к вам за помощью.

Tonic
Новоприбывший
Сообщения: 12
Зарегистрирован: 16 фев 2009, 09:11
Репутация: 0

Re: Перевод из одной системы координат в другую

Сообщение Tonic » 19 мар 2009, 14:06

Tonic писал(а):Как я пытался делать: искал подходящую точку на своей карте, искал эту же точку в гугле, получал ее координаты. Так поступал несколько раз. И пытался по этим данным соотнести все мои точки с координатами на гугле.
Такое преобразование делает программа MapCruncher и затем создает web хранилище подобное GoogleEarth.
Далее я подсовывал эти данные после определенного преобразования программе, которая работает GoogleEarth-снимками типа кеша, чтобы работать локально.

geologic
Гуру
Сообщения: 852
Зарегистрирован: 15 сен 2005, 13:19
Репутация: 6
Откуда: москва
Контактная информация:

Re: Перевод из одной системы координат в другую

Сообщение geologic » 19 мар 2009, 14:41

Ладно, пока ждем знатоков GDAL, попробую закончить ликбез. В принципе это все изложено в статье
http://www.geofaq.ru/art/2wld.shtm, и когда у вас есть точки, и когда нет, и когда вы знаете проекцию, и когда не знаете, и так далее. Вкратце оттуда:

- Если вы знаете свой масштаб, то это уже полдела. Ваш неизвестный электронный листик мысленно превращается в бумажную кальку, которую надо только правильно наложить.

- на что наложить? Желательно на карту в той же проекции, что и листик. Они как бы будут "в одной плоскости", и листиик не придется жамкать, выпучивать и т.п. Только подвинуть и совместить, ну максимум, повернуть.

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

- где взять такую карту? Скорее всего, ваш листик сделан с плана города, а тот с топокарты, так что с вероятностью 99% проекция - ГК зона... зона... О зоне потом. Просто возьмите любую УЖЕ ПРИВЯЗАННУЮ карту на ваш город. Где? В интернете. Скорее всего, на мапстор. Привязка там будет под ози эксплорер.

- можно ли сразу привязывать "на гугл"? "Пришпандорить по точкам", не разбирая проекций? Можно, но нежелательно, говорил уже выше, почему.

- как привязывать именно под ОЗИ эксплорер? См. статью вот тут.

- как привязывать в другой программме, не имея ни привязанной карты-основы, ни никаких координат с точками? Очень просто, нужно эту карту опять-таки найти и привязать самому. На углах карт (в отличие от вашей) есть координаты, и во всех статьях расписано, как это делать под конкретный софт. Далее на эту карту уже ложите ваш листик примерно как вышеописано.

Фу-у-у, прямо новая статья вышла - геопривязка "для совсем чайников", разрабатывающих свой картографический сервис :D

2Tonic - Если материалы уже привязаны, сменить проекцию и формат вашего растра бесплатно можно ведь не только в GDAL (который без интерфейса), но и через FWTools (интерфейс для GDAL), приходилось пользоваться. Ну и разумеется, Global Mapper попробуйте. Схема обычно одинакова - открываешь растр, убеждаешься, что он в известной проекции, указываешь другую проекцию и формат файла, ждешь, пока переварпится растр и геопривязка к нему.

Аватара пользователя
Максим Дубинин
MindingMyOwnBusiness
Сообщения: 9129
Зарегистрирован: 06 окт 2003, 20:20
Репутация: 748
Ваше звание: NextGIS
Откуда: Москва
Контактная информация:

Re: Перевод из одной системы координат в другую

Сообщение Максим Дубинин » 20 мар 2009, 02:58

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

Tonic: если вам нечего сказать по вопросу автора, то лучше свои вопросы задавать в отдельной теме, иначе хаос.
пристегивайтесь, турбулентность прямо по курсу

database
Новоприбывший
Сообщения: 3
Зарегистрирован: 18 мар 2009, 00:26
Репутация: 0

Re: Перевод из одной системы координат в другую

Сообщение database » 20 мар 2009, 11:56

Всем большое спасибо! По результатам отпишусь!

Vintjara
Новоприбывший
Сообщения: 4
Зарегистрирован: 19 июн 2010, 16:36
Репутация: 0

Re: Перевод из одной системы координат в другую

Сообщение Vintjara » 19 июн 2010, 16:43

Товарищи, подскажите пожалуйста полному профану. У меня в смартфоне стоит Garmin, работает по умолчанию в WGS84. На местности у меня пункты полигонометрии в 1963 (да и вся Беларусь). Вопрос - можно ли адаптировать гармин так, чтобы он помогал в поиске пунктов и позволял делать приблизительную топосъемку? если нельзя, то как перед выездом на объект пересчитать координаты пунктов 1963 года в WGS84 для их поиска?

Boris
Гуру
Сообщения: 4231
Зарегистрирован: 10 апр 2006, 22:34
Репутация: -344969098
Откуда: Париж

Re: Перевод из одной системы координат в другую

Сообщение Boris » 24 июн 2010, 10:19

У вас в Белоруссии похоже демократический рай. У нас, если с такими данными возьмут, то по какой-нибудь статье лет 5 прикрутят. И тому, кто имел на руках, и тому, кто передавал.
Зону свою в СК-63 знаете? Ищите ее параметры в интеренете. Там же ищите и геодезический калькулятор - забьете в него параметры СК для своей зоны и области в СК-63 и будете получать пересчитанные координаты в любую сторону. Ну, а уж на сколько эти координаты будут отличаться от реальности, узнаете сами в статистике. Наберете достаточно точек методами триангуляции ил полиномами сможете вычислять свои координаты точнее чем софт общего назначения.

Trace
Активный участник
Сообщения: 153
Зарегистрирован: 14 окт 2009, 05:07
Репутация: 0
Откуда: Красноярск
Контактная информация:

Re: Перевод из одной системы координат в другую

Сообщение Trace » 25 июн 2010, 05:01

А почему бы не привязать карту использую "Google Earth" (интересная статья по привязке карты в "Google Earth" для гармина), а потом уже преобразовать растр в нужную проекцию и сверить привязку по вашим точкам?

Донецков
Гуру
Сообщения: 3058
Зарегистрирован: 19 май 2010, 19:44
Репутация: 189

Re: Перевод из одной системы координат в другую

Сообщение Донецков » 25 июн 2010, 18:34

По поводу Белоруссии и СК-63 см. на соседней ветке - viewtopic.php?f=34&t=2913...

Ответить

Вернуться в «Общий - ПО»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 2 гостя