 
              Final exam date  Final exam date has been announced: Articulated Figures I  Tuesday, February 27, 2007  2:45 - 4:45pm Introduction  70-1435 Forward Kinematics Spacetime Constraints Projects Project  Presentations:  Mid-quarter report  Dates:  Due Friday, January 26th  Week 9: Wed, Feb 14  Update on progress  Week 10: Mon, Feb 19  Finals Week: Tues, Feb 27 (2:45-4:45)  Dropbox in mycourses.  15 minutes / presentation  Schedule now on Web  Please send me choice of time/day Assignments Logistics Assignment 1 -- Framework  Course Withdrawal deadline  Most have been graded   Friday, January 26th Assignment 2 -- Keyframing  Most have been graded.  Assignment 3 -- Billiards  Due Jan 26th (Friday)  Assignment 4 -- Group Motion  To be given today (both options)  Due Feb 7th.  NOTE: Dropbox close dates have been fixed.  1
Plan for today Motivation Films  Next 2 weeks: Articulated Figures  Film featuring articulated figures.  Today: Forward Kinematics  Monday: Inverse Kinematics  Wednesday: Motion Capture  Monday: Advanced algorithms  Then  Wednesday: Character animation Motivational Film Motivational Film  Eurythmy (1989)  Grinning Evil Death (1990)  Susan Amkraut and Michael Girard (Ohio  Mike McKenna (MIT Media Lab) State)  Based on the OSU work on the use of inverse kinematics and dynamics for animation.  Interview w/Amkraut and Girard on Web Plan For Today Building an animated character  Topics  Rigging  Intro to Articulated Figures  The process of preparing a character model for animation, including setting up  Forward Kinematics an underlying skeleton, complete with  Spacetime Constraints constraints, controllers and kinematic systems, and linking it to the mesh of the character model. 2
Articulated Figures Building an animated character  Skeleton  What is an articulated figure?  An underlying network of bones used to define  A set of rigid objects connected by joints and control the motion of a model during  Individual joints are linked together in a character animation. Moving a bone causes the parent-child hierarchy mesh of the model to move and deform.  Each object has a joint at one end where  Skinning any child bones may be attached.  The process of binding the surface of a model to the underlying skeleton during character rigging.  The skeleton Articulated Figures Articulated Figures  main figure is described in terms of a global frame of reference  each individual joint is assigned its own separate local co-ordinate frame of reference  This coordinate system is with respect to it’s parent.  Can concatenate transformation matrices Articulated Figures Articulated Figures  T BW = transformation of B wrt world  T AW = transformation of A wrt world  T BA = transformation of B wrt A T T T = � BW BA AW 3
Articulated Figures Articulated Figures  Given in graph form Articulated Figures Articulated Figures  Now let’s consider rotations  Multiple joints Articulated Figures Articulated Figures  Most rendering systems / API maintain  Stack of transformation matrices a transformation matrix stack  Push when going into the hierarchy Finger wrt hand  Pop when leaving the hierarchy Hand wrt arm Arm wrt body Body wrt world 4
Articulated Figures Articulated Figures  We know how to transform of each component with respect to another robot component.  Use the matrix stack in order to calculate base Upper body the local coordinates of each component. arm thumb Articulated Figures Articulated Figures Define your camera orientation Push Matrix Concatenate Transformations of Arm wrt body Push Matrix Draw arm Concatenate transformation for robot as a whole PushMatrix Push Matrix Concatenate transformations for robot base wrt the center of the robot Concatenate Transformation of Thumb wrt Arm Draw robot base Draw thumb Pop Matrix Pop Matrix // Thumb Pop Matrix // Arm Push matrix Concatenate transformations for robot body wrt the center of the robot Pop Matrix // body Draw robot body Pop Matrix // robot … Articulated Figures Joint Constraints  applets  Note that translation should not be allowed.  Any joint is only permitted to rotate about the three local axes of its parent joint.  However, you may wish to limit the extent of rotation  Disallow rotation about one of the axes  Provide rotational constraints to a given axis.  Questions? 5
Degrees of freedom Degrees of freedom  Motion data can be defined as  Degrees of freedom  f(t) – function of time  Number of parameters  One function for each degree of freedom whose values must be  How many functions is that? defined in order to fully  For a CG character position the articulated  Typically 40-50 DOF figure  For a real human  > 250 DOF  Purpose of animation  Provide values to each of the DOF for each time 44 DOF: 38 (joint angles) + 6 step.  (position and orientation) Animation Control End Effectors  Purpose of animation  End effectors  Provide values to each of the DOF for each time step.  Term, borrowed from robotics, that  So how does one do this? describes the end of a jointed link  Keyframing – curve editors  Kinematics – based on position / velocity  Also can be described as the bottom node  Procedural in a hierarchy  Dynamics – use physics Animator  Use heuristics control  Use AI  Motion capture  Using sampled data.  Questions? End Effectors Motion spaces  Joint space robot  Multidimensional space of joint angles  Dimensionality = degrees of freedom  End effector space base Upper body  Multidimensional space of end effectors arm  Dimensionality = number of end effectors  Essentially described in world coords thumb 6
Forward vs Inverse Kinematics Forward vs Inverse Kinematics  Forward Kinematics X = f ( θ )  Define values for joint angles  Determines positions of end effectors Forward  X = f ( θ ) Kinematics  Inverse Kinematics Joint space Space X  Define positions of end effectors θ Inverse  Determine joint angles to make it so Kinematics  θ = f -1 (X) θ = f -1 (X) Inverse Kinematics Standard Human Hierarchies  Goal directed motion  H-Anim  Reach over and grab that thing!  Goals  Note: roach motion (Grinning Evil Death) was goal directed  Easier to specify  specify a way of defining interchangeable  Harder to compute humanoids and animations in standard VRML 2.0 without extensions.  More on Inverse Kinematics next time.  Animations include limb movements, facial expressions and lip synchronisation with sound.  Questions?  Our goal is to allow people to author humanoids and animations independently.  Break Standard Human Hierarchies H-Anim  H-Anim  Standard link/joint hierarchy with limits and constraints  Based on anatomical references 7
H-anim Examples MPEG-4  Nancy  The MPEG-4 standard, initiated in 1995, aims at proposing tools for efficient coding of  Baxter multimedia scenes.  Dilbert  efficient coding of diverse kind of data :  Video Objects  StillTexture Objects  Face Objects  Body Objects  Mesh Objects MPEG-4 and VRML Body Animation in MPEG-4  Work of MPEG-4 systems group was inspired and based on VRML.  MPEG-4 = VRML + extensions. Body Animation in MPEG-4 Take Home Message  BAP (Body Animation Parameter) contains  There are standards for human body 296 parameters describing the topology of hierarchies the skeleton.  Any others?  Interoperates with the work of the H-Anim group  In the game word perhaps?  The BDP set defines the set of parameters to transform the default body to a customized body optionally with its body surface, body dimensions, and texture.  Questions? 8
Dynamics Dynamics  Determine values for DOF by simulation  To get realistic motion, go to the source of physical forces.  Problem with dynamics  Little animator control  Animator provides initial conditions  Simulation does the rest  Can we give back some control to the animator? Spacetime Constraints Spacetime Constraints  Animator specifies:  Method developed by Witkin and Kass (1988)  The character’s physical structure  I.e. Articulated figure  Goals:  What the character has to do  Benefits of realistic physically based motion  Jump from here to there  Provide animator with a bit more control  What physical resources are available  Experimented with Luxo  Character’s muscles, floor to push off of  How motion should be performed  “Don’t waste energy” Spacetime Constraints Spacetime Constraints  The problem turns into a constrained  Luxo optimization problem  Find values S j that minimize R subject to C i (S j ) = 0  S i = DOF and forces for all time steps  C i = constraints  R = minimization criteria  Given these, there are well known numerical techniques to solve 9
Recommend
More recommend