Virtuelle RealitätVirtual Reality

Erweiterte Realität (Augmented Reality) Augmented Reality

Dr. Thies Pfeiffer

Cognitive Interaction Technology Center of Excellence,
Technische Fakultät, Universität Bielefeld
Cognitive Interaction Technology Center of Excellence,
Faculty of Technology, Bielefeld University

Termin:Montags, 14:15 Uhr

Raum: CITEC Auditorium

Schedule:Mondays, 2:15 p.m.

Room: CITEC Auditorium

ÜberblickOverview

Inhalte dieser VeranstaltungContent of this lecture

  • Definition von Erweiterter Realität/Augmented RealityDefinition of Augmented Reality
  • Grundlegende ProzessschritteBasic processing steps
  • Interaktionsmöglichkeiten mit ARUser interaction with AR
  • Aktuelle AR BrillenCurrent AR glasses
  • Aktuelle ForschungCurrent research

Augmented Reality (AR): Wie geht's?What is Augmented Reality?

Realitäts-Virtualitäts-KontinuumReality-Virtuality-Continuum

Paul Milgram and Fumio Kishino (1994)

  • Reality
  • Mixed Reality
    • Augmented Reality

      Eine computergestützte Erweiterung der RealitätswahrnehmungA computer-generated extention of the perception of reality

    • Augmented Virtuality

      Primär virtuelle Welt mit realen Anteilenprimarily virtual world with small amounts of real-world

  • Virtual Reality

    Totale Immersion des Nutzers in der Virtuellen WeltTotal immersion of the user in the virtual world

Definiton Augmented RealityDefinition of Augmented Reality

Unter dem Begriff Augmented Reality versteht man die Ergänzung der Realität durch künstlich erzeugte Wahrnehmungsreize (siehe z.B. Paul Milgram und Kollegen 1985). Dabei kommt es im besten Fall zu einer Verschmelzung von virtuellen und realen Eindrücken, die nicht mehr bewusst getrennt werden. The term Augmented Reality refers to the embedding of content into reality using artificially created perceptions (see e.g. Paul Milgram and colleagues 1985). Ultimately virtual and real perceptions will fuse in such a way, that they can no longer be distinguished.

BeobachtungenObservations

  • Primär wird von Augmented Reality der visuelle Sinneskanal angesprochen, aber andere Modalitäten (akustisch, haptisch) werden mittlerweile mit steigendem Interesse betrachtet.Primarily Augmented Reality has focused on visual perception, but today other modalities (acoustics, haptics) receive increasing attention.
  • Größtes Problem der Augmented Reality ist die genaue Einpassung der künstlichen Reize in die reale Umgebung.The greatest challenge of Augmented Reality is fitting the artificial stimuli into the real environment.

Grundlegende Verarbeitungskette der Augmented Reality Basic processing chain of Augmented Reality

Aufnahme der Sensordaten $\to$ Tracking/Lokalisierung $\to$ Registrierung $\to$ Darstellung $\to$ Ausgabe. Collecting sensor data $\to$ Tracking/Localization $\to$ Registration $\to$ Rendering $\to$ Display.

SensoraufnahmeSensing

  • ZieleGoals
    • Möglichst genaue und schnelle Erfassung von UmgebungsdatenFast and exact capturing of sensor data
    • Aufbereitung der Daten in möglichst sensorunabhängiger RepräsentationPreprocessing of sensor data to achieve sensor independent representation
  • Beispiel: VideoaufnahmeExample: Video image acquisition
    • Ablesen der Bilddaten vom SensorReading the data from the sensor
    • Geeignetes Übertragungsformat (oft Kompromiss zwischen Wiederholrate und Qualität, z.B. MJPEG)Choosing the right data representation format (often tradeoff between speed and quality, e.g., MJPEG)
    • Entzerrung des Kamera-BildesUndistortion of the camera image based on camera calibration
Camera Undistortion

Tracking/LokalisierungTracking/Localization

  • Drei Aufgaben:Three tasks:
    • Bestimmung der Position und Perspektive (Lage) des Nutzersdetermining position and perspective of the user
    • Bestimmung von Objekten im Raumdetecting objects
    • Ermöglichung von Interaktionenenabling interaction
  • GPSGPS
  • OptischVision-based
    • Fiducial Marker (AR-Marker)Fiducial markers
    • Bilderkennung (z.B. SIFT, SURF)Image recognition (e.g. SIFT, SURF)
    • Geometrieerkennung (z.B. CAD)Geometry recognition (e.g. CAD)
    • Optischer Fluss zur schnellen BewegungserkennungOptical flow for detecting camera movements
  • InertialInertial
    • Beschleunigungssensor, Gyroskop, KompassAccelerometer, Gyroscope, Compass
  • Kombination von Verfahren (Hybride Verfahren)Combinations of approaches (hybrid approaches)
    • z.B. langsame, genaue Erkennung über Bildverarbeitung und schnelle Änderungen über inertiales Trackinge.g. slow but precise detection using computer vision and quick detection of changes using inertial tracking

Registrierung / Geometrische RegistrierungRegistration / Geometric Registration

Einpassung der künstlichen Inhalte in die reale Szene. Fitting artificial content in the real scene.

  • benötigt eine gute Schätzung der Perspektive des Nutzersrelies on a good estimation of the perspective of the user
  • KriterienCriteria
    • Stabilität, insbesondere bei KamerabewegungenStability, especially when the camera is moving
    • Visuelle QualitätVisual quality
    • Interaktion mit der Umgebung (z.B. Schattenwurf, Umgebungslicht)Interaction with the environment (e.g. shadows, illumination)

DarstellungDisplay

  • Video-basierte AR (Realität wird durch Video abgebildet)Video See-Through AR (reality is displayed using video)
  • Optisch durchsichtige AROptical See-Through AR
  • Projektionsbasierte ARProjection-based AR
AR device classes

Tracking/LokalisierungTracking/Localization

Tracking/LokalisierungTracking/Localization

  • OptischVision-based
    • Fiducial Marker (AR-Marker)Fiducial markers
    • Bilderkennung (z.B. SIFT, SURF)Image recognition (e.g. SIFT, SURF)
    • Geometrieerkennung (z.B. CAD)Geometry recognition (e.g. CAD)
    • Optischer Fluss zur schnellen BewegungserkennungOptical flow for detecting camera movements

Marker Tracking: VerarbeitungsschritteProcessing Pipeline

Bildverarbeitungsschritte beim Marker Tracking
Bildverarbeitungsschritte: Original $\to$ Graustufen $\to$ Schwarzweiß basierend auf Schwellwert $\to$ Segmentierung $\to$ Liniendetektion $\to$ Konturendetektion $\to$ Eckpunkte Image processing: original $\to$ greyscale $\to$ black-and-white based on thresholding $\to$ segmentation $\to$ line detection $\to$ contour detection $\to$ corner points
Dörner, Broll, Grimm, & Jung (2014). Virtual und Augmented Reality. Springer

KamerabasiertesCamera-based Marker Tracking

  • Einfachste Variante des TrackingsBasic approach to visual tracking
  • Verwendet speziell konstruierte Marker, die gut über Methoden der Computer Vision gefunden werden können Makes use of specifically designed markers that can be easily identified using methods of Computer Vision.
  • Marker kodieren ID, um verschiedene Marker unterscheiden zu können. Markers encode an ID to make them unique.
  • Basierend auf Modellgeometrie kann aus dem 2D Kamerabild die ursprüngliche Lage bestimmt werden. Based on the knowledge about the geometry (here a square), the original 6 DOF transformation of the marker can be determined.

Marker Tracking: VerarbeitungsschritteProcessing Pipeline

Matrizenbestimmung
Bestimmung der Transformationsmatrix des MarkersDetermining the transformation matrix of the marker
Dörner, Broll, Grimm, & Jung (2014). Virtual und Augmented Reality. Springer

VerarbeitungsschritteProcessing Steps

  • VorbereitungPreparations
    • Kalibrierung der KameraCalibration of the camera
    • Herstellung der Marker, Bestimmung der Geometrie bzw. optischen MerkmalenConstruction of the markers, determination of the geometry or optical features
  • Zur LaufzeitAt run-time
    • Finden des Markers im KamerabildFinding a marker in the camera image
    • Identifizierung des MarkersIdentification of the marker
    • Bestimmung der TransformationsmatrixDetermining the transformation matrix
    • Weiterverarbeitung im GrafiksystemFurther processing in the graphics pipeline

Wahl des AR FrameworksChoosing the AR Framework

Augmented Reality Frameworks

AuswahlkriterienCriteria for selecting an AR framework

  • Verfügbarkeit auf verschiedenen PlattformenSupported platforms (Mobile, Desktop, Smart Glasses)
  • Objekt-/Kamera-Tracking Möglichkeiten (Marker, Poster (2D Bilder), 3D Objekte, Frei) Object-/Camera-Tracking options (Marker, Poster (2D images), 3D objects, free)
  • GeschwindigkeitPerformance
  • Flexibilität im Einsatz, Einbettung in den WorkflowFlexibility of use, compatibility with workflow
  • LernkurveLearning curve
  • ZukunftssicherheitFuture-proof
  • LizenzkostenLicensing costs
  • ...

Augmented Reality Frameworks

Vuforia
Vuforia für mobile Endgerätefor mobile devices

Vuforia

  • Targets: Bilder (eben und gekrümmt), Text, Multi-Targets (basierend auf Rechtecken), 3D Objekte Tracking targets: Images (plane or curved), Text, Multi-Targets (based on rectangles), 3D objects
  • Lizenz: kommerziell über Cloud Service, SDK selbst frei License: commercial license if using their cloud service, SDK itself free to use
  • Unterstützte Plattformen: Android/iOS/Windows 10Supported platforms: Android/iOS
  • Link: https://developer.vuforia.com/

Augmented Reality Frameworks

Wikitude SDK
Wikitude SDK für alle Plattformenfor all platforms

Wikitude

  • Targets: Bilder, Markerlos, 3D Objekte (pro 3D), SLAM (pro 3D) Tracking targets: Images, markerless, SLAM
  • Lizenz: kommerziell ab 2490,- € (Pro) / 2990,- € für Pro 3D Version License: commercial starting at 2490,- € (Pro) / 2990,- € for Pro 3D Version / Free for Education
  • Unterstützte PlattformenSupported platforms: Android, iOS, Windows PC, Mac OS X
  • Link: http://www.wikitude.com

WeitereMore Augmented Reality Frameworks

  • ARKit (iOS)
  • ARCore (Android)
  • ARToolkit (Grandfather or AR)
  • EasyAR
  • BlippAR
  • ...

Benutzerinteraktionen in der Erweiterten RealitätUser Interactions in Augmented Reality

Interaktion über Tracking-MarkerMarker-Based Interaction

  • Tracking-Marker können für Objekte stehen, deren Position und Orientierung in der Szene manipuliert werden kannTracking-markers can be used to represent objects and position/orient them in the scene
  • Tracking-Marker können als Regler (Drehknöpfe, Schieberegler) dienen, in dem ein oder mehrere Freiheitsgrade auf eine entsprechende Skala abgebildet werdenTracking-markers can also be used as sliders or radio dials by mapping one or more of their degrees of freedom to an appropriate scale
Skeel Lee (2013)

Interaktion über Tracking-MarkerMarker-Based Interaction

  • Tracking-Marker können Funktionen auslösen: Marker sichtbar/unsichtbar als BooleanTracking-markers can trigger functions: marker visibility as boolean trigger
YouTube / AugmentedOne (2008)

Finger-Tracking über Farbmarkierungen Finger-Tracking using colors

  • Farbmarkierungen können mittels Bildverarbeitung leicht erkannt und z.B. zum Finger-Tracking verwendet werdenColored markers can be easily detected by computer vision and e.g. be used for finger-tracking
YouTube / Seokjun Lee and Soon Ki Jung (2012)

Hand-Tracking über FormerkennungHand-Tracking using shape detection

  • Einfache Algorithmen zur Formerkennung können zur 2D Erkennung der Hand verwendet werden. Zielen durch ImagePlane-Technik (siehe Vorlesung zur Interaktion).Basic algorithms for shape detection can be used to detect the 2D position of the hand. Aiming is realized using a variation of the ImagePlane technique (see lecture on interaction)
  • Selektion kann dann z.B. durch Verweildauer und Schwellwert ausgelöst werden.The selection can than be triggered, e.g., based on dwell-time and a threshold.
YouTube / Grégoire Duhamel (2014)

Hand-Tracking über Hautfarberkennung Hand-Tracking using skin color detection

  • Über eine Hautfarbenerkennung können Handposturen in 2D vor geeignetem Hintergrund detektiert werden.Skin-color segmentation can be used to detect 2D handshapes in front of appropriate backgrounds
Lambrecht, Walzel & Kruger (2014)

Finger-Tracking über WärmeerkennungFinger-Tracking using heat detection

  • Die Wärme, die auf einem Zielobjekt durch die Fingerberührung hinterlassen wurde, dient zur Markierung des Ziels.The raise of the temperature that has been induced by putting the finger on the target is detected and used for aiming.
MetaIO (2014)

Blickbasierte InteraktionGaze-based Interaction

  • Zielen durch direktes AnschauenAiming by gazing at target
  • Auswahl über halbes BlinzelnTriggering of the selection by half-blink
YouTube / Hyung Min Park (2008)

Aktuelle AR-BrillenCurrent AR Glasses

Aktuelle AR-BrillenCurrent AR Glasses

Epson Moverio BT-200
Epson Moverio BT-200

Epson Moverio BT-200

Aktuelle AR-BrillenCurrent AR Glasses

ODG R-7
ODG R-7

ODG R-7

  • Auch als VR-Brille nutzbar Also usable as VR glasses
  • 160g
  • 1.280 x 720 Pixel pro Auge 1.280 x 720 pixels per eye
  • Field-of-view: 30°
  • Interne Processing Unit Internal processing unit
  • 2750$
  • Link: http://www.osterhoutgroup.com/products-r7

Aktuelle AR-BrillenCurrent AR Glasses

HoloLens in use

Microsoft HoloLens

  • 579g, ähnlich wie ein Helm getragen 579g, worn like a helmet
  • 1.280 x 720 Pixel pro Auge 1.280 x 720 pixels per eye
  • Field-of-view: 30°
  • Interne Processing Unit Internal processing unit
  • Raumerkennung mit Tiefenkameras Room-scale tracking using depth cameras
  • 3299€ (developer edition)
  • Link: https://www.microsoft.com/microsoft-hololens
Microsoft HoloLens
Microsoft HoloLens

Einschränkungen aktueller AR BrillenLimitations of current AR Glasses

  • Kleiner Sichtbereich Small field-of-view
  • Tradeoff: Größe/Gewicht vs. Field-of-view Tradeoff: size/weight vs. field-of-view
  • Schlechte Qualität / Auflösung der Displays Low resolution / quality displays
  • Niedrige Prozessorleistung (im Vergleich zu Desktop-PCs) Low-performance (in comparison to desktop computers)
Field-of-view of the HoloLens
Field-of-view of the HoloLens

Lösungsansätze Possible solutions

  • Nutzer zum Ziel führen Use techniques to guide the user to a target
  • Display auch nutzen, wenn der Nutzer es nicht direkt ansieht Also use the display when the user is not looking at it
  • Das Problem wird durch den technischen Fortschritt nach und nach kleiner Improvements due to new hardware can be expected
Solutions for small-FOV AR glasses

ZusammenfassungSummary

ZusammenfassungSummary

Inhalte dieser VeranstaltungTopic of this lecture

  • Definition von Erweiterter Realität/Augmented RealityDefinition of Augmented Reality
  • Grundlegende ProzessschritteBasic processing steps
  • Interaktionsmöglichkeiten mit ARUser interaction with AR
  • Aktuelle AR BrillenCurrent AR glasses
  • Aktuelle ForschungCurrent research