KoordTrans3D JAVA

Formeln

Standardtransformationen

Die Standardtransformationen berechnen sich alle nach dem selben einfachen Prinzip, wobei bei den Subversionen gewisse Vereinfachungen vorgenommen werden, vgl. [LVermA-NRW WWW]. Die allgemeine Transformationsgleichung lautet:
Transformationsgleichung

Nachfolgend sind die Gleichungen für die 2D- bzw. 3D-Transformation bei maximaler Anzahl an Unbekannten dargestellt.

2D-Transformation (6 Parameter)
6 Parametertransformation 2D

3D-Transformation (9 Parameter)
9 Parametertransformation 3D

Sonderformen

5 Parameter 2D-Transformation Baden-Württemberg [Baumann, 1993]
5 Parametertransformation BW

Polynomiale 2D-Transformation [UNI Münster WWW]
polynomiale 2D-Transformation - X-Wert
polynomiale 2D-Transformation - Y-Wert

Bilineare 2D-Transformation [Beineke, 2000]
bilineare 2D-Transformation - X-Wert
bilineare 2D-Transformation - Y-Wert

Projektive 2D-Transformation [Labonde WWW] und [Beineke, 2000]
projektive 2D-Transformation - X-Wert
projektive 2D-Transformation - Y-Wert

Näherungswerte

Bei den (meisten) Transformationen handelt es sich um nicht-lineare Gleichungssysteme, die nur iterativ zu einer Lösung führen. Hierzu müssen Startwerte vorgegeben werden, die dann im Zuge der Ausgleichung schrittweise verbessert werden. Die Iteration sollte solange laufen, bis die Zuschläge sich nicht mehr signifikant ändern. Durch schlechte Näherung kann es jedoch passieren, dass das System das Minimum nicht findet oder divergiert. Um möglichst plausible Näherungen zu bekommen, wird vor der eigentlichen Ausgleichung mittels Levenberg-Marquardt-Algorithmus eine erste Näherung bestimmt. Hierzu wird, wie bei [Schwarz, 2006] beschrieben, die Normalgleichung erweitert:
Levenberg-Marquardt-Algorithmus

Auch dieser Algorithmus benötigt Startwerte, ist aber gegenüber schlechten Näherungen robuster. Startwerte können in KoordTrans3D JAVA jedoch auch vorgegeben werden, wenn diese näherungsweise bekannt sind.

Beachte bitte, dass die Winkel im Bogenmaß benötigt werden!