interactive motion editing presented by troy mcmahon

25
Interactive Motion Interactive Motion Editing Editing Presented by Troy McMahon Presented by Troy McMahon

Post on 19-Dec-2015

218 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Interactive Motion Editing Presented by Troy McMahon

Interactive Motion EditingInteractive Motion Editing

Presented by Troy McMahonPresented by Troy McMahon

Page 2: Interactive Motion Editing Presented by Troy McMahon

Interactive Motion EditingInteractive Motion Editing

Adapting existing motions to compensate Adapting existing motions to compensate for variations in characters and for variations in characters and environments. environments.

Page 3: Interactive Motion Editing Presented by Troy McMahon

MotivationMotivation

Reusability: Reusability: Interactive Motion Editing allows us to Interactive Motion Editing allows us to

generate new motions using existing generate new motions using existing motion clips to motion clips to

This prevents us from having to capture This prevents us from having to capture these new motions.these new motions.

Page 4: Interactive Motion Editing Presented by Troy McMahon

Video 1Video 1

Page 5: Interactive Motion Editing Presented by Troy McMahon

MotivationMotivation

Allows us to use motion capture date Allows us to use motion capture date obtained for one character to animate obtained for one character to animate another character of different dimensions.another character of different dimensions.

© Lee, Shinn,

Siggraph 1999

Page 6: Interactive Motion Editing Presented by Troy McMahon

Related WorkRelated Work

Motion Warping, Siggraph 95Motion Warping, Siggraph 95Michael Gleicher, “Retargeting Motion to Michael Gleicher, “Retargeting Motion to

New Characters”, Siggraph 98New Characters”, Siggraph 98S. Lee, G. Wolberg, and S. Y. Shin, S. Lee, G. Wolberg, and S. Y. Shin,

“Scattered Data Interpolation With “Scattered Data Interpolation With Multilevel B-Splines”, 1995Multilevel B-Splines”, 1995

Page 7: Interactive Motion Editing Presented by Troy McMahon

OverviewOverviewFeatures of the target motion are Features of the target motion are

represented as spacetime constraints.represented as spacetime constraints.

Modify existing motions to conform to Modify existing motions to conform to these constraints.these constraints.

Goal: Satisfy constraints while preserving Goal: Satisfy constraints while preserving characteristics of original motion.characteristics of original motion.

This is an optimization problemThis is an optimization problem

Page 8: Interactive Motion Editing Presented by Troy McMahon

Overview of AlgorithmOverview of Algorithm

Intra-frame relationshipIntra-frame relationshipUse inverse kinematics to satisfy constraintsUse inverse kinematics to satisfy constraints

Inter-frame relationshipInter-frame relationshipUse curve fitting to make motions smootherUse curve fitting to make motions smoother

Page 9: Interactive Motion Editing Presented by Troy McMahon

Overview of AlgorithmOverview of Algorithm

Use inverse kinematics to conform motion Use inverse kinematics to conform motion to constraintsto constraints

Use curve fitting to reduce jerkinessUse curve fitting to reduce jerkiness repeatrepeat

Page 10: Interactive Motion Editing Presented by Troy McMahon

Inverse KinematicsInverse KinematicsConstraints reduce the number of Constraints reduce the number of

variables (by making some variables variables (by making some variables dependent on others)dependent on others)

Use inverse kinematics to determine the Use inverse kinematics to determine the optimal motion under these constraintsoptimal motion under these constraints

“elbow circle”[Korein and Badler 82]

“elbow circle”[Korein and Badler 82]

Page 11: Interactive Motion Editing Presented by Troy McMahon

Inverse Kinematics SolverInverse Kinematics Solver

Used to adjust each frame to conform to Used to adjust each frame to conform to constraintsconstraints

This may introduce jerkinessThis may introduce jerkiness

Page 12: Interactive Motion Editing Presented by Troy McMahon

Displacement MapsDisplacement Maps

Spline curves: The displacement of a Spline curves: The displacement of a coordinate as a function of time coordinate as a function of time

Displacement maps: Array of spline curves Displacement maps: Array of spline curves over common knot sequenceover common knot sequence

Page 13: Interactive Motion Editing Presented by Troy McMahon

Motion Displacement MappingMotion Displacement Mapping

Map a displacement vector, d(t), to the Map a displacement vector, d(t), to the existing motion vector, m(t), to obtain a new existing motion vector, m(t), to obtain a new motion vector, m’(t), that satisfies the motion vector, m’(t), that satisfies the constraints.constraints.

m’(t)=m(t)m’(t)=m(t)d(t)d(t)

© Lee, Shinn, Siggraph 1999

d(t) is not knownd(t) is not knownB-Spline Approximation B-Spline Approximation

techniquetechnique

Page 14: Interactive Motion Editing Presented by Troy McMahon

B-Spline Approximation techniqueB-Spline Approximation technique

Hill climbing algorithmHill climbing algorithmEach iteration: add a curve, dEach iteration: add a curve, dii, that brings , that brings

the displacement closer to d(t)the displacement closer to d(t)Curves go from course to fineCurves go from course to fineFor a sufficiently large h, d(t)For a sufficiently large h, d(t)dd11……ddhh

As hAs hii, d, d11……ddhhiid(t)d(t)

Page 15: Interactive Motion Editing Presented by Troy McMahon

Multilevel Spline FittingMultilevel Spline Fitting

0f0f

1f1f 2f2f

10 ff 10 ff 210 fff 210 fff

© Lee, Shinn, Siggraph 1999

Page 16: Interactive Motion Editing Presented by Troy McMahon

Hieratical Motion FittingHieratical Motion Fitting

mmhh=(..(m=(..(moodd11) ) dd22)… )… ddhh))

mmii=(m=(mi-1i-1ddii))At each level this algorithm uses the At each level this algorithm uses the

approximation from the previous level to approximation from the previous level to generate a new approximationgenerate a new approximation

Page 17: Interactive Motion Editing Presented by Troy McMahon

Hieratical Motion FittingHieratical Motion Fitting

At each level apply inverse kinetics to the At each level apply inverse kinetics to the motion from the previous levelmotion from the previous level

Compute the displacement for each frameCompute the displacement for each frameUse curve fitting to calculate a Use curve fitting to calculate a

displacement mapdisplacement mapUse the displacement map to generate a Use the displacement map to generate a

new motionnew motion

Page 18: Interactive Motion Editing Presented by Troy McMahon

Motion Fitting AlgorithmMotion Fitting Algorithm

Input:Original Motion,

Constraints

Inverse Kinematics

Solver

Compute Displacement

Map, di

Compute Displacement

For Frame

Output:mh

For every constraint in C

Do h times

Page 19: Interactive Motion Editing Presented by Troy McMahon

Choosing An Initial GuessChoosing An Initial Guess

The better the initial guess, the fewer The better the initial guess, the fewer levels you have to compute in order to levels you have to compute in order to obtain a good approximation.obtain a good approximation.

Guess obtained by shifting the root in the Guess obtained by shifting the root in the original motion.original motion.

Page 20: Interactive Motion Editing Presented by Troy McMahon

Knot SequencesKnot Sequences

The number of knots The number of knots doubles with each doubles with each iteration of motion fitting iteration of motion fitting algorithm.algorithm.

The more knots, the The more knots, the more closely the motion more closely the motion conforms to the conforms to the constraintsconstraints

© Lee, Shinn, Siggraph 1999

Page 21: Interactive Motion Editing Presented by Troy McMahon

ResultsResults

© Lee, Shinn, Siggraph 1999

Page 22: Interactive Motion Editing Presented by Troy McMahon

ResultsResults

Video 2Video 2Video 3Video 3Video 4Video 4

Page 23: Interactive Motion Editing Presented by Troy McMahon

AnalysisAnalysis

© Lee, Shinn, Siggraph 1999

Page 24: Interactive Motion Editing Presented by Troy McMahon

LimitationsLimitations

Does not take into consideration physics Does not take into consideration physics of the motions.of the motions.

Resulting actions may not be natural or Resulting actions may not be natural or realistic.realistic.

Page 25: Interactive Motion Editing Presented by Troy McMahon

ReferencesReferences

Jehee Lee, Sung Yong Shin, “A Jehee Lee, Sung Yong Shin, “A Hierarchical Approach to Interactive Hierarchical Approach to Interactive Motion Editing”, Siggraph 99Motion Editing”, Siggraph 99