advanced computer graphics (fall 2010) cs 283, lecture 24: motion capture ravi ramamoorthi...

Post on 15-Jan-2016

216 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Advanced Computer Graphics Advanced Computer Graphics (Fall 2010)(Fall 2010)

CS 283, Lecture 24:

Motion Capture

Ravi Ramamoorthi

http://inst.eecs.berkeley.edu/~cs283/fa10

Most slides courtesy James O’Brien from CS294-13 Fall 2009

Motion CaptureMotion Capture Record motion from physical actors

Use motion to animate virtual objects Retarget and optimize as needed

General trend of data-driven appearance (BRDF)

Captures “Signature” of ActorCaptures “Signature” of Actor

Types of Objects and MotionsTypes of Objects and Motions

Human, whole body

Portions of body

Facial animation

Animals

Puppets and cartoons

Capture EquipmentCapture Equipment

Types of capture equipmentTypes of capture equipment

Active OpticalActive Optical

Facial MoCapFacial MoCap

Parameter EstimationParameter Estimation

Manipulating Motion DataManipulating Motion Data

WYSIWYG vs WYSIAYG

Basic Tasks Adjusting Blending Transitioning Retargeting

Building graphs

Nature of Motion DataNature of Motion Data

AdjustingAdjusting

AdjustmentAdjustment

Define desired motion function in parts

Select adjustment function from nice space, such as C2 B-splines

Spread modification over reasonable time period User selects support radius

AdjustingAdjusting

BlendingBlending

Given two motions make a motion that combines qualities of both

Assume same DOFs

Assume same parameter mappings

BlendingBlending

Blending slow walk and fast walk

Time WarpingTime Warping

Define timewarp functions to align features

Blending in TimeBlending in Time

Blend in normalized time

Blend playback rate

Blending and ContactsBlending and Contacts

Blending may still break features in original motion

BlendingBlending

Add explicit constraints to key points Enforce with IK over time

Blending / AdjustmentsBlending / Adjustments

Multivariate BlendingMultivariate Blending

Extend blending to multivariate interpolation

Scattered data interpolation methods as needed

TransitionsTransitions

Transition from one motion to another

CyclificationCyclification

Special case of transitioning

Both motions are the same

Need to modify beginning and end simultaneously

Motion GraphsMotion Graphs

Hand built motion graphs often used in games Significant amount of work required Limited number of transitions by design

Motion graphs can also be built automatically

Motion GraphsMotion Graphs

Similarity Metric Measurement of how similar two frames of motion are Based on joint angles or point positions Must include some measure of velocity Ideally independent of capture setup and skeleton

Capture a “large” database of motions

Compute similarity between all pairs of frames Can be expensive, but preprocessing step May be many good edges

Motion GraphsMotion Graphs

Random Walks Start in some part of the graph, randomly make transitions Avoid dead ends Useful for “idling” behaviors

Transitions Use blending algorithm we discussed

Motion GraphsMotion Graphs

Can have requirements

Start at particular location, End at particular

Pass through some points

Can be solved using dynamic programming

Efficiency may require approximate solution

Notion of goodness of a solution

ReorderingReordering

Content TagsContent Tags

Integrating PhysicsIntegrating Physics Simulation added to base motion

Inverse dynamics for matching

Oracle to assess results

Integrating PhysicsIntegrating Physics

Integrating PhysicsIntegrating Physics

Suggested Reading 1Suggested Reading 1

Suggested Reading 2Suggested Reading 2

top related