7参数基准转换结果之间的巨大差异


12

我正在尝试转换WGS84纬度/经度点

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

在三个不同的软件包(Proj4,GeoTrans和Leica GeoOffice)中,但是结果之间有很大的差异-X和Y大约有几百米!请注意,这些变化仅在7个参数中出现,而在3个参数中不出现。

Proj4

cs2cs + proj = longlat + ellps = WGS84 + datum = 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 +南+ units = 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)

徕卡GeoOffice

屏幕截图


结果分别为:

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

我相信所有3个软件包都使用相同的数学方法进行7参数转换(布尔萨-沃尔夫方法)。这种巨大差异的原因可能是什么?


在Geo Office中,Clarke 1880 IGN椭球体是自定义定义吗?是否可以发布其参数?
mkennedy 2013年

我已经从其他人那里收到了Leica的屏幕截图,但还不太了解。
WindRider 2013年

Answers:


9

首先,Proj4使用EPSG所谓的7参数方法的“位置向量”版本。GeoTrans和Leica GeoOffice可能使用EPSG称为“坐标框架”的其他版本。这两种方法是等效的,但是旋转矩阵不同,并且必须更改角度参数的符号。

其次,感谢您提供Leica GeoOffice中转换定义的屏幕截图。Proj4定义或此定义定义不正确。应切换定义参数椭球A和椭球B。当前,此转换从WGS84转换为Congo60。在Proj4中,请注意,该选项为+ towgs84,因此将其定义为FROM Congo60 TO WGS84。要更改定义的方向,请更改所有参数的符号。另外,请查看GeoOffice的帮助,并查看SF参数是否需要百万分之一版本或已转换为比例因子的值。

我不了解GeoTrans,您是指NGA软件吗?无论如何,希望您可以使GeoOffice和Proj4匹配。


1
Y(北/纬度)值可能是因为Clarke 1880的值并不完全相同,但60 m似乎太大了。
mkennedy 2013年

1
@mkennedy:您能做我在Arcgis中所做的相同计算,看看是否可以不用Leica来对齐吗?
AndreJ

1
@AndreJoost,当然。使用EPSG 1802和28232的Esri版本,我向东:800230.139向北:9423133.413。
mkennedy

1
我尝试了几种变体,以查看是否可以重现Leica的结果,但无法做到。您发现的相同问题:Y偏离60+ m。
mkennedy 2013年

1
我相信Proj4(和ArcGIS!)解决方案是正确的。Proj4源代码已打开。尽管ArcGIS代码尚未打开,但我已经处理了大约15年。我还向Geotrans 3.0添加了自定义转换,并获得了与Proj4 / ArcGIS相同的结果。
mkennedy 2013年

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黑角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个参数的结果应该与此相差不远。


编辑

使用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

从黑角度EPSG:4262转换为黑角UTM时,结果为:

800311.21   9422892.49 0.00

如您所见,在相同参数的情况下,徕卡与Leica的差距很大(> 600 m!)。我需要知道为什么会这样以及如何获得相同的结果。可能来自Proj4中使用的从/向地心坐标转换的方法吗?它具有非常复杂的公式。也许徕卡使用不同的方法?
WindRider 2013年

1
徕卡是否提供3参数转换?他们为此计算什么?
AndreJ
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.