# PPT

Mechanics

Nov 14, 2013 (4 years and 7 months ago)

79 views

Kinematics

ILE5030 Computer Animation and Special Effects

2

Kinematics

The branch of mechanics concerned with the
motions of objects without regard to the forces
that cause the motion

Why kinematics?

Hierarchical articulated model

Posing a character

ILE5030 Computer Animation and Special Effects

3

Degrees of Freedom (DOF)

The minimum number of coordinates required to
specify completely the motion of an object

6 DOF: x, y, z, raw, pitch, yaw

pitch

roll

yaw

ILE5030 Computer Animation and Special Effects

4

Degrees of Freedom in Human Model

Root: 3 translational DOF + 3 rotational DOF

Rotational joints are commonly used

Each joint can have up to 3 DOF

Shoulder: 3 DOF

Wrist: 2 DOF

Knee: 1 DOF

1 DOF

3 DOF

ILE5030 Computer Animation and Special Effects

5

Revolute Joints

3 DOF joint

gimbal

ball and socket

2 DOF joint

universal

ILE5030 Computer Animation and Special Effects

6

Hierarchical Articulated Model

Represent an articulated figure as a series of links
connected by joints

Enforce limb connectivity in a tree
-
like structure

root

ILE5030 Computer Animation and Special Effects

7

Joint Space vs. Cartesian Space

Joint space

space formed by joint angles

position all joints

fine level control

Cartesian space

3D space

specify environment interactions

ILE5030 Computer Animation and Special Effects

8

1

2

P
P
Forward and Inverse Kinematics

Forward kinematics

mapping from joint space to cartesian space

Inverse kinematics

mapping from cartesian space to joint space

)
,
(
2
1

f
P

Forward Kinematics

)
(
,
1
2
1
P
f

Inverse Kinematics

ILE5030 Computer Animation and Special Effects

9

Forward and Inverse Kinematics (cont.)

Forward kinematics

rendering

Inverse kinematics

good for specifying environment interaction

good for controlling a character

fewer parameters

ILE5030 Computer Animation and Special Effects

10

Forward Kinematics

?

Base

End Effector

ILE5030 Computer Animation and Special Effects

11

Forward Kinematics by

Composing Transformations

End Effector

Relative rotation from the local coordinate of parent link to

the local coordinate of the child link

ILE5030 Computer Animation and Special Effects

12

Tree Traversal

T
1.1

T
1.2

T
2.1

T
2.2

T
0

M = I

M = T
0

M = T
0
*T
1.1

M = T
0
*T
1.1
*T
2.1

M = T
0

M = T
0
*T
1.2

M = T
0
*T
1.2
*T
2.2

M = T
0
*T
1.1

ILE5030 Computer Animation and Special Effects

13

Inverse Kinematics

Base

End Effector
=P

ILE5030 Computer Animation and Special Effects

14

Redundancy in IK

Our example

2 equations (constraints)

3 unknowns

Multiple solutions exist!

This is not uncommon!

see how you can move your elbow while keeping

ILE5030 Computer Animation and Special Effects

15

Other problems in IK

Infinite solutions

ILE5030 Computer Animation and Special Effects

16

Other problems in IK

No solutions

ILE5030 Computer Animation and Special Effects

17

Why is IK hard?

Redundancy

Natural motion

joint limits

minimum jerk

style?

Singularities

ill
-
conditioned matrix

shown later

ILE5030 Computer Animation and Special Effects

18

Solving Inverse Kinematics

analytic method

inverse
-
Jacobian method

optimization
-
based method

example
-
based method

ILE5030 Computer Animation and Special Effects

19

Analytic Method

(X,Y)

L1

L2

1

2

Goal

ILE5030 Computer Animation and Special Effects

20

Analytic Method

(X,Y)

L1

L2

1

T

180
-

2

X

Y


x
2

y
2
ILE5030 Computer Animation and Special Effects

21

Cosine Law

A

B

C

a

AB
C
B
A
2
)
cos(
2
2
2

a
ILE5030 Computer Animation and Special Effects

22

Analytic Method

(X,Y)

L1

L2

1

T

180
-

2

X

Y


x
2

y
2
2
2
)
cos(
Y
X
X
T

2
2
1
cos
Y
X
X
T

2
2
1
2
2
2
2
2
1
1
2
)
cos(
Y
X
L
L
Y
X
L
T

T
Y
X
L
L
Y
X
L

)
2
(
cos
2
2
1
2
2
2
2
2
1
1
1

2
1
2
2
2
2
2
1
2
2
)
180
cos(
L
L
Y
X
L
L

)
2
(
cos
180
2
1
2
2
2
2
2
1
1
2
L
L
Y
X
L
L

ILE5030 Computer Animation and Special Effects

23

Inverse
-
Jacobian method

Iteratively change the joint angles to approach
the goal position and orientation

ILE5030 Computer Animation and Special Effects

24

Jacobian

Jacobian is the
n
by

m

matrix relating differential
changes of


to

differential changes of
P

(
dP
)

Jacobian maps velocities in joint space to
velocities in cartesian space

P
f

)
(

dP
d
J

)
(
usually)

6
(

n
R
P
n
)
DOFs
(

m
R
m

j
i
ij
f
J

V
J

)
(
ILE5030 Computer Animation and Special Effects

25

An Example of Jacobian Matrix

ILE5030 Computer Animation and Special Effects

26

k

locally

Small increments

Iteratively Solving

)
(
1
P
f

)
(
J
V

V
J
)
(
1

V
tJ
k
k
k
)
(
1
1

P

P+dP

P
goal

ILE5030 Computer Animation and Special Effects

27

Jacobian may not be invertible!

Non
-
square matrix

pseudo inverse

Singularity

causes infinite joint velocities

occurs when any cannot achieve a given

V
ILE5030 Computer Animation and Special Effects

28

Pseudo Inverse of the Jacobian

V
J
J
J
J
J
V
J
J
J
J
J
V
J
J
V
T
T
T
T
T
T
1
1
)
(
)
(

J

(
J
T
J
)

1
J
T

J
T
(
J
J
T
)

1
ILE5030 Computer Animation and Special Effects

29

Null space

The null space of J is the set of vectors

which have no influence on the constraints

The pseudoinverse provides an operator

which projects any vector to the null space of J

0
)
(

J
J
nullspace
z
I
J
J
V
J
V
J
)
(

ILE5030 Computer Animation and Special Effects

30

A solution of this form

…doesn’t affect the
desired configuration

But it can be used to bias

The solution vector

0
0
)
(
)
(
)
(
)
(

V
z
V
z
J
J
V
z
J
J
JJ
V
z
I
J
J
J
V
J
V
z
I
J
J

When put into this formula

Like this

After some manipulation,
you can show that it…

ILE5030 Computer Animation and Special Effects

31

Utility of Null Space

The null space can be used to reach

secondary goals

Or to find
natural

pos
e / control stiffness of joints

)
(
min
)
(

G
z
I
J
J
V
J
z

i
natural
i
i
i
G
2
))
(
)
(
(
)
(

a

ILE5030 Computer Animation and Special Effects

32

Optimization
-
based Method

Formulate IK as an nonlinear optimization problem

Example

Objective function

Constraint

Iterative algorithm

Nonlinear programming method by Zhao & Badler,
TOG 1994

ILE5030 Computer Animation and Special Effects

33

Objective Function

“distance” from the end effector to the goal
position/orientation

Function of joint angles : G(

)

Base

End Effector

Goal

distance

ILE5030 Computer Animation and Special Effects

34

Objective Function

Position Goal

Orientation Goal

Position/Orientation Goal

weighted sum

ILE5030 Computer Animation and Special Effects

35

Nonlinear Optimization

Constrained nonlinear optimization problem

Solution

standard numerical techniques

MATLAB or other optimization packages

usually a local minimum

depends on initial condition

joint limits

limb coordination

ILE5030 Computer Animation and Special Effects

36

Example
-
based Method

Utilize motion database to assist IK solving

IK using interpolation

Rose et al., “Artist
-
directed IK using radial basis function
interpolation,” Eurographics’01

ILE5030 Computer Animation and Special Effects

37

Example
-
based Method (cont.)

IK using constructed statistical model

Grochow et al., “Style
-
based inverse kinematics,”
SIGGRAPH’04

Provide the most likely pose based on given constraints

ILE5030 Computer Animation and Special Effects

38

Videos

“Style
-
based inverse kinematics”

ILE5030 Computer Animation and Special Effects

39

Assignment 1

Keyframing using different interpolation
approaches and orientation representations

Due at 11:59 PM on Oct 15 (Sun)

An ASF/AMC viewer is provided

No need to be panic on FK implementation!

See the course web for details

Quick tutorial given by TA on Thursday

ILE5030 Computer Animation and Special Effects

40

Notes on ASF/AMC format

Developed by Acclaim

ASF

skeleton file

defines tree hierarchy

defines rotation axes of a joint

represented in global coordinate

defines bone length

AMC

motion file

Euler angles

ILE5030 Computer Animation and Special Effects

41

Example Results