PPT

Werbung
TRACKING als Messaufgabe:
Grundlagen, Methoden und Werkzeuge
Axel Pinz
El. Messtechnik u. Messsignalverarbeitung
Vortrag im Seminar von Prof. Maass
7.5.2002
Was kann ich optisch messen ?
• Geometrische Größen
– Lage
– Länge
– Winkel
– Entfernung
– Fläche
Was kann ich optisch messen ?
• Radiometrische Größen
– Strahlung (Wärme)
– UV
– Lichttechnische Größen
• Beleuchtungsstärke
• Leuchtdichte
• Lichtstrom, …
– Farbe, spektrale Komponenten
Was kann ich optisch messen ?
• „abgeleitete“ Größen
– 3D Position und Orientierung (Objekte /
Kamera)
– Identifikation von Objekten / Marken
– Mustererkennung
– Computer Vision
– Image Understanding
„Optisch“ vs. „Bildgestützt“
• 0- oder 1-D
– Fotodiode
– LaserTriangulierung
– Längen- / WinkelCodierung
–…
• 2-D Rasterbilder
– Kenngrößen
– Abgeleitete Größen
• 3-D
– Stereo
– „direkte“ Verfahren
Beispiel (optisch)
Beispiel (bildgestützt)
“Tracking” - Beispiele
•
•
•
•
•
Konturen (2D Kurven – Anpassung)
Hände (2D Hand- + Gestenerkennung)
3D Punkte (Blobs, Interest-Operatoren)
3D Modelle mit Markierungen
3D Modell des menschlichen Körpers
Contour-Based Tracking
Probabilistic Tracking in a Metric Space. Toyama, Blake,
ICCV 2001,
Marr Prize
Hand Tracking for HCI
• Hand color
• Shape & size (scale)
A Prototype System for
Computer Vision Based
Human Computer Interaction.
Bretzner, Lindeberg,
KTH TR CVAP256
Tracking von 3D Modellen
Model-Based Tracking
Automatic Partitioning of High-Dimensional Search Spaces associated with Articulated
Body Motion Capture. Deutscher, Davison, Reid. CVPR 2001
Kamera (1)
•
•
•
•
•
•
•
Perspektive Kamera
Lochkamera, “pinhole camera”
Brennweite f, “focal length”
Hauptpunkt o(u0 ,v0), “principal point”
Hauptachse, “principal axis”
Bildkoordinaten p(x,y)
3D Szenenkoordinaten P(X,Y,Z)
fX
x
Z
fY
y
Z
Kamera (2)
• Setze f=1, homogene Koordinaten:
X
 x   X   1 0 0 0  
    
 Y 
 y  ~  Y    0 1 0 0  
1   Z   0 0 1 0  Z 
    
 1 
 
• Reale Aufnahmesituation:
X
x
1 0 0 0  
 

 Y 
 y  ~ K  0 1 0 0 M  
1 
0 0 1 0  Z 
 

 1
 
Orientierung
• K … innere Parameter (“interior”, “intrinsic”)
 sx s u 0 


K   0 sy v 0 
0 0 1


– sx,sy … Skalierung entlang der x- bzw. y-Achse
– s … Winkel zwischen den Achsen (“skew”, ~ 0)
• M … äußere Parameter (“exterior”, “extrinsic”)
– 3x Translation
– 3x Rotation
Orientierung, Kamerakalibrierung
• Insgesamt 11 Parameter
– 5 für innere Orientierung
– 6 für äußere Orientierung
• Kalibrierung
– Kalibrierobjekt (“calibration target”)
• Punktkorrespondenzen (mind. 6 Punkte)
• Lin. Gleichungssystem (überbestimmt)
– Unbekannte Szene
• Mehrere Ansichten (mind. 2)
• Punktkorrespondenzen
• Bekannte / unbekannte Kamerabewegung (“self-calibration”)
Linsenverzeichnung (1)
• Szene >> Linsensystem
 Projektionszentrum ok
• Verzerrungen zwischen Sehstrahl und Pixel:
– Radiale Verzerrung (k1,…,k3), Brechung
– Tangentiale Verzerrung (P1,…,P3), Verschiebung
x  x  u0 ,
y  y  v0 ,
r  x2  y2
x'  x  k1 xr 2  k 2 xr 4  k3 xr 6  ( P1 (2 x 2  r 2 )  2 P2 x y )(1  P3r 2 )
y '  x  k1 yr 2  k 2 yr 4  k3 yr 6  ( P1 (2 y 2  r 2 )  2 P2 x y )(1  P3r 2 )
Linsenverzeichnung (2)
• Kompensation
– 3D Kalibrierobjekt [Tsai 1987]
– 2D ebenes Objekt [Zhang 1998]
– Geradentreue [Brand et al. 1994]
• Meist iterativ, Optimierungsproblem
Was kann man mit einer
kalibrierten Kamera messen ?
• Richtungen
• Winkel zwischen Richtungen
• 3D Rekonstruktion nur wenn die Kamera
bewegt wird, und mehrere Bilder
aufgenommen werden.
Punktkorrespondenzen in diesen Bildern.
• Spezialfall ebene Szene, bekannte Ä.O.:
– Winkel, Distanzen, Flächen
Camera Pose Estimation
• Pose estimation ~ Schätzung der Ä.O. bei
bekannter / unbekannter Szene  finde R, t
• “inside-out” tracking ~ camera pose in real-time
• Lineare Algorithmen [Quan, Zan, 1999]
• Iterative Algorithmen [Lu et al., 2000]
• Punkt-basierte Methoden
– Keine Geometrie, nur 3D Punkte
• Modellbasierte Methoden
– Objekt-Modell, z.B. CAD
PnP – Perspective n-Point Problem
• Kalibrierte Kamera K, C = (KKT)-1
• n Punktkorrespondenzen Szene  Bild
• Bekannte Szenenkoordinaten der
Punkte pi, Distanzen dij = || pi – pj ||
• Jedes Paar von Punkten gibt einen
Winkel , der in der kalibr. Kamera aus
dem Bild gemessen werden kann
 constraint für die Entfernung ||c – pi||
PnP (2)
gesucht :
xi  p i  c ,
constraint :
d ij2  xi2  x 2j  2 xi x j cos  ij
xj  p j c
f ij ( xi , x j )  xi2  x 2j  2 xi x j cos  ij  d ij2  0
kalibriert e Kamera :
cos  ij 
uTi Cu j
uTi Cu i uTj Cu j
PnP (3)
• P3P, 3 Punkte:
unterbestimmt, 4 Lösungen
f12 ( x1 , x2 )  0
f13 ( x1 , x3 )  0
f 23 ( x2 , x3 )  0
• P4P, 4 Punkte:
überbestimmt, 6 Gleichungen, 4 Unbekannte
1,2,3
1,2,4
1,3,4
2,3,4
4 x P3P, dann gemeinsame
Lösung finden
• Allgemein: PnP, n Punkte
PnP (4)
Wenn die xi gelöst sind:
1) p’i = xi K-1 ui
2) Finde “homography” R, t für p’i  pi
Real-Time (1)
Messen von
– Pose
– 3D Position
– abgeleiteten Größen
– mehreren Trajektorien
–…
in Echtzeit
„Echt“-Zeit ist problemspezifisch,
zB Videorate 30Hz
Real-Time (2)
kann erreicht werden durch:
– sehr einfache Probleme
– schnelle (einfache, lineare, direkte) Algorithmen
– Kleine Bildausschnitte ( CMOS)
– Spezialhardware
–…
Anwendungsbeispiel: Real-Time Tracking
Tracking (1)
• Position + Orientierung (t, R) von
Objekt(en) und / oder Kamera
• 2D (Bild) oder 3D (Szene)
• Zeitliche Veränderung (t(t), R(t))
• Trajektorie(n), Prädiktion
• Real-Time
• Einzel- / Multisensor, Kombinationen,
Fusion, …
Tracking (2)
[Hager, 2001]
“Given:
1. An identified target in an image I0
2. A corresponding initial configuration (or state),
s0, of the target
3. A sequence of subsequent images, I1, I2, …
produce a corresponding series of state estimates
s1, s2, … of the target.”
Tracking (3) - Anwendungen
•
•
•
•
•
•
•
•
•
•
Video Annotation / Manipulation
Verkehrsströme
Fahrzeugsicherheitssysteme
Militär
Filmindustrie, z.B. character animation
VR / AR
Medizin
Industrielle Produktion, z.B. virtuelles Fahrzeug
…
RoboCup !!!
Tracking (4) - Methoden
• “Blob” Tracking
– Farbe
• Schablonen, Muster, Objektmodelle
– “template”, “feature”
• Aktive Konturen
Tracking (5) – Algorithmen /
Systeme
•
•
•
•
•
•
•
KLT [Kanade, Lucas, Tomasi]
CONDENSATION [Blake, …]
XVision [Hager, …]
ARToolkit [Billinghurst, …]
A.R.T. [kommerzielles Produkt]
Rapid [Harris, Armstrong, Zisserman]
…
Stochastisches Tracking (2.5 Std!)
•
•
•
•
•
•
Grundbegriffe der Statistik
Kalman Filter
Tracking mit Kalman Filter
Condensation
Tracking mit Condensation
Beispiele (Videos)
http://www.cs.unc.edu/~welch/kalman
Kalman Filter (1)
http://www.cs.unc.edu/~welch/kalman
Kalman Filter (2)
http://www.cs.unc.edu/~welch/kalman
Kalman Filter (3)
http://www.cs.unc.edu/~welch/kalman
Condensation
• Mehr als 1 Hypothese wird
aufrechterhalten
• “Conditional density propagation”
RoboCup - Empfehlungen
• Omnidirektionale Plattform
• Omnidirektionale Vision !
– Selbstlokalisation am Spielfeld („ausreichend“ genau)
– Modellbasiert (2D Ebene mit Linien) [RoRapid]
– Robust (Verdeckungen, Fehler)
• Sonar Ring
– Ball und Gegner im Nahfeld erkennen
– Ballbehandlung (Führen, Schiessen)
• Schiessen + Ball führen in alle Richtungen!
• Ev. „Spezialisten“ bauen
Diplomarbeit(en) am EMT
• Omnidirectional vision
• Self-localisation
Diskussion !
•
•
•
•
Fragen
Probleme
Wünsche
Anregungen
Herunterladen