Zur Leitseite

Teil 1

Teil 2

Teil 4

Teil 5

Teil 6

Teil 7

Auch Schlangen?

Applet zur Längenbestimmung aus den Lagekoordinaten eines Streckenzuges

Längenmessung eines Eidechsenkinds (Teil 3)

 

Hier folgen die Koordinaten von acht frei ausgewählten Kalibrierpunkten (siehe Bild 3, in Teil 2)

Die vom Foto abgelesenen Pixelkoordinaten der acht Kalibrierungspunkte
 
Die Koordinaten der entsprechenden Punkte auf der Treppenstufe, gemessen in Zentimeter in X- und Y-Richtung
x
y
X
Y
258
580
 
2.60
1.25
954
913
 
5.78
-0.15
1526
964
 
7.80
-0.05
1638
197
 
6.56
3.80
427
847
 
3.85
-0.02
340
187
 
1.90
3.29
829
209
 
3.70
3.35
1422
670
 
6.90
1.30

 

Mein Ziel ist es, aus den Pixelkoordinaten weiterer Bildpunkte auch deren Lagekoordinaten auf der Treppenstufe in Zentimeter zu bestimmen. Dass dies keine ganz triviale Aufgabenstellung ist, wird bald klar, wenn man bedenkt, dass es sich zwar sowohl bei der Treppenstufe als auch beim Bild um ebene Flächen handelt, dass aber beim Fotografieren diese beiden Ebenen nicht auch noch zufällig parallel orientiert gewesen sein werden.

Wenn aber das Ziel trotz gewisser Schwierigkeiten zu erreichen wäre, dann wollte ich aus den Abständen zwischen den Kreuzchen auf der Rückenlinie der Echse in Pixel die Gesamtlänge der Linie zunächst in Pixel auf dem Bild und nach Umrechnung schließlich auch in Zentimeter auf der Ebene der Treppenstufe berechnen.

Am Bild 6 (in Teil 2) wird einmal oben rechts der Pixelabstand von zwei Punkten bestimmt, die auf der Treppenstufe genau einen Zentimeter auseinander liegen: Punkt A und Punk B

xA = 1076, yA = 6

xB = 1177, yB = 12

Der Abstand in Pixel (nach Pythagoras): 101 Pixel

Zwei weitere Punkte C und D, unten links liegen ebenfalls einen Zentimeter auseinander:

xC = 57, yC = 730

xD = 169, yD = 734

Hier beträgt der Abstand aber: 112 Pixel, also immerhin ein Unterschied von etwa 11 Prozent.

Ein Ansatz zur Lösung der Aufgabe ist das Rechenverfahren der Projektiven Transformation.

Die beiden Formeln für die Berechnung der gewünschten X,Y-Koordinaten (in cm) aus den im Bild ermittelten x,y-Pixelkoordinaten lauten:

X = ( a1·x+b1·y+c1) / (a3·x+b3·y+1 )

Y = (a2·x+b2·y+c2) / (a3·x+b3·y+1 )

Das eigentliche Problem besteht nun darin, die acht geeigneten Transformationsparameter a1, b1, c1, a2, b2, c2 a3, b3 zu finden. Dazu sind für mindestens 5, besser aber noch einige mehr Kalibrierpunkte sowohl die Pixelkoordinaten als auch die entsprechenden Lagekoordinaten durch möglichst genaues Messen zu ermitteln. Diese Punkte wird man in unserem Beispiel so auswählen, dass sie den interessierenden Bereich einigermaßen gleichmäßig abdecken. Die Punkte der Rückenlinie (siehe Bild 4) sollten möglichst alle innerhalb des Bereiches liegen, in dem man auch seine Kalibrierpunkte ausgewählt hat.

Eine entsprechende Rechenhilfe für die Ermittlung der acht Transformationsparameter bietet dieses Applet. Dort sind - welch ein Zufall! - gerade die obigen Zahlenwerte unserer 8 Kalibrierpunkte schon mal im ersten Fenster oben links eingetragen. Ein Klick auf die grüne Schaltfläche "Berechnen der acht Parameter" führt über ein Näherungsverfahren zu den gesuchten Parametern im 3. Fenster.

Und wie lang war das Eidechsenkind denn nun? Die Antwort finden Sie im 4. Teil!

 

 

Diese Seite wurde erstellt am 10.8. 2012

Letzte Aktualisierung am 6.9. 2012