Paper Summaries Any takers? Articulated Figures I Introduction - - PDF document

paper summaries
SMART_READER_LITE
LIVE PREVIEW

Paper Summaries Any takers? Articulated Figures I Introduction - - PDF document

Paper Summaries Any takers? Articulated Figures I Introduction Forward Kinematics Spacetime Constraints Projects Projects Question about presentations Exam Week Presentation day: We have approx 19 projects Thursday, March


slide-1
SLIDE 1

1

Articulated Figures I

Introduction Forward Kinematics Spacetime Constraints

Paper Summaries

Any takers?

Projects

Question about presentations

We have approx 19 projects

Presentations: 15 minutes (max) per project Sign up for time via e-mail (first come / first served)

Midquarter report due next Wednesday

Grad Reports

We have 10

Please indicate topic by end of day (e-mail) 20 minutes per presentation Week 9

Projects

Exam Week Presentation day:

Thursday, March 2nd 12:30pm -- 2:30pm Room 70-3445

Assignments

Assignment 1: Keyframing

Due last Wednesday Grading in progress

Assignment 2: Dynamics

Due Wednesday, January 25th (Wed)

Assignment 3: Group motion

Particle systems: posted Monday Flocking: posted Today Due Monday, Feb 6th

More jobs

Summer job teaching technology

iD Tech Camps

2D / 3D gaming Powerpoint Programming Etc.

See me for more details.

slide-2
SLIDE 2

2

Reminder

Next class is next door (70-1620).

Plan for today

Next 2 weeks: Articulated Figures

Monday: Forward Kinematics Wednesday: Inverse Kinematics Monday: Motion Capture Wednesday: Advanced algorithms

Then

Monday: Character animation

Motivation Films

Personal Favorites

Some of my favorite (articulated) animated

characters.

Motivational Film

Grinning Evil Death (1990)

Mike McKenna (MIT Media Lab)

Plan For Today

Topics

Intro to Articulated Figures Forward Kinematics Spacetime Constraints

But first…

Behavioral Animation

Behavioral Animation on a large scale (to be shown next time)

MASSIVE

(http://www.massivesoftware.com)

Created for and used in the battle scenes

in Lord of the Rings

Link

slide-3
SLIDE 3

3

Behavioral Animation

Levels of behavior

Assignment # 3b

Flocking

To be given after the break.

Building an animated character

Rigging

The process of preparing a character

model for animation, including setting up an underlying skeleton, complete with constraints, controllers and kinematic systems, and linking it to the mesh of the character model.

Building an animated character

Skeleton

An underlying network of bones used to define

and control the motion of a model during character animation. Moving a bone causes the mesh of the model to move and deform.

Skinning

The process of binding the surface of a model to

the underlying skeleton during character rigging.

Articulated Figures

What is an articulated figure?

A set of rigid objects connected by joints Individual joints are linked together in a

parent-child hierarchy

Each object has a joint at one end where

any child bones may be attached.

The skeleton

Articulated Figures

slide-4
SLIDE 4

4

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

TBW = transformation of B wrt world TAW = transformation of A wrt world TBA= transformation of B wrt A

AW BA BW

T T T ⋅ =

Articulated Figures Articulated Figures

Given in graph form

Articulated Figures

Now let’s consider rotations

slide-5
SLIDE 5

5

Articulated Figures

Multiple joints

Articulated Figures

Most rendering systems / API maintain

a transformation matrix stack

Push when going into the hierarchy Pop when leaving the hierarchy

Articulated Figures

Stack of transformation matrices

Arm wrt body Body wrt world Hand wrt arm Finger wrt hand

Articulated Figures

robot base Upper body arm thumb

Articulated Figures

We know how to transform of each

component with respect to another component.

Use the matrix stack in order to calculate

the local coordinates of each component.

Articulated Figures

Define your camera orientation Push Matrix Concatenate transformation for robot as a whole PushMatrix Concatenate transformations for robot base wrt the center of the robot Draw robot base Pop Matrix Push matrix Concatenate transformations for robot body wrt the center of the robot Draw robot body …

slide-6
SLIDE 6

6

Articulated Figures

Push Matrix Concatenate Transformations of Arm wrt body Draw arm Push Matrix Concatenate Transformation of Thumb wrt Arm Draw thumb Pop Matrix // Thumb Pop Matrix // Arm Pop Matrix // body Pop Matrix // robot

Articulated Figures

applets Questions?

Joint Constraints

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.

Degrees of freedom

Degrees of freedom

Number of parameters

whose values must be defined in order to fully position the articulated figure

  • 44 DOF: 38 (joint angles) + 6

(position and orientation)

Degrees of freedom

Motion data can be defined as

f(t) – function of time One function for each degree of freedom

How many functions is that?

For a CG character

Typically 40-50 DOF

For a real human

> 250 DOF

Purpose of animation

Provide values to each of the DOF for each time

step.

Animation Control

Purpose of animation

Provide values to each of the DOF for each time step.

So how does one do this?

Keyframing – curve editors

Kinematics – based on position / velocity

Procedural

Dynamics – use physics Use heuristics Use AI

Motion capture

Using sampled data.

Questions?

Animator control

slide-7
SLIDE 7

7

End Effectors

End effectors

Term, borrowed from robotics, that

describes the end of a jointed link

Also can be described as the bottom node

in a hierarchy

End Effectors

robot base Upper body arm thumb

Motion spaces

Joint space

Multidimensional space of joint angles Dimensionality = degrees of freedom

End effector space

Multidimensional space of end effectors Dimensionality = number of end effectors Essentially described in world coords

Forward vs Inverse Kinematics

Forward Kinematics

Define values for joint angles Determines positions of end effectors X = f (θ)

Inverse Kinematics

Define positions of end effectors Determine joint angles to make it so θ = f-1 (X)

Forward vs Inverse Kinematics

Joint space θ Space X

X = f (θ) θ = f-1 (X) Forward Kinematics Inverse Kinematics

Inverse Kinematics

Goal directed motion

Reach over and grab that thing! Note: roach motion (Grinning Evil Death) was goal directed

Easier to specify Harder to compute More on Inverse Kinematics next time. Questions? Break

slide-8
SLIDE 8

8

Standard Human Hierarchies

H-Anim

Goals

specify a way of defining interchangeable

humanoids and animations in standard VRML 2.0 without extensions.

Animations include limb movements, facial

expressions and lip synchronisation with sound.

Our goal is to allow people to author

humanoids and animations independently.

Standard Human Hierarchies

H-Anim

Standard link/joint hierarchy with limits

and constraints

Based on anatomical references

H-Anim H-anim Examples

Nancy Baxter Dilbert

MPEG-4

The MPEG-4 standard, initiated in 1995, aims

at proposing tools for efficient coding of multimedia scenes.

efficient coding of diverse kind of data :

Video Objects StillTexture Objects Face Objects Body Objects Mesh Objects

MPEG-4 and VRML

Work of MPEG-4 systems group was

inspired and based on VRML.

MPEG-4 = VRML + extensions.

slide-9
SLIDE 9

9

Body Animation in MPEG-4 Body Animation in MPEG-4

BAP (Body Animation Parameter) contains

296 parameters describing the topology of the skeleton.

Interoperates with the work of the H-Anim group

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.

Take Home Message

There are standards for human body

hierarchies

Any others?

In the game word perhaps?

Questions?

Dynamics

To get realistic motion, go to the source

Dynamics

Determine values for DOF by simulation

  • f 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

Method developed by Witkin and Kass

(1988)

Goals:

Benefits of realistic physically based motion Provide animator with a bit more control Experimented with Luxo

slide-10
SLIDE 10

10

Spacetime Constraints

Animator specifies:

The character’s physical structure

I.e. Articulated figure

What the character has to do

Jump from here to there

What physical resources are available

Character’s muscles, floor to push off of

How motion should be performed

“Don’t waste energy”

Spacetime Constraints

The problem turns into a constrained

  • ptimization problem

Find values Sj that minimize R subject to Ci

(Sj) = 0

Si = DOF and forces for all time steps Ci = constraints R = minimization criteria

Given these, there are well known

numerical techniques to solve

Spacetime Constraints

Luxo

Spacetime Constraints

For luxo:

Unkowns

joint angles

Constraints

Laws of physics (forces: gravity and from joint

muslces)

Initial/final positions (from here to there) Hard gravitational constraints (don’t go through

floor)

Spacetime Constraints

For luxo

Minimization criteria

Power consumed by the joint muscles

Spacetime Constraints

Space time constraints

Results – Luxo Another example – Spacetime Chopsticks

slide-11
SLIDE 11

11

Spacetime Constraints

Challenges

Specifying constraints Choosing minimization criteria

Problems

Solves for parameters over entire time

interval.

Can be computationally expensive

Spacetime Constraints

Opened the door for creating physically

based, yet animator controlled, animation

Other approaches (which we will consider in a

couple of weeks)

Genetic motion – solves minimization problem using

genetic algorithms

General procedural motion – applying procedural shading

paradigm to motion.

Questions?

Next Time

Details of Inverse Kinematics Questions?