computer graphics group tobias weyand mesh-based inverse kinematics sumner et al 2005 presented by...

35
Computer Graphics Group Tobias Weyand Mesh-Based Inverse Kinematics Sumner et al 2005 presented by Tobias Weyand

Upload: marshall-paul

Post on 11-Jan-2016

215 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Computer Graphics Group Tobias Weyand Mesh-Based Inverse Kinematics Sumner et al 2005 presented by Tobias Weyand

Computer Graphics GroupTobias Weyand

Mesh-Based Inverse Kinematics

Sumner et al 2005

presented by Tobias Weyand

Page 2: Computer Graphics Group Tobias Weyand Mesh-Based Inverse Kinematics Sumner et al 2005 presented by Tobias Weyand

Computer Graphics GroupTobias Weyand2

What is Inverse Kinematics?

• Articulated body

• Which angles for a certain configuration?

• Forward kinematics• Specify angles

• Inverse kinematics• Specify limb position

1

2

3

1

2

3

Page 3: Computer Graphics Group Tobias Weyand Mesh-Based Inverse Kinematics Sumner et al 2005 presented by Tobias Weyand

Computer Graphics GroupTobias Weyand3

IK in Computer Graphics

© NVidia

• Modelling

• Meaningful deformations

• Animation

• Realistic movement

Problems:

• Skinning time consuming

• Not everything has bones

Page 4: Computer Graphics Group Tobias Weyand Mesh-Based Inverse Kinematics Sumner et al 2005 presented by Tobias Weyand

Computer Graphics GroupTobias Weyand4

Mesh-based Inverse Kinematics

Idea: Learn deformations from examples

Page 5: Computer Graphics Group Tobias Weyand Mesh-Based Inverse Kinematics Sumner et al 2005 presented by Tobias Weyand

Computer Graphics GroupTobias Weyand5

Overview

• Introduction• Related work

• MeshIK• Feature Vectors• Linear Feature Space• Nonlinear Feature Space• Accelerations

• Results and Conclusion

Page 6: Computer Graphics Group Tobias Weyand Mesh-Based Inverse Kinematics Sumner et al 2005 presented by Tobias Weyand

Computer Graphics GroupTobias Weyand6

Related work: Deformation Transfer

Deformation Transfer for Triangle Meshes

Transfer source deformations to target

Sumner et al 2004

Page 7: Computer Graphics Group Tobias Weyand Mesh-Based Inverse Kinematics Sumner et al 2005 presented by Tobias Weyand

Computer Graphics GroupTobias Weyand7

Related work: Deformation TransferTriangle deformations:

Least squares problem:

iii sSs ~iii tTt ~

min||||||

1

2

M

iFii TS

But: Limited to example poses

Page 8: Computer Graphics Group Tobias Weyand Mesh-Based Inverse Kinematics Sumner et al 2005 presented by Tobias Weyand

Computer Graphics GroupTobias Weyand8

Related work: Shape Interpolation

As-rigid-as-possible Shape Interpolation

• Morphing of 2D and 3D meshes• Considers mesh interior as rigid

Alexa et al. 2000

Page 9: Computer Graphics Group Tobias Weyand Mesh-Based Inverse Kinematics Sumner et al 2005 presented by Tobias Weyand

Computer Graphics GroupTobias Weyand9

Related work: Shape Interpolation

• Triangulate source and target shapes

• Find locally optimal triangle interpolations

But:• Limited to 2 meshes• Expensive:

• Compatible dissection• Computations on interior and exterior

Better:• Use only surface

Page 10: Computer Graphics Group Tobias Weyand Mesh-Based Inverse Kinematics Sumner et al 2005 presented by Tobias Weyand

Computer Graphics GroupTobias Weyand10

Mesh-based Inverse Kinematics

Goal:

• Provide a set of example meshes.

• MeshIK learns meaningful deformations.

• Directly move a subset of the mesh vertices.

• MeshIK finds a suitable deformation according to the example meshes.

Page 11: Computer Graphics Group Tobias Weyand Mesh-Based Inverse Kinematics Sumner et al 2005 presented by Tobias Weyand

Computer Graphics GroupTobias Weyand11

Feature Vectors

Given: Base mesh P0, deformed mesh P

Deformation: set of affine mappings }{ j

jjj tpTp )(

Deformation gradient: Jacobian of

Discard translation

)( pj

jjjpjp TtpTDpD )()(

Page 12: Computer Graphics Group Tobias Weyand Mesh-Based Inverse Kinematics Sumner et al 2005 presented by Tobias Weyand

Computer Graphics GroupTobias Weyand12

Feature Vectors

Feature vector: concatentaion of deformation gradients

321

321

321

zj

zj

zj

yj

yj

yj

xj

xj

xj

j

ttt

ttt

ttt

T

313131321112111f z

mzy

myx

mxxxx ttttttttt

Page 13: Computer Graphics Group Tobias Weyand Mesh-Based Inverse Kinematics Sumner et al 2005 presented by Tobias Weyand

Computer Graphics GroupTobias Weyand13

Feature Vectors

Calculation of f for mesh P

),(P pp EV T111 )),,(,),,,(( mmmp zyxzyxV

P → mesh-vector x:T

n1n1n321 )zzyyxxxx(x

Construct G such that:

Gxf

Page 14: Computer Graphics Group Tobias Weyand Mesh-Based Inverse Kinematics Sumner et al 2005 presented by Tobias Weyand

Computer Graphics GroupTobias Weyand14

Feature Vectors

Properties of G:

g

g

g

G

- Block-diagonal structure- Sparse- Only depends on P0

Page 15: Computer Graphics Group Tobias Weyand Mesh-Based Inverse Kinematics Sumner et al 2005 presented by Tobias Weyand

Computer Graphics GroupTobias Weyand15

Feature Vectors

Extracting a mesh from a feature vector:

Fix one vertex in x:

• Set corresponding rows in G to 0.

• Add product of these rows with x.

cG x~

f

Page 16: Computer Graphics Group Tobias Weyand Mesh-Based Inverse Kinematics Sumner et al 2005 presented by Tobias Weyand

Computer Graphics GroupTobias Weyand16

Multiple Vertex Constraints

Transform to least squares problem:

cG x~

f2

xfx

~minargx cG

Properties of x:• Close relation to the feature vector• Fulfills the vertex constraints

Page 17: Computer Graphics Group Tobias Weyand Mesh-Based Inverse Kinematics Sumner et al 2005 presented by Tobias Weyand

Computer Graphics GroupTobias Weyand17

Linear Feature Space

Linear combination of features:

llw www ffff 2211

Vector notation: ww Mf

l1 ffM T1 lwww

MwcGxwxwx

,

** minarg,

Least squares problem

Minimize for optimal weights and mesh

Page 18: Computer Graphics Group Tobias Weyand Mesh-Based Inverse Kinematics Sumner et al 2005 presented by Tobias Weyand

Computer Graphics GroupTobias Weyand18

Linear Feature Space: Problems

Unnatural interpolation of rotations

Goal: Correctly capture rotations

Page 19: Computer Graphics Group Tobias Weyand Mesh-Based Inverse Kinematics Sumner et al 2005 presented by Tobias Weyand

Computer Graphics GroupTobias Weyand19

Transformation Interpolation

Linear Combinations of Transformations

Scalar product:

Addition:

Combination:

T

BA

T

n

nn

nBA

11

lim

Te log

BAe loglog

nn AA 11nn AAe loglog 11

Alexa 2002

)log( Te

Page 20: Computer Graphics Group Tobias Weyand Mesh-Based Inverse Kinematics Sumner et al 2005 presented by Tobias Weyand

Computer Graphics GroupTobias Weyand20

Possible Nonlinear Feature Space

l

iiji Tw

j eT 1

log

But:• Practically produces singularities• Linear scales and shears suffice

MeshIK interpolation:• Scales and skews: linear• Rotations: above formula

Page 21: Computer Graphics Group Tobias Weyand Mesh-Based Inverse Kinematics Sumner et al 2005 presented by Tobias Weyand

Computer Graphics GroupTobias Weyand21

Extracting Rotations

Matrix Animation and Polar Decomposition

Method for factoring a transformation T

T=RS

New transformation combination

Shoemake and Duff 1992

l

iiji

Rw

j SwewT

l

iiji

1

)log(1)(

Page 22: Computer Graphics Group Tobias Weyand Mesh-Based Inverse Kinematics Sumner et al 2005 presented by Tobias Weyand

Computer Graphics GroupTobias Weyand22

Nonlinear Feature Space

)(xminarg,x,x

** wMcGww

New nonlinear least squares problem:

Properties:• Fulfills vertex constraints• Close to nonlinear feature space• Natural rotation interpolation

Efficient solver required!

Page 23: Computer Graphics Group Tobias Weyand Mesh-Based Inverse Kinematics Sumner et al 2005 presented by Tobias Weyand

Computer Graphics GroupTobias Weyand23

Gauss-Newton in MeshIK

Goal: minimize

)(xminarg,x,x

** wMcGww

Approach with Gauss-Newton:• Transform into locally linear equation • Solve linear least squares problem

Page 24: Computer Graphics Group Tobias Weyand Mesh-Based Inverse Kinematics Sumner et al 2005 presented by Tobias Weyand

Computer Graphics GroupTobias Weyand24

Gauss-Newton in MeshIK

Linearize M(w) with Taylor expansion

)()()( wMDwMwM w

||)()(||minargx,x,

cwMwMDGx kkwkk

Linear least squares problem

xAwMDG kw )(x

Reduce to one variable:

2

x,)(minargx, cwMxA kkk

)( kw wMDGA

Page 25: Computer Graphics Group Tobias Weyand Mesh-Based Inverse Kinematics Sumner et al 2005 presented by Tobias Weyand

Computer Graphics GroupTobias Weyand25

Gauss-Newton in MeshIK

Set ))((2x2x' TT cwMAAAF k

= 0!

))((x TT cwMAAA k

Iteration steps:• Solve the normal equation for• Update

x

kk ww 1

But: Far too slow! Optimization needed!

Page 26: Computer Graphics Group Tobias Weyand Mesh-Based Inverse Kinematics Sumner et al 2005 presented by Tobias Weyand

Computer Graphics GroupTobias Weyand26

Cholesky Factorization

Linear system:

))((x TT cwMAAA k

))((x TT cwMACC k

))((TT cwMAyC k

yC

x

CCAA TT

Decompose:

Method:y

x

Page 27: Computer Graphics Group Tobias Weyand Mesh-Based Inverse Kinematics Sumner et al 2005 presented by Tobias Weyand

Computer Graphics GroupTobias Weyand27

Cholesky FactorizationFurther acceleration:

Exploit structure of ATA and CTC:

3

1

TT3

T33

T

T3

T

T2

T

T1

T

T

i ii JJgJgJJg

gJgggJgggJgg

AA

3

1

TTT3

T2

T1

3TT

2TT

1TT

T

i iiS RRRRRRRRRR

RRRRRRRRRRRR

CC

Note: RTR=gTg• Precompute RTR• Only calculate R1, R2, R3, RS

Interactive speed

Page 28: Computer Graphics Group Tobias Weyand Mesh-Based Inverse Kinematics Sumner et al 2005 presented by Tobias Weyand

Computer Graphics GroupTobias Weyand28

Performance

Mesh Tris Examples Preprocess Solve

Flag 932 14 0.016 0.020

Lion 9,996 10 0.0475 0.210

Horse 16,846 4 0.610 0.160

Elephant 84,638 4 13.249 0.906

Page 29: Computer Graphics Group Tobias Weyand Mesh-Based Inverse Kinematics Sumner et al 2005 presented by Tobias Weyand

Computer Graphics GroupTobias Weyand29

Results

Page 30: Computer Graphics Group Tobias Weyand Mesh-Based Inverse Kinematics Sumner et al 2005 presented by Tobias Weyand

Computer Graphics GroupTobias Weyand30

Video

Page 31: Computer Graphics Group Tobias Weyand Mesh-Based Inverse Kinematics Sumner et al 2005 presented by Tobias Weyand

Computer Graphics GroupTobias Weyand31

Comparison: Shape Interpolation

Arap. MeshIK

2 meshes n meshes

Needs compatible dissection of meshes

→ expensive

Needs meshes with same topology

Operates on exterior and interior

Operates only on surface

Page 32: Computer Graphics Group Tobias Weyand Mesh-Based Inverse Kinematics Sumner et al 2005 presented by Tobias Weyand

Computer Graphics GroupTobias Weyand32

Comparison: Shape Interpolation

Page 33: Computer Graphics Group Tobias Weyand Mesh-Based Inverse Kinematics Sumner et al 2005 presented by Tobias Weyand

Computer Graphics GroupTobias Weyand33

Future work

• Different mesh representation• like subdivision surfaces• multiresolution hierarchies

• Different feature vectors• Capture mesh properties better• Accelerate system solving

• Better feature space for many examples

• Simulate physical effects like inertia

Page 34: Computer Graphics Group Tobias Weyand Mesh-Based Inverse Kinematics Sumner et al 2005 presented by Tobias Weyand

Computer Graphics GroupTobias Weyand34

Conclusion

MeshIK

• provides IK without skeleton• more direct and dynamic

• runs at interactive speeds

• compares well to other approaches• eg As-Rigid-As-Possible shape interpolation

Page 35: Computer Graphics Group Tobias Weyand Mesh-Based Inverse Kinematics Sumner et al 2005 presented by Tobias Weyand

Computer Graphics GroupTobias Weyand35

Thank you for your attention!