SlideShare a Scribd company logo
Kinect Motion Capture
    for Filmmaking
         3/23/13
How does the Kinect work?




                            Photo by y3rdua
Getting Started: Hardware
You will need:
• A Kinect, or generic equivalent such as the Asus Xtion
• USB/AC adapter cable, if you have a Kinect that was bundled
  with the Xbox (don’t buy the Microsoft adapter, the cheap ones
  work fine)
• Enough space to perform
Getting Started: Software

OpenNI driver bundle:
simple-openni.googlecode.com

KinectToPin:
kinecttopin.com
Two competing SDKs
OpenNI
• Free and open source
• Works with all models of Kinect as well as other devices such as the Asus Xtion.
• Cross platform – even supports ARM processors and Android


Microsoft (official) SDK
• More tracking points
• Estimates occluded joints and hand/foot rotation
• Special case capture modes (seated figure etc.)
• Only works with Kinect For Windows – on Windows
KinectToPin
Kinect Motion Capture for After Effects
What is KinectToPin?



                              +
       A standalone motion
                                  A UI panel for After Effects
        capture application
Rig 2D character models in 3D
“Working Backwards”

Traditional Animation                 Motion Capture Workflow
1. Start with scene already           1. Start with full color, full-motion
    storyboarded and timed out           characters
2. Create sketches of key poses for   2. Refine blocking and movement;
    each character                       add facial animation
3. Add in-between drawings for        3. Choose shots and timing of
    movement                             edit, add camera moves
4. Color and composite characters     4. (Optional) Re-record any
    in final scene                       performances that aren’t working
“Working Backwards”



Think of it like working with raw footage.
Character Design
2D models in 3D space
Why multi-layered characters?

Single-layer model:   Multi-layered:
Design Tips
• “Break” your model at every
  joint.
• Build in overlap so joints have
  room to rotate without
  disconnecting.
• Parts that fall in front of and
  behind another layer (e.g. the
  hair of the model at left)
  should be two layers.
• The hands, feet and head can
  each have multiple elements.
Cutouts
Raster-based characters drawn or cut out of existing images or photographs.


• Work big if you want to be able to zoom in on your characters
• When cutting out layers, use “Refine Edge” to smooth your
  edges and clean up any extra junk that got selected
• Clone/heal/paint in portions that will be missing or problematic
  when the model changes pose
Vector-Based Characters
Drawn with math, not pixels. Easier to break into layers – but watch out.


• Can be built in Illustrator, Photoshop or with AE Shape Layers
• Vector-based characters are not infinitely scalable as you’d
  expect: rigging with AE’s Puppet Tool generates a mesh at a set
  resolution.
• Building puppets with vector layers adds an extra step: they
  need to be precomposed before rigging.
Motion Capture
Recording with KinectToPin
Setting up your space to record




                6 – 10 feet
Capturing
• Record 15-point 3D skeletal
  tracking data
• Capture in sync to dialogue
• Remote control with a standard
  presentation remote
• Open source and cross-platform:
  runs on OpenNI, built in
  Processing, also works with
  generic sensors like the Asus
  Xtion
Acting for Kinect
• The Kinect can’t record what it can’t see.
   • Keep your entire body in the camera’s range
   • Face the camera when capturing
   • Watch out for occluded joints (sitting down, putting your hands behind
     your back etc. can cause it to lose the track)
• It’s surprisingly good at picking up subtle posture shifts, but not
  smaller motions like laughter.
• Use a different performer for each character if possible
Data formats for export
KinectToPin can output quite a few data, but the ones we’ll be
using today are:
• XML (Native recording format, no export required)
• After Effects 3D Point Controls (CS5.5+)
• After Effects 2D Point Controls (CS4+)

Tip: Edit KinectToPin’s settings.txt file to choose your output
formats.
Lunch.
Importing tracking data
Native import or copy & paste
Meet the KinectToPin UI Panel.
• Create character
  templates
• 2D and 3D setups
• Native XML import
  (SLOW)
• Automatically add
  expressions to smooth
  tracking data
• Automate rigging
The Puppet Tool
THREE OR MORE PINS ON ONE LAYER:   TWO PINS EACH, MULTIPLE LAYERS:
Elbows don’t bend this way. Ow.    Rotation with stretch and squash!
AE Puppet best practices
• Work BIG. Start high-res, scale down in the puppet comp, then
  scale back up in the project comp (enable Collapse
  Transformations).
• Precompose if you’re using vectors or shape layers
• Keep multiple angles of the same character in sync

                      High-res
    Start big.        Character
                       Layers
                                             Project Comp
                                                            End big.
                                   Rigging
                                  Template
Character Rigging
Using the KinectToPin UI panel
Retargeting for arbitrary character
shapes
It’s easy!
Just grab a red control null and move it to the appropriate
position.
Quick auto-lip sync
1. Select audio layer and choose
“Convert Audio to Keyframes.”
Quick auto-lip sync
2. Alt-click the stopwatch to add an expression. Use the
pickwhip to connect the audio keyframes to the mouth animation.
Quick auto-lip sync
3. Size the audio data to fit. Use this expression:

      audio = [your audio keyframes];
      linear(audio,sourceMin,sourceMax,targetMin,targetMax)
         Lowest value of source data

                         Highest value of source data

                                        Closed mouth (probably 0)

                                                        Widest possible open mouth
One last thought:

Embrace the limitations of
      the format.
Further non-K2P tools

FREE                                  COMMERCIAL
Brekel Kinect                         iPi Soft
   Open-source capture for 3D            Uses two Kinects to record
   animation (Windows-only)              www.ipisoft.com
   www.brekel.com

                                      NI Mate
Duik
                                         Kinect for OSC/MIDI/Blender
   Inverse kinematics plugin for AE
                                         www.ni-mate.com
   www.duduf.net
Get in Touch
Victoria Nece
www.victorianece.com
@FakeGreenDress

More Related Content

What's hot

Odessa .NET User Group - Kinect v2
Odessa .NET User Group - Kinect v2Odessa .NET User Group - Kinect v2
Odessa .NET User Group - Kinect v2
Dmytro Mindra
 
Behavior Tree in Unreal engine 4
Behavior Tree in Unreal engine 4Behavior Tree in Unreal engine 4
Behavior Tree in Unreal engine 4
Huey Park
 
Open GL for Mobile UI
Open GL for Mobile UIOpen GL for Mobile UI
Open GL for Mobile UI
Anil N
 
Application of ml kit from firebase
Application of ml kit from firebaseApplication of ml kit from firebase
Application of ml kit from firebase
Susantini Behera
 
Making VR Games and Experiences in UE4
Making VR Games and Experiences in UE4Making VR Games and Experiences in UE4
Making VR Games and Experiences in UE4
Unreal Engine
 
Unite2013-gavilan-pdf
Unite2013-gavilan-pdfUnite2013-gavilan-pdf
Unite2013-gavilan-pdfDavid Gavilan
 
Gam02 kinect1, kinect2
Gam02   kinect1, kinect2Gam02   kinect1, kinect2
Gam02 kinect1, kinect2DotNetCampus
 
Making High Quality Interactive VR with Unreal Engine Luis Cataldi
Making High Quality Interactive VR with Unreal Engine Luis CataldiMaking High Quality Interactive VR with Unreal Engine Luis Cataldi
Making High Quality Interactive VR with Unreal Engine Luis Cataldi
Luis Cataldi
 
Bring the Future of Entertainment to Your Living Room: MPEG-I Immersive Video...
Bring the Future of Entertainment to Your Living Room: MPEG-I Immersive Video...Bring the Future of Entertainment to Your Living Room: MPEG-I Immersive Video...
Bring the Future of Entertainment to Your Living Room: MPEG-I Immersive Video...
Intel® Software
 
Snap Lens Tutorial
Snap Lens TutorialSnap Lens Tutorial
Snap Lens Tutorial
Mark Billinghurst
 
Introduction to mobile programming with Androids.
Introduction to mobile programming with Androids. Introduction to mobile programming with Androids.
Introduction to mobile programming with Androids.
Maksim Golivkin
 
Let there be light
Let there be lightLet there be light
Let there be light
Intel® Software
 
Handling Dark Mode on Android and iOS
Handling Dark Mode on Android and iOSHandling Dark Mode on Android and iOS
Handling Dark Mode on Android and iOS
Mike Wolfson
 
Make believe - Droidcon UK 2015
Make believe - Droidcon UK 2015Make believe - Droidcon UK 2015
Make believe - Droidcon UK 2015
Shanee Nishry
 

What's hot (14)

Odessa .NET User Group - Kinect v2
Odessa .NET User Group - Kinect v2Odessa .NET User Group - Kinect v2
Odessa .NET User Group - Kinect v2
 
Behavior Tree in Unreal engine 4
Behavior Tree in Unreal engine 4Behavior Tree in Unreal engine 4
Behavior Tree in Unreal engine 4
 
Open GL for Mobile UI
Open GL for Mobile UIOpen GL for Mobile UI
Open GL for Mobile UI
 
Application of ml kit from firebase
Application of ml kit from firebaseApplication of ml kit from firebase
Application of ml kit from firebase
 
Making VR Games and Experiences in UE4
Making VR Games and Experiences in UE4Making VR Games and Experiences in UE4
Making VR Games and Experiences in UE4
 
Unite2013-gavilan-pdf
Unite2013-gavilan-pdfUnite2013-gavilan-pdf
Unite2013-gavilan-pdf
 
Gam02 kinect1, kinect2
Gam02   kinect1, kinect2Gam02   kinect1, kinect2
Gam02 kinect1, kinect2
 
Making High Quality Interactive VR with Unreal Engine Luis Cataldi
Making High Quality Interactive VR with Unreal Engine Luis CataldiMaking High Quality Interactive VR with Unreal Engine Luis Cataldi
Making High Quality Interactive VR with Unreal Engine Luis Cataldi
 
Bring the Future of Entertainment to Your Living Room: MPEG-I Immersive Video...
Bring the Future of Entertainment to Your Living Room: MPEG-I Immersive Video...Bring the Future of Entertainment to Your Living Room: MPEG-I Immersive Video...
Bring the Future of Entertainment to Your Living Room: MPEG-I Immersive Video...
 
Snap Lens Tutorial
Snap Lens TutorialSnap Lens Tutorial
Snap Lens Tutorial
 
Introduction to mobile programming with Androids.
Introduction to mobile programming with Androids. Introduction to mobile programming with Androids.
Introduction to mobile programming with Androids.
 
Let there be light
Let there be lightLet there be light
Let there be light
 
Handling Dark Mode on Android and iOS
Handling Dark Mode on Android and iOSHandling Dark Mode on Android and iOS
Handling Dark Mode on Android and iOS
 
Make believe - Droidcon UK 2015
Make believe - Droidcon UK 2015Make believe - Droidcon UK 2015
Make believe - Droidcon UK 2015
 

Similar to K2P workshop 3-23-13

DIY motion capture with KinectToPin
DIY motion capture with KinectToPinDIY motion capture with KinectToPin
DIY motion capture with KinectToPin
FakeGreenDress
 
Kinect Hacks for Dummies
Kinect Hacks for DummiesKinect Hacks for Dummies
Kinect Hacks for Dummies
Tomoto Washio
 
Nui e biometrics in windows 10
Nui e biometrics in windows 10Nui e biometrics in windows 10
Nui e biometrics in windows 10
Marco D'Alessandro
 
Lecture 1 Introduction to VR Programming
Lecture 1 Introduction to VR ProgrammingLecture 1 Introduction to VR Programming
Lecture 1 Introduction to VR Programming
Kobkrit Viriyayudhakorn
 
Kinect v1+Processing workshot fabcafe_taipei
Kinect v1+Processing workshot fabcafe_taipeiKinect v1+Processing workshot fabcafe_taipei
Kinect v1+Processing workshot fabcafe_taipei
Mao Wu
 
Данило Ульянич “C89 OpenGL for ARM microcontrollers on Cortex-M. Basic functi...
Данило Ульянич “C89 OpenGL for ARM microcontrollers on Cortex-M. Basic functi...Данило Ульянич “C89 OpenGL for ARM microcontrollers on Cortex-M. Basic functi...
Данило Ульянич “C89 OpenGL for ARM microcontrollers on Cortex-M. Basic functi...
Lviv Startup Club
 
Community Day 2013 - The Power of Kinect
Community Day 2013 - The Power of KinectCommunity Day 2013 - The Power of Kinect
Community Day 2013 - The Power of Kinect
Tom Kerkhove
 
New 2D World-Building, Animation & Graphics Features in Unity
New 2D World-Building, Animation & Graphics Features in UnityNew 2D World-Building, Animation & Graphics Features in Unity
New 2D World-Building, Animation & Graphics Features in Unity
Unity Technologies
 
Xtext, diagrams and ux
Xtext, diagrams and uxXtext, diagrams and ux
Xtext, diagrams and ux
Dr. Jan Köhnlein
 
11 Best Animation Tools You Should Definitely Try.pptx
11 Best Animation Tools You Should Definitely Try.pptx11 Best Animation Tools You Should Definitely Try.pptx
11 Best Animation Tools You Should Definitely Try.pptx
e-Definers Technology
 
TMD2063 | Digital Animation - Chapter 3
TMD2063 | Digital Animation - Chapter 3TMD2063 | Digital Animation - Chapter 3
TMD2063 | Digital Animation - Chapter 3
Diyana Harithuddin
 
Kinect Arabic Interfaced Drawing Application
Kinect Arabic Interfaced Drawing ApplicationKinect Arabic Interfaced Drawing Application
Kinect Arabic Interfaced Drawing Application
Yasser Hisham
 
ICS3211 lecture 08
ICS3211 lecture 08ICS3211 lecture 08
ICS3211 lecture 08
Vanessa Camilleri
 
Pervasive Checkers
Pervasive CheckersPervasive Checkers
Pervasive Checkers
hopkins28160
 
The not so short introduction to Kinect
The not so short introduction to KinectThe not so short introduction to Kinect
The not so short introduction to Kinect
AXM
 
Mirko Lucchese - Deep Image Processing
Mirko Lucchese - Deep Image ProcessingMirko Lucchese - Deep Image Processing
Mirko Lucchese - Deep Image Processing
MeetupDataScienceRoma
 
2 track kinect@Bicocca - hardware e funzinamento
2   track kinect@Bicocca - hardware e funzinamento2   track kinect@Bicocca - hardware e funzinamento
2 track kinect@Bicocca - hardware e funzinamentoMatteo Valoriani
 
Becoming a kinect hacker innovator v2
Becoming a kinect hacker innovator v2Becoming a kinect hacker innovator v2
Becoming a kinect hacker innovator v2
Jeff Sipko
 
T3con10_html5_kosack_zinner
T3con10_html5_kosack_zinnerT3con10_html5_kosack_zinner
T3con10_html5_kosack_zinner
Robert Zinner
 

Similar to K2P workshop 3-23-13 (20)

DIY motion capture with KinectToPin
DIY motion capture with KinectToPinDIY motion capture with KinectToPin
DIY motion capture with KinectToPin
 
Kinect Hacks for Dummies
Kinect Hacks for DummiesKinect Hacks for Dummies
Kinect Hacks for Dummies
 
Nui e biometrics in windows 10
Nui e biometrics in windows 10Nui e biometrics in windows 10
Nui e biometrics in windows 10
 
Lecture 1 Introduction to VR Programming
Lecture 1 Introduction to VR ProgrammingLecture 1 Introduction to VR Programming
Lecture 1 Introduction to VR Programming
 
Kinect v1+Processing workshot fabcafe_taipei
Kinect v1+Processing workshot fabcafe_taipeiKinect v1+Processing workshot fabcafe_taipei
Kinect v1+Processing workshot fabcafe_taipei
 
Данило Ульянич “C89 OpenGL for ARM microcontrollers on Cortex-M. Basic functi...
Данило Ульянич “C89 OpenGL for ARM microcontrollers on Cortex-M. Basic functi...Данило Ульянич “C89 OpenGL for ARM microcontrollers on Cortex-M. Basic functi...
Данило Ульянич “C89 OpenGL for ARM microcontrollers on Cortex-M. Basic functi...
 
Community Day 2013 - The Power of Kinect
Community Day 2013 - The Power of KinectCommunity Day 2013 - The Power of Kinect
Community Day 2013 - The Power of Kinect
 
New 2D World-Building, Animation & Graphics Features in Unity
New 2D World-Building, Animation & Graphics Features in UnityNew 2D World-Building, Animation & Graphics Features in Unity
New 2D World-Building, Animation & Graphics Features in Unity
 
Xtext, diagrams and ux
Xtext, diagrams and uxXtext, diagrams and ux
Xtext, diagrams and ux
 
11 Best Animation Tools You Should Definitely Try.pptx
11 Best Animation Tools You Should Definitely Try.pptx11 Best Animation Tools You Should Definitely Try.pptx
11 Best Animation Tools You Should Definitely Try.pptx
 
TMD2063 | Digital Animation - Chapter 3
TMD2063 | Digital Animation - Chapter 3TMD2063 | Digital Animation - Chapter 3
TMD2063 | Digital Animation - Chapter 3
 
Kinect Arabic Interfaced Drawing Application
Kinect Arabic Interfaced Drawing ApplicationKinect Arabic Interfaced Drawing Application
Kinect Arabic Interfaced Drawing Application
 
ICS3211 lecture 08
ICS3211 lecture 08ICS3211 lecture 08
ICS3211 lecture 08
 
Pervasive Checkers
Pervasive CheckersPervasive Checkers
Pervasive Checkers
 
The not so short introduction to Kinect
The not so short introduction to KinectThe not so short introduction to Kinect
The not so short introduction to Kinect
 
Mirko Lucchese - Deep Image Processing
Mirko Lucchese - Deep Image ProcessingMirko Lucchese - Deep Image Processing
Mirko Lucchese - Deep Image Processing
 
2 track kinect@Bicocca - hardware e funzinamento
2   track kinect@Bicocca - hardware e funzinamento2   track kinect@Bicocca - hardware e funzinamento
2 track kinect@Bicocca - hardware e funzinamento
 
Becoming a kinect hacker innovator v2
Becoming a kinect hacker innovator v2Becoming a kinect hacker innovator v2
Becoming a kinect hacker innovator v2
 
Blendertut
BlendertutBlendertut
Blendertut
 
T3con10_html5_kosack_zinner
T3con10_html5_kosack_zinnerT3con10_html5_kosack_zinner
T3con10_html5_kosack_zinner
 

Recently uploaded

Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
mikeeftimakis1
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Albert Hoitingh
 
Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1
DianaGray10
 
Free Complete Python - A step towards Data Science
Free Complete Python - A step towards Data ScienceFree Complete Python - A step towards Data Science
Free Complete Python - A step towards Data Science
RinaMondal9
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
DianaGray10
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
Kari Kakkonen
 
Elevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object CalisthenicsElevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object Calisthenics
Dorra BARTAGUIZ
 
Climate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing DaysClimate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing Days
Kari Kakkonen
 
PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)
Ralf Eggert
 
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
Neo4j
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
Aftab Hussain
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
DanBrown980551
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
James Anderson
 
Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
Adtran
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
SOFTTECHHUB
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
DianaGray10
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
Laura Byrne
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
Ana-Maria Mihalceanu
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
ControlCase
 

Recently uploaded (20)

Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
 
Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1
 
Free Complete Python - A step towards Data Science
Free Complete Python - A step towards Data ScienceFree Complete Python - A step towards Data Science
Free Complete Python - A step towards Data Science
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
 
Elevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object CalisthenicsElevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object Calisthenics
 
Climate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing DaysClimate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing Days
 
PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)
 
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
 
Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
 

K2P workshop 3-23-13

  • 1. Kinect Motion Capture for Filmmaking 3/23/13
  • 2. How does the Kinect work? Photo by y3rdua
  • 3. Getting Started: Hardware You will need: • A Kinect, or generic equivalent such as the Asus Xtion • USB/AC adapter cable, if you have a Kinect that was bundled with the Xbox (don’t buy the Microsoft adapter, the cheap ones work fine) • Enough space to perform
  • 4. Getting Started: Software OpenNI driver bundle: simple-openni.googlecode.com KinectToPin: kinecttopin.com
  • 5. Two competing SDKs OpenNI • Free and open source • Works with all models of Kinect as well as other devices such as the Asus Xtion. • Cross platform – even supports ARM processors and Android Microsoft (official) SDK • More tracking points • Estimates occluded joints and hand/foot rotation • Special case capture modes (seated figure etc.) • Only works with Kinect For Windows – on Windows
  • 7. What is KinectToPin? + A standalone motion A UI panel for After Effects capture application
  • 8. Rig 2D character models in 3D
  • 9. “Working Backwards” Traditional Animation Motion Capture Workflow 1. Start with scene already 1. Start with full color, full-motion storyboarded and timed out characters 2. Create sketches of key poses for 2. Refine blocking and movement; each character add facial animation 3. Add in-between drawings for 3. Choose shots and timing of movement edit, add camera moves 4. Color and composite characters 4. (Optional) Re-record any in final scene performances that aren’t working
  • 10. “Working Backwards” Think of it like working with raw footage.
  • 13. Design Tips • “Break” your model at every joint. • Build in overlap so joints have room to rotate without disconnecting. • Parts that fall in front of and behind another layer (e.g. the hair of the model at left) should be two layers. • The hands, feet and head can each have multiple elements.
  • 14. Cutouts Raster-based characters drawn or cut out of existing images or photographs. • Work big if you want to be able to zoom in on your characters • When cutting out layers, use “Refine Edge” to smooth your edges and clean up any extra junk that got selected • Clone/heal/paint in portions that will be missing or problematic when the model changes pose
  • 15. Vector-Based Characters Drawn with math, not pixels. Easier to break into layers – but watch out. • Can be built in Illustrator, Photoshop or with AE Shape Layers • Vector-based characters are not infinitely scalable as you’d expect: rigging with AE’s Puppet Tool generates a mesh at a set resolution. • Building puppets with vector layers adds an extra step: they need to be precomposed before rigging.
  • 17. Setting up your space to record 6 – 10 feet
  • 18. Capturing • Record 15-point 3D skeletal tracking data • Capture in sync to dialogue • Remote control with a standard presentation remote • Open source and cross-platform: runs on OpenNI, built in Processing, also works with generic sensors like the Asus Xtion
  • 19.
  • 20. Acting for Kinect • The Kinect can’t record what it can’t see. • Keep your entire body in the camera’s range • Face the camera when capturing • Watch out for occluded joints (sitting down, putting your hands behind your back etc. can cause it to lose the track) • It’s surprisingly good at picking up subtle posture shifts, but not smaller motions like laughter. • Use a different performer for each character if possible
  • 21. Data formats for export KinectToPin can output quite a few data, but the ones we’ll be using today are: • XML (Native recording format, no export required) • After Effects 3D Point Controls (CS5.5+) • After Effects 2D Point Controls (CS4+) Tip: Edit KinectToPin’s settings.txt file to choose your output formats.
  • 23. Importing tracking data Native import or copy & paste
  • 24. Meet the KinectToPin UI Panel. • Create character templates • 2D and 3D setups • Native XML import (SLOW) • Automatically add expressions to smooth tracking data • Automate rigging
  • 25. The Puppet Tool THREE OR MORE PINS ON ONE LAYER: TWO PINS EACH, MULTIPLE LAYERS: Elbows don’t bend this way. Ow. Rotation with stretch and squash!
  • 26. AE Puppet best practices • Work BIG. Start high-res, scale down in the puppet comp, then scale back up in the project comp (enable Collapse Transformations). • Precompose if you’re using vectors or shape layers • Keep multiple angles of the same character in sync High-res Start big. Character Layers Project Comp End big. Rigging Template
  • 27. Character Rigging Using the KinectToPin UI panel
  • 28. Retargeting for arbitrary character shapes
  • 29. It’s easy! Just grab a red control null and move it to the appropriate position.
  • 30. Quick auto-lip sync 1. Select audio layer and choose “Convert Audio to Keyframes.”
  • 31. Quick auto-lip sync 2. Alt-click the stopwatch to add an expression. Use the pickwhip to connect the audio keyframes to the mouth animation.
  • 32. Quick auto-lip sync 3. Size the audio data to fit. Use this expression: audio = [your audio keyframes]; linear(audio,sourceMin,sourceMax,targetMin,targetMax) Lowest value of source data Highest value of source data Closed mouth (probably 0) Widest possible open mouth
  • 33. One last thought: Embrace the limitations of the format.
  • 34. Further non-K2P tools FREE COMMERCIAL Brekel Kinect iPi Soft Open-source capture for 3D Uses two Kinects to record animation (Windows-only) www.ipisoft.com www.brekel.com NI Mate Duik Kinect for OSC/MIDI/Blender Inverse kinematics plugin for AE www.ni-mate.com www.duduf.net
  • 35. Get in Touch Victoria Nece www.victorianece.com @FakeGreenDress

Editor's Notes

  1. Why DIY MoCap?Motion capture is now cheap and accessibleNo longer need a giant studioIt’s FAST.Ideal use cases: short-turnaround animation, rapid prototyping etc.
  2. Microsoft SDK vs. OpenNI
  3. Can add multiple motion tracks and duplicate nullsPin names need to match control nulls
  4. 2D vs. 3D: Avoiding the “Uncanny Valley”Awesome glitches