Buchvorstellung
Buchcover

Im großen Garten der Geometrie kann sich jeder nach seinem Geschmack einen Strauß pflücken.
David Hilbert

Bestimmung der 7 Parameter einer Helmerttransformation mit Quaternionen

Transformationen zum Überführen von Koordinaten zwischen verschiedenen Systemen ist eine der grundlegenden Hauptaufgaben in der Geodäsie. Mit einem bekannten Parametersatz können so Koordinaten aus einem Ausgangssystem in ein Zielsystem überführt werden. Liegen keine Transformationsparameter zum Überführen von Punkten zwischen beiden Koordinatensystemen vor, so sind diese durch Stütz- bzw. Passpunkte zu schätzen. Diese Punkte besitzen Koordinateninformationen im Start- und Zielsystem. Eine der bekanntesten Transformation ist die sogenannte HELMERT-Transformation. Diese Transformation besitzt in der Ebene vier und im Raum sieben Parameter. Die allgemeine Transformationsgleichung lautet:


Transformationsgleichung
Transformation

Hierbei ist der Vektor Y ein Punkt im Zielsystem, X ist derselbe Punkt im Startsystem, der Vektor t beschreibt die Verschiebung zwischen beiden Koordinatensystemen, m ist der Maßstab und die Matrix R beschreibt die Verdrehung zwischen beiden Systemen, welche bei der räumlichen Transformation i.A. durch Multiplikation der drei Rotationsmatrizen gewonnen wird.

Während in der Ebene die gesuchten Transformationsparameter verhältnismäßig einfach durch eine Ausgleichungsrechnung bestimmt werden können, da die Gleichungen bereits linear sind bzw. in ein lineares Problem überführt werden können, benötigt die räumliche Koordinatentransformation Startwerte, um das nicht-lineare Gleichungssystem iterativ zu lösen. Je nach Güte der eingeführten Startwerte konvergiert das Gleichungssystem mehr oder weniger schnell. Ist die erste Näherung extrem schlecht konvergiert das Gleichungssystem mitunter überhaupt nicht. Dies ist mit Sicherheit auch ein Grund, weshalb Niemeier (2008) der Näherungswertbestimmung ein ganzes Kapitel in seinem Buch widmet. Zwar erwähnt er auch die Möglichkeit, die Parameter in geschlossener Form über Quaternione zu berechnen, geht aus Gründen der Anschaulichkeit jedoch nicht näher darauf ein.


Kurzbeschreibung einer Quaternionentransformation

Sanso beschreibt bereits 1973 die Möglichkeit einer geschlossenen Transformation, die Horn 1987 noch einmal publizierte und gegenwärtig von Shen et al. (2006) nochmals aufgegriffen wurde. Hierbei werden die 7 Transformationsparameter durch ein nicht-iteratives Verfahren unter Zuhilfenahme von Quaternionen bestimmt. In diesem Artikel soll weniger die Quaternionenalgebra beschrieben werden als vielmehr gezeigt werden, wie die Transformationsparameter auf einfache Art und Weise bestimmt werden können. Für eine didaktisch sehr gute Beschreibung von Rotationen mit Quaternionen sei auf Kuipers (2002) verwiesen. Eine detaillierte Übersicht über verschiedene Darstellungen von Drehungen im Raum und deren Beziehungen zueinander liefern Nitschke und Knickmeyer (2000).

Im Folgenden sei die Bestimmung der Transformationsparameter, wie in Horn (1987) aufgeführt, kurz beschrieben, die im Anschluss mit einem Beispiel veranschaulicht wird. Sollte JavaScript im Browser aktiviert sein, können eigene Berechnungen durchgeführt werden.

Zunächst sind die Koordinaten im Start- und Zielsystem auf den jeweiligen Schwerpunkt zu reduzieren.


Schwerpunktreduktion
Schwerpunktreduktion

mit den Schwerpunktkoordinaten


Schwerpunktkoordinaten
Schwerpunktkoordinaten

Fasst man das Start- und Zielsystem jeweils als nx3-Matrix Sx und Sy auf, in denen die reduzierten Punkte zeilenweise enthalten sind, so ergibt sich das Produkt M zu:


Produkt der Systeme
Produkt der Systeme

Mit den Elementen der Matrix M kann die symmetrische Matrix N gebildet werden. Die obere Dreiecksmatrix lautet:


Matrix N zur Bestimmung der Quaternion
Matrix N zur Bestimmung der Quaternion

Der größte Eigenwert λmax mit korrespondierendem normierten Eigenvektor ist von dieser Matrix N zu bestimmen. Dieser normierte Eigenvektor von N ist identisch mit der gesuchten Quaternion q = [q0; qe] = [q0; q1, q2, q3], welches die Verdrehung zwischen beiden Systemen beschreibt. Eine Überführung von q in eine äquivalente Rotationsmatrix R ist [Nitschke und Knickmeyer, 2000]:


Rotationsmatrix aus Quaternion
Rotationsmatrix aus Quaternion

Mit der so gefundenen Drehmatrix R können Maßstab m und Translation t bestimmt werden.


Maßstabs- und Translationsberechnung
Maßstabs- und Translationsberechnung

Unterschiedliche Punktgenauigkeiten können durch einen einfachen Gewichtsansatz Rechnung getragen werden [Horn, 1987] oder z.B. mithilfe einer Monte-Carlo-Simulation abgeleitet werden.


Beispiel

Nachfolgendes Beispiel ist Shen et al. (2006) entnommen. Bei aktivem JavaScript kann die Bestimmung der Transformationsparameter direkt online erfolgen. Für die Bestimmung der Eigenwerte und –vektoren wird der auf der beigefügten Buch-CD in Jäger et al. (2005) enthaltene Algorithmus genutzt.

Quaternionentransformation
7-Parameter-Quaternionentransformation
Startsystem Zielsystem
  4157222.543 664789.307 4774952.099     4157870.237 664818.678 4775416.524  
  4149043.336 688836.443 4778632.188     4149691.049 688865.785 4779096.588  
  4172803.511 690340.078 4758129.701     4173451.354 690369.375 4758594.075  
  4177148.376 642997.635 4760764.800     4177796.064 643026.700 4761228.899  
  4137012.190 671808.029 4791128.215     4137659.549 671837.337 4791592.531  
  4146292.729 666952.887 4783859.856     4146940.228 666982.151 4784324.099  
  4138759.902 702670.738 4785552.196     4139407.506 702700.227 4786016.645  
Maßstab 5.58 ppm
Translation 641.8804 m 68.6553 m 416.3982 m
Rotationsmatrix
 0.99999999998 	 0.00000481462 	-0.00000433275 	
-0.00000481464 	 0.99999999998 	-0.00000484085 	
 0.00000433273 	 0.00000484087 	 0.99999999998 	

Zusammenfassung

Auf der Suche nach einer Möglichkeit zuverlässig Näherungswerte für die räumliche Koordinatentransformation zu bestimmen, bin ich auf die in bspw. Horn (1987) beschriebene Quaternionentransformation gestoßen. Diese Transformation via Quaternionen stellt ein eigenes Verfahren zur Bestimmung der unbekannten Transformationsparameter dar, welches Ergebnisse liefert, die mit denen aus einem (ungewichteten) Gauß-Markov-Modell identisch sind. Das oben beschrieben Verfahren lässt sich verhältnismäßig einfach implementieren und dient im Modul CoordTrans im Ausgleichungsprogramm Java Graticule 3D zur Bestimmung der ersten Näherung für die gesuchten Transformationsparameter bei räumlichen Koordinatentransformationen. Mit dem selben Ansatz lassen sich auch bei der Bestimmung von verketteten Transformationen (Bündelausgleichung) Näherungswerte beschaffen.


Quellen

Verwendete Literatur, die nicht der Bibliothek entnommen ist:

  • Horn, B.K.P. (1987), Closed-form solution of absolute orientation using unit quaternions, Journal of the Optical Society of America
  • Nitschke, M., Knickmeyer, E.H. (2000), Rotation Parameters - A survey of Techniques, Journal of Surveying Engineering
  • Sanso, F. (1973), An exact solution of the roto-translation problem, Photogrammetria 29
  • Shen Y.-Z., Chen Y., Zheng D.-H. (2006), A quaternion-based geodetic datum transformation algorithm, Journal of Geodesy

 

06.06.2009 von Michael Lösler