Die Projektgruppe „Virtual Reality“ der Universität Oldenburg hatte die Aufgabe ein System zu entwickeln, welches Nutzern die Möglichkeit gibt, in virtuelle Welten einzutauchen. Das Projekt startete im April 2011 und endete im März 2012. Realisiert wurde das VR-System durch die Kombination von Bewegungserfassung über eine Microsoft Kinect mit einer Videobrille der Firma Vuzix. Zu diesem Zweck haben wir eine Middleware implementiert, die die Signale der genannten Hardware verarbeitet und als Schnittstelle zu einer grafischen Anwendung fungiert. Die virtuelle Szene haben wir mit Blender modelliert und verwenden die Grafik-Engine Ogre3D. Unser Hauptziel bei der Entwicklung war ein möglichst hoher Immersionsgrad des VR-System, der sich von klassischen Desktop-PC´s deutlich abhebt. Um unsere Zielerfüllung zu überprüfen, haben wir das System am Ende des Projekts umfangreich evaluiert.
Virtuelle Realitäten haben in den letzten Jahrzehnten Einzug in viele verschiedene Branchen gehalten. Neben der Unterhaltungsindustrie zählen hierzu auch Medizin, Militär und Ingenieurswesen. Da die Preise der benötigten Hardwarekomponenten in den letzten Jahren deutlich gefallen sind, ist der Einsatz von VR auch bei Heimanwendern möglich. Unser Streben nach einer kostengünstigen Lösung für ein immersives VR-System und die Entwicklung einer Middleware, die als Grundlage anderer Projekte dient, sind unsere Motivation zur Durchführung des Projekts.
Kapitel 2 behandelt die Dokumentation der Projektorganisation. Kapitel 3 umfasst die Anforderungsanalyse für das zu entwickelnde System. Diese wurde in Kapitel 4 in ein Systementwurfsmodell überführt. Kapitel 5 dokumentiert die Implementierung des Systems. Die verwendeten Testverfahren sind Gegenstand des Kapitels 6. Kapitel 7 behandelt die Evaluation des entwickelten Systems. In Kapitel 8 wird abschließend das Gesamtfazit und ein Ausblick präsentiert.
Inhaltsverzeichnis
1. EINFÜHRUNG
1.1 Motivation
1.2 Aufbau der Arbeit
1.3 Voraussetzungen und Grundlagen zum Verständnis der Arbeit
2. PROJEKTORGANISATION UND VORGEHEN
2.1 Gruppenarbeit und Aufgabenteilung
2.2 Vorgehensmodell und Zeitplanung
3. ANFORDERUNGSANALYSE
3.1 Einführung
3.2 Zielbeschreibung
3.3 Anforderungen Middleware
3.3.1 Funktionale Anforderungen
3.3.2 Nichtfunktionale Anforderungen
3.4 Anforderungen Beispielanwendung
3.4.1 Funktionale Anforderungen
3.4.2 Nichtfunktionale Anforderungen
3.5 Vorhandene Systeme
3.6 Technische Umgebung
3.7 Anwendungsfallmodell
3.7.1 Akteure
3.7.2 Anwendungsfälle des Assistenten
3.7.2.1 Anwendung starten
3.7.3 Anwendungsfälle des Nutzers
3.7.3.1 Skeletterkennung kalibrieren
3.7.3.2 Kopflage kalibrieren
3.7.3.3 Kameraposition und -Rotation anpassen
3.7.3.4 Geste durchführen
3.7.3.5 Pose einnehmen
3.7.3.6 Gegenstand berühren
3.7.3.7 Skelett bewegen
3.7.4 Anwendungsfälle des Middleware-Nutzers
3.8 Dynamisches Modell
3.8.1 Sequenzdiagramme des Assistenten
3.8.1.1 Skeletterkennung kalibrieren
3.9 Objektmodell
4. SYSTEMENTWURF
4.1 Entwurfsziele
4.2 Systemzerlegung
4.3 Globaler Kontrollfluss
4.4 Datenhaltung
4.5 Hard- und Softwareplattform
4.5.1 Wahl der Programmiersprache
5. IMPLEMENTIERUNG
5.1 Meilensteine der Implementierung
5.1.1 Erster Meilenstein (30.09.2011)
5.1.2 Zweiter Meilenstein (01.11.2011)
5.1.3 Dritter Meilenstein (06.12.2011)
5.2 Implementierung der einzelnen Systemkomponenten
5.2.1 Erster Meilenstein
5.2.1.1 Head-Mounted-Display
5.2.1.2 Darstellung der Kinect-Skelett-Daten durch eine Figur in der Engine
5.2.1.3 Build-Skript
5.2.2 Zweiter Meilenstein
5.2.2.1 Szenenverwaltung
5.2.2.2 Sound-Subsystem
5.2.2.3 Stereoskopische Ansicht (stereoPlugin)
5.2.2.4 Posen
5.2.3 Dritter Meilenstein
5.2.3.1 Exceptions
5.2.3.2 Gestenerkennung
5.2.3.3 Linuxtreiber der Vuzix-Brille
5.2.3.4 Bereitstellung des Zustandes der Middleware
5.2.3.5 Licht und Schatten
5.2.3.6 Spiegel und Fernseher
5.2.3.7 Modifizierter Oger
5.2.3.8 Scripting
5.2.3.9 Kollision
6. TESTEN
6.1 C++ Unittest-Frameworks
6.2 TestDog
6.3 Ziele und Vorgehensweise
6.4 Code-Review
7. EVALUATION
7.1 Formulierung von Thesen
7.1.1 Erläuterung der Thesen
7.1.1.1 Die Bedienbarkeit des Systems (Hypothese 1)
7.1.1.2 Grad der Immersion bei Nutzung des gesamten Systems (Hypothese 2)
7.1.1.3 Vorteil durch Bewegungssteuerung (Hypothese 3)
7.1.1.4 Präsenzempfinden durch das HMD (Hypothese 4)
7.2 Vorbereitung der Evaluation
7.2.1 Der Fragebogen zum Messen der Immersion
7.3 Die virtuelle Umgebung
7.4 Durchführung der Evaluation
7.5 Ergebnisse der Evaluation
7.5.1 Qualitative Auswertung
7.5.2 Mathematische Auswertung
7.5.2.1 Immersionsgrad der Versuchsaufbauten
7.5.2.2 Bewegung in der virtuellen Welt
7.5.2.3 Präsenzempfinden
7.5.2.4 Geräusche in der virtuellen Welt
7.5.2.5 Vergleich zur realen Welt
7.6 Fazit
8. FAZIT UND AUSBLICK
Zielsetzung & Themen
Das Hauptziel dieser Arbeit ist die Entwicklung eines kostengünstigen Virtual Reality (VR) Systems, das Nutzern ermöglicht, intensiv in virtuelle Welten einzutauchen. Die Forschungsfrage konzentriert sich darauf, wie durch die Kombination von Microsoft Kinect zur Bewegungserfassung und einer Vuzix-Videobrille ein hoher Immersionsgrad erreicht werden kann, der sich deutlich von klassischen Desktop-PC-Lösungen abhebt.
- Entwicklung einer Middleware zur hardwarenahen Ansteuerung von Kinect und Vuzix-Brille.
- Realisierung einer interaktiven 3D-Beispielanwendung basierend auf der Ogre3D-Engine.
- Implementierung von Posen- und Gestenerkennung für eine intuitive Interaktion.
- Empirische Evaluation des Immersionsgrades und der Bedienbarkeit durch Probandentests.
- Plattformunabhängige Realisierung und Bereitstellung als quelloffene Software.
Auszug aus dem Buch
3.2 Zielbeschreibung
Im Folgenden wird auf die Zielsetzung des zu realisierenden Projekts eingegangen. Es soll ein Virtual Reality System (ab hier: VR-System) realisiert werden, das es einem Benutzer ermöglicht in virtuelle Umgebungen einzutauchen. Nach der Entwicklung einer Lösung zu dieser Problemstellung soll diese in Hinblick auf die Zielsetzung evaluiert werden. Dabei wird sowohl Handhabung, als auch das Präsenzgefühl, das bei einem Benutzer bei der Verwendung des VR-Systems vorherrscht, untersucht. Zusätzlich zu der Realisierung des VR-Systems soll eine quasi-experimentelle Studie ausgearbeitet werden, die das Präsenzempfinden in verschiedenen virtuellen Umgebungen untersucht.
Nachfolgend werden die Hauptkomponenten des Präsenzgefühls erwähnt und zu realisierende Ziele für die jeweiligen Einflussfaktoren angegeben. Danach wird auf den Aufbau der Eingabe- und Ausgabeschnittstellen und auf die Implementierung der benötigten Software eingegangen.
In der Seminararbeit „Präsenzempfinden in virtuellen Umgebungen“ wurden Modelle betrachtet, die das Präsenzgefühl als Produkt verschiedener Einflussfaktoren definieren. Dabei spielt sowohl die räumliche Präsenz, die durch geeignete Eingabe- und Ausgabeschnittstellen intensiviert werden kann, als auch die soziale Präsenz und die Eigenwahrnehmung eine entscheidende Rolle. Die Wahl der Eingabe- und Ausgabeschnittstellen mithilfe derer sich ein Benutzer in eine virtuelle Umgebung hineinversetzt ist demnach ein signifikanter Faktor für die Umsetzung eines immersiven VR-Systems.
Zusammenfassung der Kapitel
1. EINFÜHRUNG: Diese Einleitung skizziert die Zielsetzung, die Entwicklung eines immersiven VR-Systems aus kostengünstigen Komponenten wie der Microsoft Kinect und einer Vuzix-Brille, sowie den Aufbau der Dokumentation.
2. PROJEKTORGANISATION UND VORGEHEN: Hier wird die Organisation des Projektteams, die Wahl der Werkzeuge (Redmine, git) und der zeitliche Ablauf basierend auf definierten Meilensteinen dokumentiert.
3. ANFORDERUNGSANALYSE: Dieses Kapitel definiert die funktionalen und nichtfunktionalen Anforderungen an die Middleware und eine beispielhafte Anwendung, inklusive technischer Umgebung und Anwendungsfallmodell.
4. SYSTEMENTWURF: Der Systementwurf beschreibt die Zerlegung in Subsysteme, den globalen Kontrollfluss, die Datenhaltung sowie die Hard- und Softwareplattform inklusive der Wahl der Programmiersprache C++.
5. IMPLEMENTIERUNG: Dokumentation der schrittweisen Umsetzung in drei Meilensteinen, von der Basis-Hardware-Anbindung bis hin zu fortgeschrittenen Funktionen wie Gestenerkennung, Sound, Licht/Schatten und Kollision.
6. TESTEN: Beschreibung der Qualitätssicherungsmaßnahmen durch den Einsatz des Unit-Test-Frameworks TestDog und die Durchführung von formellen Code-Reviews.
7. EVALUATION: Empirische Untersuchung des Systems mit 16 Probanden, um Thesen zu Immersion, Bewegungssteuerung und Präsenzempfinden mittels Fragebögen und statistischen Tests zu prüfen.
8. FAZIT UND AUSBLICK: Zusammenfassende Bewertung der Projektergebnisse, Reflexion der gelösten Herausforderungen und Ausblick auf zukünftige Potenziale der eingesetzten Hardware-Technologien.
Schlüsselwörter
Virtual Reality, VR-System, Middleware, Microsoft Kinect, Vuzix, Immersion, Präsenzempfinden, Ogre3D, Bewegungssteuerung, Softwarearchitektur, Gestenerkennung, Evaluation, Mensch-Maschine-Interaktion, Echtzeitsystem, Softwareentwicklung
Häufig gestellte Fragen
Worum geht es in dieser Arbeit grundsätzlich?
Die Arbeit dokumentiert die Entwicklung eines kostengünstigen Virtual-Reality-Systems, das durch die Kombination einer Microsoft Kinect und einer Vuzix-Videobrille immersive virtuelle Welten für Heimanwender erfahrbar macht.
Was sind die zentralen Themenfelder?
Die Arbeit umfasst Software-Engineering (Middleware-Entwicklung), 3D-Grafikprogrammierung, die Integration von Hardware-Schnittstellen und die empirische Evaluation von Benutzererfahrungen im Kontext virtueller Realitäten.
Was ist das primäre Ziel oder die Forschungsfrage?
Das primäre Ziel war die Schaffung einer Middleware als Grundlage für ein immersives VR-System, welches das Präsenzgefühl gegenüber Standard-Desktop-Lösungen signifikant steigert.
Welche wissenschaftliche Methode wird verwendet?
Neben dem softwaretechnischen Entwurfsprozess wird eine quasi-experimentelle Studie mit 16 Probanden durchgeführt, deren Daten durch standardisierte Fragebögen (Presence Questionnaire) und statistische t-Tests ausgewertet werden.
Was wird im Hauptteil behandelt?
Der Hauptteil gliedert sich in Anforderungsanalyse, Systementwurf, Implementierung der Middleware und Komponenten, Testverfahren sowie die detaillierte Auswertung der experimentellen Ergebnisse.
Welche Schlüsselwörter charakterisieren die Arbeit?
Virtual Reality, Middleware, Immersionsgrad, Kinect, Bewegungssteuerung, Präsenzempfinden, Ogre3D und Softwarearchitektur.
Wie wurde die Gestenerkennung realisiert?
Es wurde eine eigene, benutzerfreundliche Gestensteuerung entwickelt, die auf Basis von Zustandsautomaten Änderungen der Skelettdaten der Kinect in vordefinierte Ereignisse übersetzt.
Warum wurde die Physik-Engine ODE für die Evaluation deaktiviert?
Aufgrund von Ungenauigkeiten bei nicht gleichmäßigen Zeitintervallen (Step-Intervals) kam es zu ungewollten Bewegungen von Objekten, was das Immersionsgefühl massiv störte, weshalb die Funktion für die Tests abgeschaltet wurde.
- Arbeit zitieren
- Matt Burns (Autor:in), 2012, Entwicklung eines Virtual Reality System aus einem Head-Mounted-Display und der Microsoft Kinect, München, GRIN Verlag, https://www.grin.com/document/281586