Computer Animation and Special Effects

Download Report

Transcript Computer Animation and Special Effects

Chap 5
Kinematic Linkages
Animation (U), Chap 5
Kinematic Linkages
1
Model Hierarchy vs. Motion Hierarchy

Relative motion


An object’s motion is relative to another object
Object hierarchy + relative motion form
motion hierarchy

Linkages


Components of the hierarchy represent
objects that are physically connected
Motion is often restricted
Animation (U), Chap 5 Kinematic Linkages
2
CS, NCTU, J. H. Chuang
Kinematics


How to animate the linkages by specifying or
determining position parameters over time
The branch of mechanics concerned with the
motions of objects without regard to the forces
that cause the motion
Animation (U), Chap 5 Kinematic Linkages
3
CS, NCTU, J. H. Chuang
Kinematics
Forward Kinematics

Animator specifies rotation parameters at joints
Animation (U), Chap 5 Kinematic Linkages
4
CS, NCTU, J. H. Chuang
Kinematics
Inverse Kinematics

Animator specifies the desired position of hand,
and system solves for the joint angles that satisfy
that desire.
Animation (U), Chap 5 Kinematic Linkages
5
CS, NCTU, J. H. Chuang
Hierarchical Modeling
Articulated Model

Represent an articulated figure as a series of links
connected by joints
root
Animation (U), Chap 5 Kinematic Linkages
6
CS, NCTU, J. H. Chuang
Degrees of Freedom (DOF)

The minimum number of coordinates required to
specify completely the motion of an object
yaw
roll
pitch
6 DOF: x, y, z, raw, pitch, yaw
Animation (U), Chap 5 Kinematic Linkages
7
CS, NCTU, J. H. Chuang
Degrees of Freedom
One DOF Joints

One DOF joint


Allow motion in one direction
Exam: Revolute joint, Prismatic joint
Animation (U), Chap 5 Kinematic Linkages
8
CS, NCTU, J. H. Chuang
Degrees of Freedom
Complex Joints

Complex joints

2 DOF joint


Planar joint, universal joint
3 DOF joint
Gimbal
 Ball and socket


Complex joints of DOF n can be modeled as n
one-DOF joints connected by n-1 links of 0
length.
Animation (U), Chap 5 Kinematic Linkages
9
CS, NCTU, J. H. Chuang
Degrees of Freedom
Complex Joints
Animation (U), Chap 5 Kinematic Linkages
10
CS, NCTU, J. H. Chuang
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
3 DOF
1 DOF
Animation (U), Chap 5 Kinematic Linkages
11
CS, NCTU, J. H. Chuang
Hierarchical Modeling
Data Structure

Hierarchical linkages can be represented by a
tree-like structure




Root node – corresponds to the root object whose
position is known in the global coordinate system
Other nodes – located relative to the root node
Leaf nodes –
Mapping between hierarchy and tree


Node – object part
Arc – joint or transformation to apply to all nodes
between it in the hierarchy
Animation (U), Chap 5 Kinematic Linkages
12
CS, NCTU, J. H. Chuang
Hierarchical Modeling
Data Structure
Animation (U), Chap 5 Kinematic Linkages
13
CS, NCTU, J. H. Chuang
Hierarchical Modeling
Data Structure
Animation (U), Chap 5 Kinematic Linkages
14
CS, NCTU, J. H. Chuang
Hierarchical Modeling
A Simple Example
Animation (U), Chap 5 Kinematic Linkages
15
CS, NCTU, J. H. Chuang
Hierarchical Modeling
Tree Structure
Animation (U), Chap 5 Kinematic Linkages
16
CS, NCTU, J. H. Chuang
Hierarchical Modeling
Transformations
V0 : a vertex of Link 0
Its world coordinate : V0  T0V0
'
V1 : a vertex of Link 1
Its world coordinate : V1  T0T1V1
'
V1,1 : a vertex of Link 1,1
Its world coordinate : V1,1  T0T1T1,1V1,1
'
Animation (U), Chap 5 Kinematic Linkages
17
CS, NCTU, J. H. Chuang
Hierarchical Modeling
Variable rotations at joints
Animation (U), Chap 5 Kinematic Linkages
18
CS, NCTU, J. H. Chuang
Hierarchical Modeling
Tree Structure
Animation (U), Chap 5 Kinematic Linkages
19
CS, NCTU, J. H. Chuang
Hierarchical Modeling
Transformations
V0 : a vertex of Link 0
Its world coordinate : V0  T0V0
'
V1 : a vertex of Link 1
Its world coordinate : V1  T0T1 R1 (1 )V1
'
V1,1 : a vertex of Link 1,1
Its world coordinate : V1,1  T0T1 R1 (1 )T1,1 R1,1 (1,1 )V1,1
'
Animation (U), Chap 5 Kinematic Linkages
20
CS, NCTU, J. H. Chuang
Hierarchical Modeling
With Two Appendages
Animation (U), Chap 5 Kinematic Linkages
21
CS, NCTU, J. H. Chuang
Hierarchical Modeling
With Two Appendages
Animation (U), Chap 5 Kinematic Linkages
22
CS, NCTU, J. H. Chuang
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
Animation (U), Chap 5 Kinematic Linkages
23
CS, NCTU, J. H. Chuang
Forward and Inverse Kinematics

Forward kinematics


mapping from joint space to cartesian space
Inverse kinematics

mapping from cartesian space to joint space
1
P
P
2
Forward Kinematics
Inverse Kinematics
P  f (1,2 )
1,2  f 1 ( P)
Animation (U), Chap 5 Kinematic Linkages
24
CS, NCTU, J. H. Chuang
Forward Kinematics

Evaluate the tree


Depth-first traversal from the root to leaf
Repeat the following until all nodes and arcs have
been visited



The traversal then backtracks up the tree until an unexplored
downward arc is encountered
The downward arc is then traversal
In implementation

Requires a stack of transformations
Animation (U), Chap 5 Kinematic Linkages
25
CS, NCTU, J. H. Chuang
Forward Kinematics
Tree Traversal
M=I
T0
T1.1
M = T0
T 1.2
M = T0*T1.1
M = T0*T1.1*T2.1
T2.1
T2.2
M = T0*T1.1
M = T0
M = T0*T1.2
M = T0*T1.2*T2.2
Animation (U), Chap 5 Kinematic Linkages
26
CS, NCTU, J. H. Chuang
Forward Kinematics
Example
?
End Effector
Base
Animation (U), Chap 5 Kinematic Linkages
27
CS, NCTU, J. H. Chuang
Inverse Kinematics

The initial pose vector and a desired pose
vector are given, come out the joint values
required to attain the desired pose

Can have zero, one, or more solutions
Over-constrained system
 Under-constrained system


Singularity problems
Animation (U), Chap 5 Kinematic Linkages
28
CS, NCTU, J. H. Chuang
Inverse Kinematics

Example

2 equations (constraints)
3 unknowns

Infinitely many solutions exist!


This is not uncommon!

See how you can move your elbow while keeping
your finger touching your nose
Animation (U), Chap 5 Kinematic Linkages
29
CS, NCTU, J. H. Chuang
Other problems in IK

Infinite many solutions
Animation (U), Chap 5 Kinematic Linkages
30
CS, NCTU, J. H. Chuang
Other problems in IK

No solutions
Animation (U), Chap 5 Kinematic Linkages
31
CS, NCTU, J. H. Chuang
Inverse Kinematics

Once the joint values are calculated, the figure
can be animated by interpolating the initial
pose vector values to the final pose vector
values.

Does not provide a precise or an appropriate
control when there is large differences between
initial and final pose vectors. Alternatively,
Interpolate pose vectors
 Do inverse kinematics for each interpolated pose vector

Animation (U), Chap 5 Kinematic Linkages
32
CS, NCTU, J. H. Chuang
Inverse Kinematics
Analytic vs. Numerical

Analytic solutions exist only for relatively
simple linkages



Inspecting the geometry of linkages
Algebraic manipulation of equations that describe
the relationship of the end effector to the base
frame.
Numerical incremental approach


Inverse Jacobian method
Other methods
Animation (U), Chap 5 Kinematic Linkages
33
CS, NCTU, J. H. Chuang
Inverse Kinematics
Analytic Method
2
L1
Animation (U), Chap 5 Kinematic Linkages
1
34
L2
Goal
(X,Y)
CS, NCTU, J. H. Chuang
Inverse Kinematics
Analytic Method
L1
L2
180- 2
1
(X,Y)
x2  y2
T
Y
X

Animation (U), Chap 5 Kinematic Linkages
35
CS, NCTU, J. H. Chuang
Inverse Kinematics
Cosine Law
C
A
a
B
A  B C
cos(a ) 
2 AB
2
Animation (U), Chap 5 Kinematic Linkages
36
2
2
CS, NCTU, J. H. Chuang
Inverse Kinematics
Analytic Method
L2
L1
1
x2  y2

L1  L2  X  Y
2 L1 L2
2
2
2

2
2
2
Animation (U), Chap 5 Kinematic Linkages
X 2 Y 2


2
2 
 X Y 
T  cos 1 

cos(1  T ) 

L1  L2  X 2  Y 2
 2  180  cos (
)
2 L1 L2
1
X

Y
X

cos(180   2 ) 
(X,Y)
180- 2
T
cos(T ) 
1  cos (
1
37
X
L1  X 2  Y 2  L2
2
2
2 L1 X 2  Y 2
L1  X 2  Y 2  L2
2
2 L1 X  Y
2
2
2
)  T
CS, NCTU, J. H. Chuang
Inverse Kinematics
More complex joints
End Effector=P
Base
Animation (U), Chap 5 Kinematic Linkages
38
CS, NCTU, J. H. Chuang
Why is IK hard?


Redundancy
Natural motion control




joint limits
minimum jerk
style?
Singularities


ill-conditioned
Singular
Animation (U), Chap 5 Kinematic Linkages
39
CS, NCTU, J. H. Chuang
Solving Inverse Kinematics
Numerically



Inverse-Jacobian method
Optimization-based method
Example-based method
Animation (U), Chap 5 Kinematic Linkages
40
CS, NCTU, J. H. Chuang
Inverse-Jacobian method
P  f ( )
P  Rn (n  6 usually)
  R (m  DOFs)
m

Jacobian is the n by m matrix relating differential
changes of  d to differential changes of P (dP)
dP
d
 J ( )
dt
dt

f i
where J ij 
 j
So Jacobian maps velocities in joint space to velocities
in Cartesian space
V  J ( )
Animation (U), Chap 5 Kinematic Linkages
41
CS, NCTU, J. H. Chuang
Inverse-Jacobian method

Recall the inverse kinematics problem
1
  f ( P)


f is highly nonlinear
Make the problem linear by localizing about the
current operating position and inverting the
Jacobian
  J 1V

and iterating towards the desired post over a series of
incremental steps.
Animation (U), Chap 5 Kinematic Linkages
42
CS, NCTU, J. H. Chuang
Inverse-Jacobian method

Given initial pose and desired pose, iteratively
change the joint angles to approach the goal
position and orientation

Interpolate the desired pose vectors for some
intermediate steps

For each step k, find the angular velocities for joints,
and do

 k 1   k  t
Animation (U), Chap 5 Kinematic Linkages
43
CS, NCTU, J. H. Chuang
Inverse-Jacobian method
Animation (U), Chap 5 Kinematic Linkages
44
CS, NCTU, J. H. Chuang
Computing Jacobian

Compute analytically


Ok for simple joints
Geometric approach


For complex joints
Let’s say we are just concerned with the end
effector position for now.
This also implies that the Jacobian with be an 3×N
matrix where N is the number of DOFs
 For each joint DOF, we analyze how e would change if
the DOF changed

Animation (U), Chap 5 Kinematic Linkages
45
CS, NCTU, J. H. Chuang
Computing Jacobian Analytically
An Example
End Effector=P
Base
Animation (U), Chap 5 Kinematic Linkages
46
CS, NCTU, J. H. Chuang
Computing Jacobian Analytically
An Example
Animation (U), Chap 5 Kinematic Linkages
47
CS, NCTU, J. H. Chuang
Computing Jacobian Geometrically
Jacobian for a 2D arm

Let’s say we have a simple 2D robot arm with
two 1-DOF rotational joints:
• e=[ex ey]
φ2
φ1
Animation (U), Chap 5 Kinematic Linkages
48
CS, NCTU, J. H. Chuang
Computing Jacobian Geometrically
Jacobian for a 2D arm

The Jacobian matrix J(Φ) shows how each
component of e varies with respect to each
joint angle
 ex
 
J Φ   1
 e y
 1
Animation (U), Chap 5 Kinematic Linkages
ex 
2 

e y 
2 
49
CS, NCTU, J. H. Chuang
Computing Jacobian Geometrically
Jacobian for a 2D arm

Consider what would happen if we increased φ1 by a
small amount. What would happen to e ?
e  ex

1  1
e y 

1 
•
φ1
Animation (U), Chap 5 Kinematic Linkages
50
CS, NCTU, J. H. Chuang
Computing Jacobian Geometrically
Jacobian for a 2D arm

What if we increased φ2 by a small amount?
e  ex

2  2
Animation (U), Chap 5 Kinematic Linkages
e y 

2 
•
φ2
51
CS, NCTU, J. H. Chuang
Computing Jacobian Geometrically
Jacobian for a 2D arm
 ex
 
V  J Φ    1
 e y
 1
ex 
2  

e y 
2 
•
φ2
φ1
Animation (U), Chap 5 Kinematic Linkages
52
CS, NCTU, J. H. Chuang
Computing Jacobian Geometrically
Jacobian for a 2D arm
Angular and linear velocities induced by joint axis rotation.
Animation (U), Chap 5 Kinematic Linkages
53
CS, NCTU, J. H. Chuang
Computing Jacobian Geometrically
Jacobian for 2D arm


Let’s consider a 1-DOF rotational joint first
We want to know how the global position e
will change if we rotate around the axis.
e  ex

1  1
•
e y 

1 
 a1  (e  r1 )
φ1
Animation (U), Chap 5 Kinematic Linkages
54
CS, NCTU, J. H. Chuang
Computing Jacobian Geometrically
Jacobian for 2D arm e
e
 i
•
e  ri
e
 ai  e  ri
i
ri •
ai
a’i: unit length rotation axis in world space
r’i: position of joint pivot in world space
e: end effector position in world space
Animation (U), Chap 5 Kinematic Linkages
55
CS, NCTU, J. H. Chuang
Computing Jacobian Geometrically
3-DOF Rotational Joints


Once we have each axis in world space, each
one will get a column in the Jacobian matrix
At this point, it is essentially handled as three
1-DOF joints, so we can use the same formula
for computing the derivative as we did earlier:
e
 ai  e  ri
i

We repeat this for each of the three axes
Animation (U), Chap 5 Kinematic Linkages
56
CS, NCTU, J. H. Chuang
Computing Jacobian Geometrically
Jacobian for another 2D arm
Animation (U), Chap 5 Kinematic Linkages
57
CS, NCTU, J. H. Chuang
Computing Jacobian Geometrically
Jacobian for another 2D arm
Animation (U), Chap 5 Kinematic Linkages
58
CS, NCTU, J. H. Chuang
Computing Jacobian Geometrically
Jacobian for another 2D arm

The problem is to determine the best linear
combination of velocities induced by the
various joints that would result in the desired
velocities of the end effector.

Jacobian is formed by posing the problem in
matrix form.
Animation (U), Chap 5 Kinematic Linkages
59
CS, NCTU, J. H. Chuang
Computing Jacobian Geometrically
Jacobian for another 2D arm
ex ex

(G  E ) x 
  
2
V  (G  E ) y   J Φ    1
 e y e y
 (G  E ) z 
 1 2
((0,0,1)  E ) x ((0,0,1)  ( E  P1 ) x

 ((0,0,1)  E ) y ((0,0,1)  ( E  P1 ) y
 ((0,0,1)  E ) z ((0,0,1)  ( E  P1 ) z
Animation (U), Chap 5 Kinematic Linkages
60
ex 
3  

e y 
3 
((0,0,1)  ( E  P2 ) x 

((0,0,1)  ( E  P2 ) y 
((0,0,1)  ( E  P2 ) z 
CS, NCTU, J. H. Chuang
Inverse-Jacobian method
  f ( P)
1
V  J ( )
1

  J ( )V


Linearize about k locally
Jacobian depends on current configuration
Animation (U), Chap 5 Kinematic Linkages
61
CS, NCTU, J. H. Chuang
Inverse-Jacobian method
Problems


Problems in localizing the P = f (θ)
Problems in solving the system

Non-square matrix, but independent rows


Use pseudo inverse
Singularity
When the inverse of Jacobian does not exist
 occurs when any  cannot achieve a given


V
Near singularity

ill-conditioned
Animation (U), Chap 5 Kinematic Linkages
62
CS, NCTU, J. H. Chuang
Inverse-Jacobian method
Iterative approach

Given initial pose and desired pose, iteratively
change the joint angles to approach the goal
position and orientation

Interpolate the desired pose vectors for some
intermediate steps

For each step k, compute V, and find the angular
velocities   J 1V for joints, and do
 k 1   k  t
Animation (U), Chap 5 Kinematic Linkages
63
CS, NCTU, J. H. Chuang
Inverse-Jacobian method
Iterative approach
Animation (U), Chap 5 Kinematic Linkages
64
CS, NCTU, J. H. Chuang
Inverse-Jacobian method
Iterative approach
Animation (U), Chap 5 Kinematic Linkages
65
CS, NCTU, J. H. Chuang
Inverse-Jacobian method
Iterative approach

V
No linear combination of vectors gi could produce the desired goal.
Animation (U), Chap 5 Kinematic Linkages
66
CS, NCTU, J. H. Chuang
Inverse-Jacobian method
Iterative approach
Frame:

V
Total: 21 frames
No linear combination of vectors gi could produce the desired goal.
Animation (U), Chap 5 Kinematic Linkages
67
CS, NCTU, J. H. Chuang
Inverse-Jacobian method
Problems


Problems in localizing the P = f (θ)
Problems in solving the system

Non-square matrix, but independent rows


Use pseudo inverse
Singularity
When the inverse of Jacobian does not exist
 occurs when any  cannot achieve a given



Near singularity

ill-conditioned
Animation (U), Chap 5 Kinematic Linkages
68
CS, NCTU, J. H. Chuang
Inverse-Jacobian method
Remedy to Singularity Problems

Problems with singularities can be reduced if
the manipulator is redundancy – when there
are more DOF than there are constraints to be
satisfied


Jacobian is not square
If rows of J are linearly independent (J has full
row rank), then ( JJ T ) 1 exists and instead,
pseudo inverse of Jacobian can be used!
Animation (U), Chap 5 Kinematic Linkages
69
CS, NCTU, J. H. Chuang
Inverse-Jacobian method
Pseudo Inverse of the Jacobian
V  J
J V  J J
T
T
T
1
Where J has full row rank, ( J J ) exists!
T
1 T
T
1 T
( J J ) J V  ( J J ) J J
J V  

where J   ( J T J ) 1 J T  J T ( J J T ) 1
Animation (U), Chap 5 Kinematic Linkages
70
CS, NCTU, J. H. Chuang
Inverse-Jacobian method
Pseudo Inverse of the Jacobian
J V  
( J T J ) 1 J T V  
J  V  
J T ( JJ T ) 1V  
Let   ( JJ T ) 1V , which implies ( JJ T )   V
and be solved using LU decomposit ion (solve for  ).
J T   
Animation (U), Chap 5 Kinematic Linkages
71
CS, NCTU, J. H. Chuang
Inverse-Jacobian method
Dealing with singularities

Physically the singularities usually occur when
the linkage id fully extended or when the axes
of separate links align themselves
V1 and V2 are
in parallel
Animation (U), Chap 5 Kinematic Linkages
72
CS, NCTU, J. H. Chuang
Inverse-Jacobian method
Dealing with singularities

Two approaches to the case of full extension


Simply not allow the linkage to become fully
extended
Adopt a different iterative process with the region
of singularity to avoid the case of singularity
Animation (U), Chap 5 Kinematic Linkages
73
CS, NCTU, J. H. Chuang
Inverse-Jacobian method
Dealing with near singularities

Small V implies very large 
Two cases
of near
singularity
Near singularity occurs
When 3 links all aligned
And the end is positioned
over the base.
Small V
implies
very large 
Animation (U), Chap 5 Kinematic Linkages
74
CS, NCTU, J. H. Chuang
Inverse-Jacobian method
Dealing with near singularities

Damped least square approach

a user-supplied parameter is used to add in a term
that reduces the sensitivity of the pseudoinverse,
T
T
1

  J ( JJ   I ) V
Let   ( JJ   I ) V , and
T
1
solve ( JJ T   I )   V for 
Finally,   J T 
Animation (U), Chap 5 Kinematic Linkages
75
CS, NCTU, J. H. Chuang
Adding more control to IK




Pseudoinverse computes one of many possible
solutions that minimizes joint angle velocities
IK using pseudoinverse Jacobian may not
provide natural poses
A control term can be added to the
pseudoinverse Jacobian solution
The control term should not add anything to
the velocities, that is J  V
control term
  J V  ( J  J  I ) z
Animation (U), Chap 5 Kinematic Linkages
76
CS, NCTU, J. H. Chuang
Adding more control to IK
Control Term Adds Zero Linear Velocities
A solution of this form
  ( J  J  I ) z
When put into this formula
V  J

V  J (J J  I )z
Like this
V  ( JJ  J  J ) z
V  (J  J )z
After some manipulation,
you can show that it…
V  0z
…doesn’t affect the
desired configuration
V 0
But it can be used to bias
the solution vector
Animation (U), Chap 5 Kinematic Linkages
77
CS, NCTU, J. H. Chuang
Adding more control to IK

To bias the solution toward specific joint
angles, such as the middle joint angle between
joint limits, z is defined as
z  a i ( i   ci ) 2
where  i : current joint angles,
 ci : desired joint angles
a : joint gains
This is not a hard constraint s; but the solution
can be biased toward the middle values.
Animation (U), Chap 5 Kinematic Linkages
78
CS, NCTU, J. H. Chuang
Adding more control to IK

Joint gain


indicates the relative importance of the associated
desired angle
The higher the gain, the stiff the joint
High: the solution will be such that the joint angle
quickly approach the desired joint angle
 All gians are zero: reduced to the conventional
pseudoinverse of Jacobian.

Animation (U), Chap 5 Kinematic Linkages
79
CS, NCTU, J. H. Chuang
Adding more control to IK
How to solve the system?
  J V  ( J  J  I ) z



  J V  J Jz  Iz
T
T 1

  J ( JJ ) (V  Jz )  z


T
T 1

  J ( JJ ) (V  Jz )  z
Let   ( JJ ) (V  Jz ),
T 1
and solve ( JJ )   (V  Jz ) for  .
T

and comoute   J   z
T
Animation (U), Chap 5 Kinematic Linkages
80
CS, NCTU, J. H. Chuang
Adding more control to IK
Gain s
Top: {0.1, 0.5, 0.1}
Bottom: {0.1, 0.1, 0.5}
Animation (U), Chap 5 Kinematic Linkages
81
CS, NCTU, J. H. Chuang
Null space of Jacobian

The control term  is in the null space of J
  ( J  J  I ) z

The null space of J is the set of vectors
which have no influence on the constraints
  nullspace ( J )  J  0
Animation (U), Chap 5 Kinematic Linkages
82
CS, NCTU, J. H. Chuang
Utility of Null Space

The null space can be used to reach
secondary goals
  J V  ( J  J  I ) z
min G ( )
z

Or to find natural pose / control stiffness of joints
G( )  ai (natural(i )   (i ))
2
i
Animation (U), Chap 5 Kinematic Linkages
83
CS, NCTU, J. H. Chuang
Optimization-based Method

Formulate IK as an nonlinear optimization problem
 Example
Objective function
 Constraint
 Iterative algorithm
Nonlinear programming method by Zhao & Badler,
TOG 1994


Animation (U), Chap 5 Kinematic Linkages
84
CS, NCTU, J. H. Chuang
Objective Function


“distance” from the end effector to the goal
position/orientation
Function of joint angles : G()
Goal
distance
End Effector
Base
Animation (U), Chap 5 Kinematic Linkages
85
CS, NCTU, J. H. Chuang
Objective Function
Position Goal
Position/Orientation Goal
Animation (U), Chap 5 Kinematic Linkages
Orientation Goal
weighted sum
86
CS, NCTU, J. H. Chuang
Nonlinear Optimization

Constrained nonlinear optimization problem
limb coordination
joint limits

Solution




standard numerical techniques
MATLAB or other optimization packages
usually a local minimum
depends on initial condition
Animation (U), Chap 5 Kinematic Linkages
87
CS, NCTU, J. H. Chuang
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
Animation (U), Chap 5 Kinematic Linkages
88
CS, NCTU, J. H. Chuang
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
Animation (U), Chap 5 Kinematic Linkages
89
CS, NCTU, J. H. Chuang
Example-based Method (cont.)

Constructed pose space (training, extrapolated)
Animation (U), Chap 5 Kinematic Linkages
90
CS, NCTU, J. H. Chuang
Videos

“Style-based inverse kinematics”
Animation (U), Chap 5 Kinematic Linkages
91
CS, NCTU, J. H. Chuang