6 Minuten Lesezeit Mit Insights von Sergej Tihonov Ehemaliger Advanced Software Engineer Können Sie Ihre eigene Augmented Reality-Brille bauen? Was sind die Möglichkeiten und Grenzen der AR-Technologie im Moment? Wie interagieren Benutzer mit virtuellen Objekten in der realen Welt? Eine AR-Brille auf dem neuesten Stand der Technik – und das auch noch zum Selbstbauen. Wir haben unser Zühlke Camp genutzt, um den Leap Motion Sensor mit dem Project North Star zu testen. In meinem Blogpost erfahren Sie, ob diese Kombination wirklich schon reif für die Praxis ist – und warum wir uns beim Testen ein bisschen wie die Avengers gefühlt haben. Handgesten und Objekt-Interaktion sind zwei extrem spannende und vielversprechende Entwicklungsbereiche im Bereich Augmented bzw. Mixed Reality. Deshalb war es für uns auch vollkommen klar, dass wir uns auf unserem Zühlke Camp Anfang Mai unbedingt mit diesen beiden Themen auseinandersetzen wollten. Um es uns nicht zu einfach zu machen, haben wir uns dabei für das Project North Star entschieden. Project North Star bezeichnet sich selbst als „das weltweit erste ernstzunehmende Open Source Headset Projekt“. Elementarer Bestandteil ist dabei der Leap Motion Sensor, der mithilfe von zwei Wärmekameras und drei Infrarot LEDs die Position der Hände ermittelt. Die Kameras nehmen 200 Bilder pro Sekunde auf und die dazugehörige Software errechnet aus den Bildern die 3D Position der Hände. Damit beinhaltet das Project North Star alle notwendigen Funktionalitäten für unsere Versuche. In Kombination mit der von Leap Motion angebotenen Mehrfingererkennung haben wir unsere eigene AR-Brille gemäß den Anleitungen von Project North Star in 3D gedruckt. So konnten wir nicht nur viele wertvolle Erkenntnisse zu Handgesten und Objekt-Interaktion sammeln, sondern auch unsere Hardware- und unseren 3D-Druckkenntnisse erweitern. 3D Druck, Zusammenbau & Einrichtung der Augmented-Reality-Brille Alle notwendigen Informationen für den Druck und Zusammenbau haben wir auf der Leap Motion Homepage gefunden und konnten direkt loslegen. In den Dateien ist ein BOM (bill of material) zu finden, mit allen Einzelteilen, die besorgt bzw. gedruckt werden müssen. Um die Versandkosten der benötigten Teile zu reduzieren, haben wir diese auf dem deutschen Markt besorgt. Die Elektronikteile und Linsen haben wir auf der Smart Prototyping Webseite bestellt, was das ganze deutlich vereinfacht hat (dort ist auch bereits ein eigenes Project North Star Kit angekündigt). Nachdem der Lieferung unserer Bestellungen und ein paar Tagen 3D-Druck – der fast eine ganze Rolle Filament benötigte – hatten wir alle Teile zusammen und konnten mit dem Zusammenbau beginnen. Hier ein kurzes Video dazu: Project North Star startet kopfüber Nach dem Zusammenbau haben wir die North Star direkt an den Rechner angeschlossen. Die erste Überraschung: Die Screens sind kopfüber und die Darstellung wird in den Linsen gespiegelt. Aber das ist in Ordnung so, die Darstellung wird softwareseitig korrigiert, so dass in der Augmented Reality alle Inhalte korrekt dargestellt werden. Genau wie Microsoft bei der HoloLens setzt Leap Motion beim Project North Star für die Implementierung auf die Game Engine Unity. Unity ermöglicht es 2D, 3D, VR & AR Spiele und andere Erlebnisse zu erstellen. Das mitgelieferte Unity Projekt beinhaltet ein eigenes Kamerascript, welches die Rotation, die Spiegelung und die Aufteilung auf die beiden Linsen übernimmt. Das notwendige Unity Package war im GitHub unter „Software“ zu finden. Darin enthalten ist auch eine Readme Datei, die eine kurze Einführung gibt. Am wichtigsten war es, den „Multi-Device Beta Service“ aus der Readme zu installieren, dabei handelt es sich um eine neue Version von dem „Leap Motion Developer Kit“. LeapAR.unitypackege beinhaltet bereits alle vorhandenen Leap Motion Packages: Core, Hands, GraphicRenderer und InteractionEngine. Somit konnten wir direkt loslegen und die mitgelieferten Beispiele ausprobieren. Besonders positiv lässt sich noch der Discord Channel vom Project North Star hervorheben. Er ist zum einen sehr gut strukturiert und zum anderen sind dort viele Nutzer aktiv, so dass man schnell Hilfe bei Problemen bekommt. Wenn man von dem Standartbauplan abweichen oder Erweiterungen hinzufügen möchte, kann man sich dort sehr gut mit anderen Nutzern und Entwicklern beraten. Implementierung Bei der Entwicklung wollten wir folgende Funktionalität umsetzen und testen: User Interface (UI), das parallel zu der Hand des Benutzers schwebt UI kann durch eine Handgeste aktiviert und deaktiviert werden UI beinhaltet mehrere Tabs mit unterschiedlicher Funktionalität Zwischen den UI Tabs kann mithilfe von Fingergesten gewechselt werden Ein Tab mit Zahl- oder Texteingabe Ein Tab mit unterschiedlichen Slidern Ein Tab mit Objekt Interaktion Eine neue, komplett eigene Geste: Fingerschnipsen Das Endergebnis unserer Augmented-Reality-Brille ist im folgenden Video zu sehen. Bei der eigenen Geste haben wir uns von Marvels Avengers inspirieren lassen und haben ein Fingerschnipsen implementiert. Damit halbiert man die eingegebene Zahl im ersten Tab. Und das Sammeln von den Objekten im dritten Tab hat sich auch ein wenig wie das Sammeln von den Infinity Steinen angefühlt. Fazit Das Wichtigste zuerst: Unser Project North Star zu drucken und zusammenzubauen hat sehr viel Spaß gemacht. Obwohl unsere Brille extrem groß ausfällt, ist sie ziemlich leicht. Die Darstellung in den Linsen ist gut, vor allem wenn der Raum leicht abgedunkelt ist. Brillenträger können die North Star bequem über ihre Brille anziehen. Beim Project North Star muss man sich aber bewusst sein, dass es ein „Work in Progress“ Prototyp ist. Es ist kein marktreifes Produkt und die Funktionalitäten beschränken sich im Moment auf die Möglichkeiten der Leap Motion, welche als Sensor in der Brille platziert wird. Es eignet sich aber gut, um die ersten Erfahrungen mit Gestensteuerung und Objekt-Interaktion zu sammeln und anhand von Benutzertests zu erfahren, was gut funktioniert und sich natürlich anfühlt. Unsere Erfahrungen, die wir aus dem Camp mitnehmen: Position und Ausrichtung der Handflächen, der Zeigefinger und der Daumen werden sehr zuverlässig und genau erkannt. Sogar der kleine Finger wird verhältnismäßig zuverlässig erkannt. Position und Ausrichtung der Mittel- und Ringfinger sind nicht sehr zuverlässig und werden nur in ca. 60% der Fälle richtigen erkannt. Wenn man die Hand bewegt, ergeben sich viele tote Winkel für den Sensor, in denen andere Finger diese verdecken. Damit lässt es sich nur schwer arbeiten und die User Experience leidet stark darunter. Bei Gesten, die durch eine Rotationsbewegung ausgelöst werden, sollte der Winkel nicht zu knapp gewählt werden, da man die Hand nicht 100% stillhalten kann. Aus diesem Grund empfehlen wir den Deaktivierungsradius mindestens 10 Grad größer zu wählen als den Aktivierungsradius, damit kein Flackern auftritt. Fingergesten sollten sehr einfach sein und mit vielen unterschiedlichen Personen getestet werden, da sich die Feinmotorik in den Fingern von Person zu Person extrem stark unterscheidet. Das gleiche betrifft auch die Unterschiede zwischen der rechten und linken Hand. Bei der Interaktion mit Objekten muss der Benutzer aktiv über visuelle und auditive Hilfsmittel unterstützt werden. Es hilft sehr, wenn Interaktionselemente ihre Farben in Relation zur Entfernung des Fingers ändern oder intensivieren und die Interaktion selbst durch einen Ton bestätigt wird. Die besten Hilfsmittel bringen nichts, wenn diese bei der Interaktion von der Hand überdeckt werden.
Handel und Konsumgüter – Digitale Erlösmodelle: Warum sich das Consumer Business neu erfinden muss Mehr erfahren