Interactive Motion Editing - TAMU Computer Science Faculty Pages

advertisement
Interactive Motion Editing
Presented by Troy McMahon
Interactive Motion Editing

Adapting existing motions to compensate
for variations in characters and
environments.
Motivation
Reusability:
 Interactive Motion Editing allows us to
generate new motions using existing
motion clips to
 This prevents us from having to capture
these new motions.
Video 1
Motivation

Allows us to use motion capture date
obtained for one character to animate
another character of different dimensions.
© Lee, Shinn,
Siggraph 1999
Related Work
Motion Warping, Siggraph 95
 Michael Gleicher, “Retargeting Motion to
New Characters”, Siggraph 98
 S. Lee, G. Wolberg, and S. Y. Shin,
“Scattered Data Interpolation With
Multilevel B-Splines”, 1995

Overview

Features of the target motion are
represented as spacetime constraints.

Modify existing motions to conform to
these constraints.

Goal: Satisfy constraints while
preserving characteristics of original
motion.

This is an optimization problem
Overview of Algorithm

Intra-frame relationship


Use inverse kinematics to satisfy constraints
Inter-frame relationship

Use curve fitting to make motions smoother
Overview of Algorithm
Use inverse kinematics to conform motion
to constraints
 Use curve fitting to reduce jerkiness
 repeat

Inverse Kinematics
Constraints reduce the number of
variables (by making some variables
dependent on others)
 Use inverse kinematics to determine the
optimal motion under these constraints

“elbow circle”
[Korein and Badler 82]
Inverse Kinematics Solver
Used to adjust each frame to conform to
constraints
 This may introduce jerkiness

Displacement Maps
Spline curves: The displacement of a
coordinate as a function of time
 Displacement maps: Array of spline curves
over common knot sequence

Motion Displacement Mapping
Map a displacement vector, d(t), to the
existing motion vector, m(t), to obtain a new
motion vector, m’(t), that satisfies the
constraints.
 m’(t)=m(t)d(t)

d(t) is not known
 B-Spline Approximation
technique

© Lee, Shinn, Siggraph 1999
B-Spline Approximation technique
Hill climbing algorithm
 Each iteration: add a curve, di, that brings
the displacement closer to d(t)
 Curves go from course to fine
 For a sufficiently large h, d(t)d1…dh
 As hi, d1…dhid(t)

Multilevel Spline Fitting
f 0  f1
f0
f 0  f1  f 2


f1
f2
© Lee, Shinn, Siggraph 1999
Hieratical Motion Fitting
mh=(..(mod1) d2)… dh)
 mi=(mi-1di)
 At each level this algorithm uses the
approximation from the previous level to
generate a new approximation

Hieratical Motion Fitting
At each level apply inverse kinetics to the
motion from the previous level
 Compute the displacement for each frame
 Use curve fitting to calculate a
displacement map
 Use the displacement map to generate a
new motion

Motion Fitting Algorithm
For every constraint in C
Input:
Original Motion,
Constraints
Inverse
Kinematics
Solver
Compute
Displacement
For Frame
Compute
Displacement
Map, di
Do h times
Output:
mh
Choosing An Initial Guess
The better the initial guess, the fewer
levels you have to compute in order to
obtain a good approximation.
 Guess obtained by shifting the root in the
original motion.

Knot Sequences
The number of knots
doubles with each
iteration of motion fitting
algorithm.
 The more knots, the
more closely the motion
conforms to the
constraints

© Lee, Shinn,
Siggraph 1999
Results
© Lee, Shinn,
Siggraph 1999
Results
Video 2
 Video 3
 Video 4

Analysis
© Lee, Shinn, Siggraph 1999
Limitations
Does not take into consideration physics
of the motions.
 Resulting actions may not be natural or
realistic.

References

Jehee Lee, Sung Yong Shin, “A
Hierarchical Approach to Interactive
Motion Editing”, Siggraph 99
Download