Blender 3d Headtracking

Aus toolbox_interaktion
Wechseln zu: Navigation, Suche

Übersicht

Dieses Projekt befasst sich mit einer Kopfsteuerung für Blender. Dabei wird die Kopfposition vor dem Bildschirm mit einer Webcam erfasst und im virtuellen Blender Raum als Betrachtungsposition umgewandelt.


Aufbau

  • Über Open Frameworks soll die Position des Kopfes über eine Webcam bestimmt werden. Folgende Addons sind getestet worden:
    • ofxFaceOSC
    • ofxHaarFinder
  • Das Programm soll die Position über einen OSC Transmitter zur Verfügung stellen
  • Ein Blender Skript empfängt diese Daten zyklisch und setzt diese für die Kameraposition um

ofxFaceOSC

  • Vorteile:
    • Erfasst nur ein Gesicht
    • Erkennt Blickrichtung, Kopfposition, Position im Raum
    • Hat einen OSC Transmitter mit implementiert
  • Nachteile
    • Hat nur als vorcompiliertes Programm funktioniert
    • Hat im Test nur unter Windows, nicht Linux funktioniert
    • Compilieren unter Windows hat nicht funktioniert
    • Sehr Lichtempfindlich

ofxHaarFinder

  • Vorteile:
    • Im Test lauffähig mit Windows und Linux
    • Kompilierbar
    • Zuverlässiger bei ändernden Lichtverhältnissen
  • Nachteile:
    • Erkennt mehrere Gesichter gleichzeitig
    • Erkennt nicht die Blickrichtung
    • Auswertung nur über die Größe und Position des Gesichtes
    • Als Example nur mit Bildauswertung
    • Kamera als Eingang muss extra hinzugefügt werden
    • OSC Transmitter muss extra hinzugefügt werden

Installation Open Frameworks

Windows

  1. Code::blocks installieren
  2. OpenFrameworks von http://www.openframeworks.cc/download/ -> Windows Code::blocks herunterladen und auf dem Rechner entpacken
  3. codeblocks_additions.zip von http://www.openframeworks.cc/content/files/codeblocks_additions.zip herunterladen und auf dem Rechner entpacken
  4. Die Additions wie in der mitgelieferten Beschreibung in die Verzeichnisse von Code::blocks kopieren
  5. Open Frameworks Projekt im Ordner \libs\openFrameworksCompiled\project\win_cb öffnen und mit release und debug compilieren
  6. Nun kann OpenFrameworks installiert sein und die Projekte müssen sich kompilieren lassen.

Aufgetretene Probleme

Auf einem Lenovo Rechner mit Windows8 64-bit gibt es anscheinend Probleme OpenFrameworks richtig zu installieren. Aus den Fehlermeldungen ist nicht zu schließen was genau das Problem ist. Zu den Fehlern gehörten:

  1. Compiler Fehler von fehlenden Bibliotheken, Klassen
  2. Linkerfehler ld.exe
  3. Compiler Fehler von nicht includierten Header Dateien

Linux/Debian

  1. OpenFrameworks von http://www.openframeworks.cc/download/ -> Linux Code::blocks herunterladen und auf dem Rechner entpacken
  2. Im Ordner scripts/linux/debian die Skripte install_codeblocks.sh, install_codecs.sh, install_dependencies.h ausführen

Projekt-Dateien

OpenFrameworks Projekt Code::Blocks Windows

Blender Skript