Deformation using interpolation CSE 3541 Matt Boggus.

Post on 19-Jan-2016

218 views 3 download

Tags:

Transcript of Deformation using interpolation CSE 3541 Matt Boggus.

Deformation using interpolation

CSE 3541Matt Boggus

Interpolation based animation

Keyframe systems – in general

Interpolating shapesDeforming an single shape3D interpolation between two shapesImage morphing

Keyframing

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

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

Object interpolation topics

1. Modify shape of one object

2. Interpolate one object into second object

3. Interpolate one image into second image

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

Warping

Vertices closer to seed are displaced more

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

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)

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

2D grid-based deforming

2D skeleton-based bending

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

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

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

Free-Form Deformations (FFDs)

2D grid-based deforming FFDs

2D grid 3D grid

tri-cubic interpolationbi-linear interpolation

FFDs

Animate by passing object through FFD

Interpolate between 2 objects

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

Interpolate between 2 objects – difficulties

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

map to

Morphing Image blendingMove pixels to corresponding pixels

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

Morphing

Morphing

Morphing

Using feature lines instead of grid points