projective_trans_point_2dT_projective_trans_point_2dProjectiveTransPoint2dProjectiveTransPoint2d — Projiziert einen homogenen 2D-Punkt mittels einer projektiven
Transformationsmatrix.
double HHomMat2D.ProjectiveTransPoint2d(double px, double py, double pw, out double qy, out double qw)
Beschreibung
projective_trans_point_2dprojective_trans_point_2dProjectiveTransPoint2dProjectiveTransPoint2dProjectiveTransPoint2d wendet die homogene projektive
Transformationsmatrix HomMat2DHomMat2DHomMat2DHomMat2DhomMat2D auf alle homogenen
Eingabepunkte (PxPxPxPxpx,PyPyPyPypy,PwPwPwPwpw) an und liefert
eine Liste von homogenen Ergebnispunkten
(QxQxQxQxqx,QyQyQyQyqy,QwQwQwQwqw) zurück. Die Transformation
wird durch eine homogene Transformationsmatrix beschrieben, die in
HomMat2DHomMat2DHomMat2DHomMat2DhomMat2D übergeben wird. Dies entspricht der folgenden
Gleichung (Ein- und Ausgabepunkte als homogene Vektoren
dargestellt):
Um die homogenen Koordinaten in euklidische Koordinaten zu
transformieren, muss durch QwQwQwQwqw geteilt werden:
Falls die zu transformierenden Punkte in Standard-Bildkoordinaten
vorliegen, müssen die Zeilen-Koordinaten der Punkte in
PxPxPxPxpx und die Spalten-Koordinaten in PyPyPyPypy
übergeben werden. Dies ist notwendig, um für das Bild ein
rechtshändiges Koordinatensystem zu erhalten. Insbesondere werden
dadurch Rotationen im korrekten Drehsinn ausgeführt. Die
Koordinatenreihenfolge (x,y) der Matrizen entspricht dann der
üblichen Koordinatenreihenfolge (Zeile,Spalte) der Bilder.
Ausführungsinformationen
Multithreading-Typ: reentrant (läuft parallel zu nicht-exklusiven Operatoren).
Multithreading-Bereich: global (kann von jedem Thread aufgerufen werden).