Величезні відмінності між результатами 7-парамного перетворення дат


12

Я намагаюся перетворити WGS84 lat / lon point

11d42'32.10629" E 5d12'56.75371" S

у трьох різних програмних пакетах (Proj4, GeoTrans та Leica GeoOffice), але я отримую дуже великі відмінності між результатами - близько декількох сотень метрів у X та Y! Зауважте, що ці зміни з’являються лише з 7 параметрами, а не з 3.

Proj4

cs2cs + proj = longlat + ellps = WGS84 + date = WGS84 + no_defs + to + proj = utm + zone = 32 + ellps = clrk80 + towgs84 = 178.3,316.7,131.5, -5.278, -6.077, -10.9792, -19.166 + південь + одиниці = m + no_defs


GeoTrans

Delta X 178.3 
Delta Y 316.7 
Delta Z 131.5 
Rot X -5.278 
Rot Y -6.077 
Rot Z -10.9792 
SF = -19.166 / 0.999980834 (0.000019166)

Leica GeoOffice

Знімок екрана


Результати відповідно:

  1. 800392 9422525
  2. 800306 9422840
  3. 800941 9422891

Я вважаю, що всі 3 пакети використовують однакові математичні методи для перетворення 7-парам (метод Бурса-Вольфа). Що може бути причиною цієї величезної зміни?


Чи є еліпсоїд IGN Clarke 1880 у геофіс-офісі визначенням на замовлення? Чи можете ви розмістити його параметри, чи немає?
mkennedy

Я отримав скріншот Leica від інших людей і ще не знаю.
WindRider

Відповіді:


9

По-перше, Proj4 використовує те, що EPSG називає версією "Vector Position" версії методу 7 параметрів. Можливо, що GeoTrans та Leica GeoOffice використовують іншу версію, яку EPSG назвав "Координатний кадр". Обидва способи рівнозначні, але матриці обертання різні, і знаки кутових параметрів повинні бути змінені.

По-друге, дякую, що ви надали знімок екрана визначення перетворення в Leica GeoOffice. Або визначення Proj4, або це визначення визначено неправильно. Визначаючі параметри Еліпсоїда А та Еліпсоїда В повинні бути переключені. В даний час це перетворення перетворюється з WGS84 в Congo60. У Proj4 зауважте, що опція - + towgs84, тому вона визначається як від Конго60 до WGS84. Щоб змінити напрямок у визначенні, змініть знаки ВСІХ параметрів. Також перегляньте довідку для GeoOffice і перевірте, чи потрібен параметр SF частин на мільйон версії або вже перетворене значення на коефіцієнт масштабу.

Я не знаю про GeoTrans - ти маєш на увазі програмне забезпечення NGA? У будь-якому випадку, сподіваємось, ви зможете зрівняти GeoOffice та Proj4.


1
Значення Y (північ / широта) може бути тому, що значення Clarke 1880 не зовсім однакові, але 60 м здається занадто великими.
mkennedy

1
@mkennedy: чи можете ви зробити ті самі розрахунки, які я робив в Аркгісі, щоб побачити, чи можна вирівняти без Leica?
AndreJ

1
@AndreJoost, звичайно. Використовуючи версії Esri в форматі EPSG 1802 та 28232, я отримав схід: 800230.139, північ: 9423133.413.
mkennedy

1
Я спробував кілька варіантів, щоб побачити, чи зможу я відтворити результат Leica, а не зміг. Те саме питання, що ви знайшли: Y вимкнено на 60+ м.
mkennedy

1
Я впевнений, що рішення Proj4 (і ArcGIS!) Є правильними. Джерело Proj4 відкрито. Хоча код ArcGIS не відкритий, я цим займався близько 15 років. Я також додав спеціальну трансформацію до Geotrans 3.0 і отримав такий же результат, як Proj4 / ArcGIS.
mkennedy

4

Для proj4 знаки параметрів мають бути повернені.

Дивіться цю сторінку визначення:

http://www.spatialreference.org/ref/epsg/62826405/prettywkt/

GEOGCS["Pointe Noire (deg)",
    DATUM["Congo 1960 Pointe Noire",
        SPHEROID["Clarke 1880 (IGN)",6378249.2,293.4660212936269,
            AUTHORITY["EPSG","7011"]],
        TOWGS84[-178.3,-316.7,-131.5,5.278,6.077,10.979,3.953271276531849],
        AUTHORITY["EPSG","6282"]],
    PRIMEM["Greenwich",0.0,
        AUTHORITY["EPSG","8901"]],
    UNIT["degree",0.017453292519943295],
    AXIS["Geodetic latitude",NORTH],
    AXIS["Geodetic longitude",EAST],
    AUTHORITY["EPSG","62826405"]]

Я не впевнений, звідки ти взяв свої цінності.

QGIS визначає EPSG: 28232 Point Noire UTM 32S як:

+proj=utm +zone=32 +south +a=6378249.2 +b=6356515 +towgs84=-148,51,-291,0,0,0,0 +units=m +no_defs

і результат 7 параметрів не повинен бути далеко від цього.


EDIT

Завдяки GDAL 1.10 я отримую такі результати:

4326-proj-3 parameters:
cs2cs +init=epsg:4326 +to +proj=utm +zone=32 +south +a=6378249.2 +b=6356515 +towgs84=-148,51,-291,0,0,0,0 +units=m +no_defs
800232.21   9423131.96 -1.76
4326-proj-7 parameters from spatialrefrence.org:
cs2cs +init=epsg:4326 +to +proj=utm +zone=32 +south +a=6378249.2 +b=6356515 +towgs84=-178.3,-316.7,-131.5,5.278,6.077,10.979,3.953271276531849 +units=m +no_defs
800230.13   9423133.46 91.31
4326-proj-7 parameters from proj4 datum_shift.csv (EPSG:1802):
cs2cs +init=epsg:4326 +to +proj=utm +zone=32 +south +a=6378249.2 +b=6356515 +towgs84=-178.3,-316.7,-131.5,5.278,6.077,10.979,19.166 +units=m +no_defs
800230.13   9423133.40 -5.72

Так що менше 3 метрів один від одного. Зауважте, що E і S повинні дотримуватися градусів без пробілів.

І, тільки для запису: встановлення towgs84 до нуля призводить до:

800310.94   9422829.37 -109.32

при перетворенні з градусів Point Noire EPSG: 4262 в Point Noire UTM приводить до:

800311.21   9422892.49 0.00

Як бачите, з однаковими параметрами є величезна різниця (> 600 м!) Від Leica. Мені потрібно знати, чому це відбувається і як отримати однакові результати. Чи може це бути від методу перетворення від / до геоцентричних координат, який використовується у Proj4? Він має дуже складні формули. Можливо, Leica використовує інший метод?
WindRider

1
Чи пропонує Leica 3-параметри перетворення? І що вони для цього обчислюють?
AndreJ
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.