Leitfaden zum Motion Capturing

Transcription

Leitfaden zum Motion Capturing
Leitfaden zum Motion Capturing
Inhaltsübersicht
1. Workflow........................................................................................................................ 1
2. User-Interface von Vicon iQ ........................................................................................... 3
3. Aufbau und Kalibrierung des Vicon-Systems ................................................................. 4
3.1 Kameras und Setup der Hardware............................................................................................ 4
3.2 Einrichten der Datenbank .......................................................................................................... 8
3.3 Kamera-Kalibrierung.................................................................................................................. 9
3.4 Kalibrierung des Capture Volume ........................................................................................... 11
4. Marker Placement.........................................................................................................13
5. Range of Motion ...........................................................................................................15
6. Labeling ........................................................................................................................18
7. Subjekt-Kalibrierung......................................................................................................19
8. Capturing der Bewegungen ..........................................................................................20
9. Post-Processing mit Vicon iQ Batch-Pipeline ................................................................21
10. Erstellen eines Skeletons in Maya ..............................................................................25
11. Data-Processing mit MotionBuilder .............................................................................30
11.1 User-Interface........................................................................................................................ 30
11.2 Mappen der Bewegungsdaten auf den Actor ........................................................................ 31
11.2 Skeleton charakterisieren und mit Actor verbinden............................................................... 38
11.4 Plotting und Weiterverwendung ............................................................................................ 41
11.5 Fehlerkorrektur ...................................................................................................................... 42
11.6 Loops herstellen .................................................................................................................... 43
11.7 Kombination von Motion Tracks (Blending) .......................................................................... 46
11.8 Tipps und Tricks .................................................................................................................... 48
Leitfaden zum Motion Capturing - 1. Workflow
1. Workflow
Wie bereits im theoretischen Teil vorgestellt, sieht der Workflow einer MoCap-Produktion wie folgt
aus:
Seite 1 von 48
Leitfaden zum Motion Capturing - 1. Workflow
Technischer Workflow
Nachstehend folgt eine detaillierte Übersicht, die nur die technischen Ebenen betrachtet:
Seite 2 von 48
Leitfaden zum Motion Capturing - 2. User-Interface von Vicon iQ
2. User-Interface von Vicon iQ
(1) Title Bar
(2) Menu Bar
(3) Operating Mode
Diese Leiste ermöglicht die Wahl der Operating Mode: Data Management, Setup, Calibrate,
Capture, Post Processing, Modeling.
(4) Activity Bars
Diese Leiste enthält verschiedene Tabs, die Tools und Funktionen beinhalten, um spezifische
Aufgaben mit Vicon iQ auszuführen.
(5) Control Bars
Die Tabs am linken Fensterrand stellen Optionen bereit, mit denen die Datendarstellung im
Workspace angepasst werden kann.
(6) Real Time Engine Control Bar
Optionen zur Steuerung der Realtime-Engine Tarsus.
(7) View Pane Menu Bar
Verschiedene Menüs, bei denen der Ansichtstyp für den Workspace gewählt werden kann. Der
Inhalt dieser Leiste hängt ab von der Operating Mode.
(8) View Pane Toolbar
Diese Leiste enthält Buttons, um die Ansichtstypen zu verwalten.
(9) Live 3D Workspace
Dieses Fenster zeigt die aufgenommenen Daten in der 3D-Perspektive.
(10) Log Window
Dieser Bereich zeigt die aktuellen Aktivitäten von Vicon iQ auf.
Seite 3 von 48
Leitfaden zum Motion Capturing - 3. Aufbau und Kalibrierung des Vicon-Systems
3. Aufbau und Kalibrierung des Vicon-Systems
Für eine detaillierte Beschreibung zu den Geräten schauen Sie bitte in den theoretischen Teil,
nachstehend ein Überblick zum System:
Abbildung 1 - Vicon MX Architecture mit 6 Kameras
3.1 Kameras und Setup der Hardware
1
Ziel des Kamera-Setups ist, dass alle Kameras die Marker im Capture Volume sehen, damit
2
saubere Aufnahmen erstellt werden können. Der Aufbau des Vicon-Systems (Positionieren
der Stative, Aufsetzen der Kameras, Setup des Laptops und der MX Ultranet Unit, Verbinden
3
aller Komponenten, Vorbereiten des Performers , Aktivierung der Software) benötigt ungefähr
zwei Stunden.
Im Folgenden ist eine Anleitung gegeben, die die notwendigen Einstellungen und den Ablauf
chronologisch aufzeigt und mit Fotos dokumentiert. Sie ermöglicht Ihnen, das System
selbstständig aufzubauen:
1.
1
Wir beginnen damit, alle Stative aus den Verpackungen zu nehmen und im Kreis aufzustellen, bei möglichst gleichem Abstand zueinander. Die Stative so weit wie möglich vom
Kreismittelpunkt entfernt positionieren, damit das Capture Volume voll ausgeschöpft wird.
Capture Volume bezeichnet den Raum im Studio, in dem die Marker von den Kameras gesehen und die Bewegungen des
Performers aufgenommen werden können.
2
MoCap-Aufnahmen werden im Englischen als Takes bezeichnet.
3
Die Person, deren Bewegungen aufgezeichnet werden, wird Performer genannt.
Seite 4 von 48
Leitfaden zum Motion Capturing - 3. Aufbau und Kalibrierung des Vicon-Systems
2.
Die Kamerahalter aus den Stativköpfen entnehmen (kleinen Hebel gedrückt halten und
den großen herausklappen) und an die Kameras unten heranschrauben.
3.
Danach die Kameras in die Kamerahalterung des Stativs einsetzen, dazu vorne beim
Stativ aufsetzen und nach hinten kippen (Kameras bei offener Hebelstellung einklinken).
4.
Nehmen Sie die Kameras und stellen Sie die Kamerablende auf einen Blendenbereich
von etwa 2,8 mm.
5.
Den Front-Aufsatz zur Kamera (sogenannter Infrared Strobe) mit etwas Abstand vor der
Linse justieren (die Linse sollte in etwa bündig mit dem schwarzen Scheibenabschluss
des Strobe-Aufsatzes sein):
Seite 5 von 48
Leitfaden zum Motion Capturing - 3. Aufbau und Kalibrierung des Vicon-Systems
6.
Einstecken der Kabel in die Kameras sowie deren Kabelenden in das MX Ultranet, dabei
ist die Reihenfolge beliebig:
7.
Als nächstes die Beine der Stative voll ausfahren. Es sollte versucht werden, die Kameras
so hoch wie möglich zu positionieren, damit das Capture Volume voll ausgeschöpft wird.
Bitte auch die Kurbel für das Ausfahren des Stativ-Halses benutzen, dazu den Ring
„Push“ drücken, Kurbel ausklappen und drehen.
Hinweis: Kamera-Höhen müssen nicht exakt übereinstimmen.
8.
Host Computer und MX Ultranet nebeneinander aufbauen und via LAN-Kabel verbinden.
Ebenfalls die Netzstecker für die Stromzufuhr verbinden (optional kann man eine externe
Festplatte für die MoCap-Daten an den PC anschließen):
Seite 6 von 48
Leitfaden zum Motion Capturing - 3. Aufbau und Kalibrierung des Vicon-Systems
9.
Computer und MX Ultranet anschalten ("Power"-Schalter befindet sich auf der Rückseite).
Nachdem der Computer bereit ist, muss ihm eine feste IP-Adresse zugewiesen werden.
Dazu in der >Systemsteuerung >Netzwerkverbindungen wählen. Dann unter LANVerbindung per rechter Maustaste die Eigenschaften wählen. Dort bei Internetprotokoll
(TCP/IP) auf Eigenschaften klicken und unter "Folgende IP-Adresse verwenden"
eingeben: IP-Adresse 192.168.10.1 - Subnetzmaske: 255.255.255.0
Danach auf OK klicken und die Einstellungen schließen.
Hinweis: MX Ultranet fungiert als Master, nimmt alle Daten der Kameras (Slaves) auf,
synchronisiert sie und gibt sie an den Computer weiter. Nach der Verbindung des MX
Ultranet mit den Kameras und dem Computer werden diese Einstellungen automatisch
vorgenommen.
10. Das System ist nun aktiv und die LEDs der Kameras sollten grün aufleuchten.
Vicon-System komplett aufgebaut und einsatzbereit
Seite 7 von 48
Leitfaden zum Motion Capturing - 3. Aufbau und Kalibrierung des Vicon-Systems
3.2 Einrichten der Datenbank
1.
Vor dem Programmstart von Vicon iQ ist ein Projektordner auf der Festplatte zu erstellen,
in dem die MoCap-Daten gespeichert werden können.
2.
Bevor die Software Vicon iQ gestartet werden kann, muss der USB-Dongle (Kopierschutz)
in einen USB-Port des Computers eingesteckt werden. Nach der Initialisierung kann Vicon
iQ aufgerufen werden.
3.
Nachdem das Programm vollständig hochgefahren ist, folgt als erstes das Setup der
Datenbank:
1.
Im Menü >Eclipse >New Database wählen. Dort unter "Location" den Pfad zum zuvor
erstellten Ordner auf der Festplatte angeben, bei "Name" eine Bezeichnung für die
Datenbank vergeben und optional eine Beschreibung in "Description" hinterlassen. Mit
dem "Animation Template.eni" aktiviert, bitte den Button "Create" klicken.
Anschließend im sich neu öffnenden Dialogfenster "Open" wählen.
2.
Als nächstes auf das
in der oberen Menüleiste klicken. Eine Zeile mit "Project 1" wird
erstellt, hier bitte den Projektnamen vergeben (so z. B. "capture_myName").
3.
Nun auf
klicken und eine Zeile mit "Capture Day 1" wird erstellt. Eine Umbenennung
in z. B. "2007-03-31" ist möglich.
Hinweis: Das Format "year-month-day" sollte aufgrund von Sortierungskriterien
eingehalten werden.
4.
Auf
klicken und eine Zeile mit "Session 1" wird erstellt. Hier kann gegebenenfalls
umbenannt werden.
Hinweis: Das Session-Verzeichnis beinhaltet Kalibrierungsdateien und alle Dateien, die
während der Session erstellt werden.
5.
Abschließend sollte folgende Struktur zu sehen sein, damit ist das Datenbank-Setup
abgeschlossen:
Seite 8 von 48
Leitfaden zum Motion Capturing - 3. Aufbau und Kalibrierung des Vicon-Systems
3.3 Kamera-Kalibrierung
1.
Drei Marker in die Mitte des Capture-Volumes legen:
2.
Ein Marker je Kamera etwa 3 Schritte (zur Kreismitte) weg von der jeweiligen Kamera auf
dem Boden positionieren:
3.
Nun liegen 3 Marker in der Mitte und 6 Marker kreisförmig um das Capture Volume.
1.
Die „Tarsus“ Real Time Engine starten, dazu rechts unten im Bildschirm das Connect-Icon
betätigen. Danach kann Tarsus beendet werden, wenn erneut auf dieses Icon, das
nun so aussieht
, geklickt wird.
2.
Das Command-Line-Fenster öffnet sich und zeigt das Processing ("Starting Tracker…")
an. In Vicons 3D Workspace werden nun die Marker sichtbar.
3.
Das Processing im Command-Line-Fenster stellt die Real Time Engine dar, daher das
Fenster bitte nicht schließen, sondern nur minimieren, damit es im Hintergrund aktiv
bleibt.
4.
Hinweis: Falls eine Kamera in Vicon iQ nicht angezeigt wird oder die LED einer Kamera
gelb leuchtet, ist diese Kamera nicht aktiv. Dann bitte sämtliche Kabel-Verbindungen
sowie die Real-Time-Engine überprüfen.
Seite 9 von 48
Leitfaden zum Motion Capturing - 3. Aufbau und Kalibrierung des Vicon-Systems
5.
Den Tab "Camera" aktivieren, dort kann man durch alle 6 Kameras durchschalten und
sich die einzelnen Bilder anzeigen lassen.
6.
Als nächstes den Tab "Cameras" (auf der rechten Fensterseite) wählen. Dort können
"Strobe Intensity" und "Camera Threshold" für jede Kamera separat eingestellt werden.
Folgene Ersteinstellung wählen: Strobe: 100, Threshold: 20, Gain: 1, Quality: 20.
Bitte versuchen, Störungen der Umgebung zu unterdrücken bzw. zu beseitigen, indem die
vorgenannten Parameter verändert werden.
Strobe Intensity stellt die Lichtintensität ein. Das Erhöhen der Intensität stoppt das Flackern der
Marker. Ein Vermindern kann zum Reflektieren von Licht und sogenannten Ghost Markern führen.
Threshold ist ein Grenzwert, der die Marker vom Hintergrund hervorhebt. Pixel, die die KameraThreshold übersteigen, werden isoliert. Sollten Marker unsichtbar sein oder flackern, so muss der
Threshold erhöht werden.
Gain (Verstärkung) gibt an, wie stark die Videosignale verstärkt werden.
Circle Quality bestimmt, welche Gruppen von Pixeln in kreisartiger Form als Marker identifiziert
4
werden. Circle Quality 100 steht für perfekte Kreise, niedrigere Werte erlauben Abweichungen.
Ausrichten der Kameras
1. Im Workspace eine Kamera-Nummer wählen (die LED der aktiven Kamera leuchtet dann
zur besseren Erkennung blau).
2.
Die Kameras auf den Stativen so ausrichten/drehen/neigen, dass sich die in der Mitte des
Capture Volumes befindlichen 3 Marker annähernd in der Mitte des Workspaces (einzelne
Kameraansicht in Vicon iQ) befinden.
3.
Darüber hinaus müssen für jede Kamera alle das Capture Volume abgrenzenden 6
Marker sichtbar sein. Falls nicht, sollte die Position des jeweiligen Markers geändert
werden (Verschieben zur Kreismitte).
4.
Die vorigen Schritte sind für jede der 6 Kameras zu wiederholen.
5.
Abschließend bei den Kameras auf "All" klicken, um alle Bilder der Kameras
nebeneinander angeordnet zu sehen und nochmals zu kontrollieren, ob je Kamera 6
Marker angezeigt werden.
6.
Danach bei "Manage Camera Settings" (rechts oben im Bildschirm) auf "Save" klicken
5
und die Kamera-Settings in einer Datei (im hsf-Format ) speichern
4
Informationen entnommen aus: http://atec.utdallas.edu/~midori/Handouts/mocap_calibration.htm (Zugriff vom 2007-05-27).
5
Hardware Settings File, Konfigurationseinstellung für die Vicon MX Kameras.
Seite 10 von 48
Leitfaden zum Motion Capturing - 3. Aufbau und Kalibrierung des Vicon-Systems
Capture Volume markieren
1. Da die Kameras nun kalibriert sind, können alle Marker auf dem Boden entfernt werden (6
Marker im Kreis und 3 Marker in der Mitte). An den Stellen der äußeren Marker sollte
Klebeband befestigt werden, da diese die Grenzen des Capture Volumes darstellen.
Somit weiß der Performer bis zu welchen Bereichen er sich bewegen darf.
Kamerafokus
Die Marker müssen klar und deutlich auf den Bildern der Vicon iQ Software zu sehen sein.
Falls dies nicht der Fall ist, kann versucht werden, den vorderen Fokus (Ringaufsatz) oder den
hinteren Fokus (Position der Linse zum Kamerasensor verändern) einzustellen. Weitere
Informationen hierzu bitte direkt aus der Bedienungsanleitung Vicon MX Hardware System
Reference Revision 1.3 (Seiten 112 ff.) entnehmen.
3.4 Kalibrierung des Capture Volume
Ein Wand (engl. Stab) wird benutzt, um die Kameras zu kalibrieren, das heißt das System
ermittelt aufgrund der gewonnenen Daten, wo welche Kamera positioniert ist und welche
Orientierung sie im globalen Koordinatensystem hat. Dadurch ist es später möglich, die
Position eines Markers zu ermitteln, sobald er von 2 Kameras erfasst wird.
Ein L-Frame (engl. L-Rahmen) dient dazu, den Koordinatenursprung für das Capture Volume
und dessen Achsen zu setzen. Durch den L-Frame wird die Position und die Orientierung des
Bodens getrackt.
1.
Bei "1. Calibrate Cameras" den gewählten Kalibrierer einstellen (wir nutzen den
"240_mm_Wand"). Anschließend "Start Wand Wave" betätigen.
2.
Prozess startet und es wird "Frames Recorded: ..." angezeigt.
Seite 11 von 48
Leitfaden zum Motion Capturing - 3. Aufbau und Kalibrierung des Vicon-Systems
3.
Nun muss eine Person mit dem Kalibrierer (24 mm) im Kreis des Capture Volumes
herumlaufen und den Kalibrierer in einer kreisenden Bewegung schwingen (bevorzugt als
kreisende Acht), damit wird das Capture Volume "ausgewinkt". Metapher: Wände des
Capture Volume streichen.
4.
Die Aufzeichnungen in Vicon iQ sehen je Kamera wie folgt aus:
5.
Den Kreis mindestens einmal durchlaufen. Es sollten mehr als 10.000 Frames
aufgezeichnet worden sein.
6.
Danach "Stop Wand Wave" klicken und die Berechnungen der Software abwarten. Dabei
sollte der Status für jede Kamera am Ende der "Performing Calibration" das Wort
"Awesome" (ausgezeichnet) anzeigen.
7.
Nun zum Tab "Live 3D Workspace" wechseln. Dort erkennt man, dass die Kameras
schräg positioniert sind. Daher wird es notwendig, das System mit dem L-Frame (siehe
folgendes Foto) auszurichten. Dazu bitte den L-Frame in die Mitte des Capture-Volumes
legen.
Seite 12 von 48
Leitfaden zum Motion Capturing - 4. Marker Placement
8.
Nun in Vicon iQ "LFrame: Ergo_14mm_LFrame" in der Pulldown-Leiste auswählen und
dann den Button "Track L-Frame" auf der rechten Fensterseite drücken. Anschließend
den Button "Set Origin" betätigen und das System ist ausgerichtet. Die KameraEinstellungen an dieser Stelle speichern.
9.
Da die Kalibrierung beendet ist, kann mit den Aufnahmen begonnen werden. Ab jetzt
dürfen die Stative nicht mehr berührt oder verändert werden, ansonsten muss die
Kalibrierung erneut vorgenommen werden.
4. Marker Placement
Die Person, deren Bewegungen aufgezeichnet werden, wird im Englischen als „Trial Subject"
aber auch als „Performer“ bezeichnet. Wir verwenden wie schon erwähnt den Begriff
„Performer“. Es ist möglich, jedes beliebige Objekt (so auch Tiere und Maschinen) zu
capturen. Der Einfachheit halber und da am häufigsten benutzt, orientieren wir uns in diesem
Leitfaden jedoch an einem menschlichen Objekt.
Die Marker sind entsprechend der folgenden Abbildungen auf den schwarzen, nichtreflektierenden Anzug des Performers zu setzen:
Seite 13 von 48
Leitfaden zum Motion Capturing - 4. Marker Placement
Seite 14 von 48
Leitfaden zum Motion Capturing - 5. Range of Motion
Klett-Klebeband wird oft benötigt, um die Marker zu befestigen.
Sobald der Performer mit den Markern ausgestattet ist, ist es ratsam, Referenzfotos von ihm
aufzunehmen. Diese zusätzliche Hilfe erleichtert das spätere Post-Processing in
MotionBuilder außerordentlich.
5. Range of Motion
Eine Range-of-Motion-Aufnahme wird benutzt, um die Proportionen des generischen Vicon
Skeleton Templates (VST) entsprechend der physischen Dimensionen des Performers zu
verändern und die Markerpositionen anzupassen.
1.
Performer stellt sich in T-Pose-Stellung in das Zentrum des Capture-Volumes:
Hinweise zur T-Pose: Der Performer sollte versuchen, in einer Haltung zu stehen, die so
symmetrisch wie möglich ist. Die Füße des Performers sollten entsprechend Schulterbreite
auseinanderstehen, und zwar parallel nach vorne zeigend. Der Performer sollte seine Knie
und Ellbogen leicht einbeugen.
2.
Klicke auf den Tab "Live 3D Workspace" und wähle bei "2. Provide Trial Information"
Folgendes: "Name: rom001" und "Type: R.O.M.".
Seite 15 von 48
Leitfaden zum Motion Capturing - 5. Range of Motion
3.
Der Performer dreht sich vor dem Start der Aufnahme in Richtung positiver Z-Achse,
siehe 3D Workspace in Vicon iQ.
4.
Mit Betätigen des Buttons "Start", der sich bei "4. Capture !" befindet, wird die Aufnahme
gestartet.
5.
Für die Range of Motion ist eine lange Aufnahme nötig, die alle Marker deutlich zeigt und
in der der Performer unterschiedliche Bewegungen ausführt (Beine abspreizen, Arme
rotieren, Hüfte rotieren, Hinhocken, etc.).
6.
Nachdem der Performer diese Bewegungen über mehr als 10.000 Frames ausgeführt hat,
muss er in die T-Pose zurückkehren.
7.
Dann ist die Aufnahme mit dem Button "Stop" zu beenden. Es erscheint ein Dialogfenster
mit "Enter a Threshold Table filename", hier einfach auf OK klicken. Dann bei "Enter a
Calibration filename" ebenfalls OK betätigen.
8.
Anschließend ist unter "5. Review Last Capture" der Button "Load Into Post" zu betätigen.
Rekonstruktion der Bewegungsdaten aus den gewonnenen 2D-Kameradaten
Nun erfolgt die Bereinigung des Range-of-Motion-Aufnahme. Hierbei werden Methoden zur
Beseitigung des Rauschens (Noise) angewendet, um die Marker vom Hintergrund zu
separieren, die Koordinaten der Marker werden ermittelt und Bewegungsbahnen jedes
6
einzelnen Markers im dreidimensionalen globalen Koordinatensystem errechnet.
1.
Gehe zum Tab „Pipeline“ und wähle dort aus dem Pulldown-Menü „AutoLabelROM“.
2.
Die Operation „Circle Fit, Reconstruct, Trajectory Fit Frame Range“ muss als erstes
ausgeführt werden.
Circle Fit ist der Prozess, bei dem Algorithmen angewendet werden, um für den Marker eine
7
zentrale Koordinate zu errechnen.
Beim Reconstruct werden aus 2D-Daten 3D-Daten erzeugt und die Bewegungsbahnen der Marker
im 3D Raum bestimmt.
Trajectory Fit Frame Range passt die Bewegungsbahnen der Marker der Frame-Rate an.
3.
Um eine bestmögliche 3D-Rekonstruktion zu erzielen, sind nachfolgende geänderte
Einstellungen notwendig. Dazu Doppel-Mausklick auf die Operation „Circle Fit,
Reconstruct, Trajectory Fit Frame Range“ und die Standard-Werte wie nachstehend
beschrieben editieren:
6
Vgl. University of Texas and Dallas: atec.utdallas.edu/~midori/Handouts/mocap_calibration.htm (Zugriff vom 2007-05-27).
7
Vgl. Vicon Product Glossary for Vicon MX and V-series systems, 2006.
Seite 16 von 48
Leitfaden zum Motion Capturing - 5. Range of Motion
Veränderte Werte in Operation „Circle Fit, Reconstruct, Trajectory Fit Frame Range“:
1. „Minimum cameras to start trajectory“ Default: 3 - Neuer Wert: 2
Die Bewegungsbahn eines Markers muss von mindestens 2 Kameras gesehen werden, um
erfasst und rekonstruiert zu werden.
2. „Minimum cameras to reconstruct“ Default: 3 - Neuer Wert: 2
Ein Marker muss von mindestens 2 Kameras gesehen werden, damit seine Position erfasst und
rekonstruiert wird.
3. „Reconstruction Volume Min. / Max.” Default: 4000 - Neuer Wert: 10.000
Die minimalen/maximalen Dimensionen des Rekonstruktionsvolumens (Einheit in Millimeter).
Sämtliche Daten außerhalb dieses Volumens werden bei der Rekonstruktion ignoriert. Neuen
Werte definieren ein Volumen von 10 m x 10 m x 7 m (positive Achsen) bzw. -10 m x -10 m x
-0,4 m (in den negativen Bereich).
4. „Circle fitting error“ Default: 2 - Neuer Wert: 1,5
Gibt an, wie groß die Abweichung beim Circle Fit (Ermittlung der zentralen Koordinate des
Markers) sein dürfen.
5. „Minimum/Maximum circle diameter“ Default: 0 und 100 - Neue Werte: 1 und 30
Werte für den Diameter (Durchmesser des Kreises), bei dem der Marker im 3D Workspace
visualisiert wird (Einheit in Millimeter).
6. „Minimum reconstruction separation (mm)“ Default: 0 - Neuer Wert: 25
Verwirft alle eventuellen Markern, deren Werte am Ende des Processings als unwahrscheinlich
gelten. Diese Marker stehen dann nicht mehr für andere Rekonstruktionsoptionen zur Verfügung.
Hinweis: Alle Parameter können in der Vicon iQ 2.5 System Reference Volume I nachgelesen
werden, siehe dort im Kapitel 7-28 (Seiten 282 ff.).
4.
Dialog mittels OK-Button schließen, rechter Mausklick erneut auf die Operation und „Run
Selected Op“ auswählen.
Seite 17 von 48
Leitfaden zum Motion Capturing - 6. Labeling
5.
Als nächstes den Tab "Subjects" (auf der rechten Bildschirmseite) wählen und dort auf
"Create Vicon Skeleton Templates (VST)" klicken.
6.
Wähle nun in der Pulldown-Leiste "Template: 'iQ_ProductionExample_V5' " und vergib bei
"Subject Name:“ einen Namen.
7.
Klicke dann auf „3D Workspace“, um die 3D-Rekonstruktion anzusehen.
6. Labeling
Beim Labeling (engl. Beschriftung, Kennzeichnung) werden die Marker im 3D-Workspace den
vordefinierten Markern des Vicon Skeleton Templates (VST) zugeordnet. Jeder Marker ist Teil
des Körpers und erhält durch das Labeling seine eigene Identität.
T-Pose wählen
1. Eine Stellung des Performers im 3D-Workspace suchen (mit Hilfe der Time Bar), in der er
sich in der T-Pose befindet. Dann bei "Events" (unten rechts im Bildschirm) auf "G"
8
(General Event) drücken, danach wird "T" (T-Pose) aktivierbar, auch hierauf klicken.
2.
Tab Labeling auswählen, darin "Modes: Sequence", "Rules: Whole", "Tools: Auto Vel.
Label" wählen.
3.
Dem Skeleton die Label-Punkte (beginnend mit „ROOT“) zuordnen. Vergleiche hierzu die
Bezeichnungen und Abkürzungen mit den Abbildungen aus Kapitel 4.
4.
Zum Labeln jeweils eine Markerbezeichnung rechts auswählen und im 3D Workspace auf
den entsprechenden weißen Marker klicken.
5.
Nach und nach entsteht ein farbiges Skelett, dabei stehen die roten Verbindungen für die
linke Skeletonseite und grüne für die rechte Seite (Orientierung gemäß Ich-Perspektive
des Skeletons).
6.
Jetzt zum Tab „Pipeline“ wechseln und in der Pull-Down-Leiste „Autolabel Range Of
Motion“ wählen.
7.
Rechter Mausklick auf die Operation „Autolabel Range Of Motion“ und „Run Selected
OP“.
Autolabel Range Of Motion: Da das gelabelte Skeleton beim Abspielen der Animation oft aufgrund
fehlender Marker nicht vollständig ist und da beim erneuten Erscheinen dieser Marker diese von
Vicon iQ als neu eingestuft und somit ungelabelt sind, wird diese Operation notwendig, die
automatisch versucht, die wieder auftretenden Marker erneut zuzuordnen, und zwar auf Grundlage
des Labelings vom ersten Frame.
8
Alle Events können in der Vicon iQ 2.5 System Reference Volume I auf Seiten 291 ff. nachgelesen werden.
Seite 18 von 48
Leitfaden zum Motion Capturing - 7. Subjekt-Kalibrierung
8.
Danach gleichermaßen den „Trajecotry Labeler“ ausführen und dann den „Kinematic Fit“.
Trajectory Labeler: Labelt die Marker automatisch.
Kinematic Fit: Rekonstruktion der Marker, indem sich für die Markerpositionen an einem Skeleton
Template orientiert wird.
Hinweis: Es kann geprüft werden, ob die Daten der Range of Motion durchgängig sind oder
Lücken aufweisen, indem der Tab „Continuity Chart“ angeklickt wird. Schwarze Bereiche
stehen für Lücken.
Durchgehende Bewegungsdaten je Marker, ohne Lücken.
7. Subjekt-Kalibrierung
Die Subjekt-Kalibrierung erstellt ein Skeleton, das den physischen Dimensionen des
Performers entspricht (VSK), indem es die Proportionen des generischen Modells (VST)
verändert. Mit dem fertigen VSK lassen sich alle Operationen in der Pipeline automatisch
ausführen.
1.
Zum Tab "Subjects" wechseln (an der rechte Bildschirmseite). Dort bei "Calibration" auf
"Calibrate Subject" klicken, dann starten Model Calibration und Collecting Statistics.
Durch die Kalibrierung werden nicht-gelabelte unbekannte Marker beim Export der
Bewegungsdaten nicht berücksichtigt.
2.
In der Konsole werden verschiedene Daten angezeigt, wichtig ist hierbei die Fehlerrate,
welche angibt, wie groß die Abweichung der Marker zueinander ist. Diese Fehlerrate
(„Error“) sollte unter 15 mm liegen. Ist dies nicht der Fall, so ist die Wiederholung der
Kalibrierung ab Kapitel 5 ratsam.
Seite 19 von 48
Leitfaden zum Motion Capturing - 8. Capturing der Bewegungen
3.
Nach dem Ende des Kalibrierungsprozesses (siehe Konsole: „Subject Calibration
Succeeded“) kann das Vicon Skeleton als VSK-Datei gespeichert werden, dazu den
Button „Export Vicon Skeleton (VSK)“ nutzen.
Subjekt aktivieren
1. Zum Tab „Capture“ wechseln und rechts das Registerblatt „Active Objects“ wählen.
2.
Bei „Available Objects (check box to make active)“ einen Haken beim kalibrierten Objekt
setzen, um das Skelett zuzuweisen bzw. benutzen zu können.
8. Capturing der Bewegungen
1.
Bei "Provide Trial Information" (auf der rechten Bildschirmseite) als "Type: Walk" (nicht
mehr R.O.M.) wählen und bei "Name:" einen neuen Namen verbunden mit einer IDNummer eintragen (z. B. "myName_walk01").
2.
Anschließend bei "4. Capture !" auf "Start" klicken und das Capturen beginnt. Das
Capturen ist aus der T-Pose heraus zu starten.
Es ist ratsam, bei jeder Aufnahme den Performer in Richtung positiver Z-Achse schauen
zu lassen, da sich in der Bearbeitungssoftware meist in diese Richtung orientiert wird.
Ansonsten können die MoCap-Daten später bei der Anwendung in MotionBuilder auch
rotiert werden.
3.
Performer unternimmt einen Bewegungsablauf, danach das Capturen mittels Button
"Stop" beenden.
4.
Die Aufnahme wird automatisch in der Datenbank gespeichert.
5.
Die Nummer beim Namen wird automatisch inkrementiert, aus z. B. "myName_walk01"
wird "myName_walk02".
Seite 20 von 48
Leitfaden zum Motion Capturing - 9. Post-Processing mit Vicon iQ Batch-Pipeline
9. Post-Processing mit Vicon iQ Batch-Pipeline
Ziel des Post-Processing ist es, die Rohbewegungsdaten der angefertigten Aufnahmen
brauchbar und zügig umzuwandeln und in das C3D-Format zu exportieren. Zur Bearbeitung
der Bewegungsdaten gehören Datenbereinigung und Fehlerbeseitigung sowie SubjektKalibrierung anhand der VSK-Datei.
Voraussetzung für das Post-Processing ist das Vorliegen der VSK-Datei (Vicon Skeleton
Template).
1.
Starte Vicon iQ und öffne die zu bearbeitende Datenbank.
2.
Ein Doppelklick auf die Aufnahme (auch Trial genannt) öffnet diese. Eine andere
Möglichkeit ist das Laden mittels rechten Mausklick auf die Aufnahme: >Open >Raw
capture data.
3.
Nun ist die VSK-Datei zu laden. Dazu auf den Tab "Subjects" wechseln und den Button
"Import Vicon Skeleton (VSK)" wählen. Dann die richtige VSK-Datei öffnen. Anschließend
zurück zum Tab "Pipeline".
Um die MoCap-Daten zu rekonstruieren und automatisch zu bearbeiten, können verschiedene
Pipelines erstellt werden. Nachfolgend ist die von Vicon vorgegebene, hier jedoch geringfügig
modifizierte Pipeline beschrieben:
Batch-Pipeline von Vicon iQ
Diese Pipeline ist in Vicon iQ vordefiniert und in der Pulldown-Leiste unter dem Namen
„General_Pipeline_Example“ zu finden. In der Pipeline sollten folgende Modifikationen
vorgenommen werden (rechte Maustaste auf Operation und >Remove Operation wählen):
Seite 21 von 48
Leitfaden zum Motion Capturing - 9. Post-Processing mit Vicon iQ Batch-Pipeline
Es ist äußerst wichtig, die Parameter der 1. Operation „Circle Fit, Reconstruct,
Trajectory…“ so einzustellen, wie bereits in Kapitel 5 „Range of Motion“ unter
„Rekonstruktion der Bewegungsdaten aus den gewonnenen 2D-Kameradaten“
beschrieben. Nachstehend nochmals ein Screenshot:
Tipp: Um die Pipeline nicht jedes Mal neu definieren zu müssen, kann sie mit ihren
Einstellungen gespeichert werden. Dazu einen neuen Namen eintragen und danach zum
Speichern auf das Disketten-Icon klicken:
Erklärung der einzelnen Pipeline-Operationen
1.
„Circle Fit, Reconstruct, Trajectory Fit Frame Range”: Diese Operation enthält alle notwendigen
Prozesse zur Umwandlung aller 2D-Bilder in eine 3D-Rekonstruktion mit Bewegungsbahnen.
2.
Mit „Camera Health Check“ wird die Kamera-Kalibrierung überprüft, was jedoch in dieser Stufe
der Bearbeitung nicht notwendig ist, da eine Kalibrierungsdatei bereits korrekt vorliegt.
3.
„Load Subject(s)“ lädt die VSK-Datei. Es ist notwendig, die Operation zu editieren (Doppelklick).
Unter „Input File Name(s)” muss die VSK-Datei ausgewählt werden, die zu dieser Session
angefertigt wurde.
Manuell kann man die Datei über den Tab „Subjects“ bei „Import Vicon Skeleton (VSK)“ laden.
4.
„Trajectory Labeler“ labelt die Marker automatisch anhand der VSK-Daten.
5.
„Trim Tails“ beseitigt Marker, die sich unnatürlich weit vom eigentlichen Objekt wegbewegen.
Diese Fehler können durch eine fehlerhafte Rekonstruktion aufgrund von Ghost Markern,
verdeckten oder überlagerten Markern auftreten. Der Filter versucht, Ungenauigkeiten in
Bewegungsbahnen zu entfernen, indem er Frames vor oder nach Lücken entfernt und wieder
rekonstruiert.
Seite 22 von 48
Leitfaden zum Motion Capturing - 9. Post-Processing mit Vicon iQ Batch-Pipeline
6.
„Filter Using a Butterworth Function”: Dieser Filter beseitigt sprunghafte, schwankende
Frequenzen, die inkonsistent mit den Markern sind.
7.
„Filter Using Weighted Point Average” wendet einen Filter an, der Bewegungsbahnen in einer
gewissen Spanne an Frames auswählt und analysiert, um Rauschen zu entfernen und die
Bewegungsbahnen zu glätten. Hierbei werden Durchschnitte gebildet, indem NachbarDatenpunkte in die Berechnungen einbezogen werden.
8.
„Fill Gaps using Splines” führt eine kubische Spline-Interpolation aus, um die Lücken der
Bewegungsbahnen zu schließen.
9.
„Fill Gaps Rigid Body”: Als Rigid Body wird ein vorgegebenes Skeleton-Gerüst (Rigid Body
Clean Up Template, RBT-Datei) bezeichnet, welches verwendet wird, um fehlende Punkte zu
ermitteln. In den Einstellungen dieser Operation muss das ursprüngliche VST-Template
angegeben werden.
10. „Fill Gaps using Virtual Points”: Virtuelle Punkte werden gesetzt, um fehlende Marker zu
ersetzen.
11. „Kinematic Fit” benutzt die VSK-Datei, um das aus den Markern rekonstruierte Skeleton an das
kinematische Skeleton anzupassen.
12. Die vorige Operation erlaubt nun die Ausführung von „Fill Gaps Using Kinematic Model“,
welches fehlende Daten aufgrund von verdeckten Markern nunmehr besser wiederherstellen
kann.
13. „Delete Unlabelled Trajectories” ist eine Operation, die nicht-gelabelte Bewegungsbahnen
löscht.
14. „Export C3D file“ ist der abschließende Schritt zum Export der MoCap-Daten für die
Weiterverwendung in MotionBuilder oder anderen Programmen. Manuell können die Daten
über das Menü >File >Export exportiert werden.
Nachdem alle Operationen der Batch-Pipeline ausgeführt worden sind, kann die fertige
Animation im 3D Workspace abgespielt werden. Das Ergebnis ist meist sehr gut und zufrieden
stellend.
Manuelle Nachbearbeitung der MoCap-Daten
Probleme, die die Batch-Pipeline nicht behebt, können eventuell manuell nachgebessert
werden. Für das manuelle Editieren der Daten bieten sich verschiedene Füll-Werkzeuge an,
die in der Vicon iQ 2.5 System Reference Volume I auf den Seiten 262 ff. erläutert sind.
Nachfolgend ein kurzer Überblick:
Linear: Lineare Interpolation zwischen zwei Marker-Positionen, um eine Lücke zu füllen.
Spline: Eine kubsiche Spline Interpolation, um in der selektierten Bewegungsbahn Lücken zu füllen.
Kinematic Model: Kann angewendet werden, nachdem die Kinematik zugewiesen wurde. Die Operation
basiert auf dem Vicon Skeleton (VSK). Sie wird gegenüber der Spline-Interpolation bevorzugt, wenn es
sich um große Lücken handelt.
Seite 23 von 48
Leitfaden zum Motion Capturing - 9. Post-Processing mit Vicon iQ Batch-Pipeline
Associated: Selektiere mit gedrückter Strg-Taste die Secondary Marker in der Nähe des fehlenden
Markers und klicke auf Associated (nahe stehend). Die Operation versucht anhand der Positionen der
anderen Marker die Position des fehlenden zu ermitteln.
Ordered: Diese Operation nutzt temporär virtuelle Marker, die aufgrund von drei assoziierten
sekundären Markern berechnet werden.
Virtual Points: Zum Füllen der Lücken werden virtuelle Punkte verwendet, die vom Nutzer selbst zu
erstellen sind (virtual point clean up template, siehe hierzu Vicon iQ Reference auf Seiten 308 ff.).
Rigid Body: Entsprechend des definierten Skeletons werden der fehlende Punkt ermittelt und
Diskontinuitäten beseitigt.
Seite 24 von 48
Leitfaden zum Motion Capturing - 10. Erstellen eines Skeletons in Maya
10. Erstellen eines Skeletons in Maya
Achtung: 3D-Figur sollte in Richtung positiver Z-Achse schauen (Standard für 3D-Modelling).
Als Bearbeitungsmodus muss „Animation“ gewählt sein.
Namenskonventionen von MotionBuilder
1.
Starte Maya, öffne eine 3D-Figur und blende das Grid aus zur besseren Übersicht
(>Display >Grid).
2.
Wähle die gesamte 3D-Figur aus. Erstelle dann einen Layer und klicke mit rechter
Maustaste auf diesen, wähle im Kontextmenü „Add Selected Objects“. Anschließend auf
das Feld neben „V“ (visible) klicken, ein „T“ (template) erscheint und die 3D-Figur existiert
nun als Ghost.
3.
Als Nächstes im Tab „Animation“ das Joint-Tool wählen:
Tipp: Mit gedrücktem Shift kann der Joint beim Setzen verschoben werden.
4.
Wähle jetzt den Front View.
5.
Setze den ersten Joint etwa in Hüfthöhe (in der Mitte des Beckens).
Seite 25 von 48
Leitfaden zum Motion Capturing - 10. Erstellen eines Skeletons in Maya
6.
Wechsle dann zum Side View und setze die Joints wie folgt, beginnend mit den „hips“:
7.
Drücke Enter und benenne dann die Joints entsprechend der Namenskonventionen von
MotionBuilder um, dazu Doppelklick auf "joint1" rechts oben in den Eigenschaften ("joint1"
wird zu “hips“).
8.
Setzen der Joints für die Beine (mit einem neuen unabhängigen Joint neben der Hüfte
beginnen):
9.
Wechsle zum Front View und verschiebe das Bein an die richtige Stelle.
10. Danach markiere das gesamte Bein (1. Joint klicken) und wähle im Menü >Edit
>Duplicate
(Um Default-Einstellung zu aktivieren, in der Dialogbox bei >Edit >Reset
Settings wählen.) Dann den Button „Duplicate“ betätigen.
Seite 26 von 48
Leitfaden zum Motion Capturing - 10. Erstellen eines Skeletons in Maya
11. Das duplizierte Skeletonbein nun auf das rechte Bein der 3D-Figur verschieben und dann
entsprechend der Namenskonventionen benennen:
12. Selektiere nun mit gedrückter Shift-Taste folgende Joints: „LeftUpLeg“ + „RightUpLeg“ +
„hips“. Drücke jetzt „P“ für das Parenting (Beine werden Children der Hüfte).
13. Nun erfolgt das Setzen der Joints für die Arme:
Seite 27 von 48
Leitfaden zum Motion Capturing - 10. Erstellen eines Skeletons in Maya
14. Mit dem gesamten Arm selektiert, wähle aus dem Menü >Skeleton >Mirror Joint
dort:
und
Dann den Button „Mirror“ betätigen.
15. Falls nötig kann die Position des Armes verschoben werden (siehe auch Top View).
16. XYZ-Orientierung der Joints sind durch das Spiegeln nicht korrekt, daher den gesamten
rechten Arm auswählen und in Command Line von Maya folgenden MEL-Code eingeben,
9
damit sie neu ausgerichtet werden:
-e :: edit mode
-oj :: orientation
-xyz :: x-pointed down the bone
-ch :: all children
17. Nun folgt die Benennung der Joints des rechten Arms analog dem Linken (d. h. „Left“
jeweils mit „Right“ ersetzen).
18. Selektiere nun mit gedrückter Shift-Taste folgende Joints: „LeftShoulder“ +
„RightShoulder“ + „spine3“ und drücke danach „P“ für das Parenting.
19. Untemplate die 3D-Figur im Layer (Klick auf „T“).
20. Selektiere das komplette Skeleton und die 3D-Figur. Wähle dann im Menü >Skin >Bind
Skin >Smooth Bind
und stelle folgende Optionen ein:
21. Drücke dann den Button „Bind Skin“. Nun bewegt sich die 3D-Figur entsprechend den
Joints des Skeletons.
9
Vgl. Tutorials von 3D Buzz unter http://www.3dbuzz.com/vbforum/sv_dl_list.php?c=10 (Zugriff vom 2007-05-28).
Seite 28 von 48
Leitfaden zum Motion Capturing - 10. Erstellen eines Skeletons in Maya
Gewichtungen modifizieren
Ziel der Veränderung der Gewichtungen ist es, unnatürliche Verformungen zu vermeiden.
1.
Selektiere die gesamte 3D-Figur.
2.
Wähle im Menü >Skin >Edit Smooth Skin >Paint Skin Weights Tool.
3.
Jetzt können die Einflüsse der Joints eingestellt bzw. eingezeichnet werden (schwarz =
kein Einfluss, weiß = Einflussbereich).
Tipp: Klicke den Button „Flood“, um die Gewichtung für die selektierten Elemente zu glätten.
Letzte Schritte
1. Öffne den Hypergraph (Menü >Window >Hypergraph).
2.
Klicke im Hypergraph auf den Namen der 3D-Figur und mit gedrücktem Shift auf den
Joints „hips“ des Skeletons.
3.
Nun betätige auf der Tastatur den Shortcut Strg + G. Damit sind Skeleton und 3D-Figur
gruppiert. Benenne noch die Gruppe um in „Reference“.
4.
Im Menü klicke >File >Save Scene.
5.
Danach unter >File >Export All
. Wähle unter File Type: "fbx" und betätige den Button
"Export All". Speichere die Daten an geeigneter Stelle.
Hinweis: Das FBX-Plugin muss für Maya installiert sein, damit das FBX-Format zur
10
Verfügung steht. Außerdem muss FBX in Maya aktiviert werden, sonst erhält man zum
Beispiel beim Öffnen der FBX die Fehlermeldung „Unrecognized File Type“.
Aktivierung unter >Window >Settings/Preferences >Plugin-Manager bei:
Import nach MotionBuilder
Einfach im Menü >File >Open wählen und dann die Datei öffnen.
10
Download des FBX-Plugins bei Autodesk: http://usa.autodesk.com/adsk/servlet/item?siteID=123112&id=7851647
Seite 29 von 48
Leitfaden zum Motion Capturing - 11. Data-Processing mit MotionBuilder
11. Data-Processing mit MotionBuilder
11.1 User-Interface
(1) Title Bar und Menu Bar
(2) 3D Workspace
Wird auch als Viewer Window bezeichnet. Mit View- und Display-Options, 3D-Navigation und
Toolbar im rechten Bereich.
(3) Character Controls
Für die Animation eines Characters über ein Control Rig (Kontrollgerüst). Dort lassen sich ebenfalls
Bewegungsquelle und Ansichtsmodi einstellen.
(4) Transport Controls
Kontrollen zum Abspielen des Animationsclips.
(5) Navigator
Zweiteilung in linke Seite Scene Browser und rechte Seite Asset Settings. In den Tabs stehen
mehrere Modi zur Auswahl: Dopesheet (zeigt Keyframes an), FCurves (Function Curve stellt
Bewegungsdaten grafisch dar), Story (Komposition von Animationsclips), Motion Blend (optional für
das Blending), Animation Trigger (Bereitstellen von Animationen, die über Auslöseimpulse gestartet
werden).
(6) Asset Browser
Zweiteilung in linke Seite View Options und rechte Seite Browser Pane.
Seite 30 von 48
Leitfaden zum Motion Capturing - 11. Data-Processing mit MotionBuilder
11.2 Mappen der Bewegungsdaten auf den Actor
In MotionBuilder funktioniert das Mapping der MoCap-Daten grundsätzlich über eine
Zwischeninstanz namens Actor, der die Bewegungen aufnimmt und schließlich auf einen
11
Character überträgt. Der Actor ist anatomisch geformt und besitzt menschliche Proportionen.
Nachfolgend ist der Ablauf in MotionBuider kurz geschildert, bevor die Vorgehensweise im
nächsten Abschnitt detailliert erklärt wird:
Als erstes werden die MoCap-Daten importiert und ein Actor erstellt. Danach passen wir die
Proportionen des Actors an die Markerpositionen der Bewegungsdaten an. Dadurch wird die
saubere Übertragung der Bewegungsdaten gewährleistet. Nach der Anpassung erfolgt das
Anbinden der MoCap-Daten an den Actor. Hierzu müssen die entsprechenden Marker den
Cells (vordefinierte Stellen in den Actor Controls) zugeordnet werden, damit der Actor sich an
ihnen orientieren kann.
Ein in Maya erstelltes, im FBX-Format gespeichertes Skeleton (meist mit seiner 3D-Figur) wird
in den 3D Workspace importiert und charakterisiert (Nutzung des „Character“-Templates
sowie Zuordnen der Skeleton-Bones zu diesem). Nach der Charakterisierung stehen
unterschiedliche Funktionen in MotionBuilder bereit, mit denen sich die Bewegungen des
Skeletons beeinflussen lassen. Wenn der Bewegungsablauf des Skeletons wie gewünscht
angepasst wurde, kann die Animation geplottet und exportiert werden.
Zwei Hinweise vorab:
Die Marker sollten im Idealfall in Richtung Z-Achse gerichtet sein, worauf bei der MoCapAufnahme bereits geachtet wurde. Andernfalls können sie in MotionBuilder rotiert werden.
Oft funktioniert das Undo in MotionBuilder nicht, oder nur für wenige Schritte, was das
Arbeiten mit MotionBuilder wesentlich erschwert.
11
1.
Starte das Programm MotionBuilder und importiere die C3D-Datei von Vicon, die die
MoCap-Daten enthält. Nutze dazu das Menü >File >Import, selektiere „Vicon (*.c3d)“ als
Dateityp.
2.
Nach dem Import erscheinen Bewegungspunkte, die Marker im Screen:
Der Character ist in MotionBuilder eine abstrakte Vorlage für den Knochenaufbau der Figur, sie ist jedoch weder Knochen
noch Geometrie.
Seite 31 von 48
Leitfaden zum Motion Capturing - 11. Data-Processing mit MotionBuilder
3.
Als nächstes einen „Actor“ aus dem Asset Browser in den 3D-Workspace ziehen:
4.
Klicke auf „Actor“ im Asset Browser, halte den Mousebutton gedrückt und zieh den Actor
in den 3D-Workspace, dann erscheint:
Hinweis: In dieser Beispiel-Abbildung blickt der importierte Actor standardgemäß in
Richtung der Z-Achse, jedoch wurden die MoCap-Daten in Richtung positiver X-Achse
aufgenommen, sodass der Actor rotiert und transliert werden muss, um auf die Marker zu
mappen.
Actor den Markern anpassen
Hier ist es außerordentlich hilfreich, wenn Fotos vom Performer vorliegen, als Referenz für die
Original-Marker auf dem Realkörper.
1.
Als Nächstes den Actor und seine Körperteile skalieren, translieren und rotieren bis sie in
der „Wolke“ der Motion-Daten liegen. Die Tools dazu befinden sich auf der rechten
Toolbar. Nutze auch die Masks (Icons am Ende der Toolbar) für andere Select-Modi.
2.
Beim Ausrichten mit der Hüfte anfangen, dann zu den Extremitäten hin anpassen (von der
Hüfte zu den Armen und dem Kopf; vom Unterkörper zu den Füße hin), da Abhängigkeiten der verschiedenen Elemente zueinander bestehen. Weiterhin darauf achten, dass
die Bewegungspunkte auf der Actor-Oberfläche positioniert werden.
Seite 32 von 48
Leitfaden zum Motion Capturing - 11. Data-Processing mit MotionBuilder
3.
Hilfreiche Tipps an dieser Stelle:
Strg+A für Ansichtswechsel
Strg+1 für die Ein-Fenster-Ansicht, Strg+4 für die Vier-Fenster-Ansicht
Taste „T“ für Translation, „R“ für Rotation, „S“ für Scaling
Taste „F“ für Framing (Zentrieren des ausgewählten Elements in Fenstermitte)
Eventuell versteckte Marker können sich im Actor-Körper befinden, nutze daher auch den
X-Ray-Modus: >View >X-Ray.
Translieren des Actors auf die „Wolke“ der MoCap-Daten (4-Fenster-Ansicht)
Anpassen der Proportionen des Actors an die Bewegungspunkte
Seite 33 von 48
Leitfaden zum Motion Capturing - 11. Data-Processing mit MotionBuilder
3D-Marker auf der Oberfläche des Actors
Liste aller Marker:
6 Marker je Arm
5 Marker am Kopf
3 Marker je Schulter
1 Marker auf Sternum (vorne, Mitte der Brust)
2 Marker auf Rücken (hinten, Mitte oben)
3 Marker auf der Lendenwirbelsäule
4 Marker auf der Taille (vorne und Seite)
3 Marker je Bein (Oberschenkel, Knie, Unterschenkel)
4 Marker je Fuß
insgesamt 47 Vicon-Marker
Sechs Marker je Arm
Seite 34 von 48
Leitfaden zum Motion Capturing - 11. Data-Processing mit MotionBuilder
4 Marker an der Taille, 3 Marker je Bein, 4 Marker je Fuß
Zuordnen der Marker zum Actor
1. Gehe zum Navigator, klicke auf „MarkerSet...“ und dann auf „Create“.
2.
Die Zuordnung der Marker erfolgt, indem jeder Marker im 3D-Workspace selektiert und
mit gedrückter Alt-Taste auf die entsprechende Körpersektion, die sogenannte Cell,
gezogen wird. Jede Cell kann maximal 5 Marker aufnehmen.
insgesamt werden 32 Marker benutzt
Seite 35 von 48
Leitfaden zum Motion Capturing - 11. Data-Processing mit MotionBuilder
Zuordnung:
Cell
Anzahl
Namen
Kopf
4
LFHD, RFHD, LBHD, RBHD
Schultern
je 2
LFTShould, LRRShould,
RFTShould, RRRShould
Brust
2
STRN, MidBack
Hüfte (Waist)
4
LFWT, RFWT, LBWT, RBWT
Ellbogen
je 1
LELB, RELB
Hand
je 1
LWRIST, RWRIST
Finger
je 2
LPINKY, LTHUMB
RPINKY, RTHUMB
Knie
je 1
LKNE, RKNE
Schienbein
je 1
LSHN, RSHN
Hacken (Ankle)
je 1
LANK, RANK
Zehen (Toe)
je 2
LTOE, LMT5, RTOE, RMT5
Im 3D Workspace erscheint ein weißer Marker um einen blauen Marker (MoCap-Daten)
herum, wenn er dem Skeleton-Modell in den Actor Settings zugeordnet wurde.
Marker-Set exportieren (HIK-Datei)
1. Klicke auf „MarkerSet...“ in den Actor Settings und wähle Export.
2.
Das Marker-Set wird als .hik-Datei gespeichert und kann mit anderen Aufnahmen (der
gleichen Session) wieder verwendet werden. Somit erspart sich das Produktionsteam
Zeit, da die Anpassung des Actor-Körpers zu den Markern nur einmal durchgeführt
werden muss.
Seite 36 von 48
Leitfaden zum Motion Capturing - 11. Data-Processing mit MotionBuilder
Aktivieren des Characters
1. In den Actor Settings auf „Snap“ klicken, damit die Offsets berechnet werden und das
Mapping aktiviert wird.
2.
Wähle in der sich öffnenden Dialogbox „TR“ (Translation und Rotation) aus, um die
Offsets des Marker-Sets zu kalkulieren.
3.
Der Actor ist nun aktiviert und die Marker-Positionen sind seinen Körperteilen angepasst.
Das Marker-Set verbindet die Marker und den Actor, die optischen Daten sind nun
gemappt. Jetzt besteht die Möglichkeit, den Actor als Bewegungsquelle für eine
charakterisierte 3D-Figur zu nutzen.
Hinweis: In den Actor Settings kann der Actor über “Active” an- und ausgeschaltet werden.
MoCap-Daten auf Actor gemappt
4.
Da es zu kleinen Fehlern kommen kann (siehe Fuß in unterer Abbildung), muss die Szene
nachbearbeitet werden, dazu mehr in Kapitel 11.5 Fehlerkorrektur:
Kleine Fehler an der Fußspitze
Seite 37 von 48
Leitfaden zum Motion Capturing - 11. Data-Processing mit MotionBuilder
Wiederverwendung des Marker-Sets (HIK-Datei)
Nachdem neue Bewegungsdaten als C3D-Datei und ein neuer Actor importiert wurden,
einfach die HIK-Datei importieren, dazu:
1.
Auf „MarkerSet...“ in den Actor Settings klicken und „Import“ wählen.
2.
Als nächstes alle optischen Datenpunkte (auch “root”, grüne Sphere) markieren und mit
gedrückter ALT-Taste in den Model Teil (<No model>) neben Reference ziehen.
3.
Nun setzt MotionBuilder automatisch alle Marker an die richtigen Stellen.
4.
„Active“ klicken und der Actor snapt auf die Bewegungsdaten. Nun bewegt sich der Actor
entsprechend der MoCap-Daten.
11.2 Skeleton charakterisieren und mit Actor verbinden
Achtung: Die Joints des Skeletons der importierten 3D-Figur sollten entsprechend der
Namenskonventionen von MotionBuilder benannt sein. Siehe hierzu Kapitel 10. Erstellen
eines Skeletons in Maya:
Wichtiger Hinweis: In MotionBuilder werden nur die Bewegungen anhand des Skeletons
bearbeitet, der Körper der 3D-Figur hat keinen Einfluss. Das heißt, es reicht aus, das Skeleton
aus Maya zu exportieren und in MotionBuilder zu charakterisieren, darauf die Bewegungen zu
mappen und es wieder zurück nach Maya zu exportieren.
Es ist jedoch ratsam, das Skeleton mit seiner 3D-Figur zu importierten, da Bewegungen und
eventuelle Verformungen dadurch visuell besser zu verfolgen sind.
3D-Figur mit Skeleton importieren
1. 3D-Figur mit Skeleton importieren (ohne Animation) mittels des Menüs: >File >Merge...
Seite 38 von 48
Leitfaden zum Motion Capturing - 11. Data-Processing mit MotionBuilder
2.
Nach dem Import der 3D-Figur bitte aus dem Asset Browser unter Templates - Characters
einen „Character“ nehmen und ihn auf die Hüfte des 3D-Characters ziehen
12
(“Characterize” klicken und dann “Biped” wählen).
3.
Der „Character“ erscheint nun im Navigator (links in nachstehender Abbildung), klicke
doppelt auf ihn, um die Character Definition und die Character Settings zu öffnen:
Mapping List und Naming Template noch nicht zugewiesen
4.
Sofern die Namenskonventionen von MotionBuilder eingehalten wurden, muss nur auf
“Extract Naming Template” geklickt werden und die Zuweisungen von SkeletonElementen zu Character-Elementen wird automatisch vorgenommen (Mapping).
Nodes des Skeletons sind der Mapping List zugeordnet
5.
12
Wenn das Skeleton nicht den Namenskonventionen entspricht, müssen die Nodes einzeln
per gedrückter ALT-Taste aus dem 3D Workspace in die Character-Definitionen (Mapping
List und Naming Template) gezogen werden.
Die Abkürzung Biped meint das englische Wort Bipedalism, was das Stehen oder Fortbewegen auf zwei Beinen meint.
Seite 39 von 48
Leitfaden zum Motion Capturing - 11. Data-Processing mit MotionBuilder
Actor und Skeleton verbinden
1. Wähle den Character in der Baumstruktur auf der linken Seite des Navigators, klicke auf
den Tab „Character Settings“ und wählte unter „Input Type: Actor Input“, danach bei
„Active“ den Haken setzen.
2.
Sobald “Active” geklickt wurde, snapt der 3D-Body auf den Actor:
3.
Nun kann die Animation geplottet und exportiert werden (siehe nächstes Kapitel).
Seite 40 von 48
Leitfaden zum Motion Capturing - 11. Data-Processing mit MotionBuilder
11.4 Plotting und Weiterverwendung
Plotten der Bewegungsdaten auf ein Skeleton
Unter Plotting, Baking oder Burning versteht man das Übertragen von Bewegungsdaten auf
ein Skeleton.
Die Bewegung des Skeletons ist auf der Bearbeitungsstufe „Actor“ von diesem abgeleitet und
es gibt keine wirklichen Daten für die Elemente des Skeletons (Gelenke bzw. Joints).
1.
Um in MotionBuilder zu plotten, muss in den Character Settings auf „Plot Character…“
geklickt werden.
2.
Anschließend kann das fertige Skeleton über >File >Export im FBX-Format exportiert
werden.
Nach dem Plotten der Daten werden Rotations- und Translationsdaten in die Joints hinein
platziert. Danach ist es das Skeleton allein, das sich aufgrund seiner nun eigenen Daten
bewegt, die Bewegungsdaten sind mit ihm verschmolzen.
Wählt man einen Joint aus und betrachtet seine Daten in den FCurves, so sind jetzt alle
Rotationen und Translationen für diesen Joint erkennbar. Dort können direkte Veränderungen
vorgenommen werden.
Weiterverwendung
1.
Export der Animation zu Maya
Nach dem Plotten auf das Skeleton kann dieses wie bereits oben beschrieben über >File
>Export als FBX-Datei exportiert und in Maya, in die bereits erstellte Szene, wieder
importiert werden. Dazu in Maya unter >File >Import... die Datei auswählen und darauf
achten, dass im sich öffnenden Dialogfenster die einfache Merge-Option gewählt ist. Nach
dem Import sollten sich die Bewegungsdaten des Skeletons von selbst auf das Skeleton
in Maya übertragen.
2.
Weitere Exportformate
Neben dem FBX-Format und einem FBX-Konvertierungsmodus (>File >FBX Converter)
stehen in MotionBuilder weitere Formate für den Export zur Verfügung:
3.
•
BVH Biovision - für hierarchische oder skelettbasierte Daten
•
HTR Motion Analysis - hierarchische Transformationen und Rotationen
•
AMC / ASF Acclaim - Dualformat, ASF mit Skeleton-Definition, AMC mit MoCap-Daten
•
TRC - Format für Aufnahmen mit Motion Analysis
•
C3D Vicon - Format für Aufnahmen mit Vicon Systemen
•
3DS 3D Studio Scene - 3ds Max Scene-Format
•
DXF Scene - Vektorformat ASCII, das 2D- und 3D-Daten enthält
•
OBJ Object File - für den Export von Objektinformationen
Rendering in MotionBuilder
MotionBuilder bietet neben den Export-Möglichkeit auch ein Rendering an, damit lässt
sich die Szene in den Formaten: AVI, MOV, JPG, TGA, TIF, TIFF, YUV und SWF Flash
rendern. Der Zugriff erfolgt über das Menü >File >Render und dort die entsprechende
Option auswählen.
Seite 41 von 48
Leitfaden zum Motion Capturing - 11. Data-Processing mit MotionBuilder
11.5 Fehlerkorrektur
Fehlerkorrekturen lassen sich gut über die Auxiliary Effectors (unterstützende Effektoren)
durchführen. Sie sind in vielen Situationen hilfreich, um die Bewegungen eines Skeletons zu
beeinflussen. Hier kommt die inverse Kinematik zur Geltung, bei der ausgehend von der Lage
eines Endeffektors die Bewegungen der übrigen Glieder berechnet werden.
Vorgehen in MotionBuilder:
1. Rechter Mausklick auf die Cell des entsprechenden Körperteils in den Character Controls
und wähle >Create Aux Effektor. Im 3D Workspace erscheint ein Auxiliary Effector
(gekennzeichnet als gelber Würfel):
2.
Dieser Effector kann verschoben und rotiert werden, um Position und Rotation des
Originalnodes (rote Kugel in der Abbildung) wie gewünscht zu verändern.
3.
Für jeden Framebereich muss die Position des Effectors gekeyt werden (Taste „K“
betätigen).
4.
Im Tab FCurves können Translationen, Rotationen und Skalierungen betrachtet und
verändert werden.
Seite 42 von 48
Leitfaden zum Motion Capturing - 11. Data-Processing mit MotionBuilder
5.
Auch die Intensitäten des Effectors können separat gekeyt und in den FCurves
nachträglich eingestellt werden:
Hinweis: Die Bearbeitung kann unter Umständen länger dauern, da Positionen und
Intensitäten von Frame zu Frame stark variieren können und das Keying entsprechend
variiert vorgenommen werden muss.
5.
Wenn die Bewegung geändert wurde und fertiggestellt ist, müssen die Änderungen auf
das Skeleton geplottet werden. Drücke hierzu Plot Character in den Character Settings.
Damit werden die Änderungen mit dem Skeleton verschmolzen und die Auxiliary Effectors
verschwinden.
6.
Anschließend kann das Skeleton mit den geänderten Bewegungsdaten als FBXAnimationsdatei oder die gesamte Szene mit Skeleton und 3D-Figur exportiert werden.
Hinweis: Die gekeyten XYZ-Positionen der Auxiliary Effectors werden beim einfachen
Speichern der FBX-Datei nicht gesichert, sofern man später daran weiterarbeiten möchte.
Die Änderungen müssen, um erhalten zu bleiben, in einem Arbeitsgang fertiggestellt und
geplottet werden.
11.6 Loops herstellen
Loops (Schleifen) meint Animationsclips, deren Anfangs- und End-Frame identisch sind. Die
Clips können aneinandergereiht werden und sich wiederholen, ohne dass der Betrachter
einen Übergang erkennt. Um dieses Ziel mit MotionBuilder zu erreichen, sind folgende
Arbeitsschritte notwendig:
Vorbereitung (Import)
1. Wähle >Layout >Editing (oder drücke den Shortcut: F3).
Seite 43 von 48
Leitfaden zum Motion Capturing - 11. Data-Processing mit MotionBuilder
2.
Klicke im Asset Browser mit der rechten Maustaste in eine leeren Stelle (templates),
wähle "add favorite path" und füge das Verzeichnis mit den Fbx-Dateien zu.
3.
Ziehe die FBX-Datei mit dem charakterisierten Skeleton in den 3D-Workspace und wähle
>FBX Open >>No Animation.
4.
Ziehe vom Asset Browser den Animationsclip (MoCap-Daten) in das Story Window (unter
das Feld des Time-Sliders, sog. Action Editor). Dadurch wird ein neuer Character Track
erstellt, der automatisch auf den Character mappt.
5.
Rechter Mausklick auf den „Character Track“ und wähle >Rename (z. B. "walk_source").
6.
Positioniere den Clip auf Frame 1 (mit der Maus verschieben).
7.
Rechter Mausklick ins Story Window und wähle >Frame Start/End (dadurch ist der
gesamte Clip sichtbar und kann komplett abgespielt werden).
Loop des Animationsclips
1. Suche einen Loop Point im ersten Teil des Animationsclips, das heißt eine Position, in der
sich ein Körperteil nicht bewegt, z. B. rechter Fuß vorne am Boden beim Linksschritt.
2.
Ziehe den Laufbalken von Frame 1 bis zum gewählten Frame (Loop-Eingang):
Seite 44 von 48
Leitfaden zum Motion Capturing - 11. Data-Processing mit MotionBuilder
3.
Suche als nächsten Frame einen Loop-Ausgang, also eine gleiche Position (für das
Beispiel: ein rechter Fuß erneut vorne am Boden) wie beim Loop-Eingang und ziehe den
Laufbalken von rechts auf diesen Frame (Loop-Ausgang).
4.
Nun verschiebe den Clip auf Frame 1. Danach rechter Mausklick auf den Balken und
wähle >Copy. Füge ihn dann am Ende des Clips ein. Jetzt wird ein Ghost Skeleton am
Ende des ersten Clips angezeigt (als Repräsentation für Frame 1 des zweiten Clips).
5.
Ziehe den neuen Clip über den Original-Clip, etwa zwei bis drei Frames weit, als
Initialisierung des Cross-Fadings.
6.
Benutze jetzt das Match Tool
im Story Window und wähle:
Default-Einstellungen für das Matching
7.
Durch das Matching blendet der erste Clip in den zweiten über bzw. in seinen eigenen
Anfang. Daher kann jetzt nur der erste Clip geplottet und genutzt werden. Gehe zum
letzten Frame des ersten Clips und trage die Frame-Nummer (in Abbildung als Beispiel
Frame 33) rechts im Feld „E“ (End) ein.
8.
Danach rechter Mausklick auf den Animationsclip
Kontextmenü >Process Track/Subtracks To New Clip...
und wähle aus dem
Seite 45 von 48
Leitfaden zum Motion Capturing - 11. Data-Processing mit MotionBuilder
9.
Belasse die Default-Einstellungen und drücke den OK-Button. Danach erscheint ein
Fenster „Save Clip“, dort das Verzeichnis zur Speicherung des neuen Clips auswählen
und den Dateinamen (FBX-Format).
Default-Einstellungen
10. Nun befindet sich im Story Window der neue geloopte Clip unter dem ersten Clip.
11. Schalte die anderen Clips auf “M” (mute), erweitere den neuen Clip (nach rechts
ausdehnen) und wähle "Frame Start/End". Jetzt wird der Clip geloopt abgespielt.
11.7 Kombination von Motion Tracks (Blending)
Es ist manchmal sinnvoll und gewünscht, zwei oder mehr Animationsclips zu einem einzigen
zu kombinieren. Dies wird über das sogenannte Blending realisiert.
Vorab ist die gleiche Vorbereitung nötig, wie unter Kapitel 11.5 bei Vorbereitung (Import)
beschrieben. Danach sind folgende Schritte vorzunehmen:
1.
Zwei Animationsclips nacheinander in das Story Window (Action Editor) ziehen.
2.
Eine passende Übergangsposition für beide Clips finden (z. B. linker Fuß bewegt sich
nicht).
3.
Jetzt beide Clips auf diese Übergänge verkürzen (1. Clip von rechts verkürzen, 2. Clip von
links an verkürzen).
Clip 1 und Clip 2 bis zur Übergangsposition verkürzen
4.
Beide Clips zusammen bringen:
Seite 46 von 48
Leitfaden zum Motion Capturing - 11. Data-Processing mit MotionBuilder
5.
Rechter Mausklick ins Story Window und wähle >Frame Start/End (dadurch ist der
gesamte Clip sichtbar und kann komplett abgespielt werden).
5.
Klicke auf
beim Character Track im Story Window, um die Ghost-Projektion des
Skeletons vom zweiten Clip zu aktivieren.
6.
mit
Wähle den zweiten Clip im Story Window und benutze das Match Tool
folgenden Einstellungen (bei Match Object das zu matchende Körperelement wählen):
Einstellungen für das Matching anpassen
7.
Nach dem Betätigen des OK-Buttons snappen die beiden gewählten Körperelement
zusammen.
Blending
1. Es ist zu beobachten, dass nur das gematchte Körperteil exakt blendet, jedoch der Rest
des Körpers von der Pose des 1. Clips in die Pose des 2. Clips springt. Daher muss
dazwischen überblendet werden:
2.
Ziehe den zweiten Clip entsprechend der Abbildung über den ersten Clip (dazu die
kleinen Dreiecke unten verschieben) sowie den ersten Clip über den zweiten Clip.
Dadurch wird ein Blending via Interpolation vorgenommen.
3.
Geringfügige Geschwindigkeitsunterschiede können beim Übergang von Clip 1 zu Clip 2
auftreten, daher sollte versucht werden, das Blending entsprechend zu verlängern bzw.
zu verkürzen. Eine andere Möglichkeit ist das Plotten und Exportieren des Clips und die
anschließende Nachbearbeitung des neuen Clips über Key-Frames in den FCurves.
Seite 47 von 48
Leitfaden zum Motion Capturing - 11. Data-Processing mit MotionBuilder
11.8 Tipps und Tricks
Shortcuts
Doppelklick mit Mouse in leeren Space des 3D Workspace, um ein Objekt zu deselektieren.
"J" gedrückt halten und im 3D Workspace klicken & ziehen, um die Animation vorwärts oder
rückwärts abzuspielen.
"F" betätigen, um ein Objekt im Viewer zu zentrieren.
Strg + I schaltet zwischen mehreren Kameras um.
Strg + Pos1 springt zum ersten Frame der Animation.
Steuerung im 3D Workspace:
Shift + Linker Mausklick: Translation Camera
Strg + Linker Mausklick: Dolly Camera
Shift + Strg + Linker Mausklick: Rotation Camera
Im Story-Window:
"A" drücken, um alle Animationsclips zu framen.
Strg + linker Mausklick + Ziehen, um zu zoomen.
Shift + linker Mausklick, um nach rechts oder links zu navigieren.
Mit Strg-W kann man zwischen der Ansicht 3D Workspace und schematische Ansicht
(Hierarchie) umschalten. Dadurch wird die Selektierung bestimmter Elemente vereinfacht.
Die Farbe des Hintergrunds im 3D Workspace von MotionBuilder lässt sich verändern. Dies
ist über die Veränderung der Kamera-Eigenschaften im Asset Browser bei Producer
Perspective unter Background Color möglich.
Glossar
Ein detailliertes englischsprachiges Glossar ist in der Vicon iQ 2.5 System Reference Volume I (Revision 1.0) auf den Seiten 409 bis 438 vorzufinden.
Seite 48 von 48