Title: Physically Based Motion Transformation
1Physically BasedMotion Transformation
- Zoran Popovic
- Andrew Witkin
- SIGGRAPH 99
2Objective
- Transform previously generated motion while
preserving its physical properties - User-controlled editing process
- Good for re-use of highly detailed motions
- Map motion between characters with different DOFs
(control complex systems with simpler ones)
3Related Work
- Physical (forward) dynamics
- Spacetime constraints
- Robot controller design
- Motion capture (and editing)
- Biomechanics
4Forward Dynamics
- Highly realistic (physically accurate)
- Determining muscle forces is difficult
- Changing one frame drastically affects all others
5Spacetime Constraints
- Helps with realism and controllability
- Specify pose constraints that must be met
- Specify objective function or metric of
performance or style - Minimize objective function while satisfying
constraints - Does not scale up to complex characters (poor
time complexity) - Sensitive to starting position of optimization
(may not converge)
6Robot Controller Design
- Drive actuator forces based on environment
- A set of reflexes that control muscles which
produce motion - Controllers adjust to changing environment
- Determining controllers that produce realistic
motion is difficult
7Motion Capture
- Get motion data from the real world
- Highly realistic
- Unstructured, uncorrelated motion
- Editing typically has no notion of dynamics
- Large motion deformations give unwanted artifacts
8Biomechanics
- Similarity in multi-legged locomotion of
kinematically different animals - Studies optimality of natural motion (reaffirms
spacetime optimization)
9Algorithm Outline
Complex Model
Original Motion
Final Motion
Simplification
Reconstruction
Simplified Model
Motion Fitting
?
Spacetime Motion Model
Transformed Spacetime Motion
Spacetime Edit
Change motion parameters Introduce new pose
constraints Change character kinematics or
objective function
Remap the change in motion of the simplified
model onto the original complex model
Create abstract character model with minimal
DOFs Map input motion onto simplified model
Find spacetime optimization problem with solution
most closely matching simplified character motion
10Character Simplification
- Why?
- Improves performance convergence
- Captures fundamental movement properties
11Three Simplification Principles
- DOF removal
- e.g. Remove DOFs in linkages
- Node subtree removal
- Replace hierarchy with a single object
- Exploit symmetric movement
- e.g. Two legs with identical jump kinematics
12Mapping motion onto simplified model
- Overdetermined problem
- simplified character has much fewer DOFs
- Use Handles
- correlate properties between complex and
simplified motion sequences
13Handles
- Functions that can be evaluated on both complex
and simplified models. - Measurements of body properties
- eg. positions, directions, distances
14Handles
- complex motion handles h0(q0(t))
- simplified motion handles hS(qS(t))
- Find motion of simplified character
- Ed h0(q0(ti)) - hS(qS(ti))2
- minimize Ed over qS(ti) for each frame ti
- At least one handle per DOF
15Spacetime Motion Fitting
- Must make the simplified motion dynamically
correct (and realistic) - Find the spacetime optimization problem most
closely matching simplified motion
16Spacetime Motion Fitting
- Character has two kinds of DOFs - q(t)
- kinematic qk(t)) and muscle qm(t))
- Character is constrained by
- pose constraints Cp
- mechanical constraints Cm
- dynamics constraints Cd
- Optimization problem
- minimize objective function, E(q(t),t), over all
DOFs, q(t), subject to - Cp(q(t),t) 0 Cm(q(t),t) 0 Cd(q(t),t)
0
17Muscles
- Biomechanically accurate models are too complex
- Use generalized muscle forces, Q
- apply accelerations directly onto DOFs
- minimum set of muscles for full range of motion
- unstable spacetime optimization with poor
convergence - Use damped generalized muscle force
- Velocity-dependent damping encourages smoothness
18Constraints
- Most constraints are determined by input motion
- Avoid non-essential constraints
- Simplification may introduce constraints
- Motion editing may introduce constraints
19Objective Function
- Motion in nature assumed to be optimal
- Original motion close to optimum - YAY!
- Two components
- deviation from original motion Ed
- muscle Smoothness
-
- Gradually decrease wd to zero
20Spacetime Edit
- Modify dynamic properties of the simplified model
of the animation
21Spacetime Edit
- Change constraints
- positions, timings
- Add new constraints
- Change the character model
- Add new components to the objective function
- After editing, re-solve spacetime optimization
problem - Already close to solution. Converges quickly.
22Motion Reconstruction
- Construct final motion from original complex
motion and simplified spacetime motions
23Motion Reconstruction
- Now have three sets of handles
- original motion handles h0(q0)
- spactime fit handles hs(qs)
- transformed spacetime handles ht(qt)
- Combine hf(qf) h0(q0) (ht(qt) - hs(qs))
- Solve for qf?
- Number of handles much smaller than DOFs
- problem is underdetermined
24Motion Reconstruction
- Formulate sequence of per-frame subproblems
- minimize Edm(q0,qf) over qf subject to
- C(q) 0
- hf(qf) h0(q0) (ht(qt) - hs(qs))
- Follow transformed handles and satisfy
constraints while trying to remain close to
original motion. - Objective function measures deviation from
original motion
25Motion Reconstruction
- Objective function for deviation
- Edd (qf q0)2
- produces undesirable results
- each DOF must be scaled carefully
- Use a different objective function
- Edm - Measures relative mass displacement between
two poses - Done per-frame, so resulting motion may appear
non-smooth - define smoothing intervals and use the smoothness
objective function
26Limitations
- Best for high-energy, dynamic movement
- but non-realism not as big an issue in lethargic,
kinematic movement - The motion-fitting step is mostly manual
- Intuitive and amortized over large numbers of
transformations - Motion fitting affects what kinds of
transformations can be done - Final motion not absolutely physically correct,
but preserves essential properties
27Results
- Fitting 15-20 minutes
- Transformation optimization 2 minutes