1 / 48

Motion Editing and Retargetting

Motion Editing and Retargetting. Jinxiang Chai. Outline. Motion editing [video, click here ] Motion retargeting [video, click here ]. Required Readings. Comparing Constraint-Based Motion Editing Methods Retargeting Motion to New Characters . Kinematic Motion Editing.

Download Presentation

Motion Editing and Retargetting

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. Motion Editing and Retargetting JinxiangChai

  2. Outline • Motion editing [video, click here] • Motion retargeting [video, click here]

  3. Required Readings • Comparing Constraint-Based Motion Editing Methods • Retargeting Motion to New Characters 

  4. Kinematic Motion Editing • Goal: Edit an input motion sequence to achieve new goals specified by the user

  5. Kinematic Motion Editing • Goal: Edit an input motion sequence to satisfy achieve new goals specified by the user e.g., edit the motion to meet new constraints

  6. Kinematic Motion Editing e.g., edit the motion to meet new constraints - could be multiple constraints Goal: Edit an input motion sequence to satisfy achieve new goals specified by the user

  7. Toy Examples • Edit 1D function to match user constraints m(t) Old motion M={m(t)| t=1,…,T} t

  8. Toy Examples • Edit 1D function to match user constraints m(t) Old motion M={m(t)| t=1,…,T} t

  9. Toy Examples • Edit 1D function to match user constraints - could be multiple constraints m(t) Old motion M={m(t)| t=1,…,T} t

  10. Toy Examples • Edit 1D function to match user constraints - could be multiple constraints m(t) Old motion m(t), t=1,…,T t So how can we generate a new motion M’ to satisfy new constraints c?

  11. Toy Examples: Idea #1 • Modify the motion m(t), t=1,…,T using new constraints C M(t) Old motion m(t), t=1,…,T t

  12. Toy Examples: Idea #1 • Modify the motion m(t), t=1,…,T using new constraints C m’(t) t Does this work?

  13. Toy Examples: Idea #1 • Modify the motion m(t), t=1,…,T using new constraints C m’(t) t Does this work? - probably not, the new motion is not smooth!

  14. Toy Examples: Idea #1 • Modify the motion m(t), t=1,…,T using new constraints C M’(t) t Does this work? - probably not, the new motion is not smooth! - filter the motion!

  15. Toy Examples: Idea #1 • Modify the motion m(t), t=1,…,T using new constraints C • Filter the edited motion M’ M’(t) t Does this work? - probably no, the new motion is not smooth! - filter the motion! - but the new motion now does not meet cons!

  16. Toy Examples: Idea #1 • Modify the motion m(t), t=1,…,T using new constraints C • Filter the edited motion M’ M’(t) t Does this work? - probably no, the new motion is not smooth! - filter the motion! - repeat modification and filtering process!

  17. Idea #1: Modification & Filter

  18. Another Example: Three Constraints

  19. Another Example: Three Constraints

  20. Idea #1: Summary • Pros - easy to implement - computationally efficient • Cons - does not handle complex constraints, e.g., constraint functions involved more than one frames m(t) e.g., m’(t1)-m’(t2)=5 Old motion M={m(t)| t=1,…,T} t t1 t2

  21. Idea #1: Summary • Pros - easy to implement - computationally efficient • Cons - does not handle complex constraints, e.g., constraint functions involved more than one frames How to address this limitation?

  22. Idea #2: Constrained Optimization • Modify the motion M to satisfy new constraints C m(t) Old motion m(t), t=1,…,T t

  23. Idea #2: Constrained Optimization • Modify the motion M to satisfy new constraints C m(t) Old motion m(t), t=1,…,T t But this is an ill-posed problem - There are tons of solutions that satisfy the new constraints C

  24. Idea #2: Constrained Optimization • Modify the motion M to satisfy new constraints C m(t) Old motion m(t), t=1,…,T t But this is an ill-posed problem - There are tons of solutions that satisfy the new constraints C - Remove the ambiguity by picking the solution with a minimal change across an entire motion

  25. Idea #2: Constrained Optimization • Modify the motion M to satisfy new constraints C m(t) Old motion m(t), t=1,…,T t

  26. Idea #2: Constrained Optimization m(t) Old motion m(t), t=1,…,T t Minimize the changes Satisfy new constraints Modify the motion M to satisfy new constraints C

  27. Idea #2: Constrained Optimization • We can also formulate this as an unconstrained optimization problem m(t) Old motion m(t), t=1,…,T t

  28. Idea #2: Constrained Optimization • This is also called as spacetime optimization or trajectory optimization • Simultaneously compute the entire motion m(t) Old motion m(t), t=1,…,T t

  29. Idea #2: Constrained Optimization • This is also called as spacetime optimization or trajectory optimization • Simultaneously compute the entire motion m(t) Old motion m(t), t=1,…,T t

  30. Now Back to Human Motion Editing!

  31. Human motion representation • A sequence of poses: q1,q2,…qT • Each pose is represented as a high-dimensional vector qt: Rn Pose qt Motion q1,…qT Motion trajectories

  32. Human Motion Editing • Human motion is a high-dimensional function • Constraints could be any kinematic constraints

  33. User Constraints Any kinematic constraints throughout the motion Position cons. Orientation cons. Distance cons. Joint angle cons.

  34. Solution #1: Per-frame IK+Filtering • Step 1: Per-frame inverse kinematics to modify poses in each frame with new constraints. - this might be ill-posed - remove ambiguity by minimizing the difference between old poses and new poses • Step 2: motion filtering. • Repeat step 1 and 2 until the solution converges

  35. Solution #2: Spacetime Motion Editing • Consider all constraints simultaneously • Use optimization to solve the entire motion

  36. Solution #2: Spacetime Motion Editing • Consider all constraints simultaneously • Use optimization to solve the entire motion - Currently, minimizing joint angle poses across the entire sequence - A better criterion is possible!

  37. Solution #2: Spacetime Editing • Better Criterion? - Geometric constraints such as contact constraints are often more important

  38. Solution #2: Spacetime Editing • Better Criterion? - Frequency Content or details

  39. Solution #2: Spacetime Motion Editing Implementation details: - use Spline representation to reduce the solution space - often computationally expensive - optimization over sub windows when working on a long motion sequence

  40. Motion Retargeting • One motion, a cast of characters • Focus on similar structure

  41. Motion Retargeting: Key Idea • Formulated as motion editing problem Skeleton of new characters

  42. Motion Retargeting: Key Idea • Step 1: Extract constraints/properties C from source motion Extracted constraints

  43. Motion Retargeting: Key Idea • Step 1: Extract constraints/properties C from source motion Extracted constraints Retargeted motion Source motion

  44. Motion Retargeting: Key Idea • Step 1: Extract constraints/properties C from source motion Skeleton of new characters Extracted constraints Retargeted motion Source motion

  45. Motion Retargeting: Key Idea • Step 2: Apply to new characters

  46. Motion Retargeting: Key Idea • Step 3: Approximate answer How to initialize m’(t)?

  47. Motion Retargeting: Key Idea • Step 4: Solve constraints using spacetime optimization

  48. Motion Retargeting • Youtube video (click here)

More Related