WGS-84 > МСК-50, зона 2

Системы координат, проекции, преобразования, привязка
gadkiy_uut
Активный участник
Сообщения: 139
Зарегистрирован: 04 апр 2011, 18:32
Репутация: 0
Откуда: Москва

WGS-84 > МСК-50, зона 2

Сообщение gadkiy_uut » 10 фев 2014, 00:54

Здравствуйте!

У меня есть съёмка в Автокад (DXF) в локальной системе координат. Я бы хотел дополнительно к этой съёмке "снести" окружающие объекты с данных OSM, навигатора и фотоснимков.

Попробовал сделать описание проекции на основе этих данных: http://www.mapbasic.ru/msk50. Получилось такое вот описание:

Код: Выделить всё

+proj=tmerc +lat_0=0 +lon_0=38.48333333333 +k=1 +x_0=2250000 +y_0=-5712900.566 +ellps=krass +towgs84=-118.754,-61.782,-93.237,-2.40896,-3.47502,1.29688,6.5177 +units=m +no_defs
Теперь пробую обводить объекты на местности, легко узнаваемые элементы местности, в Qgis и затем пересохранаю слой с данными в DXF, с указанием полученной СК. Когда накладываю на существующую съёмку в локальной системе координат - объекты улетают метров на 120 от их действительного положения.
У меня возникло подозрение что я неправильно описал проекцию. Прошу проверить!

PS Как шпаргалка на топосъёмке есть три пункта, приведены их географические и локальные координаты. Вот один пункт.

Географические (скорее всего GP90.01 или WGS 84):
37.855975444,55.973546286

Локальные:
493003.49,2210830.312

У меня получается:
492906.47,2210679.89

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

Re: WGS-84 > МСК-50, зона 2

Сообщение Донецков » 10 фев 2014, 16:23

В MapInfo с этими параметрами:
2 210 931.4 492 982.2 :)

Аватара пользователя
Игорь Белов
Гуру
Сообщения: 2229
Зарегистрирован: 04 янв 2011, 22:00
Репутация: 1501
Откуда: Казань

Re: WGS-84 > МСК-50, зона 2

Сообщение Игорь Белов » 10 фев 2014, 17:45

Однако QGIS не MapInfo. Не забываем менять знаки параметров вращения:

Код: Выделить всё

…+towgs84=-118.754,-61.782,-93.237,2.40896,3.47502,-1.29688,6.5177…
The purpose of computing is insight, not numbers

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

Re: WGS-84 > МСК-50, зона 2

Сообщение Boris » 11 фев 2014, 04:48

gadkiy_uut писал(а): Географические (скорее всего GP90.01 или WGS 84):
37.855975444,55.973546286

Локальные:
493003.49,2210830.312
вводим в командной строке:

Код: Выделить всё

echo 37.855975444 55.973546286| cs2cs -v +init=epsg:4284 +to +proj=tmerc +lat_0=0 +lon_0=38.4833333333 +k=1.000000 +x_0=2250000 +y_0=-5712900.566 +units=m +init=epsg:4284 -f "%.3f"
и получаем
# ---- From Coordinate System ----
#Lat/long (Geodetic alias)
#
# +init=epsg:4284 +proj=longlat +ellps=krass
# +towgs84=23.92,-141.27,-80.9,-0,0.35,0.82,-0.12 +no_defs
# ---- To Coordinate System ----
#Transverse Mercator
# Cyl, Sph&Ell
# +proj=tmerc +lat_0=0 +lon_0=38.4833333333 +k=1.000000 +x_0=2250000
# +y_0=-5712900.566 +units=m +init=epsg:4284 +ellps=krass
# +towgs84=23.92,-141.27,-80.9,-0,0.35,0.82,-0.12 +no_defs
#--- following specified but NOT used
# +proj=longlat
2210830.312 493003.489 0.00
а если так, то

Код: Выделить всё

echo 37.855975444 55.973546286| cs2cs -v +init=epsg:4326 +to +proj=tmerc +lat_0=0 +lon_0=38.4833333333 +k=1.000000 +x_0=2250000 +y_0=-5712900.566 +units=m +init=epsg:4284 -f "%.3f" 
# ---- From Coordinate System ----
#Lat/long (Geodetic alias)
#
# +init=epsg:4326 +proj=longlat +datum=WGS84 +no_defs +ellps=WGS84
# +towgs84=0,0,0
# ---- To Coordinate System ----
#Transverse Mercator
# Cyl, Sph&Ell
# +proj=tmerc +lat_0=0 +lon_0=38.4833333333 +k=1.000000 +x_0=2250000
# +y_0=-5712900.566 +units=m +init=epsg:4284 +ellps=krass
# +towgs84=23.92,-141.27,-80.9,-0,0.35,0.82,-0.12 +no_defs
#--- following specified but NOT used
# +proj=longlat
2210947.743 492997.506 -4.072
Откуда взялась идея про
gadkiy_uut писал(а): Географические (скорее всего GP90.01 или WGS 84):

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

Re: WGS-84 > МСК-50, зона 2

Сообщение Boris » 11 фев 2014, 05:22

ErnieBoyd писал(а):Однако QGIS не MapInfo. Не забываем менять знаки параметров вращения:

Код: Выделить всё

…+towgs84=-118.754,-61.782,-93.237,2.40896,3.47502,-1.29688,6.5177…
Есть вопрос про знаки. Не буду засорять чужую тему и начну новую viewtopic.php?f=34&t=15920&p=107715#p107715

gadkiy_uut
Активный участник
Сообщения: 139
Зарегистрирован: 04 апр 2011, 18:32
Репутация: 0
Откуда: Москва

Re: WGS-84 > МСК-50, зона 2

Сообщение gadkiy_uut » 22 фев 2014, 23:56

ErnieBoyd писал(а):Однако QGIS не MapInfo. Не забываем менять знаки параметров вращения:

Код: Выделить всё

…+towgs84=-118.754,-61.782,-93.237,2.40896,3.47502,-1.29688,6.5177…
Спасибо! Поправил проекцию:

Код: Выделить всё

+proj=tmerc +lat_0=0 +lon_0=38.48333333333 +k=1 +x_0=2250000 +y_0=-5712900.566 +ellps=krass +towgs84=-118.754,-61.782,-93.237,2.40896,3.47502,1.29688,6.5177 +units=m +no_defs
Невязка уменьшилась!
Получается:
2210886.48;492982.68
Должно быть (согласно отчёту геодезистов):
2210830.31;493003.49

Получается 50 и 20 метров, уже лучше!


PS. Если считать ПЗ90 вместо wgs84, в данном случае это не должно играть роли.

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

Re: WGS-84 > МСК-50, зона 2

Сообщение Boris » 23 фев 2014, 11:57

а теперь для смеха, попробуйте пересчитать их СК-42(Долгота/Широта) в СК42 (МСК-50) получатся невязки в мм.
---
ПЗ-90, если это не ПЗ-90.02 - ну никак нельзя принимать равной WGS84

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

Re: WGS-84 > МСК-50, зона 2

Сообщение Boris » 23 фев 2014, 23:47

исходные данные:
Географические (скорее всего GP90.01 или WGS 84):
37.855975444,55.973546286
контрольные координаты:
492906.47,2210679.89
предполагаемые трансформации , собранные в интернете:
towgs84_list.txt
(2.02 КБ) 1507 скачиваний
EPSG - с сайта epsg.io
MapB - с сайта Mapbasic
MI - с мапинфо, справочная таблица с 8-ю параметрами трансформации, для стандартных проекций
Est - варианты эстонских параметров перехода для проекций на основе СК42
Unknown - параметры для одного из планшетов в МО, выданные программой "СК42_TRANS_WGS84" (больше не нашел упоминаний)
Urk - варианты украинских параметров перехода.
команда пересчета координат

Код: Выделить всё

 
echo 37.855975444 55.973546286| cs2cs -s +init=epsg:4326 +to +init=epsg:4284 %~2 +proj=tmerc +lat_0=0 +lon_0=38.4833333333 +k=1.000000 +x_0=2250000 +y_0=-5712900.566 +units=m -f "%%.3f"
где "%~2" - подстановка параметра "+towgs84=...", взятая из файла
towgs84_list.txt
(2.02 КБ) 1507 скачиваний
полученные результаты в виде файла Excel с расчетом отклонения расчетного значения от контрольного значения.
Результат:
[attachment=0]res2.png[/attachment]
Все файлы для расчета и резльтаты расчета даны в архиве:[attachment=1]Geo.7z[/attachment]
Колонки:
1. условное название трансформации (перечислены в виде параметров "+towgs=" в файле [attachment=2]towgs84_list.txt[/attachment]
2. X,Y,H - спроецированные координаты, рассчитанные с применением соответствующего параметра "+towgs="
3. DX,DY - абсолютное отклонение по X,Y , соответственно, от известной контрольной точки;
4. sqrtDXY - расстояние от контрольной точки.
последняя строка (еще раз) преобразование координат, из предположения, что координаты "Долгота/Широта" даны на эллипсоиде Красовского (датум Пулково-1942 ).
три выделенных в последней колонке цифры - это расстояния, в пределах 50% от минимального, если считать, что трансформация производится с датума WGS84 на датум Пулково-1942.
Все параметры трансформаций даны в двух вариантах, так как они описаны в соответствующем документе (базе данных) и с инвертированными углами вращения осей.
Вложения
res2.png
res2.png (175.1 КБ) 29780 просмотров
Geo.7z
(79.16 КБ) 737 скачиваний

gadkiy_uut
Активный участник
Сообщения: 139
Зарегистрирован: 04 апр 2011, 18:32
Репутация: 0
Откуда: Москва

Re: WGS-84 > МСК-50, зона 2

Сообщение gadkiy_uut » 01 мар 2014, 15:42

Борис! Да, контрольные координаты: 493003.49,2210830.312
На всякий случай прилагаю все три точки в Excell

Дело в том что у меня мало опыта и я не смог найти как мне описать СК 42 в QGIS (были проблемы). По-этому я на основе данных mapbasic, МСК-50, зона 2 подогнал описание системы координат. При этом я учёл "переворот минус - плюс", как советовали мне здесь, при переходе от MapInfo к Qgis. Вот что получилось у меня:

Код: Выделить всё

+proj=tmerc +lat_0=0 +lon_0=38.48333333333 +k=1 +x_0=2249943.8400 +y_0=-5712879.7582 +ellps=krass +towgs84=-118.754,-61.782,-93.237,2.40896,3.47502,1.29688,6.5177 +units=m +no_defs
Невязка получается около 2 см, что меня устраивает (колебание вешки при съёмке). Но наверное в другой части Московской области это описание будет неверным, однако мне годится, т. к. мне надо перенести объекты на подостову в Автокад из QGIS и обратно из Автокада в QGIS свои объекты (здания на площадке строительства).

Возможно в отчёте, который принесли мне геодезисты есть ошибка, т. к. по топосъёмке шоссе лежит ближе к пунктам GPS чем по данным Google и OSM, возможно это связано с реконструкцией шоссе в данный момент (могу выслать через личку эту подоснову).

Насчёт СК 42 я понял. Сейчас переустановил QGIS, попробую там найти СК42
Вложения
check-coords.xls
(15 КБ) 652 скачивания

gadkiy_uut
Активный участник
Сообщения: 139
Зарегистрирован: 04 апр 2011, 18:32
Репутация: 0
Откуда: Москва

cs2cs projection initialisation failure

Сообщение gadkiy_uut » 01 мар 2014, 17:36

Boris писал(а):вводим в командной строке:

Код: Выделить всё

echo 37.855975444 55.973546286| cs2cs -v +init=epsg:4284 +to +proj=tmerc +lat_0=0 +lon_0=38.4833333333 +k=1.000000 +x_0=2250000 +y_0=-5712900.566 +units=m +init=epsg:4284 -f "%.3f"
и получаем
У меня кстати выдаёт: projection initialisation failure , под Windows
Но под Линуксом исправно работает если исключить

Код: Выделить всё

-f "%%.3f"
Не подскажете в чём может быть проблема?

gadkiy_uut
Активный участник
Сообщения: 139
Зарегистрирован: 04 апр 2011, 18:32
Репутация: 0
Откуда: Москва

Re: WGS-84 > МСК-50, зона 2

Сообщение gadkiy_uut » 01 мар 2014, 18:34

Boris писал(а): 1. условное название трансформации (перечислены в виде параметров "+towgs=" в файле
towgs84_list.txt
Борис! В towgs84_list.txt нет СК42>МСК50. Выложите пожалуйста! Там всё оканчивается:

Код: Выделить всё

Ukr_Unk1_inv  +towgs84=25,-141,-78.5,-0,+0.35,+0.736,-0
Ukr_Unk1      +towgs84=25,-141,-78.5,+0,-0.385,-0.736,+0
Ukr_Unk1_inv  +towgs84=25,-141,-78.5,-0,+0.385,+0.736,-0

gadkiy_uut
Активный участник
Сообщения: 139
Зарегистрирован: 04 апр 2011, 18:32
Репутация: 0
Откуда: Москва

Re: WGS-84 > МСК-50, зона 2

Сообщение gadkiy_uut » 01 мар 2014, 19:42

Получилось пока так: определил вот такую систему координат:

Код: Выделить всё

+proj=tmerc +lat_0=0 +lon_0=38.48333333333 +k=1 +x_0=2250000 +y_0=-5712900.566 +ellps=krass +units=m +no_defs
Задал проекцию Пулково 42 для слоя с точками, при импорте координат из CSV, сохраняю в DXF, указав определённую проекцию - совпадает с точностью до миллиметра. Но когда пытаюсь эти же точки перевести обратно из Автокада - улетают метров на 50. Тогда этот слой сохраняю в ESRI shape, установив Пулково 42 и снова вставляю - всё на своём месте. СК для своего проекта я установил из http://www.mapbasic.ru/msk50:

Код: Выделить всё

+proj=tmerc +lat_0=0 +lon_0=38.48333333333 +k=1 +x_0=2250000 +y_0=-5712900.566 +ellps=krass +towgs84=-118.754,-61.782,-93.237,2.40896,3.47502,1.29688,6.5177 +units=m +no_defs

Аватара пользователя
dab
Гуру
Сообщения: 671
Зарегистрирован: 16 дек 2011, 20:02
Репутация: 170
Ваше звание: Гуру
Откуда: Москва
Контактная информация:

Re: WGS-84 > МСК-50, зона 2

Сообщение dab » 04 мар 2014, 08:22

gadkiy_uut писал(а):СК для своего проекта я установил ... +towgs84=-118.754,-61.782,-93.237,2.40896,3.47502,1.29688,6.5177 +units=m +no_defs
Уточнить хотел: шестой параметр (1.29688) именно со знаком плюс?

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

Re: cs2cs projection initialisation failure

Сообщение Boris » 04 мар 2014, 23:37

gadkiy_uut писал(а): У меня кстати выдаёт: projection initialisation failure , под Windows
Но под Линуксом исправно работает если исключить

Код: Выделить всё

-f "%%.3f"
Не подскажете в чём может быть проблема?
Я не провидец и информация с жестких дисков на прямую считывать не умею. Тут ответ предполагает некоторое углубленное исследование ваших действий и разных дистрибутивов и операционных систем. У меня в Windows (и только) - эти команды работают в рамках набора пакетов OsGeo4W.
Почему не понимает описанный параметр "число десятичных знаков после запятой" - если интересно спросите отдельно у тех, кто использует Линуксом. Тут таких есть несколько.
То, что не понимает инициализацию -init=, то тут самое очевидное объяснение - нет у вас ссылки на файл, где прописаны инициализирующее строки для проекций и датумов, задаваемых кодами epsg.

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

Re: WGS-84 > МСК-50, зона 2

Сообщение Boris » 05 мар 2014, 00:09

gadkiy_uut писал(а): Борис! В towgs84_list.txt нет СК42>МСК50. Выложите пожалуйста! Там всё оканчивается:
Не могу отделаться от ощущения, что вы меня не слышите или не понимаете. Я уже доказал, ну мне так кажется, что ваши преобразования производятся в рамках одного датума Пулково-1942 (и эллипсоида Красовского-1940), и как он ориентирован в трехмерном пространстве относительно датума WGS84, который совмещен с центром масс Земли, не имеет совершенно никакого значения. Своим использованием "+towgs" вы только путаете программу, заставляя ее считать, что у вас есть два эллипсоида Красовского по разному ориентированных относительно датума WGS84. И в файле перехода CK42->МСК50 нет потому, что его там быть не может.
В зависимости от то, что вы указываете, cs2cs либо считает, что вы используете стандартное позиционирование датума Пулково-1942, а оно сильно зависит от того какие настоечные файлы присутствуют в вашей версии программы, либо заменяете часть параметров вашими. Не удивительно, что пересчет в разных программах дает разные результаты. У каждой программы свой особый взгляд на то как Пулково-1942 ориентировано относительно WGS84. У моей cs2cs стандарт - это ГОСТ-2001 (хотя в одном файле есть параметры, заданные ГОСТ-2008).
Я посчитал переход СК42->МСК50, со всеми мне известными "+toWgs=" они все совпали в пределах выбранной мною точности в 12 знаков после запятой. Предлагаю мне поверить, что все ГИС, за исключением каких то совершенно самобытных, должны при пересчете координат на одном эллипсоиде дать абсолютно идентичные цифры. Там нечему давать расхождение в расчетах, поскольку отнесения координат к иному эллипсоиду, тем более к эллипсоиду, иначе ориентированному в пространстве, - нет. Есть только формулы сферической геодезии, а они предельно не оригинальны.
Я повторю с учетом последнего вопроса:
Параметры перехода "+towgs84=" могут быть любыми, главное что бы были одинаковыми для исходной системы координат и конечной, или отсутствовали вовсе, поскольку координаты между СК-42 (я честно, не проверял вариант, что ни в СК-95, но они точно не в ПЗ-90) и МСК-50 отличаются только параметрами проекции Гаусса-Крюгера, причем только одним - смещением центрального меридиана. Смещение начальной точки от экватора задает только линейный сдвиг и существенного значения не имеет.
Теперь если есть вопросы, то давайте их конкретно по пунктам. С самой задачей все уже ясно?

Ответить

Вернуться в «Координаты и привязка»

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

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