computer vision v. dynamische stereoanalyse datum: 12.01.2001 vortrag von: mark kiwitz
TRANSCRIPT
![Page 1: Computer Vision V. Dynamische Stereoanalyse Datum: 12.01.2001 Vortrag von: Mark Kiwitz](https://reader035.vdokument.com/reader035/viewer/2022081518/55204d6149795902118b592a/html5/thumbnails/1.jpg)
Computer Vision
V. Dynamische Stereoanalyse
Datum: 12.01.2001Vortrag von: Mark Kiwitz
![Page 2: Computer Vision V. Dynamische Stereoanalyse Datum: 12.01.2001 Vortrag von: Mark Kiwitz](https://reader035.vdokument.com/reader035/viewer/2022081518/55204d6149795902118b592a/html5/thumbnails/2.jpg)
2
Einführung
Welche Dynamikursachen betrachten wir? Bedeutung von Bewegungsvektoren Darstellung von Vektorfeldern Grundlage für Gestaltsrekonstruktion Berechnungsverfahren: optischer Fluß
![Page 3: Computer Vision V. Dynamische Stereoanalyse Datum: 12.01.2001 Vortrag von: Mark Kiwitz](https://reader035.vdokument.com/reader035/viewer/2022081518/55204d6149795902118b592a/html5/thumbnails/3.jpg)
3
Gliederung
1. Verschiebungsvektoren & Rekonstruktion
2. Optischer Fluß3. Objektrotation & Rekonstruktion4. Diskussion
![Page 4: Computer Vision V. Dynamische Stereoanalyse Datum: 12.01.2001 Vortrag von: Mark Kiwitz](https://reader035.vdokument.com/reader035/viewer/2022081518/55204d6149795902118b592a/html5/thumbnails/4.jpg)
4
1. Verschiebungsvektoren & Rekonstruktion
Theoretische Grundlagen für dynamische Bildaufnahmen
keine Einschränkung der 3D-Bewegung keine kalibrierten
Bildaufnahmesituationen Berechnung von Oberflächennormalen aus
lokalen Verschiebungsvektoren
![Page 5: Computer Vision V. Dynamische Stereoanalyse Datum: 12.01.2001 Vortrag von: Mark Kiwitz](https://reader035.vdokument.com/reader035/viewer/2022081518/55204d6149795902118b592a/html5/thumbnails/5.jpg)
5
Lokale Verschiebungsvektoren
Konstante Kameraposition Absolute Bewegungen Formfeste Szenenobjekte
Erzeugung einer Bildfolge E1 , E2 , E3 , ...
durch in konstanten Zeitabstand tconst
aufgenommene Abbilder Ei
![Page 6: Computer Vision V. Dynamische Stereoanalyse Datum: 12.01.2001 Vortrag von: Mark Kiwitz](https://reader035.vdokument.com/reader035/viewer/2022081518/55204d6149795902118b592a/html5/thumbnails/6.jpg)
6
Lokale Verschiebungsvektoren
Oberflächenpunkt P wird in Ei auf palt = (x,y) und in Ei+1 auf pneu projiziert
Diskreter Fall für Zeitpunkte ti = i tconst :
dxy (ti) = pneu - palt = tconst (xy (ti) , xy(ti) )T Allgemeiner Fall:
vxy (ti) = dp/dt (t) = p’(t) = (xy (t) , xy(t) )T
& dxy (t) = tconst vxy (ti)
pneu = palt + tconst p’(t)
![Page 7: Computer Vision V. Dynamische Stereoanalyse Datum: 12.01.2001 Vortrag von: Mark Kiwitz](https://reader035.vdokument.com/reader035/viewer/2022081518/55204d6149795902118b592a/html5/thumbnails/7.jpg)
7
Lokale Verschiebungsvektoren
Veschiebungsvektoren dxy (t) repräsentieren die 3D-Bewegung
Menge dieser Vektoren bilden das lokale Ver-schiebungsfeld , welche die Grundlage für Un-tersuchungen der Bewegungsgeometrie bilden
Berechnung nur möglich, wenn einzelne Ober-flächenpunkte eindeutig in der Bildfolge verfolgt werden können (Aperturproblem)
![Page 8: Computer Vision V. Dynamische Stereoanalyse Datum: 12.01.2001 Vortrag von: Mark Kiwitz](https://reader035.vdokument.com/reader035/viewer/2022081518/55204d6149795902118b592a/html5/thumbnails/8.jpg)
8
Objektbewegung und lokale Verschiebung
Lokale Verschiebungsfelder sind sinnvoll für Rekonstruktionsalgorithmen, aber es besteht das Problem, daß dabei die 3D-Bewegungs-vektoren nicht immer konstant sind.
Absolute Geschwindigkeit des Oberflächenpunk-tes muß ermittelt werden.
![Page 9: Computer Vision V. Dynamische Stereoanalyse Datum: 12.01.2001 Vortrag von: Mark Kiwitz](https://reader035.vdokument.com/reader035/viewer/2022081518/55204d6149795902118b592a/html5/thumbnails/9.jpg)
9
Objektbewegung und lokale Verschiebung
Geschwindigkeit des Oberflächenpunktes P = (X ,Y ,Z ): vP(t) = vXYZ (t)
Für kamerazentriertes Projektionsmodell seien P = (X ,Y ,Z )T und p = (x ,y ,f )
T Punktvektoren Geschwindigkeiten der Punkte:
vXYZ (t) = dP/dt(t) = P’(t), dxy (t) = dp/dt(t) = p’ (t)
Skalarprodukt des Punktes P = (Xt ,Yt ,Zt ) mit dem Einheitsvektor k = (0,0,1)T ist Zt
![Page 10: Computer Vision V. Dynamische Stereoanalyse Datum: 12.01.2001 Vortrag von: Mark Kiwitz](https://reader035.vdokument.com/reader035/viewer/2022081518/55204d6149795902118b592a/html5/thumbnails/10.jpg)
10
Objektbewegung und lokale Verschiebung
Laut Strahlensatz gilt folgender Zusammenhang:
p(t) = f/Zt P(t) Aus Kreuzproduktregel
(a x b) x c = (a c) b - (b c) a folgt:
dxy (t) = f/Zt2 (P(t) x vXYZ (t)) x k
![Page 11: Computer Vision V. Dynamische Stereoanalyse Datum: 12.01.2001 Vortrag von: Mark Kiwitz](https://reader035.vdokument.com/reader035/viewer/2022081518/55204d6149795902118b592a/html5/thumbnails/11.jpg)
11
Objektbewegung und lokale Verschiebung
Nutzung für synthetische Objekte zur Er-zeugung eines lokalen Verschiebungsfeld
Schlüsse ziehen auf das Verhalten von lokalen Verschiebungsvektoren relativ zur Objektgeometrie
Diskontinuitäten bei Verdeckungskanten
![Page 12: Computer Vision V. Dynamische Stereoanalyse Datum: 12.01.2001 Vortrag von: Mark Kiwitz](https://reader035.vdokument.com/reader035/viewer/2022081518/55204d6149795902118b592a/html5/thumbnails/12.jpg)
12
Objektbewegung und Gradienten
Oberflächenpunkt P sei auf einer Facette Facette liegt auf der Ebene: Z = pX + qY + r Für P gilt speziell P = (A, B, pA + qB + r ) Bewegung der Facette ist eine Kombination
aus Rotation und nachfolgender Translation grad P = (nx(P), ny(P), nz(P))T = (p, q, -1)T
Drehung um Rotationszentrum (0, 0, r )T Rotationsachse sei (1 , 2 , 3 )
T
Translationsvektor sei (a ,b ,c )T
![Page 13: Computer Vision V. Dynamische Stereoanalyse Datum: 12.01.2001 Vortrag von: Mark Kiwitz](https://reader035.vdokument.com/reader035/viewer/2022081518/55204d6149795902118b592a/html5/thumbnails/13.jpg)
13
Lokale Verschiebungen und Gradienten
Oberflächengradienten und lokale Verschie-bungen sind voneinander abhängig
Diese Abhängigkeiten zu überprüfen sind eine spezielle Zielstellung der Gestaltrekonstruktion
Durch Approximation können Verschiebungs-felder als Polynome dargestellt werden
![Page 14: Computer Vision V. Dynamische Stereoanalyse Datum: 12.01.2001 Vortrag von: Mark Kiwitz](https://reader035.vdokument.com/reader035/viewer/2022081518/55204d6149795902118b592a/html5/thumbnails/14.jpg)
14
2. Optischer Fluß
Ausgangsproblem: bis jetzt wurden nur dynami-sche formfeste Szenenobjekte betrachtet; was ist, wenn die Kamera sich ebenfalls bewegt oder das Objekt nicht konstant ist (z.B.Wolken)?
Der optische Fluß bietet nun Verfahren, so daß Verschiebungsfelder auch für solche Situationen berechnet werden können
![Page 15: Computer Vision V. Dynamische Stereoanalyse Datum: 12.01.2001 Vortrag von: Mark Kiwitz](https://reader035.vdokument.com/reader035/viewer/2022081518/55204d6149795902118b592a/html5/thumbnails/15.jpg)
15
Lösungswege
Zu bestimmen ist eine Bildfunktion, die “Pixel” auf jeweils einen Wert abbildet
Diese nennt man Bildirradianz E (x, y, ti) von Bild Ei im Punkt p = (x, y ), für i = 0,1,2,... und ti = i tconst
Der optische Fluß sei nun definiert als
ui (x, y ) = (ui (x, y ), vi (x, y ) )T
von Bild Ei zu Ei+1
![Page 16: Computer Vision V. Dynamische Stereoanalyse Datum: 12.01.2001 Vortrag von: Mark Kiwitz](https://reader035.vdokument.com/reader035/viewer/2022081518/55204d6149795902118b592a/html5/thumbnails/16.jpg)
16
Lösungswege
Bildwerttreue des optischen Flusses:E (x +ui (x, y ), y +vi (x, y ), ti+1) = E (x, y, ti)
(dies kann jedoch Algorithmen zur Vektorbe-rechnung von (u, v )T nur gering unterstützen)
Zielstellung ist, daß der optische Fluß der loka-len Verschiebung entspricht
Bewegungstreue des optischen Flusses: xy (ti) = ui (x, y ) , xy(ti) = vi (x, y )
![Page 17: Computer Vision V. Dynamische Stereoanalyse Datum: 12.01.2001 Vortrag von: Mark Kiwitz](https://reader035.vdokument.com/reader035/viewer/2022081518/55204d6149795902118b592a/html5/thumbnails/17.jpg)
17
Horn-Schunck-Verfahren
Darstellung der Bildfunktion E (x, y, ti) für einen kleinen Schritt (x, y, t) durch eine TaylorreiheE (x + x, y + y, ti + t )
= E (x, y, ti) + x Ex + y Ey + t Et
+ e Aus der Bildwerttreue bzw. der
Bewegungstreue des optischen Flusses folgt die Horn-Schunck-Bedingung:0 = ui (x, y ) Ex + vi (x, y ) Ey + Et
![Page 18: Computer Vision V. Dynamische Stereoanalyse Datum: 12.01.2001 Vortrag von: Mark Kiwitz](https://reader035.vdokument.com/reader035/viewer/2022081518/55204d6149795902118b592a/html5/thumbnails/18.jpg)
18
Horn-Schunck-Verfahren
Für einen bestimmten Zeitpunkt der Bildfolge nimmt die Horn-Schunck-Bedingung die Form
u Ex + v Ey = -Et bzw. (Ex ,Ex ) (u,v )T = -Et
(die Ableitungen von E seien vorrausgesetzt) u und v sind dadurch eingeschränkt
(Darstellung als Gerade im uv-Raum) Nun könnte man eine Lösung wählen ( Schnitt-
punkt einer Senkrechten mit der Geraden)
![Page 19: Computer Vision V. Dynamische Stereoanalyse Datum: 12.01.2001 Vortrag von: Mark Kiwitz](https://reader035.vdokument.com/reader035/viewer/2022081518/55204d6149795902118b592a/html5/thumbnails/19.jpg)
19
Horn-Schunck-Verfahren
Da für die Bestimmung geeigneter u - und v - Werte eine Gerade unendlich viele Lösungen bietet, ist es sinnvoll eine weitere Annahme für den optischen Fluß zu untersuchen
Es existiert folgende Feststellung: benachbarte Oberflächenpunkte eines sich bewegenden Objektes besitzen etwa die selben Verschiebungsvektoren (Glattheit des Vektorfeldes)
![Page 20: Computer Vision V. Dynamische Stereoanalyse Datum: 12.01.2001 Vortrag von: Mark Kiwitz](https://reader035.vdokument.com/reader035/viewer/2022081518/55204d6149795902118b592a/html5/thumbnails/20.jpg)
20
Horn-Schunck-Verfahren
Diese Glattheit ist gegeben, wenn die Änderungen des Vektorfeldes klein sind man bestimmt die erste Ableitung des Vektorfeldes und versucht diese zu minimieren
u (x, y ) = (u (x, y ), v (x, y ) )T
insgesamt vier mögliche Ableitungen: ux (x, y ), uy (x, y ), vx (x, y ), vy (x, y )
![Page 21: Computer Vision V. Dynamische Stereoanalyse Datum: 12.01.2001 Vortrag von: Mark Kiwitz](https://reader035.vdokument.com/reader035/viewer/2022081518/55204d6149795902118b592a/html5/thumbnails/21.jpg)
21
Horn-Schunck-Verfahren
Um jetzt den optimalen Wert herauszufinden, werden die einzelnen Ableitungen quadriert und anschließend aufsummiert ux (x, y )2 +uy (x, y )2 +vx (x, y )2 +vy (x, y )2
Da dieser Fehler vom optischen Fluß abhängt, muß zusätzlich die Horn-Schunck-Bedingung eingehalten werden, d.h. hier muß ebenfalls der Fehler berücksichtigt werden (Fehlerterm e) folgende Funktionale sind zu minimieren
![Page 22: Computer Vision V. Dynamische Stereoanalyse Datum: 12.01.2001 Vortrag von: Mark Kiwitz](https://reader035.vdokument.com/reader035/viewer/2022081518/55204d6149795902118b592a/html5/thumbnails/22.jpg)
22
Horn-Schunck-Verfahren
Fg (u, v ) = (ux
2 + uy
2 + vx2 + vy
2 )dxdy
Fh (u, v ) = (u Ex +v Ey +Et )
2 dxdy
Der Fehler insgesamt ist also:
FkHornSchunck (u, v ) = Fg (u, v )+ Fh (u, v ) ist hierbei der Wichtungsparameter und ist
nach der Genauigkeit der Bildirradianzmessung zu wählen (größer, je mehr die Horn-Schunck-Bedingung gerechtfertigt ist)
![Page 23: Computer Vision V. Dynamische Stereoanalyse Datum: 12.01.2001 Vortrag von: Mark Kiwitz](https://reader035.vdokument.com/reader035/viewer/2022081518/55204d6149795902118b592a/html5/thumbnails/23.jpg)
23
Horn-Schunck-Verfahren
Das Funktional FkHornSchunck (u, v ) gilt es
nun zu minimieren Möglichkeiten sind zum einen die
Variations-rechnung (Euler-Gleichungen), zum anderen die sog. diskrete Iteration
![Page 24: Computer Vision V. Dynamische Stereoanalyse Datum: 12.01.2001 Vortrag von: Mark Kiwitz](https://reader035.vdokument.com/reader035/viewer/2022081518/55204d6149795902118b592a/html5/thumbnails/24.jpg)
24
Horn-Schunck-Verfahren
Für die diskrete Iteration werden Bildpunkte nur in ganzzahligen Koordinaten betrachtet (i, j ), mit 1 i M und 1 j N und ganzzahlige Zeitpunkte t = 0, 1, 2, ...
Nun kann der Glattheitsfehler zum Zeitpunkt t abgeschätzt dargestellt werden:
fGlattheit (i, j ) = 1/4 ((ui+1,j - uij )2 + (ui,j+1 - uij )
2
+ (vi+1,j - vij )2 + (vi,j+1 - vij )
2 )
![Page 25: Computer Vision V. Dynamische Stereoanalyse Datum: 12.01.2001 Vortrag von: Mark Kiwitz](https://reader035.vdokument.com/reader035/viewer/2022081518/55204d6149795902118b592a/html5/thumbnails/25.jpg)
25
Horn-Schunck-Verfahren
Der Fehler der Horn-Schunck-Bedingung wird dann folgendermaßen abgeschätzt:
fHS (i, j ) =
= Ex (x, y, t ) uij + Ey (x, y, t ) vij + Et (x, y, t )
Also gilt dann folgende Funktion zu minimieren:
ftotal (i, j ) = (
fGlattheit (i, j ) + fHS (i, j ) )
Diese Funktion wird nun abgeleitet, um das Minimum bestimmen zu können
![Page 26: Computer Vision V. Dynamische Stereoanalyse Datum: 12.01.2001 Vortrag von: Mark Kiwitz](https://reader035.vdokument.com/reader035/viewer/2022081518/55204d6149795902118b592a/html5/thumbnails/26.jpg)
26
Diskussion
Ist die Bewegungstreue immer gültig? Zumindest ist es verifizierbar, daß der berech-
nete optische Fluß einer Projektion des Ver-schiebungsvektors auf den Bildwertgradienten
(Ex (x, y, t ), Ey (x, y, t ))T entspricht. Verläuft der Verschiebungsvektor entlang
einer Bildkante so ist der dazugehörige optische Fluß an dieser Stelle der Nullvektor (Aperturproblem)
![Page 27: Computer Vision V. Dynamische Stereoanalyse Datum: 12.01.2001 Vortrag von: Mark Kiwitz](https://reader035.vdokument.com/reader035/viewer/2022081518/55204d6149795902118b592a/html5/thumbnails/27.jpg)
27
3. Objektrotation und Rekonstruktion
Zunächst wurden die Verhältnisse zwischen 3D-Bewegung und lokalen
Verschiebungsvekto-ren betrachtet, sowie mit dem optischen Fluß ein Berechnungsverfahren dieser Vektoren vorgestellt
Nun wird die Gestaltrekonstruktion betrachtet, unter der Vorgabe einer statischen Kamera und Objekte auf einer Drehscheibe
![Page 28: Computer Vision V. Dynamische Stereoanalyse Datum: 12.01.2001 Vortrag von: Mark Kiwitz](https://reader035.vdokument.com/reader035/viewer/2022081518/55204d6149795902118b592a/html5/thumbnails/28.jpg)
28
Weltkoordinaten aus Punktkorrespondenz
Als Ergebnis einer Kalibrierung (sh. Vortrag II) werden eine Rotationsmatrix R, ein Transla-tionsvektor T, die Kamerakonstante fk , die
Ver-zerrungskoeffizienten 1 und 2 , der Bildhaupt-punkt (cx , cy ) und der Skalierungsfaktor sx vor-rausgesetzt
Für das X Y Z -Weltkoordinatensystem stimmen die Z -Achse mit der Drehachse überein und die Scheibenebene sei parallel zur X Y -Ebene
![Page 29: Computer Vision V. Dynamische Stereoanalyse Datum: 12.01.2001 Vortrag von: Mark Kiwitz](https://reader035.vdokument.com/reader035/viewer/2022081518/55204d6149795902118b592a/html5/thumbnails/29.jpg)
29
Weltkoordinaten aus Punktkorrespondenz
Man betrachte nun einen beliebigen Oberflä-chenpunkt P = (XW , YW , ZW )
T
Zum Zeitpunkt t befindet sich dieser Punkt P(t)
und in t +1 : P(t +1) = R P(t)
Die Transformation in Kamerakoordinaten liefert
R P(t) + T = C(t) bzw. RR P(t) + T = C(t +1)
Es sei C(t) = (X (t),Y (t),Z (t) ) die Darstellung der
Position des beobachteten Oberflächenpunktes
![Page 30: Computer Vision V. Dynamische Stereoanalyse Datum: 12.01.2001 Vortrag von: Mark Kiwitz](https://reader035.vdokument.com/reader035/viewer/2022081518/55204d6149795902118b592a/html5/thumbnails/30.jpg)
30
Weltkoordinaten aus Punktkorrespondenz
Die Projektionszentrumskoordinaten sind
x (t) = fk /Z (t) X (t) und y (t) = fk /Z (t) Y (t)
Beziehungen zu den
Verzerrungskoordinaten
x (t) = x(t) (1 + 1 r (t)2
+ 2 r (t)4 )
y (t) = y(t) (1 + 1 r (t)2
+ 2 r (t)4 )
![Page 31: Computer Vision V. Dynamische Stereoanalyse Datum: 12.01.2001 Vortrag von: Mark Kiwitz](https://reader035.vdokument.com/reader035/viewer/2022081518/55204d6149795902118b592a/html5/thumbnails/31.jpg)
31
Eingeschränkter Suchbereich für die Korrespondenzanalyse
In kalibrierten Situationen können aus korres-pondierenden Punkten Tiefenwerte bzw. Welt-koordinaten berechnet werden
Einschränkung der Korrespondenzsuche des Suchbereichs durch die Epipolargeometrie je-weils auf eine Gerade bzw. auf eine Strecke
Zur selben Situation kommt hinzu, daß die Ka-mera entgegengesetzt der Rotationsrichtung sich auf einer Kreisbahn bewegt
![Page 32: Computer Vision V. Dynamische Stereoanalyse Datum: 12.01.2001 Vortrag von: Mark Kiwitz](https://reader035.vdokument.com/reader035/viewer/2022081518/55204d6149795902118b592a/html5/thumbnails/32.jpg)
32
Eingeschränkter Suchbereich für die Korrespondenzanalyse
Wieder wird hierbei ein Punkt P betrachtet Dieser ist zum Zeitpunkt t in der
unverzerrten Bildebene in den Bildpunkt p(t) = (x (t) , y (t) ) projiziert
Dieser Projektionsstrahl schneidet den Zylinder-mantel in die Punkte T1 und T2
Zum Zeitpukt t +1 werden beide Punkte in die Bildpunkte t1 und t2 projiziert, die Verbindungs-gerade ist dann der eingeschränkte Suchbereich
![Page 33: Computer Vision V. Dynamische Stereoanalyse Datum: 12.01.2001 Vortrag von: Mark Kiwitz](https://reader035.vdokument.com/reader035/viewer/2022081518/55204d6149795902118b592a/html5/thumbnails/33.jpg)
33
4. Diskussion
Wie kann nun allgemein eine dynamische Stereoanalyse erfolgen ?
1.Berechnung von lokalen Verschiebunsvektoren
2.Bestimmung der Oberflächenpunkte entspre-chender Verschiebungsvektoren
3.Rekonstruktion geschlossener Oberflächen mit Hilfe von Glättungs-, Approximations- oder In-terpolationsalgorithmen angewendet auf einzel-ne rekonstruierte Oberflächenpunkte
![Page 34: Computer Vision V. Dynamische Stereoanalyse Datum: 12.01.2001 Vortrag von: Mark Kiwitz](https://reader035.vdokument.com/reader035/viewer/2022081518/55204d6149795902118b592a/html5/thumbnails/34.jpg)
34
Diskussion
In erster Linie werden diese genannten Verfah-ren für Navigationslösungen (z.B. gesicherte Abstandsmessungen) verwendet
In heutiger Zeit werden diese auch für Modellie-rungen von 3D-Objekten in Simulationen oder Spielen verwendet (z.B. Motion-Capturing)
![Page 35: Computer Vision V. Dynamische Stereoanalyse Datum: 12.01.2001 Vortrag von: Mark Kiwitz](https://reader035.vdokument.com/reader035/viewer/2022081518/55204d6149795902118b592a/html5/thumbnails/35.jpg)
Ende des Vortrages
Vielen Dank für Eure Aufmerksamkeit