Das Labor

Beschreibung

Nach der Recherche über die wissenschaftlichen und künstlerischen Möglichkeiten, wie das Raumgefühl verändert werden kann, war das Ziel den Raum, optisch und akustisch transformieren zu können. Da eine Verkleinerung des Raums durch physikalische Gesetze eingeschränkt wird, wurde mithilfe von optischen und akustischen Hilfsmitteln, eine Raumvergrößerung erzeugt. Der Prototyp soll als Proof-of-Concept dienen, um zu belegen, dass ein transformierbarer Raum das Befinden des Nutzers verbessern und ihn in seiner Lebenslage positiv beeinflussen kann.

Raum³ = Raumprojektion auf einem Raum in einem Raum.

Nichts anderes ist der Prototyp. Ein 3x3x3m Konstrukt aus Stahl. Wände aus Rückprojektionsfolien hinter denen jeweils ein Beamer in 2,5m Höhe angebracht und Lautsprecher rund um das Konsturkt plaziert sind.

Die optischen Effekte die geschaffen werden sind Rückprojektionen die auf drei bis vier Wände des Raums abgebildet werden. Dabei sind diese mit geometrischer Verzerrungskorrektur, die gerichtet auf die Position des Users ist, im Raum dargestellt.

Bei den akustischen Effekten wird mit gezielter Beschallung des Users und Nachhallverlängerung gearbeitet.

Da die Realisierung eines Multi-User-Kontextes große technische Schwierigkeiten hervorruft und daher nicht im Rahmen dieser Arbeit umgesetzt werden kann, ist der Prototyp nur auf ein Szenario mit einem Nutzer beschränkt.

Software

vvvv:

Die Wahl für die Software zur technischen Umsetzung für die visuellen Effekte fiel ziemlich schnell auf vvvv, aufgrund des Mangels an geeigneten Alternativen. Ventuz Designer wäre eine weitere Möglichkeit gewesen, die aber aufgrund der hohen Lizenzpreise und der geringen Verbreitung und der damit einhergehend kleinen Community für Fragen und Feedback schnell aus dem Rennen war.

vvvv ist ein Multifunktions-Tool, welches sich sehr gut für den Prototyp eignet, da damit Multi-Screen-Settings, Projection-Mapping und 3D-Szenerien erzeugt werden können, sowie Bewegungssensoren und Mikro-Controller ansteuerbat und auslesbar sind. Je weniger verschiedene Software-Lösungen für einen Prototyp kombiniert werden müssen, umso weniger Fehlerquellen und Probleme können sich hierbei ergeben.

Max / MSP:

Max/MSP ist ein sehr leistungsfähiges Tool für die Prozessierung von Audio und weiteren Daten. Anders als bei herkömmlichen DAW ist man nicht an ein Channellayout oder ähnliches gebunden. Man hat volle Kontrolle auf den Signalfluss von Audio- und Kontrolldaten. Max/MSP ermöglicht es Audiodaten auf Mathematischer Ebene zu manipulieren. Zusätzlich kann man auch sämtliche Plugins, die einem in einer herkömmlichen DAW zur Verfügung stehen, einbinden. Max/MSP ist deshalb sehr gut für das System geeignet, da die Funktionen speziell auf die Bedürfnisse des Prototyps und des Setups abgestimmt werden können.

Durch das Open-Sound-Control-Protokoll (OSC) ist es möglich mit vvvv Kontrolldaten auszutauschen. Dies ermöglicht, dass Soundeffekte und Prozessierung auf das Bild abgestimmt sind. Außerdem empfängt der Max-Patch die Positionsdaten des Users von vvvv, um weitere userpositionsabhängige Funktionen zu implementieren.

Sensorik

Der Mensch nimmt die Informationen seiner Umwelt über Sinnesreize auf, prozessiert und interpretiert diese dann in seiner zentralen Recheneinheit, dem Hirn, und erzeugt eine Reaktion welche er für angemessen hält.

metaSpace, als intelligentes und lernfähiges System, verfolgt den selben logischen Ablauf.Bevor die Informationen in die Verarbeitung gehen, müssen diese erstmal aufgenommen werden und das passiert durch die Sensorik.

RGB Kamera, Tiefensensor (und 3D-Mikrofon) liefern dem System Informationen, also Sinneseindrücke, wie Körperhaltung, Position im Raum, Bewegung, Gestik und Mimik (sowie Stimm- & Geräuscherkennung) des Nutzers.

Diese können dann durch den Algorithmus interpretiert werden, wodurch eine individuelle Reaktion erzeugt wird, welche der Nutzer als visuelles und auditives Feedback erfährt.

In Zeiten von Internet of Things und Ambient Intelligence ist Datenerhebung ein Thema das dieses Projekt stets begleitet und beschäftigt. Heutzutage können kaum noch Informationen vor der Technik die einen umgibt verborgen werden. Health-Tracker messen die Gesundheitwerte, CCTV-Kameras erkennen Menschen schon aus weiter Entfernung anhand biometrischer Daten.

Auch metaSpace könnte solche Daten erheben und speichern, tut es aber nicht.

Das System wurde gezielt so entwickelt, dass es den Nutzer nicht anhand persönlicher Körpereigenschaften erkennt, sondern ihn nur durch ein typisches Verhaltensmuster identifizieren kann. Das vermittelt das System auch. Es begrüßt den Nutzer nicht mit Namen, gibt ihm auch keine Informationen über seine eigene Person sondern reagiert nur auf seine situative Begebenheit und seine Gefühlslage.

Mithilfe dieser Sensorik entsteht ein System das komplett auf herkömmliche Eingabemethoden verzichtet. Die Intelligenz des Systems besticht vor allem durch die natürliche Interaktion mit einem, für den Nutzer nicht merklich vorhandenen Interface.

Aufbau

Der Prototyp besteht aus mehreren Komponenten, die im Zusammenspiel ein komplexes System bilden:

Raum:

Der Raum an sich wird von einem Gerüst aus Aluminium-Profilen gebildet. Dieser hat eine quadratische Grundfläche, eine Seitenlänge beträgt 3 Meter. Der Raum hat eine Höhe von ca. 2,5 Metern und der Boden ist mit weißem Teppich ausgelegt. Um dem Raum die Charakteristik eines Wohnraums zu geben, wurde er mit Möbeln wie Couch, Schreibtisch und Regal, sowie einer Zimmerpflanze ausgestattet. Drei Wände werden von großen Opera-Rückprojektions-Folien gebildet, welche an dem Aluminium-Gerüst befestigt sind, die offene Seite des Raums fungiert als Eingang. Aufgrund der Rückprojektions-Folien entsteht die Möglichkeit visuellen Inhalt auf den Wänden darzustellen, ohne dass man dabei die Projektoren sieht.

Optik:

Mit einem Abstand von ca. 2 Metern stehen hinter drei dieser Leinwände je ein Kurzdistanz-Beamer (Benq W1080ST), der auf ca. 4 Meter Höhe auf einem Stativ angebracht ist. Mit den Kurzdistanz-Beamern kann trotz kurzer Entfernung zu den Rückprojektions-Folien flächendeckend Inhalt auf die Leinwände projiziert werden. Ein weiterer Kurzdistanz-Beamer (Optoma GT750) befindet sich an einem Stativ über der dem Eingang gegenüberliegenden Wand in ca. 4 Meter Höhe und bestrahlt den Boden.

Sensorik:

Drei Microsoft Kinect Sensoren sind an den seitlichen und der gegenüber dem Eingang liegenden Wand angebracht, um die Position des Users im Raum erfassen zu können. Um möglichst viel von der Raumfläche abzudecken und die Position des Users an jeder Stelle im Raum bestimmen zu können, sind die Kinect-Sensoren in einem schräg nach unten geneigten Winkel befestigt. Dabei ergibt sich die Problematik, dass die Distanz des Users zur Kinect nicht horizontal sondern schräg gemessen wird. Dadurch verzerren sich die Werte für die Achsen Y (Höhe) und Z (Distanz) proportional zueinander. Um dem entgegen zu wirken, muss der Fehler-Wertebereich der Y-Achse berechnet und entsprechend bei den Werten der Z-Achse dazu addiert werden. Ebenso muss zu den Werten der Y-Achse der Fehler-Wertebereich der Z-Achse addiert werden. Die korrigierten Werte von beiden Kinect-Sensoren müssen nun auf einen Wertebereich gemappt werden, der den Grenzen der Prototyp-Fläche entspricht. Um eine genaue Position des Users zu erhalten, müssen die Rohwerte noch geglättet werden und eine Logik entscheidet, von welchem Kinect-Sensor die Werte genommen werden. Wenn der User sich im Tracking-Bereich von beiden Sensoren befindet, wird ein Mittelwert gebildet, ansonsten werden immer die Werte des Sensors benutzt, in dessen Messbereich sich der User gerade befindet.

Workstation:

Der Hauptcomputer dient als zentrale Recheneinheit.

Software:

Als Betriebssystem kam Windows 8.1 Pro (64 Bit) zum Einsatz. vvvv wurde für die visuellen und Max MSP für die akustischen Effekte verwendet. Die beiden Programme kommunizierten miteinander über OSC.

Hardware:

Die Workstation ist bestückt mit einem GIGABYTE X58A-UD3R Mainboard, einem Intel Core i7-920 Prozessor, 6GB DDR3 (Triple-Channel) Arbeitsspeicher, einer XFX Radeon HD 6950 Grafikkarte und einer Samsung Pro 850 SSD als Festplatte.

Sensoren:

Damit die Drei Kinect-Sensoren gleichzeitig funktionieren können, sind diese über Drei verschiedene USB-Controller mit dem Mainboard verbunden.

Soundinterface:

Das RME FireFace800 ist über einen FireWire400-Anschluss mit dem Mainboard verbunden.

Grafik:

Die Radeon HD6950 bietet die Möglichkeit bis zu 6 Displays gleichzeitig zu betreiben und hat nativ 2x DVI, 1x HDMI (v1.4a) und 2x miniDisplayPort (v1.2) (miniDP) Ausgänge.

Vier Displays können nativ betrieben werden über 1x DVI, 1x HDMI und 2x miniDP (mit aktiven Adaptern).

Ab DisplayPort v1.2 können mithilfe von MST-Hubs oder Daisy-Chaining bis zu 4 Bildschirme an einem DisplayPort-Anschluss betrieben werden.

Um vier Kurzdistanz-Beamer und einen Bildschirm mit der Radeon HD6950 betreiben zu können, musste ein Multi-Stream-Transport-Hub (MST-Hub) benutzt werden.

In diesem Setup wurde der Bildschirm über DVI angeschlossen. Die 3x BenQ W1080ST Kurzdistanzbeamer über einen miniDP-Ausgang mithilfe eines miniDP auf DP-Adapter an einem Club3D MST Hub (CSV-5300H) der über 3x HDMI-Kabel verbunden wurde. Der Optoma GT750 wurde über HDMI angeschlossen.

Die 3D-Illusionen

Um den optischen Effekt einer Raumvergrößerung zu erzeugen, wurden mehrerer Funktionen des Projection Mapping benutzt.

Projection Mapping beschreibt eine Technik, mithilfe derer man optische Effekte und Illusionen erzeugen kann. Dafür muss man z.B. ein 3D-Modell von einem realen Objekt erstellen und dieses mit einem Beamer perfekt auf das Original-Objekt projizieren. Wenn man nun Veränderungen an dem virtuellen 3D-Objekt durchführt, bekommt man als Betrachter den Eindruck, die Veränderung würde wirklich an dem realen Objekt passieren. Dies erfordert sehr viel Präzision damit der Effekt echt wirkt.

Für den Prototypen musste eine andere Art des Projection Mappings angewendet werden. Man befindet sich als Zuschauer innerhalb eines virtuellen 3D-Raums, der auf mehrere 2D-Flächen (Wände und Fußboden) des realen Raums projiziert wird. Dadurch kann dem Betrachter das Gefühl vermittelt werden, er würde sich innerhalb des virtuellen 3D-Raums befinden. Damit dieser Effekt funktioniert muss man sich als Betrachter an einer bestimmten Stelle befinden, für welche die Geometrie der Szene perspektivisch stimmt. Wenn man sich also bewegen können soll, muss diese Position immer in Echtzeit angepasst werden. Dafür wird die Microsoft Kinect verwendet, um die Geometrie der 3D-Szene in echtzeit auf die Kopf-Position des Betrachters anzupassen, egal wo sich dieser in dem Raum befindet.

Eine weitere Technik, die aufgrund von Platzmangel angewendet werden musste, ist die Korrektur der Projektions-Verzerrung. Dadurch, dass die Kurzdistanz-Beamer nicht so positioniert werden konnten, dass sie perfekt die Flächen bestrahlen, mussten die Video-Ausgänge mithilfe der Homography-Node so transformiert werden, dass der Inhalt verzerrungsfrei auf den Wänden dargestellt wird.

Für das Display-Setup wird eine aus allen 4 Projektoren, welche die 3 Wände und den Boden unseres Prototyps bestrahlten, horizontale AMD Eyefinity-Gruppe erstellt. Daraus ergibt sich ein großer Desktop mit einer Auflösung von 7680x1080 Pixeln (4x 1920x1080 Pixel). Da sich der Betrieb in vvvv allerdings als instabil herrausstellte (Display-Blanking von Projektoren die über den MST-Hub angeschlossen waren), wurde die Auflösung auf ein stabiles Setting mit 5120x720 Pixeln (4x 1280x720 Pixel) herunter geregelt.

In vvvv wird die Projektion jeder Wand mithilfe der PerspectiveLookAtRect (Transform ViewProjection)-Node in einem eigenen Renderer berechnet. Texturen dieser vier Renderer werden in einem weiteren Renderer horizontal nebeneinander zusammengefasst. Dieser Renderer ist randlos und dient als finaler Output. Mithilfe der SetRenderer-Node hat er die komplette Auflösung der Eyefinity-Gruppe, so wird auf dem jeweiligen Projektor auch die richtige Textur dargestellt. Mit dieser Methode kann man den exklusiven Fullscreen-Mode für Beamer umgehen, der viele Einschränkungen und Performance-Probleme mit sich bringen kann.

Quelle:
http://vvvv.org/documentation/projection-mapping-primer

Erste Schlussfolgerungen

Das Ziel dieses Semester war es ein System zu entwickeln, welches intelligent mittels visueller und auditiver Reize die Raumwahrnehmung des Nutzers verändert, so das der Raum den Bedürfnissen des Individuums gerecht wird. Inwiefern konnte das Ziel erreicht werden?

Erstaunlicher Weise ist es recht einfach die Raumwahrnehmung durch visuelle Reize zu beeinflussen. Schon erste Test haben gezeigt, das eine einfache Textur-/Farb- oder Lichtveränderung den Schein erzeugen einen komplett anderen Raum vor sich zu haben. Kommt dann noch Bewegung ins Spiel können schnell kognitive Effekte geschehen von Schwindel bis hin zur Illusion eines tatsächlich größeren Raumes.

Die auditive Manipulation von Raumgefühl ist nicht ganz so einfach. Der Mensch nimmt visuelle Reize schneller auf als auditive, daher muss man in Sachen Sound etwas feinfühliger und wissenschaftlicher Vorgehen. Außerdem kommt man beim Ton schnell an ein Limit, da eine Nachhallverstärkung mit der richtigen Hardware zwar zu bewerkstelligen ist, eine künstliche Schalleindämmung jedoch kaum funktioniert.

Dem ersten Anschein nach, kann man durch das duale Codieren von Sound und Bild im Verknüpfung mit Licht und Bewegung schon einen massiven Effekt in der Raumwahrnehmung erreichen.