Hallo,
ich komme an einem Problem nicht weiter.
Aus einem Sensor bekomme ich ein Distanzbild. Also jeder Pixel gibt mir in 8 Bit die Entfernung an.
Ich finde auf den Bild ein Objekt (Holzklotz), nun bekomme ich die Entfernung und habe die x und y Koordinate (vom Pixel) im Bild.
Ich möchte jetzt aber eine Koordinate im Raum haben. Also die Kamera wäre x = 0, y = 0 und z = 0 wie kann ich das Umrechnen, das muss doch irgendwie gehen?
Meine Idee wäre den Öffnungswinkel der Kamera zu nehmen zb 120° und durch die Pixelbreite (zb 120 Pixel) dividieren. Damit weiß ich das 1 Pixel = 1° entspricht. Das selbe mache ich für y.
Außerdem weiß ich das der Pixel in der Mitte 0° hat. Wenn der Holzklotz jetzt 10 Pixel links vom mittleren Pixel steht, habe ich damit die Entfernung und 10°. Über die Winkelsätze kann ich mir dann die Koordinate berechnen.
stimmt das?
ist der Zusammenhang linear?
geht das einfacher?
danke
Geändert von FJK (10.08.2014 um 18:18 Uhr)
Leider ist das nicht (immer) so, dass der Zusammenhang linear ist. Nur bei Telezentrischen Objektiven ist der Zusammenhang linear.
schau dir hierzu den Link hier an: http://de.wikipedia.org/wiki/Verzeic...Verzeichnungen.
Das heist du kannst im Rohbild deinen Punkt bestimmen, korrigieren nach der obigen Funktion, und anschliessend über Vektorrechnung weitermachen. Zur Bestimmung eines Punktes im Rauim brauchst du ein Dreieck.
Siehe auch: http://de.wikipedia.org/wiki/Epipolargeometrie
Gruß
Georg
Lesezeichen