deformation using interpolation cse 3541 matt boggus

24
Deformation using interpolation CSE 3541 Matt Boggus

Upload: morris-townsend

Post on 19-Jan-2016

218 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: Deformation using interpolation CSE 3541 Matt Boggus

Deformation using interpolation

CSE 3541Matt Boggus

Page 2: Deformation using interpolation CSE 3541 Matt Boggus

Interpolation based animation

Keyframe systems – in general

Interpolating shapesDeforming an single shape3D interpolation between two shapesImage morphing

Page 3: Deformation using interpolation CSE 3541 Matt Boggus

Keyframing

Page 4: Deformation using interpolation CSE 3541 Matt Boggus

Time-Curve interpolation

Conditions:P(0) maps to Q(0)P(1) maps to Q(1)All of P maps to all of Q

One to one – no two P(u) map to same Q(v)Onto – every Q(v) has a P-1(u) value

Page 5: Deformation using interpolation CSE 3541 Matt Boggus

Time-Curve interpolation

Solutions:If P and Q use the same curve formation and # control points, then

generate intermediate curves by interpolating the control points

Supersample: Generate same number of points on P and Q, then interpolate between matching points

Page 6: Deformation using interpolation CSE 3541 Matt Boggus

Object interpolation topics

1. Modify shape of one object

2. Interpolate one object into second object

3. Interpolate one image into second image

Page 7: Deformation using interpolation CSE 3541 Matt Boggus

Object Modification

Vertex warping

2D grid-based deforming

Skeletal bending

Free Form DeformationsModify the space the vertices lie in

Global transforms

Modify the vertices directly

Page 8: Deformation using interpolation CSE 3541 Matt Boggus

Warping

Vertices closer to seed are displaced more

Page 9: Deformation using interpolation CSE 3541 Matt Boggus

Power functionsFor attenuating warping

1

1

)1

0.1(

)1

(0.1)(

k

k

n

in

iiS

0

0

k

k

k determines how quickly increase in distance decreases warping

Page 10: Deformation using interpolation CSE 3541 Matt Boggus

2D grid-based deforming

Assumption: easier to deform grid points than object vertices

A (global coordinates): (25.6,14.7)A (local coordinates): (5.6, 2.7)A’s Grid cell (5, 2)A’s position in cell (0.6, 0.7)

Page 11: Deformation using interpolation CSE 3541 Matt Boggus

2D grid-based deforming

Inverse bilinear mapping

P values at corners known from grid deformationu and v are known from point’s position in original grid cell

Page 12: Deformation using interpolation CSE 3541 Matt Boggus

2D grid-based deforming

Page 13: Deformation using interpolation CSE 3541 Matt Boggus

2D skeleton-based bending

Page 14: Deformation using interpolation CSE 3541 Matt Boggus

2D skeleton-based bending

For each vertex, determine which line segment (or bone) it is closest to: L2

distance to it: d relative position on the line segment: r = d2/d1

Page 15: Deformation using interpolation CSE 3541 Matt Boggus

2D skeleton-based bending

For new vertex position on repositioned (and possibly rescaled) line segment, Interpolate r along line segment Place d units away from the line segment

Page 16: Deformation using interpolation CSE 3541 Matt Boggus

Examples of artist driven deformation

• Point based, skeleton based, cage based

• From Bounded Biharmonic Weights for Real-Time Deformation by Alec Jacobson, Ilya Baran, Jovan Popovic and Olga Sorkine, appearing at SIGGRAPH 2011

• http://www.youtube.com/watch?v=P9fqm8vgdB8&feature=related

Page 17: Deformation using interpolation CSE 3541 Matt Boggus

Free-Form Deformations (FFDs)

2D grid-based deforming FFDs

2D grid 3D grid

tri-cubic interpolationbi-linear interpolation

Page 18: Deformation using interpolation CSE 3541 Matt Boggus

FFDs

Animate by passing object through FFD

Page 19: Deformation using interpolation CSE 3541 Matt Boggus

Interpolate between 2 objects

Correspondence problem: what part of one object to maps into what part of the other object

Page 20: Deformation using interpolation CSE 3541 Matt Boggus

Interpolate between 2 objects – difficulties

How to handle objects of different genus?(roughly speaking: number of holes in the model)

map to

Page 21: Deformation using interpolation CSE 3541 Matt Boggus

Morphing Image blendingMove pixels to corresponding pixels

Example from http://www.mukimuki.fr/flashblog/2009/05/10/morphing/

Page 22: Deformation using interpolation CSE 3541 Matt Boggus

Morphing

Page 23: Deformation using interpolation CSE 3541 Matt Boggus

Morphing

Page 24: Deformation using interpolation CSE 3541 Matt Boggus

Morphing

Using feature lines instead of grid points