45
Fachbereich 4: Informatik Entwicklung eines augmentierten Montageszenarios mit Lego-Bausteinen für die Microsoft HoloLens Bachelorarbeit zur Erlangung des Grades Bachelor of Science (B.Sc.) im Studiengang Computervisualistik vorgelegt von Darius Thies Erstgutachter: Prof. Dr.-Ing. Stefan Müller (Institut für Computervisualistik, AG Computergraphik) Zweitgutachter: Anna Katharina Hebborn, M.Sc. (Institut für Computervisualistik, AG Computergraphik) Koblenz, im Dezember 2017

Entwicklung eines augmentierten Montageszenarios … · Fachber eich 4: Infor matik Entwicklung eines augmentierten Montageszenarios mit Lego-Bausteinen für die Microsoft HoloLens

  • Upload
    trannhi

  • View
    219

  • Download
    0

Embed Size (px)

Citation preview

  • Fachbereich 4: Informatik

    Entwicklung eines augmentiertenMontageszenarios mit

    Lego-Bausteinen fr die MicrosoftHoloLens

    Bachelorarbeitzur Erlangung des Grades Bachelor of Science (B.Sc.)

    im Studiengang Computervisualistik

    vorgelegt von

    Darius Thies

    Erstgutachter: Prof. Dr.-Ing. Stefan Mller(Institut fr Computervisualistik, AG Computergraphik)

    Zweitgutachter: Anna Katharina Hebborn, M.Sc.(Institut fr Computervisualistik, AG Computergraphik)

    Koblenz, im Dezember 2017

  • Erklrung

    Ich versichere, dass ich die vorliegende Arbeit selbststndig verfasst undkeine anderen als die angegebenen Quellen und Hilfsmittel benutzt habe.

    Ja Nein

    Mit der Einstellung der Arbeit in die Bibliothek bin ich einverstanden.

    Koblenz, 21. Dezember 2017. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    (Ort, Datum) (Unterschrift)

  • Zusammenfassung

    Augmented Reality ist schon seit einigen Jahren in verschiedenen Formenverfgbar. Durch Fortschritte in der Technik knnen nun auch kompakteAugmented Reality Brillen hergestellt werden, wodurch sich viele neueMglichkeiten der Interaktion und Anwendung von Augmented Realityerffnen.Diese Arbeit beschftigt sich mit der Microsoft HoloLens und den Mg-lichkeiten, welche die Brille fr Verbraucher und Industrie bieten kann.Im Rahmen dieser Arbeit wurde eine interaktive und augmentierte An-wendung entwickelt, um die Grenzen und Mglichkeiten der MicrosoftHoloLens zu bewerten. Dazu wurde exemplarisch ein Montageszenarionachgestellt, bei dem ein Modell aus Lego-Bausteinen zusammengesetztwird. Die HoloLens zeigt dabei schrittweise an, wo die nchsten Bausteineplatziert werden sollen. Dabei stellte sich heraus, dass die HoloLens schonheute Vorteile bei der Montage bietet und gut zur Untersttzung von Ar-beitsschritten verwendet werden kann, es wurden allerdings auch einigeSchwchen deutlich.

    Abstract

    Augmented reality is being present for many years. Through progress intechnology smaller augmented reality glasses became possible. These newtechnologies allow many new ways of interaction and usage of augmentedreality.This thesis is about the Microsoft HoloLens and its possiblities for con-sumers and industry. In the context of this thesis a new interactive andaugmented application to measure the possiblities and limitations of theMicrosoft HoloLens has been developed. The scene is an assembly szenariowith a step by step instruction of building with Lego bricks. The evaluati-on showed that the HoloLens can already be used to assist in assemblingscenarios and offers some advantages over other methods, although theglasses still have some flaws.

  • Inhaltsverzeichnis

    Abbildungsverzeichnis 1

    Abkrzungsverzeichnis 2

    1 Einleitung 3

    2 Grundlagen 42.1 Augmented Reality . . . . . . . . . . . . . . . . . . . . . . . . 42.2 Augmented und Virtual Reality . . . . . . . . . . . . . . . . . 52.3 Augmented-Reality Gerte . . . . . . . . . . . . . . . . . . . . 5

    2.3.1 Microsoft HoloLens . . . . . . . . . . . . . . . . . . . 82.4 Augmented Reality zur Untersttzung von Montage . . . . 10

    2.4.1 Motivation . . . . . . . . . . . . . . . . . . . . . . . . . 102.4.2 Nutzung in der Industrie . . . . . . . . . . . . . . . . 102.4.3 Nutzung im Verbrauchermarkt . . . . . . . . . . . . . 122.4.4 hnliche Arbeiten . . . . . . . . . . . . . . . . . . . . 13

    3 Implementierung 153.1 Verwendete Programme . . . . . . . . . . . . . . . . . . . . . 153.2 Ablauf des Montageszenarios . . . . . . . . . . . . . . . . . . 153.3 Aufbau von HoloLego . . . . . . . . . . . . . . . . . . . . . . 163.4 Programmablauf . . . . . . . . . . . . . . . . . . . . . . . . . 163.5 Vorstellung wichtiger Skripte . . . . . . . . . . . . . . . . . . 19

    3.5.1 Construction Manager . . . . . . . . . . . . . . . . . . 203.5.2 Layout Renderer . . . . . . . . . . . . . . . . . . . . . 223.5.3 HoloToolkit Skripte . . . . . . . . . . . . . . . . . . . . 23

    3.6 Tracking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233.7 Benutzerinterface und Interaktion . . . . . . . . . . . . . . . 24

    3.7.1 Cursor . . . . . . . . . . . . . . . . . . . . . . . . . . . 253.7.2 Men . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253.7.3 Sprachsteuerung . . . . . . . . . . . . . . . . . . . . . 273.7.4 Darstellung der Platzierung der Legosteine . . . . . . 27

    3.8 Verwendung eigener Legomodelle . . . . . . . . . . . . . . . 283.9 Nicht implementierte Funktionen . . . . . . . . . . . . . . . . 28

    4 Evaluation 304.1 Aufbau und Gestaltung der Umfrage . . . . . . . . . . . . . . 30

    4.1.1 Szenario . . . . . . . . . . . . . . . . . . . . . . . . . . 304.1.2 Durchfhrung . . . . . . . . . . . . . . . . . . . . . . . 31

    4.2 Ergebnisse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 314.2.1 Bearbeitungszeiten . . . . . . . . . . . . . . . . . . . . 314.2.2 Ergebnisse des Fragebogens . . . . . . . . . . . . . . . 32

    4.3 Auswertung der Ergebnisse . . . . . . . . . . . . . . . . . . . 34

    i

  • 5 Ausblick 365.1 AR-untersttzte Montage . . . . . . . . . . . . . . . . . . . . 365.2 HoloLens . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 365.3 HoloLego Applikation . . . . . . . . . . . . . . . . . . . . . . 36

    6 Fazit 37

    Literatur 38

    ii

  • Abbildungsverzeichnis

    1 Reality-Virtuality (RV) Kontinuum [1] . . . . . . . . . . . . . 52 Optical see-through Head-Mounted-Display (HMD) Sche-

    ma [2] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63 Video see-through HMD Schema [2] . . . . . . . . . . . . 64 Monitor basiertes System Schema [2] . . . . . . . . . . . . 75 Beispiel eines optischen Head-Up Display (HUD) in einem

    BMW i8 [3] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86 Microsoft HoloLens [4] . . . . . . . . . . . . . . . . . . . . . . 97 Beispiele fr AR-Anwendungen . . . . . . . . . . . . . . . . 118 Visualisierung der Anzahl an Publikationen fr die Kombi-

    nation aus Themenbereich und Hardwareplattform [5] . . . 129 Darstellung der In-situ Anweisungen von Blattgerste et al.

    [6], weie Einblendungen zeigen Box zum Greifen und Ziel-position an . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

    10 Darstellung der HoloLego Applikation durch die HoloLens,alle bereits platzierten Steine angezeigt . . . . . . . . . . . . 16

    11 Szenenhierarchie von HoloLego . . . . . . . . . . . . . . . . . 1712 Programmablaufplan von HoloLego . . . . . . . . . . . . . . 1813 Fr das Tracking verwendete Marker . . . . . . . . . . . . . . 2414 berblick ber die verschiedenen Cursor . . . . . . . . . . . 2515 Interaktives Men, dargestellt mit der HoloLens . . . . . . . 2616 berblick ber die verschiedenen Hilfslinien, dargestellt mit

    der HoloLens . . . . . . . . . . . . . . . . . . . . . . . . . . . 2817 Darstellung der HoloLego Applikation durch die HoloLens,

    nur aktueller Stein wird angezeigt . . . . . . . . . . . . . . . 2918 Gesamtzeit fr den Aufbau . . . . . . . . . . . . . . . . . . . 3219 Zeiten fr die verschiedenen Schritte im Vergleich . . . . . . 33

    1

  • Abkrzungsverzeichnis

    2D zweidimensional

    3D dreidimensional

    AR Augmented Reality

    AV Augmented Virtuality

    fbx Filmbox, ein Dateiformat von Autodesk

    FPS Bilder pro Sekunde

    HMD Head-Mounted-Display

    HPU Holographic Processing Unit

    HUD Head-Up Display

    MR Mixed Reality

    OHMD Optical Head-Mounted-Display

    RGB Rot, Grn und Blau Farbmodell

    RV Reality-Virtuality

    VHMD Video (based) Head-Mounted-Display

    VR Virtual Reality

    2

  • 1 Einleitung

    Augmented Reality (AR) steht schon schon seit einigen Jahren in verschie-denen Formen zur Verfgung. Durch fortschrittlichere Technologien ist nunauch die Herstellung kompakter Augmented Reality Brillen mglich, dieviele neue Mglichkeiten der Interaktion und Verwendung von Augmen-ted Reality erlauben. Das Einblenden von Anweisungen und Beschreibun-gen in die reale Welt kann zum Beispiel die Effizienz steigern oder dieAnzahl an Fehlern reduzieren.Diese Arbeit beschftigt sich hauptschlich mit den Mglichkeiten, die AR-Brillen und insbesondere die Microsoft HoloLens fr die Montage bietenknnen. Um die Grenzen und Mglichkeiten der Microsoft HoloLens zubewerten wird dazu eine interaktive und augmentierte Anwendung ent-wickelt und implementiert.Dabei soll exemplarisch ein Montageszenario nachgestellt werden, bei demein Modell aus Lego-Bausteinen zusammengesetzt wird. Die HoloLens zeigtdabei schrittweise an, wo die nchsten Bausteine platziert werden sollen.Dazu werden zunchst die relevanten Begriffe und Grundlagen, sowie be-reits vorhandene Erkenntnisse anderer Arbeiten, vorgestellt. Anschlieendwird der Aufbau und die Implementierung der Anwendung erklrt. Diefertige Applikation wird daraufhin in einem Nutzertest evaluiert und dieErgebnisse werden vorgestellt.

    3

  • 2 Grundlagen

    Dieser Teil der Arbeit erklrt wichtige Begriffe und die theoretischen Grund-lagen zum Thema AR, deren Abgrenzung zur Virtual Reality (VR) und Ver-wendung in der Industrie und zur Montage. Auerdem werden bisherigeErkenntnisse erlutert und hnliche Publikationen vorgestellt.

    2.1 Augmented Reality

    Unter erweiterter Realitt (englisch augmented reality) versteht man dasEinblenden von computergenerierten Daten in die reale Umgebung, die anbestimme Orte oder Aktivitten gebunden sind. AR erlaubt es, digitale In-halte nahtlos mit unserer Wahrnehmung der realen Welt zu berlagern undzu verbinden. Neben zweidimensionalen (2D) und dreidimensionalen (3D)Objekten knnen dabei auch Ton, Video oder Text verwendet werden, umdas Wissen und Verstndnis des Benutzers zu verbessern und die Realittzusammen mit den hinzugefgten Inhalten als Einheit zu sehen [7].

    Manche Definitionen von AR limitieren den Begriff auf die Benutzungvon Head-Mounted-Displays (HMDs). Dies sind auf dem Kopf getrageneGerte mit einem Bildschirm vor den Augen des Nutzers. Um AR allge-meiner zu definieren, muss ein AR-System laut Definition von Azuma fol-gende Eigenschaften erfllen [7, 2]:

    1. Kombination von virtuellen und realen Elementen

    2. Interaktivitt in Echtzeit

    3. Registriert in 3D (virtuelle Objekte sind an Koordinaten der echtenWelt gebunden)

    Echtzeit bedeutet in diesem Fall, dass Vernderungen durch Interaktionohne merkliche Verzgerung geschehen. blicherweise werden dafr 60Bilder pro Sekunde (FPS) als Minimum angenommen. Diese Anforderungist fr stabile Hologramme notwendig.Neben dem Hinzufgen von virtuellen Objekten kann erweiterte Realittauch dazu genutzt werden, um komplette reale Objekte oder Teile davonunsichtbar zu machen oder zu verdecken. So lsst sich zum Beispiel einrealer Tisch entfernen, indem im AR-Anzeigegert die Stelle, an der derTisch sichtbar wre, mit der Hintergrundfarbe angezeigt wird [2]. Auchteilweise Verdeckung zwischen realen und virtuellen Objekten ist mglichund kann verwendet werden, um virtuelle Objekte wie erwartet im Raumdarzustellen.

    4

  • 2.2 Augmented und Virtual Reality

    Im Gegensatz zu AR, das die Welt digital erweitert, wird bei VR eine kom-plett computergenerierte virtuelle Welt dargestellt. Zwischen der realenWelt und der virtuellen Welt gibt es einen bergangsbereich, in dem dierealen und digitalen Umgebungen kombiniert sind. Milgram stellt dies zurVerdeutlichung in einem Reality-Virtuality (RV) Kontinuum (siehe Abbil-dung 1) dar [1].

    Abbildung 1: RV Kontinuum [1]

    Die linke Seite des Kontinuums definiert eine Umgebung aus realenObjekten und allem was beim Betrachten der realen Szene gesehen werdenkann, egal ob direkt von einer Person, durch ein Fenster oder auf einemBildschirm. Die rechte Seite definiert Umgebungen, die nur aus virtuel-len Objekten bestehen [1]. AR ist hier nher an der echten Umgebung,die durch digitale Daten erweitert wird. Augmented Virtuality (AV), aufdeutsch auch erweiterte Virtualitt genannt, ist hnlich wie AR, enthltallerdings grtenteils computergenerierte Umgebungen mit nur wenigenrealen Bildern [7].Alle Bereiche, bei denen reale und virtuelle Umgebungen kombiniert wer-den, werden als Mixed Reality (MR), zu deutsch gemischte Realitt, be-zeichnet. Dazu gehren wie in Abbildung 1 zu sehen sowohl AR als auchAV.

    2.3 Augmented-Reality Gerte

    Augmented-Reality-Gerte werden genutzt, um die digitalen Inhalte anzu-zeigen und mit den realen zu verknpfen. Beim Design von ARGertenunterscheidet man zwischen zwei Mglichkeiten, die realen und digita-len Inhalte zu kombinieren. Die Inhalte knnen optisch oder per Videokombiniert werden. Ein see-through HMD ist ein Gert, das es erlaubt diereale Umgebung mit digitalen Inhalten zu kombinieren. Im Gegensatz zutypischen HMDs fr virtuelle Realitt, die keine Sicht auf die reale Welterlauben.Optical see-through HMDs oder auch Optical Head-Mounted-Displays

    (OHMDs) genannt funktionieren, indem ein optischer halbdurchlssigerKombinierer vor den Augen platziert ist, durch den der Nutzer die Um-

    5

  • Abbildung 2: Optical see-through HMD Schema [2]

    gebung betrachten kann. Der Kombinierer ist halbreflektierend, sodass diedigitalen Inhalte von Bildschirmen reflektiert werden und dem Benutzerangezeigt werden knnen. Alternativ werden auch Projektoren verwendet,um die digitalen Bilder direkt an die passende Position in der realen Umge-bung zu projizieren. Ein schematischer Aufbau davon ist in Abbildung 2 zusehen. Beispiele fr OHMDs sind die in dieser Arbeit verwendete MicrosoftHoloLens (siehe Abschnitt 2.3.1) oder Google Glass.Die Linsen sind halbversilberte Spiegel, die nur einen Teil des Lichtes derUmgebung anzeigen und einen zweiten Teil des Lichtes von Monitoren re-flektieren. Daher verringert der optische Kombinierer den Anteil an Licht,den der Benutzer von der Umgebung sieht. Ist der Monitor ausgeschal-tet funktioniert das Gert hnlich einer Sonnenbrille. Das richtige Verhlt-nis zwischen durchgelassenem und reflektiertem Licht zu finden ist einDesign-Problem beim Entwickeln von OHMDs [2].

    Abbildung 3: Video see-through HMD Schema [2]

    6

  • Eine andere Mglichkeit digitale Inhalte mit realen zu kombinieren bie-ten video see-through HMDs, im folgenden Video (based) Head-Mounted-Displays (VHMDs) genannt. Diese Gerte kombinieren die Videos der Ka-meras mit den computergenerierten Einblendungen und zeigen dieses aufeinem Bildschirm vor den Augen des Nutzers an. Alternativ knnen dieBilder auch direkt auf die Netzhaut projiziert werden. Ein schematischerAufbau eines VHMDs ist in Abbildung 3 zu sehen.

    Eine einfache Mglichkeit, die realen mit den generierten Bildern zukombinieren, bietet die farbbasierte Bildfreistellung (engl. chroma keying),wie sie auch in der Filmindustrie unter dem Begriff Greenscreen verwen-det wird. Dabei setzt man den Hintergrund fr die erzeugten Bilder aufeine bestimmte Farbe. Beim Zusammenfgen ersetzt man alle Vorkommendieser Farbe mit den Bildern der Kameras, also der echten Umgebung.Falls das System fr jeden Pixel des Kamerabildes ber Tiefenwerte ver-fgt, knnen diese auch verwendet werden, um fr jeden Pixel zu ent-scheiden, ob der reale oder der computergenerierte Pixel im Vordergrundist. Mittels dieser Methode lsst sich Verdeckung zwischen virtuellen undrealen Gegenstnden erreichen [2].

    Abbildung 4: Monitor basiertes System Schema [2]

    ARSysteme, die nicht am Kopf getragen werden, werden Monitor oderProjektor basierte Systeme genannt. Sie funktionieren hnlich wie die Vi-deo basierten Brillen, nur dass der Bildschirm nicht direkt vor den Augendes Nutzers getragen wird, sondern zum Beispiel auf einem Tisch steht.Zur Bildausgabe knnen auch Projektoren verwendet werden. Eine odermehrere Kameras filmen dabei die Umgebung, diese knnen statisch odermobil sein. Mobile Kameras sind dabei zum Beispiel in einem Smartphoneintegriert oder am Arm eines Roboters befestigt. Ein schematischer Aufbaueines Monitor basierten Systems ist in Abbildung 4 zu sehen.

    7

  • Abbildung 5: Beispiel eines optischen HUD in einem BMW i8 [3]

    Monitor basierte Systeme knnen auch optisch funktionieren. Dazu wer-den, wie bei den OHMDs, die computergenerierten Inhalte durch einenoptischen Kombinierer zusammen angezeigt, nur dass dieser nicht vomNutzer getragen wird. Der Nutzer schaut durch die Anzeige und kanndie reale Welt sowie die eingeblendeten Inhalte sehen. Diese Technik wirdzum Beispiel in Head-Up Display (HUD)Anzeigen in Flugzeugen odermodernen Autos verwendet. Ein Beispiel dazu ist in Abbildung 5 zu sehen.

    Das am weitesten verbreitete Gert, das fr erweiterte Realitt verwen-det werden kann, ist das Smartphone. Dieses kann die Kamera und seineSensoren verwenden, um die Umgebung wahrzunehmen und je nach An-wendung verschiedene Informationen einzublenden. Bekannt wurde Aug-mented Reality beim Smartphone vor Kurzem besonders durch die Appli-kation Pokmon Go.

    2.3.1 Microsoft HoloLens

    Das fr diese Arbeit verwendete Anzeigegert ist die HoloLens von Micro-soft. Die HoloLens (siehe Abbildung 6) ist laut Microsoft eine MRBrille,die digitale Inhalte optisch in die Umgebung einblenden kann und damitzur in Unterabschnitt 2.3 vorgestellten Kategorie der OHMDs gehrt. SeitMrz 2016 ist die Brille fr Entwickler verfgbar [8].Als Optik hat die HoloLens zwei halbdurchlssige Linsen (Lichtwellenlei-ter), die aus mehreren Glasschichten fr die einzelnen Farbkanle bestehen.Beleutet werden die Linsen jeweils von einem Projektor mit 2,3 MillionenBildpunkten, der oberhalb der Linsen platziert ist. Das Sichtfeld (Field ofView) betrgt ungefhr 30 in der Breite und 17.5 in der Hhe [9].Folgende Sensoren stehen der HoloLens zur Verfgung:

    1 Inertiale Messeinheit (enthlt Beschleunigungs und Drehratensen-

    8

  • sor)

    4 Kameras zum Filmen und Verstndnis der Umgebung

    1 Tiefenbildkamera

    1 2 Megapixel Kamera fr Foto und Videoaufnahmen

    4 Mikrofone

    1 Umgebungslichtsensor

    Die Brille luft unter einer speziellen Version von Windows 10 und nutzteinen 32-bit Prozessor von Intel, sowie einen zustzlichen von Microsoftentwickelten Prozessor, der Holographic Processing Unit (HPU) genanntwird. Der HoloLens stehen 64GB Flashspeicher und 2GB Arbeitsspeicherzur Verfgung.Die Microsoft HoloLens wiegt 579g und hat eine Akkulaufzeit von 2-3Stunden whrend der Nutzung [10].

    Abbildung 6: Microsoft HoloLens [4]

    Die Sensoren der HoloLens werden zur Bestimmung des Raumes, derPosition, der Orientierung, etc. verwendet. Um den aktuellen Raum zuerkennen, wird aus den Tiefenwerten ein Abbild des Raumes erstellt unddie aktuellen Messdaten mit den bereits bekannten Rumen abgeglichen.Wird ein bekannter Raum gefunden, werden automatisch zu einem frhe-ren Zeitpunkt in diesem Raum platzierte Hologramme geladen.Tiefenwerte, Kameras und die inertiale Messeinheit werden verwendet, umzu jedem Zeitpunkt die genaue Lage und Orientierung der Brille zu bestim-men und Hologramme an eine Position der realen Umgebung zu binden.Fr den Nutzer entsteht so der Eindruck, als ob ein an der Wand platzierterdigitaler Inhalt wirklich fest an der Wand hngt. Die Kameras werden auchzur Erkennung der Hnde fr die Gestensteuerung verwendet. Alternativkann die Brille durch Sprachbefehle oder per Controller bedient werden.

    9

  • 2.4 Augmented Reality zur Untersttzung von Montage

    Augmented Reality wird immer hufiger zur Untersttzung von Monta-geszenarien verwendet. In diesem Abschnitt wird erlutert, warum ARverwendet wird und es werden Beispiele fr die Verwendung gezeigt.

    2.4.1 Motivation

    Ingenieure und Techniker verbringen viel Zeit mit dem Lesen von An-weisungen und Dokumentationen, um sich alle Prozeduren einzuprgen.Augmented Reality kann dabei helfen diese Zeit zu reduzieren, indem diejeweils bentigten Daten und Anweisungen direkt in das Sichtfeld einge-blendet werden. Dies ermglicht ein effektiveres Training. Dadurch wirddie bentigte Anlernzeit zur Fertigung neuer Produkte oder bei der Ein-arbeitung neuer Mitarbeiter stark reduziert. Darber hinaus knnen nochnicht fertig ausgebildete Arbeiter Aufgaben schneller erledigen [11].Bei der Verwendung von AR-Systemen fr die Untersttzung in der Fer-tigung werden zum Beispiel wichtige Parameter oder die Reihenfolge derMontage angezeigt. Hufig fhrt die digitale Untersttzung auch zu ei-ner verringerten Fehlerrate in Produktionsprozessen [12]. Einige Umfragenzeigen, dass es durch industrielle erweiterte Realitt Innovationsmglich-keiten fr viele Aspekte bei der Herstellung gibt, z.B. durch verbessern derProzesse oder verringern der physikalischen und kognitiven Belastung derArbeiter [5, 13]. Auerdem werden durch die Digitalisierung der Produk-tion und Industrie, auch Industrie 4.0 genannt, neue, effizientere undflexiblere Wege zur Produktion bentigt. Daher sind AR-Gerte als neueSchnittstelle zwischen Maschinen und Arbeitern besonders geeignet undbieten Vorteile im Assistieren fr komplexe Industrie 4.0-Szenarien [5].

    2.4.2 Nutzung in der Industrie

    Bereits 1992 war die Nutzung von AR zur Untersttzung manueller Mon-tage Teil einer Forschungsarbeit. Caudell et al. [14, 15] bauten einen ARBrillen Prototyp, der Arbeiten bei der Flugzeugproduktion die Position vonBohrlchern anzeigen kann. Seit dem hat sich die Technologie stark weiter-entwickelt und die Sensoren und Kameras sind genauer, die Darstellungbesser und die verwendeten Gerte kleiner und gnstiger geworden.Ein moderneres Beispiel zeigt Abbildung 7a. Die dargestellte Anwendunghilft beim Auseinanderbauen einer Kaffeemaschine. Dabei wird Augmen-ted Reality auerdem genutzt, um das Innere der Kaffeemaschine mit einerArt Rntgensicht darzustellen. Diese Ansicht kann dabei helfen zu planen,wie man die inneren Teile erreichen will und bei exakter Darstellung kannso auch einfacher an normalerweise nicht sichtbaren Bereichen gearbeitetwerden.

    10

  • (a) Rntgensicht zeigt dieBrheinheit einer

    Kaffeemaschine [16]

    (b) Autoreperatur assistiert durch Experten perTeleprsenz [17]

    Abbildung 7: Beispiele fr AR-Anwendungen

    Falls menschliche Hilfe bentigt wird, bietet erweiterte Realitt auch dieMglichkeiten, Arbeiter oder auch Verbraucher bei Ttigkeiten wie Mon-tage oder Reparatur per Teleprsenz zu untersttzen. Abbildung 7b zeigtzum Beispiel eine Person, die ein Auto repariert und dabei eine AR-Applikationverwendet. Ein Experte kann nun Beschreibungen und Anweisungen di-rekt mit dem 3D-Modell verknpfen, indem er diese auf dem Tablet ein-zeichnet. Der Anwender sieht die Anweisungen in der Applikation dannan der passenden Position und kann die Hilfe einfacher umsetzen [17, 11].

    Die aktuellen Interessen und Forschungsbereiche der Industrie in Be-zug auf erweiterte Realitt lassen sich in Abbildung 8 erkennen. Im Dia-gramm sind die Anzahl der Publikationen fr verschiedene Themenberei-che und Hardwareplattformen dargestellt 1.Dimension eins beschreibt das Anwendungsgebiet.Manufacturing enthlt untersttzte Montage, betreiben von Maschinen und

    hnliches.Logistics enthlt manuelle Arbeiten wie aufheben von Paketen, Navigati-

    on oder Datenmanagement.Maintance enthlt Anwendungen zur Wartung, z.B. Remote-Support via

    AR.Training enthlt Anwendungen, die beim Lernen bestimmter Szenarios

    helfen sollen.Die zweite Dimension unterscheidet zwischen den verschiedenen Hard-wareplattformen. Im Diagramm wird zwischen "AR mobile devices", alsomobile Gerte wie Tablets und Smartphones, "AR projection", also dem

    1Unter http://www.smartfactory-owl.de/designspace/designspace.html lsst sich eininteraktives aktuelles Diagramm aufrufen.

    11

    http://www. smartfactory-owl.de/designspace/designspace.html

  • Abbildung 8: Visualisierung der Anzahl an Publikationen fr die Kombinationaus Themenbereich und Hardwareplattform [5]

    Darstellen von AR-Inhalten durch einen Projektor, "AR-HMDs" und "VR-HMDs" unterschieden. Die letzte Dimension wird durch die Gre derKreise dargestellt und bezieht sich auf die Anzahl an Publikationen zu demjeweiligen Anwendungsgebiet mit der entsprechenden Hardware [5].Zur Zeit ist die Verwendung von AR zur Untersttzung fr die Produktiondurch Projektion von AR-Inhalten oder HMDs also besonders interessant.Diese Arbeit wrde sich unter "Manufacturing" und "AR-HMDs" einord-nen lassen, dem zweit wichtigsten Anwendungsbereich.

    2.4.3 Nutzung im Verbrauchermarkt

    Fr Verbraucher knnte es als Anleitung fr gekaufte Produkte hilfreichsein, zum Beispiel wie die in dieser Arbeit entwickelte Anwendung frLego, fr den Zusammenbau von Mbeln oder die Reparatur von Autos.Bei Bedarf knnen Experten auch hier die Anwender per Teleprsenz un-tersttzen.Momentan wird erweiterte Realitt zur Montage allerdings hauptschlichin der Industrie verwendet, da Verbraucher neben dem Smartphone nurselten andere AR-fhige Gerte besitzen. Smartphones eignen sich nur be-dingt zur Untersttzung beim Zusammenbauen, da die Kamera immerwieder auf das Objekt gerichtet werden muss. AR-Brillen gibt es fr nichtPrivatkunden kaum und die vorhandenen Brillen sind meistens teuer undnoch nicht komplett ausgereift. Die HoloLens kostet fr Verbraucher zumBeispiel 5.000 e.Wenn in Zukunft Gerte weiter verbessert und gnstiger werden und derMarkt grer wird, ist davon auszugehen, dass auch immer mehr Privat-personen Augmented Reality zur Montage verwenden werden.

    12

  • Abbildung 9: Darstellung der In-situ Anweisungen von Blattgerste et al. [6],weie Einblendungen zeigen Box zum Greifen und Zielposition an

    2.4.4 hnliche Arbeiten

    Es gibt bereits einige andere Arbeiten, die sich mit dem Thema von un-tersttzter Montage von Lego durch erweiterte Realitt beschftigt haben.Funk et al. [15] entwickelten einen Benchmark, um augmentierte Monta-geszenarien besser vergleichbar zu machen. Das Ziel war auerdem, dassder Test einfach aufzubauen, zu wiederholen und skalierbar sein soll. DerNutzertest soll auch alle wichtigen Aktionen wie Teile aufheben, platzierenund anbringen enthalten.Der Benchmark wurde spter verwendet, um den Aufbau eines Legomo-dells mit Papieranleitung, Epson Moverio BT-200 HMD, Tablet und in-situ2

    Projektion zu vergleichen. Das Epson Moverio zeigte die Instruktionen da-bei nicht dreidimensional an, sondern verwendete die Bilder der Papieran-leitung und stellte diese in der Mitte des Sichtfeldes dar. Dabei schnittendie Papieranleitung und die in-situ Projektion am Besten ab, whrend mitdem HMD viele Fehler gemacht wurden und der Aufbau die meiste Zeitbentigte [18].Blattgerste et al. [6] fhrten einen Nutzertest nach dem Prinzip von Funket al. durch und verglichen dabei die Papieranleitung mit dem Epson Mo-verio und in-situ Anweisungen auf Smartphone und HoloLens. Die AR-Anleitung ist in Abbildung 9 zu sehen, dabei zeigt das Fadenkreuz die Boxmit dem bentigten Stein an und der weie Quader die Position zum Plat-zieren. Dabei bentigte der Aufbau mit der Papieranweisung die wenigste

    2latenisch fr am Ort, Objekte werden am Ort angezeigt, an dem sie platziert werdensollen

    13

  • Zeit. Die HoloLens konnte allerdings die Anzahl an Fehlern im Vergleichzu den anderen digitalen Anweisungen stark reduzieren. Die Schlussfolge-rung war, dass eine Kombination aus in-situ Anweisungen zum Anzeigender korrekten Position und Piktogramme fr eine genaue Montage die bes-ten Ergebnisse erzielen wrde [6].

    14

  • 3 Implementierung

    Dieses Kapitel beschreibt den Aufbau und die Implementierung der An-wendung. Dabei wird zuerst ein grober berblick ber den Aufbau gege-ben und anschlieend werden wichtige Skripte und Funktionen genauervorgestellt.Die Applikation wird im Folgenden auch HoloLego genannt. Auerdemwerden Skripte und Funktionen() wie gezeigt dargestellt.

    3.1 Verwendete Programme

    Zur Entwicklung der Applikation wurde Unity3 in der Version 2017.1.0f3verwendet. Unity ist momentan die einzige von Microsoft untersttzte En-gine, um Applikationen fr die HoloLens zu entwickeln. Als Erweiterun-gen wurden Vuforia4 fr das Tracking und HoloToolkit5 (seit kurzem inMixedRealityToolkit umbenannt) fr die einfache Verwendung und Ein-richtung der HoloLens mit Unity genutzt.Zur Erstellung der Lego-Objekte wurde LDCad von LDraw6 verwendet,das eine komplette Datenbank aller Legosteine enthlt. Um diese Dateienmit Unity zu nutzen, wurde zur Konvertierung in das fbx-Format Blender7

    mit der LDraw-Importer Erweiterung8 verwendet.

    3.2 Ablauf des Montageszenarios

    Die fr diese Arbeit entwickelte Anwendung ist eine Montageanleitungfr die HoloLens. Wie die Anwendung durch die HoloLens aussieht ist imScreenshot in Abbildung 10 zu sehen. Um diese Aufnahmen zu erstellenwurde Mixed Reality Capture verwendet. Dieses Feature erlaubt es, dieHologramme mit dem Kamerabild kombiniert aufzunehmen. Dabei kannes allerdings zu Verschiebungen der Hologramme kommen, so dass dieAufnahmen nicht immer genau so aussehen, wie beim Blick durch dieHoloLens.

    Der Anwender sieht neben dem zu platzierenden Legomodell ein Menzur Bedienung. Es wird schrittweise jeweils ein Legostein angezeigt, derplatziert werden soll. Dieser bewegt sich dabei auf- und abwrts, um zuzeigen, wo und wie der Stein angebracht werden soll. Nachdem die Anwei-sung vom Nutzer befolgt wurde, kann dieser zum nchsten Schritt wech-

    3https://unity3d.com/de/4https://www.vuforia.com/5https://github.com/Microsoft/MixedRealityToolkit-Unity6http://www.ldraw.org/7https://www.blender.org/8https://wiki.blender.org/index.php/Extensions:2.6/Py/Scripts/Import-Export/

    LDRAW_Importer

    15

    https://unity3d.com/de/https://www.vuforia.com/https://github.com/Microsoft/MixedRealityToolkit-Unityhttp://www.ldraw.org/https://www.blender.org/https://wiki.blender.org/index.php/Extensions:2.6/Py/Scripts/Import-Export/LDRAW_Importerhttps://wiki.blender.org/index.php/Extensions:2.6/Py/Scripts/Import-Export/LDRAW_Importer

  • Abbildung 10: Darstellung der HoloLego Applikation durch die HoloLens, allebereits platzierten Steine angezeigt

    seln, um die entsprechende Anweisung zu bekommen. Im Men kann zwi-schen verschiedenen Darstellungsoptionen gewhlt werden, diese werdenin Unterabschnitt 3.7 vorgestellt.

    3.3 Aufbau von HoloLego

    HoloLego ist in verschiedene Skripte oder Klassen aufgeteilt, die in Unityan Objekte (GameObjects) angehngt sind. Die meisten Skripte besitzeneine Awake() oder Start() Funktion, sowie eine Update() Methode.Awake() wird direkt zur Initialisierung aufgerufen, falls das Skript aktivist, wird danach einmalig Start() ausgefhrt. Update() wird solangedas Skript aktiv ist jeden Frame aufgerufen.In Unity ist die Szenehierarchie wie in Abbildung 11 aufgebaut. Dabei sinddie Namen der Objekte fett gedruckt und die Namen der angehngtenSkripte kursiv dargestellt.

    3.4 Programmablauf

    Der Programmablauf ist in Abbildung 12 zu sehen, dabei wird hauptsch-lich auf die fr diese Anwendung wichtigen Funktionen eingegangen undweniger auf generelle Funktionen von Unity fr das Rendern, verwaltenvon Events, etc.. Die einzelnen Schritte werden in diesem Abschnitt nocheinmal genauer erlutert.Der Programmstart wird einmalig zu Beginn ausgefhrt.

    16

  • Abbildung 11: Szenenhierarchie von HoloLego

    17

  • Abbildung 12: Programmablaufplan von HoloLego

    18

  • Anleitung generieren: Die Reihenfolge fr die Anleitung wird ge-neriert. Allen Lego-Objekten werden die bentigten Skripte Move UpDown und Material Manager zur Bewegung und zum ndern des Ma-terials angehngt.

    Skripte initialisieren: Die HoloToolkit Skripte werden initialisiert,diese sind hauptschlich fr die Interaktion zustndig (siehe Unter-unterabschnitt 3.5.3).

    LineRenderer erstellen: Es wird ein neuer LineRenderer erstellt undinitialisiert, dieser zeigt spter den auf die Grundflche projiziertenGrundriss des aktuellen Steins an.

    Tracking starten: Vuforia Tracking wird initialisiert und die Kameragestartet.

    Die Programmroutine wird nach dem Starten und Initialisieren der An-wendung in jedem Frame wiederholt.

    Eingabe ausfhren: Der InputManager verarbeitet alle aktuellen In-teraktionen. Falls eine Eingabe vorliegt, wird diese an das aktuelleObjekt gesendet und ruft dort eine entsprechende Funktion (Call-back) auf.

    Marker suchen: Vuforia verarbeitet das aktuelle Kamerabild und suchtnach Features, die mit dem ImageTarget bereinstimmen und be-stimmt, falls gefunden, die neue Pose des virtuellen Markers.

    Legosteine bewegen: Move Up Down aktualisiert die Position der Le-gosteine abhngig von ihrer aktuellen Bewegung.

    Grundriss aktualisieren: Line Renderer berechnet die aktuelle Positi-on des Grundrisses und stellt diesen dar.

    Hilfslinien aktualisieren: Draw Connection Lines berechnet und ren-dert, falls aktiviert, zustzliche Hilfslinien.

    Frame rendern: Der aktuelle Frame wird mithilfe von Unity geren-dert und auf der HoloLens dargestellt.

    3.5 Vorstellung wichtiger Skripte

    Das wichtigste selbstgeschriebene Skript ist der Construction Manager, dermit den meisten anderen Skripten interagiert oder von diesen verwendetwird. Andere wichtige, aber kleinere Skripte fr die verschiedenen Darstel-lungsoptionen sind z.B. der Material Manager, Layout Renderer oder DrawConnection Lines. Ansonsten sind Skripte aus HoloToolkit wichtig, wie zumBeispiel Input Manager und generell Skripte fr Blick- und Cursorsteue-rung, sowie die Spracherkennung.

    19

  • 3.5.1 Construction Manager

    Dieses Skript wird an das Objekt LegoManager angehngt. Damit mandie Skripte nicht an das Legomodell anhngen muss und dieses bequemeraustauschen kann, enthlt der LegoManager alle wichtigen Skripte fr dieVerwaltung und Steuerung der Montage.Construction Manager enthlt Funktionen, um die Steine des Lego-Objekteszu sortieren, durch die Anleitung zu navigieren und generelle Funktionen,die auf alle Objekte angewendet werden sollen, wie zum Beispiel die Ma-terialien neu zu setzen oder die Anwendung zurckzusetzen.

    Beim Start der Anwendung wird Awake() aufgerufen und es wirdeine Liste mit Referenzen zu allen Legosteinen erstellt, um spter einfachauf diese zugreifen zu knnen. Die Steine werden dann in eine fr dieAnleitung sinnvolle Reihenfolge gebracht und dazu zuerst nach den y-Werten ihrer Position in Ebenen gruppiert.

    1 void PutInLayer(GameObject brick) {2 foreach (Layer l in layers) {3 double yDiff = Mathf.Abs((float)((l.y /

    brick.transform.localPosition.y) - 1));4 if (yDiff < layerThreshhold) {5 l.bricks.Add(brick);6 return;7 }8 }9 layers.Add(new Layer(brick));

    10 }

    Algorithmus 1: Sortieren der Objekte in Ebenen

    Fr jeden Stein wird dabei PutInLayer() aufgerufen (siehe Algorith-mus 1). Es wird fr alle bereits existierenden Ebenen berprft, ob diey-Werte (Hhenwerte) hnlich zu denen einer schon existierenden Ebenesind, falls ja wird dieser Stein der Ebene hinzugefgt. Falls keine Ebeneexistiert, die hnlich genug ist, wird eine neue Ebene mit diesem Steinerstellt.Anschlieend werden die Steine in den Ebenen nach ihren x-Werten unddie Ebenen nach ihren y-Werten sortiert. Dadurch wird eine Reihenfolgeder Steine von unten nach oben und von rechts nach links bestimmt, diefr die Anleitung verwendet wird.

    Whrend ber alle Objekte iteriert wird, werden den Objekten auch dieSkripte Material Manager und Move Up Down angehngt.

    Move Up Down steuert dabei die Bewegung des Steines der platziertwerden soll. Die ursprngliche Position wird gespeichert und kann bei

    20

  • Bedarf wiederhergestellt werden. Um eine weiche Bewegung zu erzielen,wird der Sinus zum Berechnen der jeweils neuen Position verwendet.

    pos =

    xstartystartzstart

    +010

    [0,5 amplitude (1 + sin angle)]Der Start-Vektor ist dabei die Ursprungsposition des Steines. Die Ampli-tude lsst sich einstellen und bestimmt die Hhe der Schwingung. DerWinkel fr den Sinus wird jeden Frame abhnging von der Framedauererhht.

    Material Manager speichert die Originalmaterialien, setzt neue und stelltbei Bedarf die ursprnglichen Materialien wieder her. Die Materialien wer-den verwendet, um fr den alternativen Anzeigemodus Objekte unsichtbardarzustellen. Dazu wird die Tiefenmaske als Material verwendet.

    Eine weitere wichtige Funktion ist nextStep(), diese wird aufgeru-fen um zum nchsten Schritt in der Anleitung zu schalten (siehe Algo-rithmus 2). Die Aufgabe ist es, den nchsten Stein zu aktivieren und denvorher aktiven zu deaktivieren. Dabei soll auf die passenden Materialienzur Darstellung geachtet werden. Die Hilfs- und Grundrisslinien werdenautomatisch immer fr den jeweils aktiven Stein bestimmt und mssennicht separat aktualisiert werden.

    1 public void NextStep() {2 if (step >= 0 && step < GetBrickCount()) {3 bricks[step].GetComponent().TurnMovementOff();4 if (onlyShowCurrent) {5 bricks[step].GetComponent(

    ).Set(occlusionMaterial);6 }7 step++;8 bricks[step].SetActive(true);9 bricks[step].GetComponent().TurnMovementOn();

    10 bricks[step].GetComponent().Restore();11 }12 }

    Algorithmus 2: Zum nchsten Schritt wechseln

    Falls der aktuelle Schritt gltig ist, also zwischen null und der Anzahlan vorhandenen Steinen, wird die Funktion ausgefhrt. Dazu wird durchTurnMovementOff() die Bewegung des aktuelle Steins gestoppt und derStein auf seine ursprngliche Position zurckgesetzt. Falls im Men einge-stellt wurde, dass nur der aktuelle Stein angezeigt werden soll, wird dessenMaterial mit Set() durch ein Neues ersetzt. Das Material occlusionMate-rial nutzt die Tiefenmaske (DepthMask) und zeigt den Hintergrund, also

    21

  • in diesem Fall den bereits platzierten echten Stein, anstelle des Objektes an.Fr den neuen Stein werden Renderer und die Animation des Steins akti-viert und dessen Materialien auf die Originalmaterialien zurckgesetzt.

    3.5.2 Layout Renderer

    Das Skript Layout Renderer liefert die Positionsdaten fr den Grundriss desjeweils aktuellen Steins, zu sehen in Abbildung 16. Dazu wird bei Pro-grammstart ein neues Objekt mit dem Line Renderer Skript von Unity er-stellt und initialisiert. Das Objekt stellt zwischen gegebenen Punkten eineLinie dar.

    1 void Update () {2 GameObject obj = _constManager.GetCurrent();3 if (obj == null) {4 _lineRenderer.enabled = false;5 return;6 }7 Bounds bound =

    obj.GetComponent().mesh.bounds;8 Vector3 c = bound.center;9 Vector3 e = bound.extents;

    10 Vector3[] points = new Vector3[5];11 points[0] = new Vector3(c.x + e.x, c.y + e.y, c.z - e.z);12 points[1] = new Vector3(c.x + e.x, c.y - e.y, c.z - e.z);13 points[2] = new Vector3(c.x - e.x, c.y - e.y, c.z - e.z);14 points[3] = new Vector3(c.x - e.x, c.y + e.y, c.z - e.z);15 obj.transform.localPosition =

    obj.GetComponent().getStartingPos();16 for (int i = 0; i < 4; i++) {17 points[i] = obj.transform.TransformPoint(points[i]);18 }19 points[4] = points[0];20 _lineRenderer.enabled = true;21 _lineRenderer.SetPositions(points);22 }

    Algorithmus 3: Eckpunkte fr den Grundriss bestimmen

    Jeden Frame wird im Layout Renderer Update() aufgerufen um die neuenEckpunkte des Grundrisses zu berechnen (siehe Algorithmus 3).Falls kein aktueller Stein existiert wird der Algorithmus nicht ausgefhrtund Line Renderer deaktiviert. Wenn ein Stein existiert, wird die BoundingBox verwendet, um die Eckpunkte zu bestimmen. Gegeben ist das Zentrumder Bounding Box im lokalen Koordinatensystem, sowie die Ausdehnungder Box in jede Dimension. Daraus werden die Koordinaten aller unterenEcken berechnet und anschlieend in das Weltkoordinatensystem transfor-

    22

  • miert. Da die Linie geschlossen sein soll, wird der letzte Punkt gleich demersten gesetzt. Anschlieend wird das Skript aktiviert und bekommt diePunkte bergeben.

    3.5.3 HoloToolkit Skripte

    Das HoloToolkit ist eine Sammlung an Skripten und Komponenten, umdie Entwicklung von Applikationen fr die HoloLens zu untersttzen. Diewichtigsten verwendeten Skripte sind fr die Interaktion zustndig. Dazugehren unter anderem Gaze Manager, Input Manager und Voice Manager.Der Gaze Manager ermittelt durch Raycasts Objekte, die vom Benutzer an-geschaut werden. Die Daten werden vom Zeiger (Cursor) benutzt, um ihnan entsprechender Stelle anzuzeigen und auerdem an den Input Managerweitergeleitet.Der Input Manager berwacht alle Eingabequellen (z.B. verschiedene Ges-ten, Sprachbefehle, Controller) und sendet Eingabe-Events an das geradefokussierte Objekt, das nun auf die entsprechende Eingabe reagieren kann.Der Voice Manager verknpft Sprachbefehle mit Events. Wenn ein erkanntergesprochener Text mit gespeicherten Sprachbefehlen bereinstimmt, wirdder entsprechende Befehl ausgefhrt (z.B. "next", um zum nchsten Schrittzu schalten).

    3.6 Tracking

    Zum Tracking wird Vuforia verwendet. Zu Beginn wurde als Marker einezweidimensionale Textur in Form der Strae auf der Legoplatte verwendet,was allerdings hufig zu einer falschen Positionierung fhrte. Der Markerwurde dabei oft ein bis zwei Zentimeter hher oder niedriger als desseneigentliche Position erkannt, wodurch das Hologramm nur aus einem be-stimmten Blickwinkel bereinstimmte. Aus anderen Richtungen betrachtetverschob sich das Hologram relativ zum echten Objekt und das Aufbauenwurde so erschwert.Daher wird anstelle eines einzelnen Markers ein Wrfel9 (Abbildung 13a)verwendet, der an allen Seiten ein Tracking-Bild bietet und so zu einem sta-bileren und genaueren Tracking fhren soll. Dazu wurde fr jede Seite desWrfels ein Marker mit ARMaker10 generiert, der fr Vuforia genug Fea-turepunkte (siehe Abbildung 13b) bietet. Der Wrfel hat die Mae 4,8cm x5cm x 4,8cm (Breite, Hhe, Lnge). Die genauen Algorithmen, die Vuforiafr das Tracking verwendet sind nicht verffentlicht. Die Marker TrackingPipeline ist aber nach folgendem Prinzip aufgebaut [11]:

    Kamerabild aufnehmen9Marker Download unter https://goo.gl/9taLzN

    10https://github.com/shawnlehner/ARMaker

    23

    https://goo.gl/9taLzNhttps://github.com/shawnlehner/ARMaker

  • (a) Marker Wrfel (b) Front Marker mit Featurepunktenin gelb

    Abbildung 13: Fr das Tracking verwendete Marker

    Marker detektieren, indem nach bekannten Formen und Features ge-sucht wird

    Pose schtzen durch Homographie

    Pose verbessern durch Optimierung und Fehlerminimierung

    Rendern

    In Unity sind die wichtigen Skripte Vuforia Behaviour, das dem Game-Object ARCamera angehngt ist, und Multi Target Behaviour des MultiTar-get Objektes. Dem Objekt sind das Legomodell und das Men als Kin-der zugeordnet, wodurch diese bei Positionsnderungen des Markers mittransformiert werden. Die Position und Orientierung der Kamera der Ho-loLens wird als Weltmittelpunkt zur Berechnung der Pose des Markersgenutzt.

    3.7 Benutzerinterface und Interaktion

    Dargestellt wird das Legomodell, ein Cursor und das Men. Das Men istgrafisch auch aus Lego aufgebaut, allerdings nur digital vorhanden undorientiert sich an der Pose des Legomodells. Das Interface und die ver-schiedenen Darstellungsoptionen fr das Legomodell werden in diesemAbschnitt behandelt.

    24

  • (a) keine Kollision (b) bei Kollisionmit Objekt

    (c) beim Erkenneneiner Hand

    (d) beim Erkennender Klick-Geste

    Abbildung 14: berblick ber die verschiedenen Cursor

    3.7.1 Cursor

    Zur Interaktion wird ein Cursor verwendet, der den Kopfbewegungen folgtund mittig im Sichtfeld positioniert ist. Der Cursor gibt dem Nutzer durchvier verschiedene Modelle (siehe Abbildung 14) Feedback zu seinen Ak-tionen. Durch das Skript GazeManager werden in jedem Frame Raycastsin Blickrichtung gesendet, um zu prfen ob aktuell ein Objekt angeschautwird. Bei Kollision mit einem Objekt wird diesem ein Event gesendet undSkripte knnen bei Bedarf darauf reagieren, wie es zum Beispiel bei denButtons vom Men der Fall ist. Auerdem wird der Cursor an dem aktivenObjekt platziert.Die folgenden unterschiedlichen Zeiger knnen dargestellt werden:Der Cursor in Abbildung 14a wird in einer festen Entfernung angezeigtfalls kein Objekt angeschaut wird, also der Raycast nicht kollidiert. Fallsein Objekt getroffen wird, wird der Kreis aus Abbildung 14b auf dem ent-sprechenden Objekt und in Orientierung zur Kamera angezeigt. Die Handaus Abbildung 14c ist zu sehen, falls die Hand des Anwenders vor derHoloLens erkannt wird. Wenn die Klick-Geste ausgefhrt wird, wird alsFeedback kurz die Hand mit angelegten Fingern aus Abbildung 14d an-gezeigt. Fr den Cursor wurde ein Prefab aus HoloToolkit verwendet undum die beiden letzten Zustnde erweitert.

    3.7.2 Men

    Das Men wird zum Start automatisch am Legomodell ausgerichtet. Es istin der Mitte der rechten Seite neben dem Modell platziert und kann sich aufWunsch mit dem Anwender um das virtuelle Modell bewegen. Das Menbietet folgende Buttons zur Interaktion:

    nchster Schritt

    vorheriger Schritt

    nur aktuellen Stein / alle Steine anzeigen

    25

  • Abbildung 15: Interaktives Men, dargestellt mit der HoloLens

    Hilfslinien ein-/ausblenden

    erweitertes Men

    Zurcksetzen

    Szene wechseln

    Tracking ein-/ausschalten

    von Hand platzieren

    Das Men ist in Abbildung 15 zu sehen. Dort ist das erweiterte Meneingeklappt und der Button "nchster Schritt"fokussiert. Durch Anvisierendes gewnschten Buttons mit dem Cursor wird OnFocusEnter() vonMenu Gaze Responder aufgerufen, wodurch der Button skaliert und des-sen Beschriftung zum besseren Verstndnis angezeigt wird. Die Normaleder Beschriftung zeigt dabei zur Kamera, damit der Text immer gut lesbarist. Nach einer kurzen Verzgerung fllt sich ein roter Balken entlang desRandes, ist dieser komplett gefllt wird das Klick-Event des jeweiligenMenpunktes ausgelst und die entsprechenden Funktionen ausgefhrt.Alternativ kann das Event per Geste auch direkt gestartet werden. Durchweiteres Anvisieren nach dem ersten Auslsen werden die nachfolgendenEvents schneller ausgelst, bis eine maximale Geschwindigkeit erreicht ist.Um zum nchsten Schritt zu wechseln, kann auch das komplette Legomo-dell als Button verwendet und per Geste ausgelst werden. Als Geste wirdeine der von Microsoft eingebauten Standardgesten verwendet. Fr dieKlick-Geste hlt der Anwender seine Hand in etwa 20-30 cm Entfernungvor sich und tippt Zeigefinger und Daumen zusammen.

    26

  • 3.7.3 Sprachsteuerung

    Alternativ zum Men kann die Anwendung grtenteils auch mit Sprach-befehlen gesteuert werden. Hier werden Skripte von Microsofts HoloTool-kit verwendet. Das GameObject VoiceManager enthlt die dazu ntigenSkripte Speech Input Source und Speech Input Handler. Das Skript Dictation In-put Manager konvertiert die vom Mikrofon aufgenommene Sprache in Text,der mit definierten Schlsselworten verglichen wird. Stimmt der erkannteText mit einem definierten Wort oder einer Sequenz berein, werden dieentsprechenden Funktionen ausgefhrt.Definiert sind folgende Wrter und Funktionen:

    next: nchster Schritt

    back: vorheriger Schritt

    toggle material: nur aktuellen Stein / alle Steine anzeigen

    toggle line: Hilfslinien ein-/ausblenden

    reset: Szene zurcksetzen

    load main/demo scene: ldt die entsprechende Szene

    3.7.4 Darstellung der Platzierung der Legosteine

    HoloLego bietet mehrere verschiedene Anzeigemglichkeiten, die dabeihelfen sollen, die korrekte Position zum anbringen der Steine zu finden.Viele der Einblendungen sind optional, so dass jeder Nutzer das Programmnach seinen Wnschen einstellen kann.Der Stein des aktuellen Schrittes wird durch Move Up Down animiert darge-stellt und bewegt sich an der Stelle wo er platziert werden soll auf und ab.An der richtigen Position wird der Grundriss des Steins durch das SkriptLayout Renderer (siehe Unterunterabschnitt 3.5.2) angezeigt.Auf Wunsch knnen durch Draw Connection Lines zustzliche Linien zurHilfe eingeblendet werden. Dabei besteht die Auswahl zwischen einer Hilfs-linie im Zentrum des aktuellen Steins (Abbildung 16b) oder in den vierEcken (Abbildung 16c).Je nach Einstellung werden neben dem aktuellen Stein auch alle vorherschon platzierten Steine angezeigt (Abbildung 10) oder nur der momentanaktive Schritt (Abbildung 17). Auch wenn nur der aktive Stein angezeigtwird, werden virtuelle Objekte dennoch von bereits platzierten realen Stei-nen perspektivisch verdeckt. Um das zu erreichen, wird die Tiefenmaskeals Material verwendet, wodurch die Objekte unsichtbar werden und denHintergrund anzeigen.In Abbildung 16 ist das zum Beispiel am Grundriss zu erkennen, der durchdas reale Lego-Fenster verdeckt wird. Dadurch soll verhindert werden,

    27

  • (a) nur Grundriss (b) zustzliche zentraleHilfslinie

    (c) zustzliche Hilfslinienin den Ecken

    Abbildung 16: berblick ber die verschiedenen Hilfslinien, dargestellt mit derHoloLens

    dass Anwender durch fehlende Verdeckung verwirrt werden, wie es beiNutzertests von Blattgerste et al. [6] bei einigen Personen vorkam. Auer-dem wird die Umrandung der Grundplatte angezeigt damit erkennbar ist,falls das Hologramm nicht mehr synchron mit dem realen Objekt ist.

    3.8 Verwendung eigener Legomodelle

    Die Anwendung ist dynamisch und funktioniert mit jedem in Ebenen auf-gebauten Legomodell. Das bedeutet, dass das Legomodell von unten nachoben aufgebaut sein muss. Es knnen keine Teile von der Seite platziertwerden oder Teilmodelle verwendet werden.Ein passendes Objekt kann in Unity importiert werden, z.B. im fbx-Format.Es muss als Kind des MultiTargets gesetzt werden und so platziert werden,dass die virtuelle Position des Trackers mit der echten bereinstimmt. An-schlieend muss im LegoManager als Legomodell das neu hinzugefgteObjekt ausgewhlt werden.Falls noch kein Modell im passenden Format zur Verfgung steht, kannes z.B. mit LDCad gebaut und anschlieend mit dem in Unterabschnitt 3.1angegebenen Blender Plugin in eine fbx-Datei konvertiert werden. Der ver-wendete Marker ist in Unterabschnitt 3.6 beschrieben.

    3.9 Nicht implementierte Funktionen

    Die Funktionen in diesem Kapitel waren zur Implementierung geplant,wurden allerdings nicht umgesetzt.Es sollte erkannt werden, wenn der aktuelle Stein korrekt platziert wurde

    28

  • Abbildung 17: Darstellung der HoloLego Applikation durch die HoloLens, nuraktueller Stein wird angezeigt

    und daraufhin automatisch zum nchsten Schritt gewechselt werden. Fallsder Stein falsch platziert wurde oder generell ein falscher Stein ausgewhltwurde (z.B. falsche Farbe oder Gre), sollte eine Rckmeldung gegebenwerden. Um dies umzusetzen, sollte unter anderem der Tiefensensor derHoloLens verwendet werden, weil die Legosteine meist einfarbig sind, nurwenige Featurepunkte bieten und sich dadurch ausschlielich mit RGB-Bildern schwer erkennen lassen. Der Tiefensensor der HoloLens ist fr die-sen Anwendungsfall allerdings nicht geeignet, da dessen Genauigkeit mitca. 10cm zu gering ist und auch erst ab einer Distanz von 85cm gemessenwerden kann. Die Legosteine sind also zu klein, um im Tiefenbild erkanntzu werden und die Minimaldistanz fr die Montage von Lego zu gro.Auerdem bietet Microsoft keine Mglichkeit, direkt auf die Tiefenwertbil-der zuzugreifen, sondern nur auf ein bereits weiterverarbeitetes Mesh derUmgebung.hnliche Szenarien verwendeten die Microsoft Kinect zur Untersttzungder HoloLens, wodurch allerdings auch viele Vorteile der HoloLens weg-fallen. Es muss ein spezieller Arbeitsplatz existieren, an dem die Kinectaufgebaut und mit einem Computer verbunden ist. Auerdem muss dieKinect mit der HoloLens zusammen kalibriert werden, whrend man an-sonsten nur die HoloLens aufsetzen muss und mit dem Zusammenbaustarten kann.

    29

  • 4 Evaluation

    Um zu berprfen, wie gut die HoloLens und die entwickelte Anwendungzur Montage von Lego geeignet ist, wurde ein Nutzertest durchgefhrt.Dieser Test sollte klren, wie die augmentierten Anweisungen der Holo-Lens im Vergleich zu der Papieranleitung abschneiden und wie hilfreichdie HoloLens dabei ist. Auerdem sollte berprft werden, wie gut dieDarstellung in der Applikation ist und ob diese dabei hilft, die Aufgabe zuerfllen. In den folgenden Abschnitten wird der Aufbau, die Durchfhrungund die Ergebnisse dieser Umfrage vorgestellt und besprochen.

    4.1 Aufbau und Gestaltung der Umfrage

    4.1.1 Szenario

    Der Ablauf des Nutzertests orientiert sich grob am von Funk et al. [15]entwickelten Benchmark.Nach einer kurzen Vorstellung und Erklrung des Themas dieser Arbeitund des Nutzertests wird das Lego Haus einmal mit Hilfe der HoloLensund einmal mit Papieranleitung zusammengebaut. Bei beiden Tests wirddas gleiche Modell eines Hauses verwendet und die einzelnen Legostei-ne liegen unsortiert neben der Grundplatte. Da bei mehrfachem Aufbaudesselben Modells ein Lerneffekt zu erwarten ist, verwendet die Hlfteder Teilnehmer die HoloLens im ersten Durchlauf und die andere Hlftedie Papieranleitung. Die jeweils andere Aufbaumethode wird im zweitenDurchlauf verwendet.Die Verwendung und Bedienung der HoloLens und der Applikation, so-wie die verschiedenen Darstellungsoptionen werden anhand einer Demo-Szene erklrt und von den Teilnehmern ausprobiert. Nachdem die Funk-tion und Bedienung der Anwendung verstanden ist, beginnt der Test mitder Haupt-Szene. Beim Aufbau wird fr beide Methoden die Zeit gestoppt.Dabei werden fr jeden Schritt drei Zeiten erfasst:

    tlocate_pic: Zeit den passenden Stein zu finden und zu greifen

    tlocate_assemble: Zeit die richtige Stelle zu finden und den Stein zu plat-zieren

    tswitch: Zeit um zum nchsten Schritt zu schalten

    Die Gesamtzeit pro Schritt ttotal ergibt sich durch Addition der drei Teilzei-ten.

    ttotal = tlocate_pic + tlocate_assemble + tswitch

    Nach Aufbau des Legomodells mit beiden Methoden wird ein Fragebogenausgefllt, der die Teilnehmer neben generellen Fragen zur Person und den

    30

  • Erfahrungen mit AR hauptschlich nach Bewertungen fr den Aufbau mitder HoloLens und mit Papier, sowie nach den verschiedenen Darstellungs-optionen befragt. Bei vielen Fragen soll eine Bewertung anhand einer Skalagegeben werden. Es wird immer eine Skala von eins bis sechs verwendet,was die Tendenz die mittlere Antwort zu whlen verhindern soll.

    4.1.2 Durchfhrung

    Die Applikation wurde insgesamt an zehn Personen getestet. Die Teilneh-mer waren zwischen 22 und 30 Jahre alt (x = 24,7; = 2,7) und haben zu60% schon vorher zumindest einmal eine AR-Brille ausprobiert.Fnf Teilnehmer bekamen zuerst die HoloLens als Anleitung zum Zusam-menbau, die anderen Fnf zuerst die Papieranleitung. Die jeweils andereArt der Anleitung wurde als zweites getestet. Anschlieend fllten dieTeilnehmer einen Fragebogen aus.

    4.2 Ergebnisse

    In diesem Abschnitt werden die Ergebnisse fr die verschiedenen Teilbe-reiche des Tests und Fragebogens vorgestellt. Dabei geht es zum einen umdie Frage, wie die Anwendung im Vergleich zum Papier abschneidet undwie man die Interaktion und Darstellung in der Anwendung am Bestenrealisiert.

    4.2.1 Bearbeitungszeiten

    Fr den gesamten Aufbau des Legomodells mit der HoloLens bentigtendie Testpersonen durchschnittlich 5 Miuten und 38 Sekunden (x = 5,6; =0,9). Mit der Papieranleitung wurde das Haus etwas schneller in durch-schnittlich 5 Minuten und 12 Sekunden (x = 5,2; = 1,1) aufgebaut.Die Zeiten wurden per t-Test miteinander verglichen, ein statistisch signifi-kanter Unterschied in der Aufbaudauer konnte allerdings nicht festgestelltwerden. Dies liegt zum einen an den hnlichen Zeiten, zum anderen ander geringen Zahl an Tests. In Abbildung 18 ist eine Boxplot-Darstellungder Gesamtzeit zu sehen. Daran lsst sich erkennen, dass die Streuungder Zeiten beim Papier grer ist, der Mittelwert und Median allerdingshnlich sind.

    Die folgenden Zeiten fr die (Teil-)Schritte sind als -getrimmte Mittel-werte xt; mit = 0,2 angegeben, das heit, dass die kleinsten und grten20% der Daten nicht mit eingerechnet werden. Dies soll den Einfluss vonbeim Messen entstandenen Ausreiern verhindern.Um nach dem Wechsel zum nchsten Schritt den passenden Stein zu finden

    31

  • Abbildung 18: Gesamtzeit fr den Aufbau

    und zu greifen (tlocate_pic) bentigten die Teilnehmer am krzesten mit derHoloLens mit durchschnittlich 2,8s ( = 1,0) und mit der Papieranleitungmit 2,9s ( = 1,1) etwas lnger.Das Erkennen der Position und das Platzieren des Legosteins (tlocate_assemble)dauerte mit der HoloLens 2,4s ( = 0,8) und damit etwas lnger als die 2,3( = 0,7) Sekunden, die Teilnehmer mit der Papieranleitung brauchten.Fr das Umschalten zum nchsten Schritt (tswitch), bzw. Umblttern derSeite, wurden mit der HoloLens 2,2s ( = 1,0) und mit Papier 1,9s ( = 0,6)bentigt.Insgesamt war der Aufbau mit Hilfe der Papieranleitung etwas schnellerund dauerte pro Schritt durchschnittlich 8,3s ( = 2,6), mit der HoloLensbentigten Teilnehmer 8,6s ( = 2,3). In Abbildung 19 sind die Zeiten proTeilschritt zum einfachen Vergleich in einem Kastendiagramm dargestellt.Dabei steht blau fr die HoloLens und orange fr die Papieranleitung.Alle Zeiten wurden mittels Zweistichproben-t-Test miteinander verglichen.Ein signifikanter Unterschied zwischen den beiden Aufbaumethoden istnur bei tswitch gegeben, das Wechseln zum nchsten Schritt bentigt mitder HoloLens also mehr Zeit. Um eine relevante Aussage fr die anderenTeilschritte machen zu knnen, sind mehr Tests notwendig.

    4.2.2 Ergebnisse des Fragebogens

    Der von den Teilnehmern ausgefllte Fragebogen lieferte die folgendenErgebnisse.Die Teilnehmer wurden befragt, ob bei jedem Schritt eindeutig erkennbarwar, welchen Stein (welche Farbe, Gre, etc.) man platzieren soll. Die

    32

  • Abbildung 19: Zeiten fr die verschiedenen Schritte im Vergleich

    Antwort wurde auf einer Skala von eins bis sechs (nie bis immer) angege-ben. Die HoloLens wurde mit durchschnittlich 5,6 ( = 0,5) bewertet, diePapieranleitung etwas besser mit 5,7 ( = 0,5). In dieser Frage schnittenbeide Methoden sehr gut ab.Die Frage, ob es eindeutig war, wo man den jeweiligen Stein platzieren soll,wurde mit der gleichen Skala gestellt und fr die HoloLens mit x = 4,5( = 0,7) und fr Papier mit x = 5,1 ( = 0,8) bewertet. Hier schnitt dieHoloLens signifikant schlechter ab als die Papieranleitung.Die Teilnehmer wurden auerdem gebeten zu bewerten, wie (geistig) an-strengend der Aufbau mit der jeweiligen Methode war. Die Antwort wurdewieder auf einer Skala von eins bis sechs (gar nicht bis sehr anstrengend)gegeben. Die HoloLens wurde dabei mit x = 1,6 ( = 0,9) besser bewertetals die Papieranleitung mit x = 2,4 ( = 1,5).

    Um herauszufinden, wie gut Anwender mit der Bedienung und In-teraktion der Anwendung klar kommen, sollte auf einer Skala (gar nichtbis sehr gut) bewertet werden, wie der Teilnehmer mit der Bedienung derHoloLens insgesamt klar kommt. Die Frage wurde mit x = 4,6 ( = 0,8)bewertet. Die Bedienung der HoloLego Applikation wurde dagegen mitx = 5,1 ( = 0,8) besser bewertet.Um zum nchsten Schritt zu wechseln wurde hauptschlich die Sprach-

    33

  • steuerung verwendet (60%), etwas weniger Teilnehmer bevorzugten dieNavigation durch eine Geste auf das Legomodell (30%). Das Men amRand wurde fr diesen Zweck nur von 10% verwendet.Als Darstellungsmodus (siehe Abbildung 10 und Abbildung 17) wurdevon 70% bevorzugt, wenn nur der aktuelle Stein eingeblendet wird. 30%bevorzugten es, alle Steine anzeigen zu lassen.Fr die Darstellung der Hilfslinien (siehe Abbildung 16) bevorzugten 70%vier Linien in den Ecken, 20% verzichteten auf die Einblendung der Linienund 10% lieen eine zentrale Hilfslinie anzeigen.70% der Testpersonen wrden die HoloLens Anwendung beim Aufbauvon Lego der Papieranleitung vorziehen, sofern beide Optionen verfgbarsind.Alle Testpersonen gaben an, dass die Verwendung der Applikation ihnenSpa gemacht hat. Als Schulnote wurde die Anwendung mit 1,8 mit gutbewertet.

    4.3 Auswertung der Ergebnisse

    Insgesamt schneidet HoloLego bei dem Nutzertest gut ab.Zum Aufbauen wird im Vergleich zur Papieranleitung nicht signifikantmehr Zeit bentigt. Bei einem hnlichen Nutzertests von Blattgerste et al.[6] bentigten Teilnehmer fr den Aufbau mit AR-Brillen lnger als mitPapieranweisungen.Nur das Umschalten zum nchsten Schritt bentigte im Test mehr Zeit mitder HoloLens. Die Grnde knnten sein, dass Gesten und Sprachbefehlenicht immer direkt erkannt wurden und die Aktivierung des Mens durchAnschauen eine bestimmte Zeit zum Auslsen bentigt. Es ist auerdemzu erwarten, dass sich tswitch bei wiederholtem Verwenden der HoloLensverkrzen wrde, da die Teilnehmer die Verwendung der Brille wenigergewohnt sind als das Umblttern von Papier.Die meisten Teilnehmer hatten keine Probleme zu erkennen, welcher Steinaktuell platziert werden sollte. Wo der Legostein platziert werden soll, wardagegen nicht immer eindeutig, wurde aber noch gut bewertet. Das schlech-tere Ergebnis in dieser Frage lsst sich auf die teilweise einige Millimeterversetzte berlagerung der Hologramme mit den echten Objekten zurck-fhren, dies sollte in Zukunft korrigiert werden. Trotz dieser Einschrn-kung wurden beim Aufbau mit der HoloLens nur wenige Fehler gemacht.Hauptschlich der erste Schritt bereitete Schwierigkeiten, da noch keineOrientierung an bereits platzierten Steinen mglich war. Der Stein wurdeteilweise um eine Reihe versetzt platziert. Einige Teilnehmer hatten auchSchwierigkeiten, den berhang der Eckdachsteine korrekt zu erkennen.Aber auch bei der Montage mit Papieranleitung wurden Fehler gemacht. Inder Anleitung wurde die Ansicht rotiert, so dass der jeweils aktuelle Steinnicht verdeckt wird. Mit dieser Rotation in der Anleitung hatten einige

    34

  • Testpersonen Schwierigkeiten.Zustzlich wurde von den Teilnehmern des Tests erwhnt, dass man beider HoloLens auf den Aufbau fokussiert bleiben kann. Es muss nicht frjeden Schritt der Kopf bewegt werden um auf die Anleitung zu schauen,da die Anweisung direkt in das Sichtfeld eingeblendet wird.Diese Grnde fhrten vermutlich dazu, dass die Verwendung der Holo-Lens im Vergleich zur Papieranleitung als weniger anstrengend empfun-den wurde.

    Von den meisten Teilnehmern wurde die Anwendung per Sprachbefehlnavigiert. Es fiel auf, dass die Bedienung von Personen, die die Sprach-steuerung verwendeten insgesamt besser bewertet wurde, als bei Verwen-dung der anderen Interaktionsmglichkeiten.Zur Darstellung wurde hauptschlich das Anzeigen des aktuellen Steinsmit vier Hilfslinien in den Ecken ausgewhlt. Anhand der Ergebnisse lsstsich erkennen, dass Teilnehmer, die sich keine Hilfslinien anzeigen lieen,es schwerer hatten, die korrekten Positionen zu erkennen. Diese Teilneh-mer bewerteten die Frage nach der Genauigkeit der angezeigten Steineschlechter. Zwischen den anderen Darstellungsmglichkeiten fiel kein be-sonderer Zusammenhang auf. Fr genauere Aussagen wre ein umfang-reicherer Test mit mehr Teilnehmern notwendig.

    In den Freitextfeldern des Fragebogens und im Gesprch wurde auer-dem folgendes Feedback gegeben: Gelobt wurde die Visualisierung, einfa-che Bedienung und die starke berlagerung der Hologramme. Diese emp-fanden einige Nutzer auch als zu stark, da sie die eigentlichen Objekte nichtmehr richtig erkennen konnten. An der HoloLens lsst sich die Helligkeitdes Bildes und damit die berlagerungsstrke allerdings einstellen.Kritisiert wurde dagegen von vielen Teilnehmern das geringe Sichtfeld derBrille und von einigen, dass die Brille relativ schwer und mit der Zeit un-bequem sei.Positiv ist allerdings, dass ein Groteil der Nutzer die HoloLens trotz dieserEinschrnkungen bevorzugt verwenden wrden und alle Teilnehmer Spaam Aufbau mit Hilfe der HoloLens hatten.

    Insgesamt hat die HoloLego Anwendung im Nutzertest trotz der Schw-chen im Tracking gut abgeschnitten. HoloLego kann in der Aufbaudau-er mit der Papieranleitung mithalten, bietet dafr aber neue Vorteile undMglichkeiten. Die von den Teilnehmern gegebene Schulnote von 1,8 spie-gelt dies wieder.

    35

  • 5 Ausblick

    Obwohl die Untersttzung von Montageszenarien durch Augmented Rea-lity schon heute Verwendung findet und funktioniert, gibt es immer nochviele Verbesserungsmglichkeiten.

    5.1 AR-untersttzte Montage

    Momentan wird digital untersttzte Montage hauptschlich in der Indus-trie verwendet, da die Anwendungen besser fr ein bestimmtes Szenariooptimiert werden knnen und die Gerte noch relativ teuer sind. Dabeiwerden oft Projektor-basierte Systeme genutzt, da diese an einem fest in-stallierten Arbeitsplatz bereits gut funktionieren und HMDs noch einigeEinschrnkungen haben. Durch Verbessern der AR-Brillen knnten diesein Zukunft aber auch vermehrt genutzt werden. Die Verbreitung wrdeauch fr den Endverbrauchermarkt neue Mglichkeiten bieten, digital er-weiterte Montage zu verwenden, um zum Beispiel beim Zusammenbauvon Lego und Mbeln, als alternative Bedienungsanleitung oder bei derReparatur (z.B. von Fahrzeugen) zu helfen.

    5.2 HoloLens

    Die Microsoft HoloLens und AR-Brillen im Allgemeinen haben neben demhohen Preis momentan noch mehrere Schwchen, unter anderem ein klei-nes Sichtfeld, kurze Akkulaufzeit oder hohes Gewicht. Dies verhindert mo-mentan noch eine lngere Verwendung der Brille. Die Einschrnkungensollten in neueren Modellen verbessert werden und knnen im Gegenzugzu einer greren Verbreitung der HoloLens fhren. Auch der Tiefenwert-sensor sollte verbessert werden, da er momentan nur grobe Daten zumerkennen von Rumen und groen Objekten liefert.

    5.3 HoloLego Applikation

    Die fr diese Arbeit implementierte Anwendung generiert die Reihenfol-ge der Schritte automatisch und kann Modelle daher nur von unten nachoben aufbauen. Das seitliche anbringen von Steinen oder das zusammen-und einbauen von Teilmodellen ist momentan nicht mglich. Dies knnteverbessert werden, indem die Daten fr genauere Schritte und Teilschrittein einer Datei gespeichert werden, die zum Beispiel als XML aufgebaut ist.Auch das Verwenden von Anleitungen anderer Nutzer wrde so verein-facht werden.Bereits fr diese Arbeit war optional angedacht, automatisch zum nchstenSchritt weiter zuschalten und Fehler in der Montage zu erkennen. Dieswar aufgrund von Hardwareeinschrnkungen noch nicht mglich, wre

    36

  • fr die Zukunft aber eine wichtige Funktion. Auerdem knnte der jeweilsbentigte Stein in der Umgebung erkannt und hervorgehoben werden, sowrde auch die Phase, den richtigen Stein zu finden (tlocate_pic) beschleu-nigt werden.Eine weitere praktische Ergnzung wre das Laden von neuen Objektenwhrend der Laufzeit, indem diese als fbx-Datei und alternativ auch imLDraw-Format geffnet werden knnen.

    6 Fazit

    Das Ziel der Arbeit war, es eine interaktive und augmentierte Anwendungfr die HoloLens zu implementieren und zu evaluieren. Dabei sollten dieMglichkeiten und Grenzen der HoloLens in Bezug auf Montageszenarienbewertet werden, um zu evaluieren, wie hilfreich die HoloLens dabei seinkann.Es stellte sich heraus, dass die HoloLens schon heute gute Mglichkeitenbietet, bei der Montage zu untersttzen und gegenber anderen Methodeneinige Vorteile bietet. Die HoloLens erlaubt es zum Beispiel, auf die Mon-tage fokussiert zu bleiben.Im Nutzertest wurde der Aufbau mit der HoloLego Applikation hnlichschnell erledigt wie mit Papieranleitung. Die Darstellung und Bedienungder Applikation wurde als gut bewertet und der Aufbau war fr die Teil-nehmer weniger anstrengend als mit der Papieranleitung. Es wurden je-doch auch einige noch existierende Grenzen und Schwchen festgestellt,sowohl software- als auch hardwareseitig. Fr die Software muss haupt-schlich das Tracking verbessert werden, das teilweise noch nicht die n-tige Genauigkeit erzielen konnte und zu leicht versetzten Hologrammenfhrte. Weitere Mglichkeiten, die Anwendung zu erweitern, wurden inUnterabschnitt 5.3 vorgestellt. An der HoloLens fiel hauptschlich das ge-ringe Sichtfeld negativ auf. Fr eine Erweiterung der Software wre einverbesserter Tiefenwertsensor, bei dem auch direkt auf die Bilder zugegrif-fen werden kann hilfreich.Optional sollte die Anwendung automatisch erkennen und verifizieren,ob ein Stein korrekt platziert wurde. Durch die bestehenden technischenGrenzen wurde das optionale Ziel leider nicht erreicht.

    37

  • Literatur

    [1] P. Milgram, H. Takemura, A. Utsumi, and F. Kishino,Augmented reality: a class of displays on thereality-virtuality continuum, vol. 2351, pp. 282292,1995. [Online]. Available: http://proceedings.spiedigitallibrary.org/proceeding.aspx?articleid=981543

    [2] M. Billinghurst, A. Clark, and G. Lee, A Survey of AugmentedReality, Foundations and Trends R in HumanComputer Interaction,vol. 8, no. 2-3, pp. 73272, 2015. [Online]. Available: http://www.nowpublishers.com/article/Details/HCI-049

    [3] P. Dobrindt, S. Martin, and J. Flemming, BMW i8 Head-Up Display FHP, 2015. [Online]. Available: https://fhp.incom.org/project/5579(Accessed 2017-10-11).

    [4] Microsoft, Microsoft HoloLens | The leader in mixed realitytechnology, 2017. [Online]. Available: https://www.microsoft.com/en-us/hololens (Accessed 2017-10-12).

    [5] S. Bttner, H. Mucha, M. Funk, T. Kosch, M. Aehnelt, S. Robert,and C. Rcker, The Design Space of Augmented and VirtualReality Applications for Assistive Environments in Manufacturing,Proceedings of the 10th International Conference on PErvasive TechnologiesRelated to Assistive Environments - PETRA 17, pp. 433440,2017. [Online]. Available: http://dl.acm.org/citation.cfm?doid=3056540.3076193

    [6] J. Blattgerste, B. Strenge, P. Renner, T. Pfeiffer, and K. Essig,Comparing Conventional and Augmented Reality Instructionsfor Manual Assembly Tasks, Proceedings of the 10th InternationalConference on PErvasive Technologies Related to Assistive Environments -PETRA 17, pp. 7582, 2017. [Online]. Available: http://dl.acm.org/citation.cfm?doid=3056540.3056547

    [7] S. C.-Y. Yuen, G. Yaoyuneyong, and E. Johnson, Augmented Reality:An Overview and Five Directions for AR in Education, Journalof Educational Technology Development and Exchange, vol. 4, no. 1,pp. 119140, 2011. [Online]. Available: http://aquila.usm.edu/jetde/vol4/iss1/11

    [8] A. Kipman, Announcing Microsoft HoloLens DevelopmentEdition open for pre-order, shipping March 30, 2016.[Online]. Available: https://blogs.windows.com/devices/2016/02/29/announcing-microsoft-hololens-development-edition-open-for-pre-order-shipping-march-30/ (Accessed 2017-10-12).

    38

    http://proceedings.spiedigitallibrary.org/proceeding.aspx?articleid=981543http://proceedings.spiedigitallibrary.org/proceeding.aspx?articleid=981543http://www.nowpublishers.com/article/Details/HCI-049http://www.nowpublishers.com/article/Details/HCI-049https://fhp.incom.org/project/5579https://www.microsoft.com/en-us/hololenshttps://www.microsoft.com/en-us/hololenshttp://dl.acm.org/citation.cfm?doid=3056540.3076193http://dl.acm.org/citation.cfm?doid=3056540.3076193http://dl.acm.org/citation.cfm?doid=3056540.3056547http://dl.acm.org/citation.cfm?doid=3056540.3056547http://aquila.usm.edu/jetde/vol4/iss1/11http://aquila.usm.edu/jetde/vol4/iss1/11https://blogs.windows.com/devices/2016/02/29/announcing-microsoft-hololens-development-edition-open-for-pre-order-shipping-march-30/https://blogs.windows.com/devices/2016/02/29/announcing-microsoft-hololens-development-edition-open-for-pre-order-shipping-march-30/https://blogs.windows.com/devices/2016/02/29/announcing-microsoft-hololens-development-edition-open-for-pre-order-shipping-march-30/

  • [9] O. Kreylos, On the road for VR: Microsoft HoloLens at Build 2015,San Francisco, 2015. [Online]. Available: http://doc-ok.org/?p=1223(Accessed 2017-12-11).

    [10] Microsoft Dev Center, Hardware details, p. 1, 2016.[Online]. Available: https ://developer.microsoft.com/en- us/windows/holographic/hardware{_}details{#}power (Accessed 2017-10-12).

    [11] D. Schmalstieg and T. Hollerer, Augmented reality: Principles andpractice, in 2017 IEEE Virtual Reality (VR), 2017, pp. 425426.[Online]. Available: http://ieeexplore.ieee.org/document/7892358/

    [12] inIT - Institut fr industrielle Informationstechnik and HochschuleOstwestfalen-Lippe, inIT: Bequemer produzieren durch mobileProjektionen in der industriellen Fertigung, 2015. [Online].Available: https://www.hs- owl.de/init/aktuelles/news/news-detail/news/bequemer-produzieren-durch-mobile-projektionen-in-der-industriellen-fertigung.html (Accessed 2017-10-12).

    [13] A. Nee, S. Ong, G. Chryssolouris, and D. Mourtzis, Augmentedreality applications in design and manufacturing, CIRP Annals- Manufacturing Technology, vol. 61, no. 2, pp. 657679, 2012.[Online]. Available: http://linkinghub.elsevier.com/retrieve/pii/S0007850612002090

    [14] T. Caudell and D. Mizell, Augmented reality: an application ofheads-up display technology to manual manufacturing processes,in Proceedings of the Twenty-Fifth Hawaii International Conferenceon System Sciences, 1992, pp. 659669 vol.2. [Online]. Available:http://ieeexplore.ieee.org/document/183317/

    [15] M. Funk, T. Kosch, S. W. Greenwald, and A. Schmidt, A benchmarkfor interactive augmented reality instructions for assembly tasks,Proceedings of the 14th International Conference on Mobile and UbiquitousMultimedia - MUM 15, pp. 253257, 2015. [Online]. Available:http://dl.acm.org/citation.cfm?doid=2836041.2836067

    [16] P. Mohr, B. Kerbl, M. Donoser, D. Schmalstieg, and D. Kalkofen,Retargeting Technical Documentation to Augmented Reality,Proceedings of the 33rd Annual ACM Conference on Human Factors inComputing Systems - CHI 15, pp. 33373346, 2015. [Online]. Available:http://dl.acm.org/citation.cfm?doid=2702123.2702490

    [17] S. Gauglitz, B. Nuernberger, M. Turk, and T. Hllerer, In touch withthe remote world, Proceedings of the 20th ACM Symposium on Virtual

    39

    http://doc-ok.org/?p=1223https://developer.microsoft.com/en-us/windows/holographic/hardware{_}details{#}powerhttps://developer.microsoft.com/en-us/windows/holographic/hardware{_}details{#}powerhttp://ieeexplore.ieee.org/document/7892358/https://www.hs-owl.de/init/aktuelles/news/news-detail/news/bequemer-produzieren-durch-mobile-projektionen-in-der-industriellen-fertigung.htmlhttps://www.hs-owl.de/init/aktuelles/news/news-detail/news/bequemer-produzieren-durch-mobile-projektionen-in-der-industriellen-fertigung.htmlhttps://www.hs-owl.de/init/aktuelles/news/news-detail/news/bequemer-produzieren-durch-mobile-projektionen-in-der-industriellen-fertigung.htmlhttp://linkinghub.elsevier.com/retrieve/pii/S0007850612002090http://linkinghub.elsevier.com/retrieve/pii/S0007850612002090http://ieeexplore.ieee.org/document/183317/http://dl.acm.org/citation.cfm?doid=2836041.2836067http://dl.acm.org/citation.cfm?doid=2702123.2702490

  • Reality Software and Technology - VRST 14, pp. 197205, 2014. [Online].Available: http://dl.acm.org/citation.cfm?doid=2671015.2671016

    [18] M. Funk, T. Kosch, and A. Schmidt, Interactive worker assistance,Proceedings of the 2016 ACM International Joint Conference on Pervasiveand Ubiquitous Computing - UbiComp 16, pp. 934939, 2016. [Online].Available: http://dl.acm.org/citation.cfm?doid=2971648.2971706

    40

    http://dl.acm.org/citation.cfm?doid=2671015.2671016http://dl.acm.org/citation.cfm?doid=2971648.2971706

    AbbildungsverzeichnisAbkrzungsverzeichnisEinleitungGrundlagenAugmented RealityAugmented und Virtual RealityAugmented-Reality GerteMicrosoft HoloLens

    Augmented Reality zur Untersttzung von MontageMotivationNutzung in der IndustrieNutzung im Verbrauchermarkthnliche Arbeiten

    ImplementierungVerwendete ProgrammeAblauf des MontageszenariosAufbau von HoloLegoProgrammablaufVorstellung wichtiger SkripteConstruction ManagerLayout RendererHoloToolkit Skripte

    TrackingBenutzerinterface und InteraktionCursorMenSprachsteuerungDarstellung der Platzierung der Legosteine

    Verwendung eigener LegomodelleNicht implementierte Funktionen

    EvaluationAufbau und Gestaltung der UmfrageSzenarioDurchfhrung

    ErgebnisseBearbeitungszeitenErgebnisse des Fragebogens

    Auswertung der Ergebnisse

    AusblickAR-untersttzte MontageHoloLensHoloLego Applikation

    FazitLiteratur