290 likes | 306 Views
Constrained Synthesis of Textural Motion for Animation. Shmuel Moradoff Dani Lischinski. The Hebrew University of Jerusalem. How to obtain motion for character animation?. Skilled animator. How to obtain motion for character animation?. Skilled animator. Motion capture system.
E N D
Constrained Synthesis of Textural Motion for Animation Shmuel Moradoff Dani Lischinski The Hebrew University of Jerusalem
How to obtain motion for character animation? • Skilled animator.
How to obtain motion for character animation? • Skilled animator. • Motion capture system.
How to obtain motion for character animation? • Skilled animator. • Motion capture system. • Simulation. Faloutsos et al. 02`
Goal • A new tool for motion synthesis / re-use • Desirable features: • The new motion may be as long as we want. • Allowing hard constrains. • Fast and easy to use. • Simple input.
Previous Work • Signal processing techniques: • Laplacian pyramid (Bruderlin & Williams 95’). • Fourier transform (Unuma et al 95’). • Problems: • Manually intensive • Resulting motion isn’t always realistic • No support for constraints
Previous Work • Constraint-based motion editing. • Retargeting motion, motion adaptation and motion path editing (Lee & Shin 99’, Gleicher 98’ 01’). • Problems: slow, manually intensive.
Previous Work • Style machines – a high level tool (Brand & Hertzmann 00’). • Problems: no low-level control, need large training data.
Previous Work • Texture synthesis techniques. • Add details from a mo-cap data (Pullen & Bergler 00’, 02’). • A two level statistical model (Molina et-al 00’ and Li et-al 02’).
Previous Work • Motion graphs. • Creating a motion that follows a 2D path (Kovar, Gleicher & Pighin 02’). • High level control (Lee et-al 02’). • Hard and soft constraints (Arikan & Forsyth 02’). • Problems: need a huge database.
Textural motion data Run cycle
Textural motion data Lie Down
Textural motion data High Wire
Construct a multi-resolution tree • Low-pass. • Sub-sample.
Create an empty synthesis tree • Build an empty synthesis tree • Finest level will contain the output.
Copy the constrained frames • Copy constraints and a small neighborhood. • Copy the constraints ancestors.
Fill the gaps • Search the input tree for the best matching frame in the corresponding level.
Adaptive local smoothing • Most frames are sequential. • Apply smoothing only where necessary.
Frame representation • Joint angle representation: • Pro – changes keep skeleton structure. • Con – not good for comparing between frames. • 3D pose representation: • Pro – good for calculating distance between frames. • Con – changing position alter the skeleton’s shape.
Distance metric • Use 3D pose representation. • Compute distance between joint velocities. • The metric:
Gap filling – searching for the best meeting point • Synthesize frames alternating sides. • Exhaustive search for best meeting point.
Gap filling – Finding a path in a graph • Create a distance matrix for the coarsest level. • Build a graph of frames. • Search for a path in the graph. • In the finer levels – search between the sons of the chosen frames. • Pro: fast, enables multiple meeting points. • Con: less control, lower quality.