Augmented Reality Grundlagen - ags.cs.uni-kl.de · Augmented Reality-Grundlagen Intelligente...

Preview:

Citation preview

Augmented Reality-

Grundlagen

Intelligente Mensch-Maschine-Interaktion - IMMISS 2011

Prof. Didier StrickerDidier.Stricker@dfki.de

Die Vorlesung am

07.06

findet im Raum Zuse am DFKI statt

2

Augmented Reality

Displays und Tracking

Die Kamera

Kamerakalibrierungsverfahren

Übersicht

3

Historie

Ivan Sutherland (1960s): erste Experimente mit HMDsRemote Reality Virtual Reality

4

-5-

Allgemeines Trend: IPT (immersive projection technology)

Workbench

Stereo-projektion

CAVE

CAVE

6

Virtual Reality

EigenschaftenEchtzeit Interaktivität „Immersion“Multi-modale

Interaktion

Immersion:Das Gefühl teil

der virtuellen Welt zu sein

-7-

VR Anwendungen & Echtzeit physikalische Simulation

8

Augmented Reality: Grundlagen

9

+

=AR kombiniert

reale und virtuelle Welt

Immersive Virtuelle Umgebungen (VE):Komplettes Ersetzen der Realität

Augmented Reality:Benutzer sieht reale UmgebungKontakt bleibt erhaltenUmgebung wird durch virtuelle Informationen ergänzt nicht

ersetzt

Augmented Reality: Grundlagen

10

Augmented Reality: Grundlagen / Historie

Frühe 1990s: David Mizell (Boeing) prägt den Begriff Augmented Reality

11

-12-

AR und VR kann nicht losgelöst betrachtet werden

[Milgram & Kishikino 94] Paul Milgram führt den Begriff “Mixed Reality” ein.

Mixed Reality stellt aller Formen von VR und AR dar.

Augmented Virtuality: Reale Objekte oder z.B. Videobilder in einer VR-Welt.

Mixed Reality Continuum

Augmented Reality (AR)

Real Environment

Augmented Virtuality (AV)

Virtual Environment

Technology: video-based tracking

14

Charakterisierung von Azuma (1997):

AR kombiniert reale und virtuelle WeltAR ist interaktiv in EchtzeitAR erfordert Registrierung in 3D

Augmented Reality: Grundlagen

15

[Azuma 97][University of North Carolina]

Anwendungsbeispiele:Sport Übertragungen

16

Anwendungsbeispiele:Head-up display

-18-

Automobil: Simulation vs. reale Welt

Anwendungsbeispiele:Medizin

19

SpieleSony: EyeToyAR-Quake (Univ.)

Anwendungsbeispiele:Edutainment

20

KulturgüterAugmented Tour GuideRekonstruktionen

Anwendungsbeispiele:Edutainment

21

Augmented Reality

DISPLAYS

23

Handgeführt

Displays

24

Head Mounted Displays (HMD)

Head Mounted Display

25

Optical Combiner

GrafikMonitor Optical See-Through

Combiner

Virtuelles BildReales Bild

Kamera

Grafik

Monitor

Video See-Through

Optical See-Through : Beispielsgerät

With courtesy of Trivisio

Verdeckungen zwischen realen und virtuellen Objekten

Verdeckungen in AR

27

Verdeckungen sind nicht berücksichtigt

Verdeckungen sind berücksichtigt.

Ein Modell, oder Maske mussexistieren und bei der Visualisierung einbezogen werden.

Optical‐See‐Through

+ real world in full resolution

– virtual image mostly not bright enough – ghost view

Video‐See‐Through

+ Full control of the information wich is displayed

‐ Real world is perceived over the camera (focal plane, stereo, delay, scale…)

Und bei See-Through HMD

Problem 2: das virtuelles Bild erscheint noch durchsichtig…

Problem 1: Verdeckung realles/virtuelles Objekt…

Verdeckung reales / virtuelles Objekt(wie gehabt, siehe oben)

HMD mit Alpha-Channel

Courtesy of Kiyoshi Kiyokawa, Communication research lab

With courtesy of Trivisio

Verdeckung reales / virtuelles Objekt(Software Z-Buffer – Siehe unten)

Maske vom Light-Blocking-Filter Ergebnis

HMD with alpha channel

by Kiyokawa

by Kiyokawa

HMD mit „Alpha Channel“

KiyokawaKiyokawa Trivisio

33

VIDEO LIGHT BLOCKER

TRACKING

34

Augmented Reality: Wie?

Input Daten:1 Videobild (current frame)1 Modell (CAD, Vrml...)

Aufgaben der AR: Videobild im Hintergrund rendern Modell im Vordergrund richtig rendern

rendernrichtig rendern ???

AR ist „richtig rendern“

Richtig rendernGeometrisch: größe + lagerichtigPhotometrisch: richtige Beleuchtung

Rendering (Computer Graphik)projection matrix glMatrixMode(GL_PROJECTION);glFrustum(-1.0, 1.0, -1.0, 1.0, 1.5, 20.0);gluPerspective(60.0, 1.0, 1.5);

modelview matrixglMatrixMode(GL_MODELVIEW);glMultMatrix(N); /* apply transformation N */gluLookAt(...); /* positions the camera */

Projektionmatrix

Transformiert 3D Weltkoordinaten in 2D Bild-(Fenster-) koordinaten

Enthält:ZoomSichtwinkelPerspektivische Distortion der Kamera

Modelview matrix

Transformiert 3D koordinaten des Weltkoordinatensystems in 3D Koordinaten der Kamerakoordinatensystems

R, t

Tracking in Praxis: Basisfunktionalitäten

39

Input video Pattern recognition

Calculate 3D camera position &

orientation

Synthesis and render on input

video

Registration of 3D virtual objects

© 2008, Fraunhofer IGD

40

Projektive Bilder

Eindruck der Tiefe in den Bildern Parallele Linien treffen sich an der Unendlichkeit “Unendlichkeit” wird zur begrenzten Position im Bild projektiert “Horizont” “unendlich ferne Punkte”, …

[Triggs and Mohr]

Welche GenauigkeitVariablen6 DOF Position + OrientierungViewing Parameter

Abhängig von AnwendungChirurgie ( < mm)Outdoor Navigation (m)

Abhängig von menschlichen SinnenAbweichungen von 0,5 Bogenminuten

Höher als in VRKoexistenz von real und virtuell

Tracking: Genauigkeit?

41

Offline VerfahrenNotwendige Informationen werden aus den Bildern

zurückgewonnenKeine zusätzliche Hardware

Online/Echtzeit VerfahrenMechanische, Magnetische Verfahren (Siehe HCI-

Vorlesung)Tendenz: Kamera-basierte Lösungen

Tracking

42

Kamerabasierte VerfahrenMobil6 DOFBildverarbeitungPassive Targets

Outside-InInside-Out

Tracking

43

Tracking

44

• Outside-In• Empfänger (z.B. Kameras)

in Umgebung beobachten den Benutzer

• Sender am Benutzer

• Präparierung der Umgebung

• Wenig mobil

Tracking

45

• Inside-Out• Empfänger (Kamera) am

Benutzer• Sender (Merkmale) in

Umgebung

Offline-Tracking / Augmented VideoVideo im Vorfeld aufgenommenInteraktion mit virtueller Szene in EchtzeitKalibrierung, Schätzung von Kamerapose

Tracking

46

Einzelbild:Rückrechnung von P“Direct Linear Transformation” (DLT)2D Punkte im Bild (mi)3D Punkte (Mi Vermessen oder VR-Model)Gleichung pro Punkt : mi = PMi

Bestimmung von PZerlegung von P in K (Brennweite…), R und t

ProblemeViele Punkte (mind. 20)Rauschempfindlich Instabile Punktkonfiguration

Tracking

47

Video-Sequenz

Automatisierung notwendigKlassischer Ansatz

2D-Punktverfolgung über die ganze Bildsequenz anschließende Bestimmung des 3D-Kamerapfades Probleme:

2D Punktverfolgung bei Verdeckungen Akkumulation der Fehler

Tracking

48

Marker-based Tracking: Passiv 4 x 4 Binärcode

Ein Marker ist ausreichend(4-Eckpunkte) um die Kameraposition/orientierung zu rechnen

Die Marker werden in die Szene platziert und vermessen

Algorithmus:1. Markerextraktion: Bestimmung der

Eckpunkte2. Markeridentifikation3. Berechnung der Kameraposition

und Orientierung

Tracking / Registrierung

49

Die Kamera

50

Bilderaufnahmegerät

3D2D Abbildung!

Was ist eine Kamera?

51

Verschiedene Kameras, verschiedene Bilder

Kameraparameter (fokal Länge…) sehr wichtig für AR

Was ist eine Kamera?

52

Nikon Coolpix 2100 Olympus D630 zoom

Eine Kamera erstellt eine projektive Abbildung von R3 nach R2

Was ist eine Kamera?

53

Abstraktes Kameramodell -Kasten mit kleinem Loch

Die Lochkamera Theorie

54

• In der Praxis, virtuelles Bild statt echte Bildebene

2 Gleichungen:

Transformation

55

Image plane

Pinhole ObjectVirtualimage plane

ZYfy

ZXfx ,

…sind aber nicht linear!

)/,/(),,( ZYfZXfZYX

Einfach eine Dimension mehr…

Homogene Koordinaten

56

nKoordinatehomogene

nKoordinateekartesisch

),,(),( yxyx

nKoordinateekartesisch

3

2

3

1

nKoordinatehomogene

321 ),(),,(CC

CCCCC

1010101

1ZYX

ff

ZYfXf

Recall: das Kameralochmodel

10100

1ZYX

ff

ZYfXf

ZYX

)/,/(),,( ZYfZXfZYX

1//

1

ZYfZXf

ZYX

)/,/(),,( ZYfZXfZYX

Recall: Pinhole camera model

PXx

1010101

1ZYX

ff

ZYfXf

PP

Skew

Neue Matrix:

Optisches Zentrum Offset und Skew

59

Tyx

T cZfYcZfXZYX )/,/(),,(

= principal point (PP)T

yx cc ),(

ZYX

cfcsf

yx

yy

xx

1000

1

n12

21

m

ph

pw

(cx,cy)

P s = skew

Intrinsische Parameter der Kamera:Brennweite (Focal Length)Bildhauptpunkt (PP)Skew factor (meistens s=0)

Die intrinsichen Parameter der Kamera

60

1000 yy

xx

cfcsf

K

• K ist die Kalibrierungsmatrix der Kamera

Tyx cc ),(yx ff ,

s

ZYX

Kyx

.1

Die Kamera bewegt sich im Bezug zur Szene

Translation t + Rotation R

Position und Orientierung

61

R, t

Transformationsmatrix vom Koordinatensystem der Szene zum Koordinatensystem der Kamera:

Die extrinsichen Parameter der Kamera

62

1'''

1333

ZYX

tRZYX

R, t

• R und t sind die extrinsischen Parameter der Kamera

K : intrinsiche ParameterR, t : extrinsiche Parameter

P = K [R,t] ist die Projektionsmatrix der Kamera

Die Kamera

63

11

ZYX

tRKyx

KameramodellR : RotationsmatrixT : TranslationsvektorK : intrinsische Parameter

Für M=(x,y,z,1) und m(x,y,1) gilt: m ~ PM, wobei P=K(R,t)

Die Kamera: Zusammenfassung

64

100cyfy0cxsfx

K

M

mo

x

y

z

o

x

z

y

R, tO

Kamera

Szene

Reale Kamera – Bildpunkte verzerrtxd,yd – Verzerrte BildpunkteParameter k1, k2

Linien müssen gerade sein!

Bildentzerrung

65

222

42

21

42

21

)1(

)1(

dd

d

d

yxr

rkrkyy

rkrkxx

Image tracker

66

67

68

Reading:

Azuma, Ronald T. A Survey of Augmented Reality. Presence: Teleoperators and Virtual Environments 6 , 4 (August 1997), 355 - 385

Recommended