600 likes | 760 Views
Motion Editing ( Geometric and Constraint-Based Methods ). Jehee Lee. Animation from Motion Capture. Motion capture provides a large collection of realistic motion data What can we do with this data set ? Applications Animation authoring: Film, music video, TV ad., …
E N D
Motion Editing(Geometric and Constraint-Based Methods) Jehee Lee
Animation from Motion Capture • Motion capture provides a large collection of realistic motion data • What can we do with this data set ? • Applications • Animation authoring: Film, music video, TV ad., … • Interactive characters: Video games, VR, … • Live performance: Computer puppetry
The Art of Animation Motion Editing Toolbox Custom Animation Motion Database Preprocess Controllable Characters On-line Controller Motion Sensor Data High-Level User Interfaces Mapping Live Performance Computer Puppetry
The Art of Animation Motion Database Motion Sensor Data Motion Editing Toolbox Preprocess Custom Animation Animation Authoring • Animators select motion segments from the database • Motion segments will be modified, blended, and stitched • Animators need a variety of motion editing tools !
Motion Retargetting [Gleicher 98]
Motion Database Motion Sensor Data Controllable Characters Preprocess On-line Controller High-Level User Interfaces Interactive Characters • Users interact (or control) with computer-generated characters through high-level user interfaces • System selects appropriate motions from the database • User interfaces and control algorithms are required
Computer Puppetry • Motion sensor data is mapped to an animated character in realtime • No database is required
Motion Representation • Configuration of an articulated figure • Linear components: • Angular components: Theposition of the root segment Theorientation of the root segment Theorientations of body segmentsw.r.t. their parents (joint angles)
Simple Operations • Translation • Rotation
Simple Operations • Exercise joints • Motion displacements • independent translation and rotation
Motion Displacement • Rigid Transformation at the root segment
Motion Displacement • Rigid Transformation at the root segment
Simple Operations • Valid operations • Invalid operations
Simple Operations • Time warping • Properties
Transition Graph TurnL TurnR Right foot forward Start Stand Stop Loop
Connecting Motion Segments • Alignment and warping First Motion Second Motion Rotate and translate the second motion to align two motions Warp the motions at the boundary so that they can be connected smoothly
Alignment • The end of one motion A should be aligned to the beginning of the next motion B • The root location of the end of A: • The root location of the beginning of B: • Apply to motion B, that is
Alignment Using In-Plane Transformation • Rigid transformation restricted within a plane • Rotation about the vertical axis, followed by • Translation along two horizontal axes • How can we find in-plane rotation from arbitrary rotation ? • Euler angles • Discard rotation about x- and z-axes
Optimal In-Plane Transformation • Closest point from a geodesic curve to a point • The geodesic curve represents a set of orientation that can be reached by rotating about the vertical axis
Warping • Deform a motion smoothly so that it is seamlessly connected its previous motion • A scalar transition function s(t) Second Motion First Motion d
Motion Database • Reusability and flexibility • Motion capture is not cheap ! • Motion capture data doesn’t always reflect our intention • There is no live performer who can move like an ant or Godzilla Godzilla (1998) Antz (1998)
Motion Database • Reusability and flexibility • Motion capture is not cheap ! • Motion capture data doesn’t always reflect our intention • We are not always able to construct an appropriate physical environment in a mocap studio
Motion Database • Reusability and flexibility • Motion capture is not cheap ! • Motion capture data doesn’t always reflect our intention • There is no live performer who can move like an ant or Godzilla • We are not always able to construct an appropriate physical environment in a mocap studio • We sometimes want to reuse existing data rather than capturing new motion whenever needed • Video games, interactive characters
Adaptation/Retargetting/Editing • Reusing motion is challenging, because the motion was acquired • For a specific character • Within a specific environment • In a specific style and mood
Constraint-Based Approaches • Constraints specify • Features to be retained • New features to be accomplished • Find a new motion • Satisfy given constraints • While preserving the characteristics of the original motion as much as possible • The core of constraint-based approaches can be formulated as an optimization problem
Constraints • Preserve important features of the original motion • Contact with environments (foothold positions) • Balance (dynamic constraints) • Subtle details (frequency bands) • Accomplish new features for the target motion • Interactive manipulation • New characters/environment • New style/mood (How do you define?)
Inter- and Intra-Frame Coherency Within each frame • Enforce constraints • By inverse kinematics Inter-frame coherence • Avoid discontinuity • By using smooth splines
Motion and Constraints How would we warp the motion to meet the constraints ? Original Motion
Motion and Constraints Original Motion Bad warping
Displacement Mapping • Motion warping[Popovic & Witkin 95] • Motion displacement mapping[Bruderlin & Williams 95] OriginalMotion Displacement Map Target Motion
Displacement Mapping Original Motion Displacement map
Non-Uniform Spline Interpolation • How would you create a smooth curve (displacement map) that interpolates given joint displacements ? • Spline interpolation • You already know how to do it ! • Constraints are distributed non-uniformly • Variational constraints (constraints that stand over a time period) are discretized as a sequence of constraints • Small details are added for constrained intervals • Details (high frequency) of the original motion could be destroyed • IK solution is not always coherent • Small change of start poses and constraints doesn’t necessarily yeild small change of output poses
Least-Squares Curve Fitting • We would like to discard outliers • Approximation rather than interpolation • We don’t want to add unnecessary high-frequency • Uniform splines • IK solving and curve fitting should be applied alternatively for several times • The linear system could be partially over-specified and partially under-specified
Non-Linear Optimization • Formulation [Gleicher 98] • Curve approximation and IK can be combined into a single large non-linear optimization problem • Objective function: minimize distortion • Parameters • All joint angles at all time instances (It is a huge problem !) • Joint angles are often represented by B-splines • in order to reduce the number of parameters • in order to maintain inter-frame coherency
Adaptive Refinement • Shape freedom vs. Smoothness • Hard to determine the density of knots • Multi-level (hierarchical) B-splines • Adaptive refinement of knot sequences • Sum of uniform B-splines with different knot spacings • Coarse-to-fine hierarchy
Examples • Adaptation to New Environments
Examples • Adaptation to New Characters
Examples • Character Morphing
Adapting Motion for Humanoids • Different structures and DOFs [Pollard 2002]
Adapting Motion for Humanoids • Different structures and DOFs • Adaptation algorithm is similar to IK with multiple goals • Gimble lock avoidance • Teapot demo by Pollard (2002) • Jello demo by Choi (2004)
Adapting Motion for Humanoids • Different structures and DOFs • Adaptation algorithm is similar to IK with multiple goals • Gimble lock avoidance • Joint limit • Inequality constraints • Similar to collision avoidance
Inequality Constraints Upper bound Lower bound