14.06.2014 Aufrufe

Foliensatz 10 zur Vorlesung

Foliensatz 10 zur Vorlesung

Foliensatz 10 zur Vorlesung

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

Epipolargleichung<br />

t v R<br />

A 1, 2<br />

m v 1,2<br />

Translation (3-D Vektor)<br />

Rotation (3x3-Matrix)<br />

intrinsische Kameraparameter<br />

(3x3-Matrix)<br />

2-D Bildpunkte in 3-D<br />

homogenen Koordinaten<br />

Epipolargleichung:<br />

v T −T<br />

−1<br />

v<br />

m<br />

2<br />

A2<br />

[ t]<br />

R A1<br />

m1<br />

=<br />

Fundamentalmatrix (3x3-Matrix)<br />

• beschreibt Epipolargeometrie vollständig<br />

×<br />

Fundamentalmatrix F<br />

• 9 Elemente, bis auf Skalierungsfaktor definiert ⇒ 8 Freiheitsgrade<br />

• Berechnung z.B. mit 8 Punktkorrespondenzen<br />

0<br />

Essentialmatrix E<br />

[ t]<br />

x<br />

⎡ 0<br />

⎢<br />

= ⎢ tz<br />

⎢<br />

⎣−<br />

t<br />

y<br />

⎡f<br />

⋅s<br />

A=<br />

⎢<br />

⎢<br />

0<br />

⎢⎣<br />

0<br />

x<br />

− t<br />

0<br />

t<br />

x<br />

z<br />

0<br />

f ⋅s<br />

0<br />

t<br />

y<br />

− t<br />

y<br />

0<br />

x<br />

⎤<br />

⎥ ⎥⎥ ⎦<br />

cx<br />

⎤<br />

c<br />

⎥<br />

y⎥<br />

1⎥⎦<br />

Dreidimensionales Computersehen Dr.-Ing. Simon Winkelbach www.rob.cs.tu-bs.de/teaching/courses/cs 1<br />

Berechnung der Fundamentalmatrix per 8-Punkt-Algorithmus 1<br />

• Epipolargleichung ausmultiplizieren :<br />

x<br />

v<br />

2<br />

x1F<br />

11<br />

+ x2<br />

y1F<br />

12<br />

+ x2<br />

F13<br />

+ y2<br />

x1F<br />

21<br />

+ y2<br />

y1F<br />

22<br />

+ y2<br />

F23<br />

+ xF<br />

1 31<br />

+ yF<br />

1 32<br />

+ F33<br />

=<br />

• 8 Punktkorrespondenzen: Lineares Gleichungssystem<br />

v<br />

m T<br />

2<br />

Fm1<br />

=<br />

0<br />

v<br />

( m= ( x,<br />

y,1)<br />

T<br />

)<br />

0<br />

⎛ x<br />

1<br />

2<br />

x<br />

1<br />

1<br />

⎜<br />

⎜ M<br />

⎜ 8<br />

⎝ x2<br />

x<br />

v<br />

F =<br />

8<br />

1<br />

x<br />

x<br />

1<br />

2<br />

M<br />

8<br />

2<br />

y<br />

y<br />

1<br />

1<br />

8<br />

1<br />

x<br />

1<br />

2<br />

M<br />

x<br />

8<br />

2<br />

y<br />

y<br />

1<br />

2<br />

M<br />

8<br />

2<br />

x<br />

x<br />

1<br />

1<br />

8<br />

1<br />

( F F F F F F F F )<br />

11 12 13 21 22 23 31 32<br />

F33<br />

y<br />

y<br />

1<br />

2<br />

M<br />

8<br />

2<br />

y<br />

y<br />

1<br />

1<br />

8<br />

1<br />

y<br />

y<br />

1<br />

2<br />

M<br />

8<br />

2<br />

x<br />

x<br />

1<br />

1<br />

M<br />

8<br />

1<br />

y<br />

y<br />

1<br />

1<br />

M<br />

8<br />

1<br />

1⎞<br />

⎟ v<br />

M ⎟ ⋅ F<br />

1<br />

⎟<br />

⎠<br />

=<br />

M<br />

v<br />

⋅ F<br />

=<br />

0<br />

• Lösung z.B. mit Singulärwertzerlegung<br />

Alternativ: Berechnung von E direkt über 5-Punkt-Algorithmus 2<br />

1<br />

Longuet-Higgins: „A Computer Algorithm for Reconstructing a Scene from Two Projections”, 1981<br />

2<br />

Stewenius: „Recent Developments on Direct Relative Orientation“, 2006<br />

Dreidimensionales Computersehen Dr.-Ing. Simon Winkelbach www.rob.cs.tu-bs.de/teaching/courses/cs 2


Verwendung von RANSAC <strong>zur</strong> Behandlung falscher Korrespondenzen<br />

Finde Punktkorrespondenzen;<br />

// z.B. 500 Korrespondenzen<br />

for (i=0; i best_Anzahl_Inlier) {<br />

best_F = F;<br />

best_Anzahl_Inlier = Anzahl_Inlier;<br />

}<br />

}<br />

// Bewegungsschätzung der Kamera:<br />

T<br />

Berechne Essentialmatrix: E = [ t]<br />

;<br />

×<br />

R = A2<br />

FA1<br />

Extrahiere R und t aus E;<br />

// Rekonstruiere 3D-Szene durch Triangulation der Inlier...<br />

Dreidimensionales Computersehen Dr.-Ing. Simon Winkelbach www.rob.cs.tu-bs.de/teaching/courses/cs 3<br />

Experimentelles Ergebnis<br />

Middlebury Vision - dataset (Scharstein; Szeliski)<br />

http://vision.middlebury.edu/mview/data<br />

Dreidimensionales Computersehen Dr.-Ing. Simon Winkelbach www.rob.cs.tu-bs.de/teaching/courses/cs 4


Structure and Motion / Structure from Motion<br />

Dreidimensionales Computersehen Dr.-Ing. Simon Winkelbach www.rob.cs.tu-bs.de/teaching/courses/cs 5<br />

Tracking eines Roboters per Deckenkamera<br />

Schematischer Ablauf des Kalman-Filters anhand eines Beispiels<br />

ˆx k−1<br />

A, B<br />

(Drift)<br />

y<br />

y<br />

ˆx k<br />

x<br />

alte Schätzung des<br />

Roboterstatus<br />

x<br />

Statusprädiktion<br />

nächste<br />

Iteration<br />

H<br />

y<br />

x<br />

neue Schätzung des<br />

Roboterstatus<br />

x^<br />

k<br />

(Korrektur auf Basis von<br />

Messung und Rauschmodell)<br />

K,Q,R<br />

β<br />

α<br />

y k<br />

y^<br />

k<br />

Messprädiktion &<br />

aktuelle Messung<br />

Dreidimensionales Computersehen Dr.-Ing. Simon Winkelbach www.rob.cs.tu-bs.de/teaching/courses/cs 6


Aufbau des Kalman-Filters<br />

Steuerung<br />

u k<br />

Messungen<br />

y k<br />

+<br />

Schätzung des<br />

Prozessstatus<br />

^<br />

x k-1<br />

^-<br />

x k<br />

Statusprädiktion<br />

Messungsprädiktion<br />

y^<br />

k<br />

-<br />

∗<br />

+<br />

+<br />

^<br />

x k<br />

Schätzung des<br />

Prozessstatus<br />

K k<br />

Kovarianz<br />

P k-1<br />

Kovarianzkorrektur<br />

Kovarianzprädiktion<br />

-<br />

P k<br />

P k<br />

Kovarianz<br />

Prädiktion<br />

Korrektur<br />

Q k<br />

Prozessrauschen<br />

R k<br />

Messrauschen<br />

Dreidimensionales Computersehen Dr.-Ing. Simon Winkelbach www.rob.cs.tu-bs.de/teaching/courses/cs 7<br />

Unterschied von Kalman- und Partikelfilter<br />

Kalmanfilter : Gaußverteilung<br />

p(x)<br />

Wahrscheinlichkeitsdichte<br />

x<br />

Partikelfilter: Beliebige Verteilung<br />

p(x)<br />

Wahrscheinlichkeitsdichte<br />

x<br />

x<br />

Dreidimensionales Computersehen Dr.-Ing. Simon Winkelbach www.rob.cs.tu-bs.de/teaching/courses/cs 8


Tracking per Partikelfilter<br />

S k-1<br />

W k-1<br />

Neuverteilung<br />

(Resampling)<br />

-<br />

y<br />

y<br />

S k-1<br />

x<br />

Wahrscheinlichkeitsdichte<br />

(gewichtete Partikel)<br />

x<br />

Korrektur:<br />

Gewichtung auf Basis<br />

der Messung<br />

Prädiktion:<br />

Drift<br />

S k<br />

y<br />

y<br />

x<br />

Prädiktion: Diffusion<br />

(+ Rauschen)<br />

x<br />

verschobene<br />

Partikel<br />

Dreidimensionales Computersehen Dr.-Ing. Simon Winkelbach www.rob.cs.tu-bs.de/teaching/courses/cs 9<br />

Aufbau des Partikelfilters<br />

Steuerung<br />

Messungen<br />

u k<br />

y k<br />

Gewichte<br />

Partikel<br />

W k-1<br />

S k-1<br />

Messungsprädiktion<br />

Neuverteilung<br />

-<br />

S k-1<br />

S k<br />

Statusprädiktion<br />

Y<br />

^<br />

k<br />

Berechnung<br />

der Gewichte<br />

W k<br />

S k<br />

Gewichte<br />

Partikel<br />

Selektion<br />

Prädiktion<br />

Korrektur<br />

Best Cluster<br />

^<br />

x k<br />

Schätzung des<br />

Prozessstatus<br />

Q k<br />

Prozessrauschen<br />

R k<br />

Messrauschen<br />

Dreidimensionales Computersehen Dr.-Ing. Simon Winkelbach www.rob.cs.tu-bs.de/teaching/courses/cs <strong>10</strong>


Bsp: Partikelfilter <strong>zur</strong> Lokalisation eines Roboters<br />

Fox, Burgard, Dellaert, Thrun<br />

www.cs.washington.edu/ai/Mobile_Robotics/index.html<br />

Dreidimensionales Computersehen Dr.-Ing. Simon Winkelbach www.rob.cs.tu-bs.de/teaching/courses/cs 11

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!