Physically Based Motion Transformation Zoran Popović Andrew Witkin SIGGRAPH ‘99.

Slides:



Advertisements
Similar presentations
Active Appearance Models
Advertisements

Synchronized Multi-character Motion Editing Manmyung Kim, Kyunglyul Hyun, Jongmin Kim, Jehee Lee Seoul National University.
Algorithms + L. Grewe.
Layered Acting for Character Animation By Mira Dontcheva Gary Yngve Zoran Popović presented by Danny House SIGGRAPH 2003.
L.M. McMillin NOAA/NESDIS/ORA Regression Retrieval Overview Larry McMillin Climate Research and Applications Division National Environmental Satellite,
Automating Graph-Based Motion Synthesis Lucas Kovar Michael Gleicher University of Wisconsin-Madison.
Constrained Near-Optimal Control Using a Numerical Kinetic Solver Alan L. Jennings & Ra úl Ordóñez, ajennings1,
Instructor: Mircea Nicolescu Lecture 13 CS 485 / 685 Computer Vision.
CSCE 641: Forward kinematics and inverse kinematics Jinxiang Chai.
Interactive Motion Editing Presented by Troy McMahon.
1Notes  Handing assignment 0 back (at the front of the room)  Read the newsgroup!  Planning to put 16mm films on the web soon (possibly tomorrow)
Introduction to Data-driven Animation Jinxiang Chai Computer Science and Engineering Texas A&M University.
Motion Editing and Retargetting Jinxiang Chai. Outline Motion editing [video, click here]here Motion retargeting [video, click here]here.
Foundations of Computer Graphics (Spring 2010) CS 184, Lecture 24: Animation Many slides courtesy Adam Finkelstein,
Probabilistic video stabilization using Kalman filtering and mosaicking.
UNC Chapel Hill M. C. Lin Reading Assignments Principles of Traditional Animation Applied to 3D Computer Animation, by J. Lasseter, Proc. of ACM SIGGRAPH.
CSCE 641: Forward kinematics and inverse kinematics Jinxiang Chai.
Uncalibrated Geometry & Stratification Sastry and Yang
Curve Analogies Aaron Hertzmann Nuria Oliver Brain Curless Steven M. Seitz University of Washington Microsoft Research Thirteenth Eurographics.
Multiple View Geometry Marc Pollefeys University of North Carolina at Chapel Hill Modified by Philippos Mordohai.
Interactive Manipulation of Rigid Body Simulations Presenter : Chia-yuan Hsiung Proceedings of SIGGRAPH 2000 Jovan Popovi´c, Steven M. Seitz, Michael.
CS274 Spring 01 Lecture 5 Copyright © Mark Meyer Lecture V Higher Level Motion Control CS274: Computer Animation and Simulation.
CSCE 689: Forward Kinematics and Inverse Kinematics
Animation. Outline  Key frame animation  Hierarchical animation  Inverse kinematics.
Composition of complex optimal multi-character motions C. Karen Liu Aaron Hertzmann Zoran Popović.
1cs426-winter-2008 Notes  SIGGRAPH crunch time - my apologies :-)
Computer Animation Rick Parent Computer Animation Algorithms and Techniques Kinematic Linkages.
Constraints-based Motion Planning for an Automatic, Flexible Laser Scanning Robotized Platform Th. Borangiu, A. Dogar, A. Dumitrache University Politehnica.
Advanced Programming for 3D Applications CE Bob Hobbs Staffordshire university Human Motion Lecture 3.
Motion Editing (Geometric and Constraint-Based Methods) Jehee Lee.
Evolving Virtual Creatures & Evolving 3D Morphology and Behavior by Competition Papers by Karl Sims Presented by Sarah Waziruddin.
© 2011 Autodesk Freely licensed for use by educational institutions. Reuse and changes require a note indicating that content has been modified from the.
Progress in identification of damping: Energy-based method with incomplete and noisy data Marco Prandina University of Liverpool.
Motion Capture Motion Capture. Motion Capture Motion capture, Motion Tracking or Mocap, is a technique of digitally recording movements for entertainment,
A Hierarchical Approach to Interactive Motion Editing for Human-like Figures Jehee Lee Sung Yong Shin KAIST Jehee Lee Sung Yong Shin KAIST.
CSCE 441: Computer Graphics Forward/Inverse kinematics Jinxiang Chai.
Detail-Preserving Fluid Control N. Th ű rey R. Keiser M. Pauly U. R ű de SCA 2006.
KINEMATIC CHAINS & ROBOTS (I).
Motor Control. Beyond babbling Three problems with motor babbling: –Random exploration is slow –Error-based learning algorithms are faster but error signals.
ZMP-BASED LOCOMOTION Robotics Course Lesson 22.
Graphics Graphics Korea University cgvr.korea.ac.kr 1 Computer Animation 고려대학교 컴퓨터 그래픽스 연구실.
1cs426-winter-2008 Notes  Will add references to splines on web page.
Tuesday, April 30 Dynamic Programming – Recursion – Principle of Optimality Handouts: Lecture Notes.
Video Textures This is a very cool paper.. Why video texturing? Static images are boring Video clips are finite in length We need something more interesting.
Rick Parent - CIS681 Motion Capture Use digitized motion to animate a character.
Course14 Dynamic Vision. Biological vision can cope with changing world Moving and changing objects Change illumination Change View-point.
Flexible Automatic Motion Blending with Registration Curves
Application: Multiresolution Curves Jyun-Ming Chen Spring 2001.
Computer Graphics Chapter 12 Computer Animation.
Auto-calibration we have just calibrated using a calibration object –another calibration object is the Tsai grid of Figure 7.1 on HZ182, which can be used.
Lecture Fall 2001 Controlling Animation Boundary-Value Problems Shooting Methods Constrained Optimization Robot Control.
CSCE 441: Computer Graphics Forward/Inverse kinematics Jinxiang Chai.
Introduction and Preliminaries D Nagesh Kumar, IISc Water Resources Planning and Management: M4L1 Dynamic Programming and Applications.
Physics-Based Simulation: Graphics and Robotics Chand T. John.
Animating Human Locomotion
CSE 554 Lecture 8: Alignment
Physically-Based Motion Synthesis in Computer Graphics
CSCE 441: Computer Graphics Forward/Inverse kinematics
Character Animation Forward and Inverse Kinematics
Computer Animation cgvr.korea.ac.kr.
Majkowska University of California. Los Angeles
Reading Assignments Principles of Traditional Animation Applied to 3D Computer Animation, by J. Lasseter, Proc. of ACM SIGGRAPH 1987 Computer Animation:
CSCE 441: Computer Graphics Forward/Inverse kinematics
WELCOME.
Synthesis of Motion from Simple Animations
Automated Learning of Muscle-Actuated Locomotion Through Control Abstraction Radek Grzeszczuk Demetri Terzopoulos SIGGRAPH 95.
Computer Graphics Lecture 15.
Dimitris Valeris Thijs Ratsma
ME321 Kinematics and Dynamics of Machines
Data-Driven Approach to Synthesizing Facial Animation Using Motion Capture Ioannis Fermanis Liu Zhaopeng
Presentation transcript:

Physically Based Motion Transformation Zoran Popović Andrew Witkin SIGGRAPH ‘99

Objective Transform previously generated motion while preserving its physical properties User-controlled editing process Good for re-use of highly detailed motions Map motion between characters with different DOFs (control complex systems with simpler ones)

Related Work Physical (forward) dynamics Spacetime constraints Robot controller design Motion capture (and editing) Biomechanics

Forward Dynamics Highly realistic (physically accurate) Determining muscle forces is difficult Changing one frame drastically affects all others

Spacetime Constraints Helps with realism and controllability Specify pose constraints that must be met Specify objective function or metric of performance or style Minimize objective function while satisfying constraints Does not scale up to complex characters (poor time complexity) Sensitive to starting position of optimization (may not converge)

Robot Controller Design Drive actuator forces based on environment A set of reflexes that control muscles which produce motion Controllers adjust to changing environment Determining controllers that produce realistic motion is difficult

Motion Capture Get motion data from the real world Highly realistic Unstructured, uncorrelated motion Editing typically has no notion of dynamics Large motion deformations give unwanted artifacts

Biomechanics Similarity in multi-legged locomotion of kinematically different animals Studies optimality of natural motion (reaffirms spacetime optimization)

Complex Model Simplified Model Algorithm Outline Original Motion Spacetime Motion Model Final Motion Transformed Spacetime Motion Δ Simplification Motion Fitting Spacetime Edit Reconstruction Create abstract character model with minimal DOFs Map input motion onto simplified model Find spacetime optimization problem with solution most closely matching simplified character motion Change motion parameters Introduce new pose constraints Change character kinematics or objective function Remap the change in motion of the simplified model onto the original complex model

Character Simplification Why? –Improves performance & convergence –Captures fundamental movement properties Complex Model Simplified Model Original Motion Spacetime Motion Model Final Motion Transformed Spacetime Motion Δ Simplification Motion Fitting Spacetime Edit Reconstruction

Three Simplification Principles DOF removal –e.g. Remove DOFs in linkages Node subtree removal –Replace hierarchy with a single object Exploit symmetric movement –e.g. Two legs with identical jump kinematics

Mapping motion onto simplified model Overdetermined problem –simplified character has much fewer DOFs Use Handles –correlate properties between complex and simplified motion sequences

Handles Functions that can be evaluated on both complex and simplified models. Measurements of body properties –eg. positions, directions, distances

Handles complex motion handles: h 0 (q 0 (t)) simplified motion handles: h S (q S (t)) Find motion of simplified character: –E d = [h 0 (q 0 (t i )) - h S (q S (t i ))] 2 –minimize E d over q S (t i ) for each frame t i At least one handle per DOF

Spacetime Motion Fitting Must make the simplified motion dynamically correct (and realistic) Find the spacetime optimization problem most closely matching simplified motion Complex Model Simplified Model Original Motion Spacetime Motion Model Final Motion Transformed Spacetime Motion Δ Simplification Motion Fitting Spacetime Edit Reconstruction

Spacetime Motion Fitting Character has two kinds of DOFs - q(t) –kinematic q k (t)) and muscle q m (t)) Character is constrained by: –pose constraints: C p –mechanical constraints: C m –dynamics constraints: C d Optimization problem: –minimize objective function, E(q(t),t), over all DOFs, q(t), subject to: C p (q(t),t) = 0 C m (q(t),t) = 0 C d (q(t),t) = 0

Biomechanically accurate models are too complex Use generalized muscle forces, Q –apply accelerations directly onto DOFs –minimum set of muscles for full range of motion –unstable spacetime optimization with poor convergence Use damped generalized muscle force: Velocity-dependent damping encourages smoothness Muscles

Constraints Most constraints are determined by input motion –Avoid non-essential constraints Simplification may introduce constraints Motion editing may introduce constraints

Objective Function Motion in nature assumed to be optimal –Original motion close to optimum - YAY! Two components –deviation from original motion E d –muscle Smoothness: Gradually decrease w d to zero

Spacetime Edit Modify dynamic properties of the simplified model of the animation Complex Model Simplified Model Original Motion Spacetime Motion Model Final Motion Transformed Spacetime Motion Δ Simplification Motion Fitting Spacetime Edit Reconstruction

Spacetime Edit Change constraints –positions, timings Add new constraints Change the character model Add new components to the objective function After editing, re-solve spacetime optimization problem –Already close to solution. Converges quickly.

Motion Reconstruction Construct final motion from original complex motion and simplified spacetime motions Complex Model Simplified Model Original Motion Spacetime Motion Model Final Motion Transformed Spacetime Motion Δ Simplification Motion Fitting Spacetime Edit Reconstruction

Motion Reconstruction Now have three sets of handles –original motion handles: h 0 (q 0 ) –spactime fit handles: h s (q s ) –transformed spacetime handles: h t (q t ) Combine: h f (q f ) = h 0 (q 0 ) + (h t (q t ) - h s (q s )) Solve for q f ? –Number of handles much smaller than DOFs –problem is underdetermined

Motion Reconstruction Formulate sequence of per-frame subproblems: –minimize E dm (q 0,q f ) over q f subject to: C(q) = 0 h f (q f ) = h 0 (q 0 ) + (h t (q t ) - h s (q s )) Follow transformed handles and satisfy constraints while trying to remain close to original motion. –Objective function measures deviation from original motion

Motion Reconstruction Objective function for deviation: –E dd = (q f – q 0 ) 2 –produces undesirable results each DOF must be scaled carefully Use a different objective function: –E dm - Measures relative mass displacement between two poses Done per-frame, so resulting motion may appear non-smooth –define smoothing intervals and use the smoothness objective function:

Limitations Best for high-energy, dynamic movement –but non-realism not as big an issue in lethargic, kinematic movement The motion-fitting step is mostly manual –Intuitive and amortized over large numbers of transformations Motion fitting affects what kinds of transformations can be done Final motion not absolutely physically correct, but preserves essential properties

Results Fitting: minutes Transformation optimization: ~2 minutes