Mixed Reality (MR) in 9 einfachen Schritten

MSI-News

MSI Staff
Seit der Veröffentlichung von VR-Produkten (Virtual Reality) wie die HTC Vive und die Oculus Rift ist die virtuelle Realität zu einem der angesagtesten Themen in diesem Jahr geworden. Damit einher ging ein Zuwachs bei den Verkaufszahlen der VR-kompatiblen High-End-PCs. Als Hersteller für Gaming-Hardware empfiehlt MSI für ein optimales VR-Erlebnis die Verwendung des Motherboards Intel B150 oder höher zusammen mit der Grafikkarte NVIDIA GeForce 1070 oder den Kauf des neuesten AEGIS TI-Desktop-Computers mit VR Link. Auf dieser Seite findest du alle von uns angebotenen VR-kompatiblen Produkte. Auch wir haben ein Spiel veröffentlicht: MSI Electric City. Es wurde dazu entwickelt, die virtuelle Realität kennen zu lernen, und kann auf der entsprechenden Webseite heruntergeladen werden.


Nun möchten wir dir ein paar Tipps zur Gestaltung von Mixed-Reality-Videos geben, die Einblicke in eine virtuelle Welt gewähren sollen. Nachstehend findest du einige erläuternde Videos:
Eingebundener Inhalt
An dieser Stelle findest du externe Inhalte von Youtube. Zum Schutz deiner persönlichen Daten werden externe Einbindungen erst angezeigt, wenn du dies durch Klick auf "Alle externen Inhalte laden" bestätigst: Ich bin damit einverstanden, dass mir externe Inhalte angezeigt werden. Damit werden personenbezogene Daten an Drittplattformen übermittelt.
Für mehr Informationen besuche die Datenschutz-Seite.
Eingebundener Inhalt
An dieser Stelle findest du externe Inhalte von Youtube. Zum Schutz deiner persönlichen Daten werden externe Einbindungen erst angezeigt, wenn du dies durch Klick auf "Alle externen Inhalte laden" bestätigst: Ich bin damit einverstanden, dass mir externe Inhalte angezeigt werden. Damit werden personenbezogene Daten an Drittplattformen übermittelt.
Für mehr Informationen besuche die Datenschutz-Seite.
Eingebundener Inhalt
An dieser Stelle findest du externe Inhalte von Youtube. Zum Schutz deiner persönlichen Daten werden externe Einbindungen erst angezeigt, wenn du dies durch Klick auf "Alle externen Inhalte laden" bestätigst: Ich bin damit einverstanden, dass mir externe Inhalte angezeigt werden. Damit werden personenbezogene Daten an Drittplattformen übermittelt.
Für mehr Informationen besuche die Datenschutz-Seite.


Schritt 1: Kauf der Ausrüstung und Vorstellung von Konzepten


Mixed Reality-Einkaufsliste
Wenn du bereits mit Vive und einem VR-kompatiblen High-End-PC ausgestattet bist, würde dich der Kauf aller in der MR-Einkaufsliste aufgeführten Artikel ca. 800 € kosten (ohne Videokamera). Unter Umständen kannst du jedoch bei günstigen Anbietern Schnäppchen finden.

Konzept:
Es gibt einige Unity-Spiele mit MR-Videounterstützung, darunter Space Pirate Trainer, Job Simulator, Zenblade und Tilt Brush. Hier öffnet sich automatische die MR-Aufnahme, nachdem ein dritter Controller angeschlossen und eine spezielle Konfigurationsdatei erstellt wurde. Der dritte Controller dient der Positionierung der Kamera, mit der die virtuelle Umgebung erzeugt wird. Bei der Bearbeitung der Videodaten des Spiels in der Realität wird der Hintergrund entfernt. In Echtzeit werden dann die verschiedenen Bilder mithilfe der Open Broadcaster Software (OBS) so zusammengesetzt, dass die Mixed Reality entsteht.

MixedReality_01.jpg



Schritt 2: Aufbau eines Greenscreen-Studios
Mithilfe eines Greenscreen-Studios wird der Hintergrund entfernt und durch einen anderen ersetzt. Hierfür benötigst du mindestens drei grüne Tücher – zwei für die Wände und eines für den Boden. Zunächst montierst du ein Gestell an der Wand um die beiden Tücher so aufzuhängen, dass sie sich überlappen. Anschließend kannst du das dritte Tuch einfach auf den Boden legen. Die optische Wirkung entfaltet sich am besten, wenn die Tücher an der Wand straff gezogen und mit einem Klebeband am Gestell befestigt werden, damit sie möglichst faltenfrei sind. Auch die richtige Beleuchtung im Studio spielt eine wichtige Rolle.

MixedReality_02.jpg



Schritt 3: Anschließen einer Videokarte oder -box
Videokarten oder -boxen werden dazu genutzt, Live-Videodaten in der OBS zu erfassen. Der Einbau einer Videokarte ist in der Regel recht aufwendig, da hierzu das Gehäuse des Computers geöffnet werden muss. Daher habe ich mir die Videobox GC550 LGX zugelegt, die über ein USB-Kabel direkt an den PC angeschlossen wird. Es muss nicht das teuerste Modell sein – meiner Einkaufsliste kannst du weitere Empfehlungen entnehmen.
MixedReality_03.jpg



Schritt 4: Erstellung eines Ordners für die Spielkonfiguration
Kopiere folgenden Text in eine Editor-Datei und speichere sie mit der Dateierweiterung ".cfg" als „externalcamera.cfg“. Du kannst auch hier(externalcamera.cfg - Google Drive) klicken, um die Datei direkt herunterzuladen. In diesem Fall legst du die Datei in dem Verzeichnis ab, von dem du dein MR-Spiel öffnen möchtest (unterstützt werden u. a. die Spiele Space Pirate Trainer, Job Simulator, Zenblade, und Tilt Brush).
MixedReality_04.jpg

x=0
y=0
z=0
rx=0
ry=0
rz=0
fov=60
near=0.1
far=100
//m=-0.999059,0.015577,-0.040472,-0.0127,-0.016016,-0.999816,0.010544,0.1799,-0.040301,0.011183,0.999125,-0.0846
sceneResolutionScale=0.5



Schritt 5: Positionierung des dritten Controllers nahe der Kamera
Mithilfe des dritten Controllers wird die Position der Kamera ermittelt, daher ist es wichtig, dass er nahe der Kamera platziert und dann nicht mehr bewegt wird. Kameras verfügen in der Regel über einen Zubehörschuh, an dem zusammen mit einem Clip der Controller befestigt werden kann. Alternativ kannst du ihn auch direkt am Blitzgerät der Kamera anbringen. Für meinen Test habe ich den Zubehörschuh des Blitzgeräts der Sony HDR-CX405, einen L-Winkel sowie einen iPad-Clip (nach ein bisschen Suchen hatte dieser schließlich genau die richtige Größe) zur Befestigung des Controllers auf meiner Kamera verwendet.

MixedReality_05.jpg

Zu empfehlen ist eine horizontale Befestigung des Controllers an der Kamera (s. u.), um die Synchronisierung zu erleichtern.
MixedReality_06.png
(Bildquelle: Mixed Reality Trailers: Behind the Scenes)



Schritt 6: Einschalten der Controller in einer vorgegebenen Reihenfolge
Das Unity-Plug-in erkennt den dritten Controller automatisch als denjenigen, der zur Positionierung des Kameraobjektivs dient, daher ist es wichtig, dass die Controller in der folgenden Reihenfolge eingeschaltet werden:


  1. Vergewissere dich, dass keine Controller mit dem Computer verbunden sind.
  2. Schalte SteamVR an und dann wieder aus.
  3. Schalte die Controller 1 und 2 (die beiden Controller, die nicht an der Kamera befestigt sind) über die Systemtaste (die Taste unter der Scheibe) ein.
  4. Schalte SteamVR ein und bestätige, dass die Controller 1 und 2 erkannt worden sind.
  5. Verbinde Controller 3 über den USB-Anschluss.
  6. Bestätige, dass Controller 3 erkannt worden ist.
  7. Durch die oben genannten Anweisungen soll sichergestellt werden, dass der zur Positionierung der Kamera verwendete Controller als Controller 3 erkannt wird.



Schritt 7: Starten eines Spiels im MR-Modus
Für unser Beispiel haben wir Space Pirate Trainer verwendet. Vergewissere dich, dass sich die Datei „externalcamera.cfg“ im Spielverzeichnis befindet, starte das Spiel und befolge diese Anweisungen:


  1. Bestätige, dass alle drei Controller von Lighthouse erkannt worden sind.
  2. Halte die Umschalttaste gedrückt, während du einen Doppelklick auf das Spiel (Space Pirate Trainer) ausführst, um dieses zu starten.
  3. Wähle die größtmögliche Bildschirmauflösung aus.
  4. In der Regel läuft das Spiel nun in der Normalansicht und ein Controller fehlt.
  5. Setze dein Headset auf und drücke die Trigger-Taste ein paar Mal, während du die Controller 1 und 2 ansiehst, bis sie beide im Spiel erscheinen.
  6. Wenn sich dein Bildschirm nun in vier Bereiche unterteilt hat, ist der MR-Modus aktiv.

MixedReality_07.jpg
(Das sind die vier Bereiche: oben links: Vordergrund; unten links: Kamerablickwinkel – Controller 3; oben rechts: Hintergrund; unten rechts: First-Person-Blickwinkel.)


Schritt 8: Einrichtung der OBS
In diesem Beispiel wird ein Full-HD-Bildschirm (1080 p) verwendet:


  1. Verbinde den Kamera-Ausgang mit dem Eingang deiner Videokarte bzw. -box.
  2. Lade die OBS herunter (OBS Studio-Download hier https://github.com/jp9000/obs-studi.../OBS-Studio-0.15.2-With-Browser-Installer.exe) und starte sie.
  3. Klicke unter „Quelle“ auf „+“ → „Videoaufnahmegerät“ und schalte deine Kamera ein.
    Gerät: Wähle deine Videokarte aus (in meinem Fall AverMedia GC550).
    Auflösung/Bildfrequenz (FPS): benutzerdefiniert
    Auflösung: Wähle die Auflösung der Kamera der realen Welt aus (in meinem Fall 1920 x 1080).

    Wenn das Bild deiner Kamera in der OBS erscheint, drücke auf „Bestätigen“.
    MixedReality_08.jpg
  4. Klicke mit der rechten Maustaste auf das hinzugefügte Gerät, wähle „Filter“ aus und klicke auf „+“ → „Chroma Key/Color Key hinzufügen“ → „Key Color“, wähle „Grün“ als Typ und passe die Ähnlichkeit und Mischung so an, dass das Grün vollständig verschwindet.
    MixedReality_09.jpg
  5. Starte dein Spiel im MR-Modus, drücke „+“ → füge eine Fensteraufnahme hinzu und wähle dein aktuelles Spielfenster aus
    . MixedReality_10.jpg
  6. Klicke mit der rechten Maustaste auf den hinzugefügten Fensteraufnahmebildschirm, wähle „Filter“ aus und füge oben und rechts einen neuen Zuschneidefilter hinzu, um alle Bildschirme außer dem unten links zu entfernen. Nachdem du das Fenster vergrößert und zentriert hast, siehst du den Spielhintergrund.
    MixedReality_11.jpg
  7. Verfahre für den Bildschirm mit dem Vordergrund ebenso, wie in Schritt 6 beschrieben, entferne das Schwarz mit dem Filter „Color Key“ und richte das Bild am Hintergrund aus. Berücksichtige hierbei folgende Reihenfolge: 1. Vordergrund, 2. Kamera, 3. Hintergrund. Synchronisiere nun in einem letzten Schritt die Kamera und den Controller.
    MixedReality_12.jpg


Schritt 9: Synchronisierung von Kamera und Controller
Dies ist der letzte und schwierigste Schritt. Die Datei „externalcamera.cfg“ gibt den Abstand zwischen der Kamera und Controller 3, die Winkeldifferenz zwischen ihnen sowie den Sichtfeldwert (FOV) der Kamera an. Eine genaue Synchronisierung lässt sich durch die korrekte Anpassung der in diesem Dokument angegebenen Perimeter erzielen. Führe hierzu folgende Schritte aus:

MixedReality_13.jpg
(Die Positionierung und Ausrichtung der Kamera sowie die voreingestellte Position des Controllers sollten wie oben dargestellt gewählt werden.)


  1. Messe den Abstand zwischen der Kamera und der voreingestellten Position des Controllers. Dies entspricht der horizontalen Achse (X), vertikalen Achse (Y) und Vorder-/Hintergrund (Z). Miss anschließend den Drehungswinkel (bei einer waagerechten Positionierung sollte die Drehung 0° betragen, doch bei mir gab es eine kleine Drehung nach oben von 16,5°.)
    MixedReality_14.jpg MixedReality_15.jpg
  2. Berechne den vertikalen Sichtfeldwert (FOV).
    Dies ist gar nicht so leicht, da der in den technischen Daten der Kamera angegebene Wert häufig nicht dem vertikalen FOV entspricht. Für eine professionellere Berechnung stellt Kert Gartner einen entsprechenden Rechner (http://www.tawbaware.com/maxlyons/calc.htm) zur Verfügung. Ich selbst habe einen anderen Weg zur Ermittlung des FOV-Werts gewählt, der zu einem späteren Zeitpunkt erklärt wird. Nachstehend findest du einige vertikale Sichtfeldwerte für verschiedene Kameras:
    Sony HDR CX405: 42,7 (Quelle: von mir gemessen und berechnet)
    Logitech C920 oder C910: 43,3 (Quelle: Forenthema zur SteamVR Mixed Reality)
    Vollbild mit 35-mm-Objektiv: 27 (Quelle: Forenthema zur SteamVR Mixed Reality)
    PS3 Eye (Sichtfeldmodus 75): 45 (Quelle: Forenthema zur SteamVR Mixed Reality)

    Wenn du den vertikalen FOV-Wert nicht berechnen konntest, lies bitte weiter.
  3. Eintragen der Werte
    Öffne die Datei „externalcamera.cfg“ im Editor und gib die soeben von dir gemessenen Werte ein. Die Werte für X,Y und Z werden in Metern angegeben, rx,ry und rz (rotation; Drehung) in Grad. So sieht das in meinem Beispiel aus: Die Positionierungsdifferenz zwischen Kamera und Controller betrug für X 2 cm, für Y 17 cm und für Z 2 cm. Der Drehwinkel für den Vorder-/Hintergrund betrug 16,5°. Speichere nach der Eingabe deiner Werte das Dokument.
    x=0.02
    y=-0.17
    z=0.02
    rx=16.5
    ry=0
    rz=0
    fov=42.7
    near=0.1
    far=100
    //m=-0.999059,0.015577,-0.040472,-0.0127,-0.016016,-0.999816,0.010544,0.1799,-0.040301,0.011183,0.999125,-0.0846 sceneResolutionScale=0.5
  4. Starte das Spiel und zeige es in der OBS an. Schalte das Spiel so lange ein und aus, bis du die Werte so angepasst hast, dass die Anzeige dir richtig erscheint. Wenn du deine Werte präzise gemessen hast, ist nur ein geringes Maß an Feinabstimmung erforderlich, bis alles gut aussieht. Lass dir jedoch genug Zeit bei der Abstimmung der Perimeter.
  5. Wenn dir die Berechnung des vertikalen FOV-Werts in Schritt 3 nicht gelungen ist, nimmst du die Werte für XYZ oder rxyz als gegeben hin und machst stattdessen größere Anpassungen am FOV-Wert. Sobald du den FOV-Wert zu begreifen beginnst, passe die Werte langsam so lange an, bis sie dir richtig erscheinen. Anschließend nimmst du dir die Feinabstimmung von xyz und rxyz vor. Dies kann ein Weilchen dauern, doch leider lässt sich dieser Schritt nicht vermeiden. Daher ist eine korrekte Messung in den Schritten 1 und 2 so wichtig. Dies spart dir viel Zeit bei der Bestimmung des FOV-Werts.
  6. Nachdem du die zuvor genannten Schritte durchgeführt hast, ist die Synchronisierung abgeschlossen. Danach kannst du dein MR-Spiel mithilfe der OBS aufzeichnen oder live-streamen.


Eingebundener Inhalt
An dieser Stelle findest du externe Inhalte von Youtube. Zum Schutz deiner persönlichen Daten werden externe Einbindungen erst angezeigt, wenn du dies durch Klick auf "Alle externen Inhalte laden" bestätigst: Ich bin damit einverstanden, dass mir externe Inhalte angezeigt werden. Damit werden personenbezogene Daten an Drittplattformen übermittelt.
Für mehr Informationen besuche die Datenschutz-Seite.


(Diese Aufnahme habe ich während meines Tests angefertigt. Das Ergebnis wäre noch besser gewesen, wenn ich die Feinabstimmung genauer vorgenommen hätte.)


------------


Wir danken dem Autor The CY vielmals für seinen Beitrag.
 
Zurück