Interactive Motion Editing Presented by Troy McMahon.
-
date post
19-Dec-2015 -
Category
Documents
-
view
218 -
download
0
Transcript of Interactive Motion Editing Presented by Troy McMahon.
![Page 1: Interactive Motion Editing Presented by Troy McMahon.](https://reader036.fdocuments.us/reader036/viewer/2022062421/56649d265503460f949fd52c/html5/thumbnails/1.jpg)
Interactive Motion EditingInteractive Motion Editing
Presented by Troy McMahonPresented by Troy McMahon
![Page 2: Interactive Motion Editing Presented by Troy McMahon.](https://reader036.fdocuments.us/reader036/viewer/2022062421/56649d265503460f949fd52c/html5/thumbnails/2.jpg)
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.](https://reader036.fdocuments.us/reader036/viewer/2022062421/56649d265503460f949fd52c/html5/thumbnails/3.jpg)
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.](https://reader036.fdocuments.us/reader036/viewer/2022062421/56649d265503460f949fd52c/html5/thumbnails/4.jpg)
Video 1Video 1
![Page 5: Interactive Motion Editing Presented by Troy McMahon.](https://reader036.fdocuments.us/reader036/viewer/2022062421/56649d265503460f949fd52c/html5/thumbnails/5.jpg)
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.](https://reader036.fdocuments.us/reader036/viewer/2022062421/56649d265503460f949fd52c/html5/thumbnails/6.jpg)
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.](https://reader036.fdocuments.us/reader036/viewer/2022062421/56649d265503460f949fd52c/html5/thumbnails/7.jpg)
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.](https://reader036.fdocuments.us/reader036/viewer/2022062421/56649d265503460f949fd52c/html5/thumbnails/8.jpg)
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.](https://reader036.fdocuments.us/reader036/viewer/2022062421/56649d265503460f949fd52c/html5/thumbnails/9.jpg)
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.](https://reader036.fdocuments.us/reader036/viewer/2022062421/56649d265503460f949fd52c/html5/thumbnails/10.jpg)
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.](https://reader036.fdocuments.us/reader036/viewer/2022062421/56649d265503460f949fd52c/html5/thumbnails/11.jpg)
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.](https://reader036.fdocuments.us/reader036/viewer/2022062421/56649d265503460f949fd52c/html5/thumbnails/12.jpg)
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.](https://reader036.fdocuments.us/reader036/viewer/2022062421/56649d265503460f949fd52c/html5/thumbnails/13.jpg)
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.](https://reader036.fdocuments.us/reader036/viewer/2022062421/56649d265503460f949fd52c/html5/thumbnails/14.jpg)
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.](https://reader036.fdocuments.us/reader036/viewer/2022062421/56649d265503460f949fd52c/html5/thumbnails/15.jpg)
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.](https://reader036.fdocuments.us/reader036/viewer/2022062421/56649d265503460f949fd52c/html5/thumbnails/16.jpg)
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.](https://reader036.fdocuments.us/reader036/viewer/2022062421/56649d265503460f949fd52c/html5/thumbnails/17.jpg)
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.](https://reader036.fdocuments.us/reader036/viewer/2022062421/56649d265503460f949fd52c/html5/thumbnails/18.jpg)
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.](https://reader036.fdocuments.us/reader036/viewer/2022062421/56649d265503460f949fd52c/html5/thumbnails/19.jpg)
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.](https://reader036.fdocuments.us/reader036/viewer/2022062421/56649d265503460f949fd52c/html5/thumbnails/20.jpg)
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.](https://reader036.fdocuments.us/reader036/viewer/2022062421/56649d265503460f949fd52c/html5/thumbnails/21.jpg)
ResultsResults
© Lee, Shinn, Siggraph 1999
![Page 22: Interactive Motion Editing Presented by Troy McMahon.](https://reader036.fdocuments.us/reader036/viewer/2022062421/56649d265503460f949fd52c/html5/thumbnails/22.jpg)
ResultsResults
Video 2Video 2Video 3Video 3Video 4Video 4
![Page 23: Interactive Motion Editing Presented by Troy McMahon.](https://reader036.fdocuments.us/reader036/viewer/2022062421/56649d265503460f949fd52c/html5/thumbnails/23.jpg)
AnalysisAnalysis
© Lee, Shinn, Siggraph 1999
![Page 24: Interactive Motion Editing Presented by Troy McMahon.](https://reader036.fdocuments.us/reader036/viewer/2022062421/56649d265503460f949fd52c/html5/thumbnails/24.jpg)
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.](https://reader036.fdocuments.us/reader036/viewer/2022062421/56649d265503460f949fd52c/html5/thumbnails/25.jpg)
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