Physically Based Motion Transformation

27
Physically Based Motion Transformation Zoran Popović Andrew Witkin SIGGRAPH ‘99

description

Physically Based Motion Transformation. Zoran Popović Andrew Witkin SIGGRAPH ‘99. Objective. Transform previously generated motion while preserving its physical properties User-controlled editing process Good for re-use of highly detailed motions - PowerPoint PPT Presentation

Transcript of Physically Based Motion Transformation

Page 1: Physically Based Motion Transformation

Physically BasedMotion Transformation

Zoran Popović

Andrew Witkin

SIGGRAPH ‘99

Page 2: Physically Based Motion Transformation

Objective

• 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)

Page 3: Physically Based Motion Transformation

Related Work

• Physical (forward) dynamics

• Spacetime constraints

• Robot controller design

• Motion capture (and editing)

• Biomechanics

Page 4: Physically Based Motion Transformation

Forward Dynamics

• Highly realistic (physically accurate)

• Determining muscle forces is difficult

• Changing one frame drastically affects all others

Page 5: Physically Based Motion Transformation

Spacetime 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)

Page 6: Physically Based Motion Transformation

Robot 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

Page 7: Physically Based Motion Transformation

Motion 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

Page 8: Physically Based Motion Transformation

Biomechanics

• Similarity in multi-legged locomotion of kinematically different animals

• Studies optimality of natural motion (reaffirms spacetime optimization)

Page 9: Physically Based Motion Transformation

ComplexModel

SimplifiedModel

Algorithm Outline

Original Motion

SpacetimeMotion Model

Final Motion

TransformedSpacetime Motion

Δ

Simplification

Motion Fitting

Spacetime Edit

Reconstruction

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

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

Page 10: Physically Based Motion Transformation

Character Simplification• Why?

– Improves performance & convergence– Captures fundamental movement properties

ComplexModel

SimplifiedModel

Original Motion

SpacetimeMotion Model

Final Motion

TransformedSpacetime Motion

Δ

Simplification

Motion Fitting

Spacetime Edit

Reconstruction

Page 11: Physically Based Motion Transformation

Three 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

Page 12: Physically Based Motion Transformation

Mapping motion onto simplified model

• Overdetermined problem– simplified character has much fewer DOFs

• Use Handles– correlate properties between complex and

simplified motion sequences

Page 13: Physically Based Motion Transformation

Handles

• Functions that can be evaluated on both complex and simplified models.

• Measurements of body properties– eg. positions, directions, distances

Page 14: Physically Based Motion Transformation

Handles

• 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

Page 15: Physically Based Motion Transformation

Spacetime Motion Fitting• Must make the simplified motion

dynamically correct (and realistic)

• Find the spacetime optimization problem most closely matching simplified motion

ComplexModel

SimplifiedModel

Original Motion

SpacetimeMotion Model

Final Motion

TransformedSpacetime Motion

Δ

Simplification

Motion Fitting

Spacetime Edit

Reconstruction

Page 16: Physically Based Motion Transformation

Spacetime 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

Page 17: Physically Based Motion Transformation

• 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

Muscles

iiiii mkdmksk qqkqqkQ

Page 18: Physically Based Motion Transformation

Constraints

• Most constraints are determined by input motion– Avoid non-essential constraints

• Simplification may introduce constraints

• Motion editing may introduce constraints

Page 19: Physically Based Motion Transformation

Objective 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 mdd EEwE

2mmE q

Page 20: Physically Based Motion Transformation

Spacetime Edit• Modify dynamic properties of the

simplified model of the animation

ComplexModel

SimplifiedModel

Original Motion

SpacetimeMotion Model

Final Motion

TransformedSpacetime Motion

Δ

Simplification

Motion Fitting

Spacetime Edit

Reconstruction

Page 21: Physically Based Motion Transformation

Spacetime 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.

Page 22: Physically Based Motion Transformation

Motion Reconstruction• Construct final motion from original

complex motion and simplified spacetime motions

ComplexModel

SimplifiedModel

Original Motion

SpacetimeMotion Model

Final Motion

TransformedSpacetime Motion

Δ

Simplification

Motion Fitting

Spacetime Edit

Reconstruction

Page 23: Physically Based Motion Transformation

Motion 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

Page 24: Physically Based Motion Transformation

Motion 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

Page 25: Physically Based Motion Transformation

Motion 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:2mmE q

Page 26: Physically Based Motion Transformation

Limitations• 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

Page 27: Physically Based Motion Transformation

Results

• Fitting: 15-20 minutes

• Transformation optimization: ~2 minutes