Enormi differenze tra i risultati per la trasformazione del dato a 7 parametri


12

Sto cercando di trasformare un punto lat / lon WGS84

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

in tre diversi pacchetti software (Proj4, GeoTrans e Leica GeoOffice) ma ricevo differenze molto grandi tra i risultati - circa poche centinaia di metri in X e Y! Si noti che queste variazioni vengono visualizzate solo con 7 parametri e non con 3.

Proj4

cs2cs + proj = longlat + ellps = WGS84 + datum = WGS84 + no_defs + a + proj = utm + zone = 32 + ellps = clrk80 + towgs84 = 178.3.316.7.131.5, -5.278, -6.077, -10.9792, -19.166 + sud + unità = 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

Immagine dello schermo


I risultati sono rispettivamente:

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

Credo che tutti e 3 i pacchetti utilizzino gli stessi metodi matematici per la trasformazione a 7 parametri (metodo Bursa-Wolf). Quale potrebbe essere la causa di questa enorme variazione?


In Geo Office, l'ellissoide IGN Clarke 1880 è una definizione personalizzata? Puoi pubblicare i suoi parametri sia che sia o meno?
mkennedy,

Ho ricevuto lo screenshot di Leica da altre persone e non lo so ancora.
WindRider,

Risposte:


9

Innanzitutto, Proj4 utilizza quella che EPSG chiama la versione "Position Vector" del metodo a 7 parametri. È possibile che GeoTrans e Leica GeoOffice utilizzino l'altra versione che EPSG ha chiamato "Coordinate Frame". Entrambi i metodi sono equivalenti, ma le matrici di rotazione sono diverse e i segni dei parametri angolari devono essere cambiati.

In secondo luogo, grazie per aver fornito la schermata della definizione di trasformazione in Leica GeoOffice. La definizione Proj4 o questa definizione sono definite in modo errato. I parametri di definizione Ellipsoid A e Ellipsoid B devono essere commutati. Attualmente, questa trasformazione viene convertita da WGS84 in Congo60. In Proj4, nota che l'opzione è + towgs84, quindi è definita come DA Congo60 A WGS84. Per cambiare la direzione nella definizione, cambiare i segni di TUTTI i parametri. Controlla anche la guida di GeoOffice e verifica se il parametro SF desidera le parti per milione di versione o il valore del fattore di scala già convertito.

Non so di GeoTrans - intendi il software NGA? Ad ogni modo, si spera che GeoOffice e Proj4 siano compatibili.


1
Il valore Y (nord / latitudine) potrebbe essere perché i valori di Clarke 1880 non sono abbastanza gli stessi, ma 60 m sembrano troppo grandi.
mkennedy,

1
@mkennedy: puoi fare gli stessi calcoli che ho fatto in Arcgis per vedere se possiamo allineare senza Leica?
AndreJ,

1
@AndreJoost, certo. Usando le versioni Esri di EPSG 1802 e 28232, sono arrivato a est: 800230.139 a nord: 9423133.413.
mkennedy,

1
Ho provato diverse varianti per vedere se potevo riprodurre il risultato Leica e non ci sono riuscito. Stesso problema che hai riscontrato: Y off di oltre 60 m.
mkennedy,

1
Sono fiducioso che le soluzioni Proj4 (e ArcGIS!) Siano corrette. La fonte Proj4 è aperta. Sebbene il codice ArcGIS non sia aperto, l'ho affrontato per circa 15 anni. Ho anche aggiunto una trasformazione personalizzata a Geotrans 3.0 e ho ottenuto lo stesso risultato di Proj4 / ArcGIS.
mkennedy,

4

Per proj4, i segni dei parametri devono essere invertiti.

Vedi questa pagina di definizione:

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"]]

Non sono sicuro da dove hai preso i tuoi valori.

QGIS definisce EPSG: 28232 Point Noire UTM 32S come:

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

e il risultato dei 7 parametri non dovrebbe essere lontano da quello.


MODIFICARE

Con GDAL 1.10, ottengo i seguenti risultati:

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

Quindi a meno di 3 metri di distanza. Si noti che la E e la S devono seguire i gradi senza spazi vuoti.

E, solo per la cronaca: l'impostazione di towgs84 su zero comporta:

800310.94   9422829.37 -109.32

durante la trasformazione da Point Noire gradi EPSG: 4262 a Point Noire UTM si traduce in:

800311.21   9422892.49 0.00

Come puoi vedere, con gli stessi parametri c'è una differenza enorme (> 600 m!) Da Leica. Devo sapere perché questo accade e come ottenere gli stessi risultati. Potrebbe essere dal metodo di conversione da / in coordinate geocentriche utilizzato in Proj4? Ha formule molto complicate. Forse Leica usa un metodo diverso?
WindRider,

1
Leica offre una conversione a 3 parametri? E cosa calcolano per questo?
AndreJ,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.