94
Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation- based Animation 1 CS, NCTU, J. H.Chuang

Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

Embed Size (px)

Citation preview

Page 1: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

Chap 4Interpolation-Based Animation

Animation (U), Chap 4, Interpolation-based Animation

1CS, NCTU, J. H.Chuang

Page 2: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang2

Outline

Key-Frame Systems Animation Languages Deforming Objects 3D Shape Interpolation 2D Morphing

Animation (U), Chap 4, Interpolation-based Animation

Page 3: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang3

Key-Frame Systems Hand-drawn animation

Key Frames - defined and drawn by master animators

Intermediate frames – drawn by assistant animators Computer animation

Key Frames - be generalized to apply to any VARIABLE whose value is set at specific key frames

Intermediate frames – values are interpolated according to some prescribed procedure

Animation (U), Chap 4, Interpolation-based Animation

Page 4: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang4

Key-Frame Systems

Animation (U), Chap 4, Interpolation-based Animation

Specify interpolation of key values and tangents at segment boundaries

Page 5: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang5

Key-Frame Systems What is the key?

Difficult to interpolate hand-drawn images

Different approach in computer animation Each key frame is described by a set of parameters Sequence of key frames = points in high-dimensional

space Compute in-between by interpolating these points

Animation (U), Chap 4, Interpolation-based Animation

Page 6: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang6

Key-Frame Systems What is a key?

For a bouncing ball 3D Positions Orientation? Squishedness?

Animation (U), Chap 4, Interpolation-based Animation

Page 7: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang7

Key-Frame Systems What is a key?

For Shrek? 3D Position and orientation Joint angles of the skeleton Facial features Hair/fur? Clothing? Clouds?

Scene components? Camera Lights

Shrek (PDI/DreamWorks, 2001)

Animation (U), Chap 4, Interpolation-based Animation

Page 8: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang8

Key-Frame Systems Key-framing Procedures

Specify the key frames rigid transformation, forward/inverse kinematics

Specify the type of interpolation linear, cubic, parametric curves

Specify the speed profile of the interpolation constant velocity, ease-in/out, etc.

Computer generates the in-between frames

Animation (U), Chap 4, Interpolation-based Animation

Page 9: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang9

Key-Frame Systems Pros and Cons

Good control over motion Eliminates much of the labor in traditional

animation, but still very labor-intensive Impractical for complex scenes

water, smoke grass in the wind crowds

Animation (U), Chap 4, Interpolation-based Animation

Page 10: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang10

Key-Frame Systems Basic operation: Interpolating Curves

Point-to-point basis: straightforward

Animation (U), Chap 4, Interpolation-based Animation

Page 11: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang11

Key-Frame Systems Basic operation: Interpolating Curves

Point-to-point correspondence is not known Curve-to-curve correspondence is given

Animation (U), Chap 4, Interpolation-based Animation

Page 12: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang12

Key-Frame Systems Basic operation: Interpolating Curves

Curve-to-curve correspondence is given What happen at intermediate points along the

curve is left undefined

Animation (U), Chap 4, Interpolation-based Animation

Page 13: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang13

Key-Frame Systems Basic operation: Interpolating Curves

If both curve are Bezier curves interpolating control points, or Generate curve points on both curves, followed by

point-to-point based interpolation Moving Point Constraints approach [Reeve

’81] Allows users to specify more information about

the point correspondence along the curves and the speed of interpolating these points

Uses “patch technology”Animation (U), Chap 4, Interpolation-based Animation

Page 14: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang14

Key-Frame Systems Basic operation: Interpolating Curves

Moving Point Constraints approach [Reeve ’81] Defines a segment of the curve to interpolate,

bounded on top and bottom by interpolation constraints

Interpolation of the very top and very bottom of the curve

Define an intermediate curve based on the constraints – C(t)

Animation (U), Chap 4, Interpolation-based Animation

Page 15: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang15

Key-Frame Systems Basic operation: Interpolating Curves

Animation (U), Chap 4, Interpolation-based Animation

Moving points

Moving points

Moving points

Moving points

Moving points

Page 16: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang16

Animation Languages

What is animation languages? A set of structured commands that can be used

to encode information necessary to produce animations Script-based

Text instructions Flowchart-like diagrams encode relationships

between objects and procedures

Animation (U), Chap 4, Interpolation-based Animation

Page 17: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang17

Animation Languages

Artist-oriented animation languages Full-featured programming languages for

animation Graphical languages – dataflow network Actor-based animation languages

Actor: a graphical object with its associated data and procedures, including geometric description, display attributes, and motion control.

Communication between actors: message passing

Animation (U), Chap 4, Interpolation-based Animation

Page 18: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang18

Deforming objects

Deforming and morphing an object is a visually powerful animation technique Flexible body animation makes the objects much

more expressive and alive How?

Physically based simulation Less control by animators Computationally expensive

By animator’s direct manipulation Key and interpolation

Animation (U), Chap 4, Interpolation-based Animation

Page 19: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang19

Deforming objectsPicking and Pulling (Editing)

Displace one or more of object’s vertices Others are propagated with attenuated distances

specified by a function of distance between the seed vertex and the vertex to be displaced

Minimum number of edges connecting these two vertices

Minimum distance traveled over the surface between these two vertices

Geodesic distance

Animation (U), Chap 4, Interpolation-based Animation

Page 20: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang20

Deforming objectsPicking and Pulling (Editing)

Animation (U), Chap 4, Interpolation-based Animation

Page 21: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang21

Deforming objectsPicking and Pulling (Editing)

Animation (U), Chap 4, Interpolation-based Animation

0 1

1

0 1

1

)( 1

1

kn

i

kn

i

iS k

k

i: minimum of connecting edgesn: maximum range of effectk: user-selected scale factor

Page 22: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang22

Deforming objectsPicking and Pulling (Editing)

Animation (U), Chap 4, Interpolation-based Animation

K=0: linear attenuationK<0: more elasticK>0: more rigid displacement

Page 23: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang23

Deforming objectsDeforming an Embedding Space

Deforming an Embedding Space Establish a local coordinate system that encases

the area of the object to be distorted Transform vertices to local coordinates

The local coordinate system is deformed by users in some way – easier or more intuitive

The local coordinate of the vertices are used to map their positions in global space

Example: Free-Form deformation (FFD)

Animation (U), Chap 4, Interpolation-based Animation

Page 24: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang24

Deforming objectsDeforming an Embedding Space

Deforming an Embedding Space Is easier or more intuitive than to manipulate

vertices of the object Restricted to possible distortions of the local

coordinate system Mapping should be continuous

More powerful than affine transformations

Animation (U), Chap 4, Interpolation-based Animation

Page 25: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang25

Deforming objects2D Grid Deformation

Local coordinate system a 2D grid in which an object is placed, aligning

with the global axes Local-to-global mapping

translation and scaling Deformation

Moving grid points to distort the local space Object’s vertices are relocated in the distorted grid

by bilinear interpolation relative to the grid cell

Animation (U), Chap 4, Interpolation-based Animation

Page 26: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang26

Deforming objectsDeforming an Embedding Space

Animation (U), Chap 4, Interpolation-based Animation

A: Global coordinate: (25.6, 14.7), Local coordinate : (5.6, 2.7)

Page 27: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang27

Deforming objectsDeforming an Embedding Space

Animation (U), Chap 4, Interpolation-based Animation

Page 28: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang28

Deforming objectsDeforming an Embedding Space

Animation (U), Chap 4, Interpolation-based Animation

P=(0.6)(0.7)P00+(0.6)(1.0-0.7)P01+(1.0-0.6)(0.7)P10

+(1.0-0.6)(1.0-0.7)P11

Page 29: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang29

Deforming objectsPolyline Deformation

Similar to grid approach object vertices are mapped to the polyline Polyline is modified Object vertices are mapped to the same relative

location on the polyline Polyline system

Polyline Boundary lines

Bisectors Perpendicular lines at end points

Animation (U), Chap 4, Interpolation-based Animation

Page 30: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang30

Deforming objectsPolyline Deformation

Animation (U), Chap 4, Interpolation-based Animation

For a given object vertex, we record1. The closest line segment (L2)2. The distance (d) to L2

3. The ratio r

Page 31: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang31

Deforming objectsPolyline Deformation

Animation (U), Chap 4, Interpolation-based Animation

Page 32: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang32

Deforming objectsFreeform Deformation (FFD)

3D extension of 2D grid deformation A localized coordinate grid is superimposed over

an object For each object vertex, coordinate s relative to

local grid are determined The grid is manipulated by the user Each object vertex is mapped back into the

modified grid Cubic interpolation is typically used with FFD

Bezier interpolation in Sederberg’s paperAnimation (U), Chap 4, Interpolation-based Animation

Page 33: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang33

Deforming objectsFreeform Deformation (FFD)

Animation (U), Chap 4, Interpolation-based Animation

uUtTsSPP

s, t, uP

UTSPPTSs

TSUPPSUt

SUTPPUTs

s, t, uP

S, T, U

P

0

0

0

0

0

coordinate global its has )( coordinate local with vertex a So

)))/(()(

)))/(()(

)))/(()(

by determined )( coordinate local :A vertex

orthogonally necessaryinot - )(by defined

:at origin with system coordinate Local

Page 34: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang34

Deforming objectsFreeform Deformation (FFD)

Animation (U), Chap 4, Interpolation-based Animation

Page 35: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang35

Deforming objectsFreeform Deformation (FFD)

To facilitate the modification of local coordinate system, a grid of control points is created

Animation (U), Chap 4, Interpolation-based Animation

nkmjli

Un

kT

m

jS

l

iPPijk

0,0,0for

0

Page 36: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang36

Deforming objectsFreeform Deformation (FFD)

As the control points moved, the point P(s,t,u) moves

Animation (U), Chap 4, Interpolation-based Animation

ijkkkn

n

k

jjmm

j

iill

i

Puuk

ntt

j

m

ssi

lutsP

)1()1(

)1(),,(

00

0

Page 37: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang37

Deforming objectsFreeform Deformation (FFD)

Multiple FFD control grids can be joined with continuity constraints across the boundaries

Animation (U), Chap 4, Interpolation-based Animation

Page 38: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang38

Deforming objectsFreeform Deformation (FFD)

Other FFD control grids

Animation (U), Chap 4, Interpolation-based Animation

Page 39: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang39

Deforming objectsFreeform Deformation (FFD)

Animation (U), Chap 4, Interpolation-based Animation

Page 40: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang40

Deforming objectsFreeform Deformation (FFD)

Animation (U), Chap 4, Interpolation-based Animation

Page 41: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang41

Deforming objectsFreeform Deformation (FFD)

Animation (U), Chap 4, Interpolation-based Animation

Page 42: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang42

Deforming objectsComposite FFD – Sequential

An object is modeled by progressing through a sequence of FFDs, each of which imparts a particular feature to the object Various detail elements can be added to an object in

stages as opposed to trying to create on complex FFD designed to do everything at once

Animation (U), Chap 4, Interpolation-based Animation

Page 43: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang43

Deforming objectsComposite FFD – Sequential

Animation (U), Chap 4, Interpolation-based Animation

Page 44: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang44

Deforming objectsComposite FFD – Hierarchical

Allows the user to work at various levels of detail Finer-resolution FFDs are embedded inside FFDs

higher in hierarchy As a coarser-level FFD is used to modify object’s

vertices, it also modifies the control points of any children FFDs that are within space affted by the deformation

Animation (U), Chap 4, Interpolation-based Animation

Page 45: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang45

Deforming objectsComposite FFD – Hierarchical

Animation (U), Chap 4, Interpolation-based Animation

Page 46: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang46

Deforming objectsAnimated FFD

FFDs can be used to control the object’s animation By deformation tools By animating the FFD control points

Deformation tools – a composition of An user-defined initial lattice A final lattice – modified from initial lattice by the user Object’s animation can be driven by

Moving the tool Moving the object

Animation (U), Chap 4, Interpolation-based Animation

Page 47: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang47

Deforming objectsAnimated FFD

Animation (U), Chap 4, Interpolation-based Animation

Deformation tool applied to an object

Page 48: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang48

Deforming objectsAnimated FFD

Animation (U), Chap 4, Interpolation-based Animation

Deformation by moving the deformation tool relative to an object

Page 49: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang49

Deforming objectsAnimated FFD

Animation (U), Chap 4, Interpolation-based Animation

Deformation by movingthe object through FFD space

In logical FFD space In distorted FFD space

Page 50: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang50

Deforming objectsAnimated FFD

Animating the FFD control points using, e.g., key-frame animation or by the result of physically based simulation

Animation (U), Chap 4, Interpolation-based Animation

Page 51: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang51

Deforming objectsProblems of Editing and FFD

Details are hard to be preserved

Animation (U), Chap 4, Interpolation-based Animation

Figure 3: Detail preservation is exhibited using Green Coordinates (on the right), where the details adhere to the surface deformation and rotate accordingly. In the middle, the MVC result is depicted where the details maintain their original orientation and therefore shear. From [Green Coordinates SIGGRAPH08]

Page 52: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

Animation (U), Chap 4, Interpolation-based Animation CS, NCTU, J. H.Chuang

3D Shape Interpolation

52

Interactive surface decomposition for polyhedral morphing Arthur Gregory et al. The Visual Computer 15(9), 1999

Page 53: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang53

3D Shape Interpolation

Surface-based Vertex-to-vertex correspondence Interpolation between corresponding vertices Limitations on topological consistence

volume-based Problems

Surface representation -> volumetric representation More computationally expensive

Animation (U), Chap 4, Interpolation-based Animation

Page 54: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang54

3D Shape Interpolation

Topology of surface or object Surface topology

Connectivity Manifold vs. non-manifold

Object topology Genus - hole

Topologically equivalent A doughnut and a teacup is topologically equivalent

Animation (U), Chap 4, Interpolation-based Animation

Page 55: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang55

3D Shape Interpolation

Animation (U), Chap 4, Interpolation-based Animation

Page 56: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang56

3D Shape InterpolationFor Meshes With Same Topology

Animation (U), Chap 4, Interpolation-based Animation

Vertex-to-vertex correspondence problem Genus 0

Spherical parameterization Merging Find the vertex-to-vertex corresponding

Genus >= 0 Consistent Dissection

Parameterize patches in correspondence to planar domains Merging or re-meshing Derive vertex-to-vertex correspondence

Vertex-to-vertex interpolation problem

Page 57: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

Animation (U), Chap 4, Interpolation-based Animation CS, NCTU, J. H.Chuang

3D Shape Interpolation Spherical Parameterization

57

Spherical parameterization in [Zwicker and Gotsman 2004]

Page 58: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

Animation (U), Chap 4, Interpolation-based Animation CS, NCTU, J. H.Chuang

3D Shape Interpolation Spherical Parameterization

58

Page 59: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang59

3D Shape InterpolationFor Meshes With Same Topology

Animation (U), Chap 4, Interpolation-based Animation

Vertex-to-vertex correspondence problem Genus 0

Spherical parameterization Merging Find the vertex-to-vertex corresponding

Genus >= 0 Consistent Dissection

Parameterize patches in correspondence to planar domains Merging or re-meshing Derive vertex-to-vertex correspondence

Vertex-to-vertex interpolation problem

Page 60: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang60

3D Shape InterpolationFor Meshes With Same Topology

Animation (U), Chap 4, Interpolation-based Animation

Genus 0

Genus 1

Page 61: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

Animation (U), Chap 4, Interpolation-based Animation CS, NCTU, J. H.Chuang

3D Shape InterpolationUser Guided Common Dissection

61

Interactive surface decomposition for polyhedral Morphing, by Arthur Gregory et al. The Visual Computer 15(9), 1999

Page 62: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

Animation (U), Chap 4, Interpolation-based Animation CS, NCTU, J. H.Chuang

3D Shape InterpolationUser Guided Common Dissection

62

Input polyhedral with user-specified correspondences

User interface for igloo-house morph showing completed feature net (red) with morphing patches

Page 63: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

Animation (U), Chap 4, Interpolation-based Animation CS, NCTU, J. H.Chuang

3D Shape InterpolationPatch Parameterization

63

Page 64: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang

3D Shape Interpolation Parameterization Overlaying

Animation (U), Chap 4, Interpolation-based Animation

Page 65: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang

3D Shape InterpolationPatch Parameterization

Animation (U), Chap 4, Interpolation-based Animation

Page 66: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang

3D Shape InterpolationPatch Parameterization

Animation (U), Chap 4, Interpolation-based Animation

Page 67: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

Animation (U), Chap 4, Interpolation-based Animation CS, NCTU, J. H.Chuang

3D Shape InterpolationExample

67

Interactive surface decomposition for polyhedral morphingArthur Gregory et al. The Visual Computer 15(9), 1999

Page 68: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang

3D Shape Interpolation

Animation (U), Chap 4, Interpolation-based Animation

Page 69: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

Animation (U), Chap 4, Interpolation-based Animation CS, NCTU, J. H.Chuang

3D Shape Interpolation Automatic Consistent Dissection

69

Page 70: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang

3D Shape InterpolationPatch Parameterization and Re-meshing

Animation (U), Chap 4, Interpolation-based Animation

Modify the sampling and connectivity of a geometry

Convert a irregular mesh to a (semi-)regular mesh

Parametrize Re-meshing

Page 71: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang

3D Shape Interpolation Patch Parameterization and Re-meshing

Example

Animation (U), Chap 4, Interpolation-based Animation

4 basic points

Additional points

User-specified feature points

71

Page 72: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

3D Shape Interpolation Patch Parameterization and Re-meshing

Example

Animation (U), Chap 4, Interpolation-based Animation CS, NCTU, J. H.Chuang

Consistent common dissection of pig and triceratops models

Page 73: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

Animation (U), Chap 4, Interpolation-based Animation CS, NCTU, J. H.Chuang

3D Shape Interpolation Patch Parameterization and Re-meshing

Example

M0 : 164 faces

M2 : 2,624 faces

M4 : 41,984 faces

M0 : 164 faces

M2 : 2,624 faces

M4 : 41,984 faces

Page 74: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

Animation (U), Chap 4, Interpolation-based Animation CS, NCTU, J. H.Chuang

3D Shape Interpolation Patch Parameterization and Re-meshing

Example Another example w.r.t corresponding features

Page 75: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

Animation (U), Chap 4, Interpolation-based Animation CS, NCTU, J. H.Chuang

3D Shape InterpolationExample for More than 2 Meshes

75

Applied to more than two meshes

Page 76: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

3D Shape InterpolationExample for More than 2 Meshes

Animation (U), Chap 4, Interpolation-based Animation CS, NCTU, J. H.Chuang

Page 77: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

Image Morphing

Animation (U), Chap 4, Interpolation-based Animation CS, NCTU, J. H.Chuang

Morph from the source image to the destination image

Specifying corresponding elements in the two images Coordinate grid approach Feature-based approach

Page 78: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang

Image MorphingCoordinate grid approach

User-defined curvilinear grid over each image Make sure corresponding elements in the images

are in the corresponding cells Locate the same number of grid intersection point

on both images Connecting curves are generated using intersection

points as control points for a spline curve, e.g., Catmull-Rom spline

Animation (U), Chap 4, Interpolation-based Animation

Page 79: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang

Image MorphingCoordinate grid approach

Animation (U), Chap 4, Interpolation-based Animation

Page 80: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang

Image MorphingCoordinate grid approach

Morphing from source to destination Generate an intermediate grid

Linearly – two adjacent key frames Higher-order interpolation – more than two adjacent

key frames Warp the source pixels and destination pixels to

the intermediate grids Perform a cross dissolve in pixel-by-pixel basis to

generate the final images

Animation (U), Chap 4, Interpolation-based Animation

Page 81: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang

Image MorphingCoordinate grid approach

Animation (U), Chap 4, Interpolation-based Animation

Page 82: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang

Image MorphingCoordinate grid approach

Two-pass warping from source to intermediate Source grid to an auxiliary grid (for x direction) auxiliary grid to the intermediate grid (for y direction)

Source grid to an auxiliary grid (for x direction) Based on scan line

For each pixel in the auxiliary grid Find the range of pixel coordinates in the source image Use fractional coverage to effect anti-aliasing

Animation (U), Chap 4, Interpolation-based Animation

Page 83: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang

Image MorphingCoordinate grid approach

Animation (U), Chap 4, Interpolation-based Animation

Page 84: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang

Image MorphingCoordinate grid approach

Once both images have been warped to the intermediate grid, cross-dissolve on a pixel-by-pixel basis is applied.

Animation (U), Chap 4, Interpolation-based Animation

concerns aestheticon of value thecontrollocally

appealing vosually moreoften is blendlinear -non

linear

becan where

],[)1(],[ ],[

jiCjiCjiC ds

Page 85: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang

Image MorphingCoordinate grid approach

Animation (U), Chap 4, Interpolation-based Animation

Page 86: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang

Image MorphingFeature-based approach

Establish correspondence using feature lines Feature lines are drawn to identify features in

correspondence Feature lines are interpolated to form an

intermediate feature line sets Based on interpolating endpoints or interpolating center

points and orientation

Animation (U), Chap 4, Interpolation-based Animation

Page 87: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang

Image MorphingFeature-based approach

On the intermediate image Establish a mapping for each pixel in the intermediate

image to each interpolated feature line Find a relative weight indicating the amount of

influence that feature line should have on the pixel On the source image

Use the mapping to locate source image pixel that corresponds to the intermediate image pixel

Use the relative weight to average the source image locations generated by multiple feature lines into a final source image location

Use the final location to determine the color of intermediate image pixelAnimation (U), Chap 4, Interpolation-based Animation

Page 88: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang

Image MorphingFeature-based approach

Feature line coordinate for a feature line defined by P1 and P2 on the intermediate image Define a local coordinate system (U, V) For a pixel P, its coordinate (u, v) is

Animation (U), Chap 4, Interpolation-based Animation

12

121

12

121

)()(

)()(

PP

PPPPu

PP

PPPPv

Page 89: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang

Image MorphingFeature-based approach

Feature line Q1 and Q2 on source image that corresponds to feature line defined by P1 and P2 on the intermediate image Local coordinate system (S, T) How to find pixel Q that

corresponds to P?

Animation (U), Chap 4, Interpolation-based Animation

vTuSQQ 1

Page 90: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang

Image MorphingFeature-based approach

How to find pixel Q that

corresponds to P? Coordinates of Q are floating numbers Pixels corresponding to P are in an area Requires some kind of filtering

Nearest neighbor Linear Interpolation Quadrilateral formed by mapping corners of P

Animation (U), Chap 4, Interpolation-based Animation

Page 91: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang

Image MorphingFeature-based approach

Animation (U), Chap 4, Interpolation-based Animation

Page 92: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang

Image MorphingFeature-based approach

Multiple feature lines In addition to mapping, each pixel P is associated

with a weight based on P’s position relative to the a feature line in the intermediate image

Animation (U), Chap 4, Interpolation-based Animation

mapping. theofcharacter

overall thecontrol parameters supplied-uesr :)(

. andby formed line feature thefrom of distance :

where

21

12

a,b,p

PPPdist

dista

PPw

bp

Page 93: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang

Image MorphingFeature-based approach

(a, b, p) parameters If a ~ 0, the mapping is a rigid transformation When a increases, makes the effect of lines over

the image smoother. Increasing p increases the effect of longer line. Increasing b makes the effect of a line fall off more

rapidly (a, b, p) parameters can be global or on a

feature-line-by-feature-line basis.

Animation (U), Chap 4, Interpolation-based Animation

Page 94: Chap 4 Interpolation-Based Animation Animation (U), Chap 4, Interpolation-based Animation 1 CS, NCTU, J. H.Chuang

CS, NCTU, J. H.Chuang

Image MorphingFeature-based approach

How to scale the displacement by using weights? For a given pixel in the intermediate image

The displacement indicated by each feature line pair is scaled by its weight

Final displacement is the weighted sum of all displacements for each feature line pair

This gives the displacement from the intermediate pixel to its corresponding position in the source image.

Animation (U), Chap 4, Interpolation-based Animation