1 / 18

Retargetting Motion to New Characters

Retargetting Motion to New Characters. Michael Gleicher Presented by David Del Vecchio. Outline. Motivation Working Toward a Solution Constraints and Objectives Traveling Through Space and Time Extensions Conclusions. Motivation: Why Do We Care?. Have one animated motion want another

Download Presentation

Retargetting Motion to New Characters

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Retargetting Motion to New Characters Michael Gleicher Presented by David Del Vecchio

  2. Outline • Motivation • Working Toward a Solution • Constraints and Objectives • Traveling Through Space and Time • Extensions • Conclusions

  3. Motivation: Why Do We Care? • Have one animated motion want another • For characters with identical structure, but different proportions • Manual tweaking is difficult and time consuming • Want to preserve high-level properties that are hard to define

  4. Simple Try 1 • Just reuse parameters of original motion in new motion with different character hmm … something’s not quite right …

  5. Simple Try 2 • Need to meet constraints, for instance foot touches floor • No problem, just use inverse kinematics to establish constraints each frame … better, but not very smooth …

  6. What’s the problem? • No global notion of constraints • Solving locally for each frame generates unwanted artifacts, can’t plan ahead • Reason: introduced high frequency motions

  7. Try 2 with Filtering • Ok, just apply a low-pass filter to remove unwanted high frequencies • But, may violate constraints • Want to preserve high frequencies in original motion, without introducing new ones

  8. Enough Failed Attempts • Need a way to solve the constrained optimization problem that takes the whole motion into account • Hmm … where have we seen this before?

  9. Spacetime Constraints • Mathematically encode all constraints and objectives • Not so easy to capture desirable aspects of original motion mathematically • More constraints and more complicated objective functions take longer to solve

  10. Tools for Traveling through Space and Time • Constraints • Identify features that must be present • Objective Functions • Guide solution to be close to original • Representation of Motion • Starting Point • Initial Solution for Solver

  11. Constraints qti = parameters of motion (joint angles) at time ti • Define constraint as: f(qti) = c • c is a constant • Constraint examples • Parameter’s value is in a certain range (joint limits) • Point on character is in specific location or within a range • Two points are a certain distance apart • Vector between points has a certain orientation

  12. Objective Functions • Goal: Minimize noticeable change • Hard to define, choose something simple instead • Minimize differences between new motion and original motions • Define functions of motion parameters • Original motion: • New (retargeted) Motion: • Difference between the two: • Objective Function:

  13. Representation • Want to minimize introduction of high frequencies • Choose representation of to achieve this • Cubic B-splines • Control point spacing determines frequency limit • Try having control points every 2, 4 or 8 frames (uniform spacing)

  14. Starting Point • Good initial motion can speed numerical solver • Start just by scaling motion to match scaled character • If needed translate motion to get as close as possible to satisfying constraints • Compute translation amount needed per frame (and low pass filter to remove high frequencies)

  15. Retargeting Procedure • Take original motion and identify constraints • Scale and translate to find initial estimate for solution, m1(t) • Choose representation for d(t), control point spacing • Solve non-linear constraint problem: find d(t) that will satisfy constraints when added to motion estimate from step 2 (use spacetime) • If constraints are not well satisfied, solve again using m1(t) + d(t) as initial motion in step 2 and choose a denser spacing in step 3

  16. Solving the Constrained Optimization Problem • Want to solve for control point values (call the vector of these x) • Define constraints and objective functions in terms of these control points • minimize g(x) subject to f(x) = c • g(x) = ½ xMx (a weighted sum of squares, diagonal matrix M gives weights) • In addition to SQP could use a non-linear least squares solver to minimize constraint residuals (distance from meeting constraints)

  17. Extensions • Morphing characters • When generating initial solution estimate, apply scaling and translation per frame • Characters with different structure • First use standard retargeting to a character whose dimensions roughly match those of the new character • Find correspondences (manually) between features of original and new character, make these constraints • Use retargeting with spacetime constraints again, to find a new motion that satisfies these constraints

  18. Conclusions • Basic retargeting works for characters with same structure, different limb lengths • Control point spacing is important for preserving desired frequencies • Enforcing uniformity across time is a limitation • Enforcing certain features of original motion may not produce natural retargeted motion

More Related