ST_Transform von EPSG: 31468 nach EPSG: 4326 nicht eineindeutig?

Hallo liebes Forum,

ich habe folgendes Problem:

Ich habe ein Tabelle mit Polygonen (EPSG: 4326). Die Eingangsdaten liegen in unterschiedlichen Koordinatensystemen vor.
D.h. wenn ich Polygone aus EPSG-Code 31468 ins 4326 transformiere und dann in meine Tabelle importiere, erwarte ich, dass
ich bei der Rücktransformation der Daten aus meiner Tabelle in EPSG-Code 31468 die Polygone ohne Verschiebung zurückbekomme.

Aber:
Bei Daten, die im EPSG-Code 31468 vorliegen bekomme ich eine Abweichung bei der Rücktransformation.
Bei EPSG-Code 3397 nicht. Woran könnte das liegen? :confused:


SELECT ST_AsText (ST_Transform(ST_Transform(the_geom,4326),31468)) FROM test_polygon_31468;
SELECT ST_AsText (ST_Transform(ST_Transform(the_geom,4326),3397)) FROM test_polygon_3397;

[TABLE=“width: 512”]
[TR]
[TD]EPSG: 31468
[/TD]
[TD]nach ST_Transform über 4326
[/TD]
[TD]Deviation
[/TD]
[/TR]
[TR]
[TD=“align: right”]4492539,64197082
[/TD]
[TD=“align: right”]4492539,64193947
[/TD]
[TD=“align: right”]0,00003135
[/TD]
[/TR]
[TR]
[TD=“align: right”]5621068,30964302
[/TD]
[TD=“align: right”]5621068,30960137
[/TD]
[TD=“align: right”]0,00004165
[/TD]
[/TR]
[TR]
[TD=“align: right”]4492539,48593203
[/TD]
[TD=“align: right”]4492539,48590068
[/TD]
[TD=“align: right”]0,00003135
[/TD]
[/TR]
[TR]
[TD=“align: right”]5621079,07631938
[/TD]
[TD=“align: right”]5621079,07627772
[/TD]
[TD=“align: right”]0,00004166
[/TD]
[/TR]
[TR]
[TD=“align: right”]4492555,16783021
[/TD]
[TD=“align: right”]4492555,16779884
[/TD]
[TD=“align: right”]0,00003137
[/TD]
[/TR]
[TR]
[TD=“align: right”]5621080,94878483
[/TD]
[TD=“align: right”]5621080,94874317
[/TD]
[TD=“align: right”]0,00004166
[/TD]
[/TR]
[TR]
[TD=“align: right”]4492539,64197082
[/TD]
[TD=“align: right”]4492539,64193947
[/TD]
[TD=“align: right”]0,00003135
[/TD]
[/TR]
[TR]
[TD=“align: right”]5621068,30964302
[/TD]
[TD=“align: right”]5621068,30960137
[/TD]
[TD=“align: right”]0,00004165
[/TD]
[/TR]
[TR]
[TD][/TD]
[TD][/TD]
[TD][/TD]
[/TR]
[TR]
[TD]EPSG: 3397
[/TD]
[TD]nach ST_Transform über 4326
[/TD]
[TD]Deviation
[/TD]
[/TR]
[TR]
[TD=“align: right”]4492539,64197082
[/TD]
[TD=“align: right”]4492539,64197082
[/TD]
[TD=“align: right”]0,00000000
[/TD]
[/TR]
[TR]
[TD=“align: right”]5621068,30964302
[/TD]
[TD=“align: right”]5621068,30964302
[/TD]
[TD=“align: right”]0,00000000
[/TD]
[/TR]
[TR]
[TD=“align: right”]4492539,48593203
[/TD]
[TD=“align: right”]4492539,48593203
[/TD]
[TD=“align: right”]0,00000000
[/TD]
[/TR]
[TR]
[TD=“align: right”]5621079,07631938
[/TD]
[TD=“align: right”]5621079,07631938
[/TD]
[TD=“align: right”]0,00000000
[/TD]
[/TR]
[TR]
[TD=“align: right”]4492555,16783021
[/TD]
[TD=“align: right”]4492555,16783021
[/TD]
[TD=“align: right”]0,00000000
[/TD]
[/TR]
[TR]
[TD=“align: right”]5621080,94878483
[/TD]
[TD=“align: right”]5621080,94878483
[/TD]
[TD=“align: right”]0,00000000
[/TD]
[/TR]
[TR]
[TD=“align: right”]4492539,64197082
[/TD]
[TD=“align: right”]4492539,64197082
[/TD]
[TD=“align: right”]0,00000000
[/TD]
[/TR]
[TR]
[TD=“align: right”]5621068,30964302
[/TD]
[TD=“align: right”]5621068,30964302
[/TD]
[TD=“align: right”]0,00000000
[/TD]
[/TR]
[/TABLE]

Naja, Die Abweichung liegt im Bereich von 1/100 mm, wer behauptet seine Koordinaten sind so genau soll mir das zeigen :wink: . Ich denke das kann man ertragen, Bei Esri ist/war die Abweichung wesentlich deutlicher (>mm, also durchaus im messbaren Bereich).
Das kann bei der Transformation schon mal passieren, kommt vermutlich an wie da gerundet wird. Warum es bei einer Transformation passiert un bei einer andern nicht, kann ich dir auch nicht sagen, wie gesagt, vermutlich Rundung oder so.

Gruß Uwe

Hallo Uwe,

vielen Dank für Deine Rückmeldung. Du hast natürlich Recht: Die Abweichung ist gering. Ich kann mir nur nicht erklären, warum es bei Lagestatus 100 eine Abweichung gibt und bei Lagestatus 120 keine.

Ich habe eigentlich auch ein anderes Problem und habe deshalb Nachforschungen angestellt.
Ich stelle meine Daten in QuantumGIS bzw. AutoCAD Civil 3D dar und dort habe ich sogar eine Abweichung von ca. 2 Metern, wenn ich die Daten aus EPSG 4326 in EPSG 31468 darstelle. Wenn ich die Daten aus EPSG 4326 in EPSG 3397 darstelle funktioniert es (zumindest keine visuelle Abweichung).

Hast Du einen Tip woran das liegen könnte? :confused:

Viele Grüße,
Max.

Hallo,

ich denke, dass ich den Fehler gefunden habe. Es liegt scheinbar nicht an PostGIS sondern an der Bibliothek PROJ.4.

siehe hier Genaue proj4 Definition EPSG 31466 (Gauß Krüger) (Page 1) / users: Germany / OpenStreetMap Forum

allerdings sehen auch meine QGIS (Version 1.7.1) Paramter anders aus:
+proj=tmerc +lat_0=0 +lon_0=12 +k=1 +x_0=4500000 +y_0=0 +ellps=bessel +towgs84=582,105,414,1.04,0.35,-3.08,8.3 +units=m +no_defs


Viele Grüße.

Sieht gut aus. Ich dachte mir schon irgendwie, das es mit irgendwelchen ‘Ungenauigkeiten’ im Algorithmus zu tun hat. Danke für den Link, hilft mir auch sehr, da ich vermutlich bald einen Nachweis über Transformationsparameter bringen muß.

Gruß Uwe

Naja, die Abweichung bei Rücktransformation bleibt bestehen bzw. wird sie sogar noch “größer”.

PROJ.4-Parametersatz:

[size=84]+proj=tmerc +lat_0=0 +lon_0=12 +k=1 +x_0=4500000 +y_0=0 +ellps=bessel +towgs84=598.1,73.7,418.2,0.202,0.045,-2.455,6.7 +units=m +no_defs
[/size]

SQL:

SELECT ST_AsText (ST_Transform(ST_Transform(the_geom,4326),31468)) FROM test_polygon_31468;

Ergebnis:
[TABLE=“width: 445”]
[TR]
[TD]EPSG: 31468
[/TD]
[TD]nach ST_Transform über 4326
[/TD]
[TD]abs(Deviation)
[/TD]
[/TR]
[TR]
[TD]4492539,64197082
[/TD]
[TD]4492539,64234360
[/TD]
[TD]0,00037278
[/TD]
[/TR]
[TR]
[TD]5621068,30964302
[/TD]
[TD]5621068,31017088
[/TD]
[TD]0,00052786
[/TD]
[/TR]
[/TABLE]


Hier dieser Link ist auch ganz interessant zu diesem Thema:
[Mapserver-DE] BETA2007 Transformation