Commit 2ee8dec2 by wester

gnarf

parent 61dad44a
......@@ -335,4 +335,5 @@ __pycache__/
*.odx.cs
*.xsd.cs
Contact GitHub API Training Shop Blog About
2017 GitHub, Inc. Terms Privacy Security Status Help
\ No newline at end of file
2017 GitHub, Inc. Terms Privacy Security Status Help
/3_PointCloud/opencv3/build/x86
\chapter{Hololens}
\chapter{HoloLens}
\label{chapter:06Hololens}
Ziel Daten aus der VR Umgebung Visualisiern
Zeitgründen nur einen MA controller befestigten laserstrahl
Als Interaktion zwischen dem Experten in einer VR Umgebung und dem Lokalen User wird die Microsoft Augmented Reality Brille HoloLens verwendet.
Die HoloLens Bietet die Möglichkeit Hologramme in die echte Welt zu projizieren.
Für die Interaktion zwischen VR und HoloLens wurde sich auf eine einfache beschränkt.
In VR wurde an einen Controller ein Laserbeam mit fester Länge befestigt.
Bei synchronisierten Welten zwischen VR und AR sollte dieser Strahl auch in der HoloLens an dem Controller hängen.
\section{Unreal Engine 4 und HoloLens}
Es gibt keinen Offiziellen Support der HoloLens für dei Unreal Engine 4.
Aktuell wird das einwickeln für die neue AR Plattform nur in Unity unterstützt.
Microsoft hat auf Github einen Fork der Unreal Engine \todo{citehttps://github.com/MICROSOFT-XBOX-ATG/MICROSOFT_UWP_UNREAL/tree/dev_MixedReality} in dem Support für die Universel Windows Plattform (UWP)\todo{glossar} enthalten ist.
UWP beitet eine allgemeine Plattform Für Apps, die auf allen Windows basierten Systemen funktionieren.
In diesem Repositoy befindet sich auch ein Development Branch der die HoloLens Unterstüzung in Unreal integriert.
Für die Implementierung wurde dieser Development Branch getestet.
Nach dem bauen der aktuellen Version wurde ein HoloLens Template in die Engine geladen \todo{cite https://github.com/ProteusVR/Hololens https://www.youtube.com/watch?v=KxvAm2qNJ0Q&feature=youtu.be}.
Jedoch gab es Probleme das Projekt zu packen, sodass es auf die HoloLens geladen werden kann.
Deshalb wurde für die AR Implementierung Unity verwendet.
\section{HoloLens Implementierung}
Die HoloLense Applikation in Unity ist einfach gehalten worden und die notwendige Logic wurde in der VR Applikation in Unreal umgesetzt.
Zunächst setzt man in der HoloLens einen Welt Anker in den Raum.
Weltanker dienen als besonders wichtiger Punkte und das System soll diesen Punkt immer tracken und konstant halten.
Die Unreal Enginesendet regelmäßig einen JSON formatierten String per UDP an die Hololens in dem Start- und Enpunkt des aktullen Lasers enthalten sind.
Diese werden anschließen relativ zum Welt Anker visualisiert.
\section{Unreal Engine Un Hololens}
Microsoft UWP Repsoitory
Development Branch
HAt nicht Compiled
Videos zeigen lagy rotation
\section{Kalibrierung}
Die Kalibrierung erfolgt anhand des Welt Ankers und eins Vive Trackers.
Der Welt Anker orientiert sich an dem erkannten Boden sodass die y Achse senkrecht nach oben zeigt.
Um die beiden Welten zu synchronisieren wird ein Vive Tracker so platziert, das die beiden Koordinatensysteme übereinstimmen.
Durch einen Tastenduck auf einen KJontroller wird die aktuelle Rotation und Position des Trackers in der Unreal Engine gespeichert.
Mit dieser Transformation kann der Strahl der VR Umgebung in das lokale Koordinatensystem des Weltankers transformiert werden.
\todo{Bilder übereinanderliegen. }
\section{Hololens Implementierung}
Welt Anker
Welt Anker
verscheiobbar im Debug Modus
Eine Achse Senkrecht zum Boden
empfängt JSON per UDP
zeichnet Line relativ zu Welt anker
\section{Kalibrierung}
Vive Trakcer an Postion und roatioon des Welt anker
speichern auf Knopfdruck der Transformation des Trakcer Oringins
......
......@@ -2,6 +2,16 @@
\label{chapter:07Evaluation}
\section{Versuchsablauf}
Türme
Punktwolke
nachbearbeitet
alles Am Tracker
Vorwissen
VR verschieben
\section{Probanden}
Statistik
Etwas erfahrung mIt VR
......@@ -11,48 +21,53 @@
ha keine Probleme gemacht, Farbbend der Steine war kräftig genug
\pgfplotstableread{Charts/Erfahrung.txt}
\datatable
\begin{tikzpicture}
\begin{axis}[
width = \textwidth,
height = 10cm,
height = 12cm,
axis x line*=bottom,
axis y line=left,
enlarge y limits,
ymajorgrids,
major x tick style = transparent,
ymin=-3,
ymax=3,
boxplot/draw direction=y,
xtick=data,% crucial line for the xticklabels directive
xticklabels from table={\datatable}{Label}
]
%\pgfplotstableread{Charts/Erfahrung.txt}
%\datatable
\pgfplotstableread{
Minimum Maximum Mittelwert Median Q1 Q3
-3 2 0.090909091 1 -1.75 1
-3 2 -2.090909091 -3 -3 -1
-3 3 1.590909091 2 1 3
}\datatable
\addplot+[boxplot prepared from table={
table=\datatable,
row=1,
lower whisker=Minimum,
upper whisker=Maximum,
lower quartile=Q1,
upper quartile=Q3,
median=Median
}, color=blue
}, boxplot prepared, color=blue
]
coordinates {};
\addplot+[boxplot prepared from table={
table=\datatable,
row=2,
row=1,
lower whisker=Minimum,
upper whisker=Maximum,
lower quartile=Q1,
upper quartile=Q3,
median=Median
}, color=blue
}, boxplot prepared, color=red
]
coordinates {};
%\addplot table[y = Mittelwert] from \datatable;
\end{axis}
\end{tikzpicture}
......
set localPath=C:\Users\kaiwe\Desktop\TeXworks-win-0.6.2-201704300708-git_7ecce17
::set localPath=..\..\TeXworks-win-0.6.2-201704300708-git_7ecce17
::set localPath=C:\Users\kaiwe\Desktop\TeXworks-win-0.6.2-201704300708-git_7ecce17
set localPath=..\..\TeXworks-win-0.6.2-201704300708-git_7ecce17
set ausarbeitungpath=.
start %localPath%\TeXworks.exe %ausarbeitungpath%\thesis.tex
start %localPath%\TeXworks.exe %ausarbeitungpath%\thesis.bib
......
Minimum Maximum Mittelwert Median Q1 Q3
-3 2 0.090909091 1 -1.75 1
-3 2 -2.090909091 -3 -3 -1
-3 3 1.590909091 2 1 3
Label Minimum Maximum Mittelwert Median Q1 Q3
VR -3 2 0.090909091 1 -1.75 1
AR -3 2 -2.090909091 -3 -3 -1
......@@ -45,8 +45,7 @@
\begin{document}
\begin{tikzpicture}
\begin{axis}[boxplot/draw direction=y]
\addplot+[
boxplot prepared from table={
\addplot+[ boxplot prepared from table={
table=\datatable,
lower whisker=lw,
upper whisker=uw,
......@@ -56,8 +55,9 @@
}, boxplot prepared
]
coordinates {};
\addplot+[
boxplot prepared from table={
\addplot+[ boxplot prepared from table={
table=\datatable,
row=1,
lower whisker=lw,
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment