Moien
In der Bildverarbeitung gibt es Transformationsmatrixen (3x3)
die im 2D-Raum Punkte skalieren, rotieren und verschieben. Wie
man die Matrixen aus Vorgaben (Rotiere um x°, verschiebe um y
Pixel) erstellt ist mir klar. Ich bräuchte jetzt aber dem
ungedrehten Fall. Ich habe einige Punktepaare und brauche
(sehr schnell) eine passende Transformationsatrix.
Die Koordinaten der Punktepaare sind dabei allerdings u.U.
fehlerhaft.
Wie macht man sowas? Es sollte möglich sein eine
Regressionsgleichung dafür aufzustellen, aber irgendwie reicht
mein Wissen dafür nicht.
Die Regressions"gerade" kann man genauso einfach bestimmen, wie im Fall eines linearen Zusammenhanges zwischen zwei Variablen.
Fall eines linearen Zusammenhanges zwischen zwei Variablen:
ΔSumme(i, (mxi + b - yi)²) = 0,
wobei m und b unabhängig variiert werden. Dies führt auf 2 lineare Gleichungen für m und b, die von , , und abhängen.
Im 2-D Fall hat man statt (xi, yi) 2-Tupelpaare:
(zi; wi) = (xi, yi; ui, vi)
Mit
ΔSumme(i, ( R ( z i- t )+ t - w i)²) = 0
t ist der Translationsvektor t = (r, s) und R die Rotationsmatrix
R11 = R22 = cos φ
R12 = -R21 = -sin φ
Geht man vor, wie bei der Regressionsgerade, erhält man vier Bestimmungsgleichungen für die drei Größen r, s und cos φ, die von , , , , , , , , , und abhängen.
Das Problem ist also überbestimmt.
cu