3D Morphing using strain field interpolation - CiteSeerX

Report 2 Downloads 153 Views
Month 200X, Vol.21, No.X, pp.XX–XX

J. Comput. Sci. & Technol.

3D Morphing using strain field interpolation Han-Bing Yan1 , Shi-Min Hu1 , and Ralph Martin2 1 Computer 2 School

Science, Tsinghua University, Beijing, China

of Computer Science, Cardiff University, Cardiff, UK

E-mail: [email protected]; [email protected]; [email protected] Received MONTH DATE, YEAR. Abstract

In this paper, we present a new technique based on strain fields to carry out 3D shape

morphing for applications in computer graphics and related areas. Strain is an important geometric quantity used in mechanics to describe the deformation of objects. We apply it in a novel way to analyze and control deformation in morphing. Using position vector fields, the strain field relating source and target shapes can be obtained. By interpolating this strain field between zero and a final desired value we can obtain the position field for intermediate shapes. This method ensures that the 3D morphing process is smooth. Locally, volumes suffer minimal distortion, and no shape jittering or wobbling happens: other methods do not necessarily have these desirable properties. We also show how to control the method so that changes of shape (in particular, size changes) vary linearly with time. Keywords

1

morphing, strain field, interpolation

Introduction

Methods for 3D morphing typically take one of two approaches. The first blends simple volumes

Morphing, or metamorphosis, aims to generate a

in which the initial and final shapes are embed-

smooth shape sequence which transforms a source

ded [2–4]; the initial and final shapes may be em-

shape into a target shape. This technique has be-

bedded in a higher-dimensional volume [5]. The

come increasingly important in computer graphics

other approach is based on manipulating meshes,

for animation and entertainment, and is commonly

which may be 3D surface meshes or volumetric

employed by the special effects industry. Many

meshes. The first approach has the advantage of

morphing techniques have been developed for the

being able to deal objects with different topolo-

2D case [1]. With the introduction of 3D games

gies. However, in most cases, the mesh method ex-

and cartoons, 3D morphing has increased in im-

hibits better results—often, shape boundaries pro-

portance.

duced by the volume based method are not smooth

2

J. Comput. Sci. & Technol., Month 200X, Vol.21, No.X

enough. The method in this paper is based on

tool is strain, which has been used in mechanics

meshes.

for hundreds of years. Our new morphing method

Usually, mesh morphing techniques involve two

is based on this mathematical tool, and as a re-

steps. The first is to find a mapping between source

sult can theoretically guarantee that the morph-

and target objects, which requires that both should

ing process is smooth and uniform, no matter how

be meshed in an equivalent way—they should be

large the difference between the source and target

meshed isomorphically with consistent meshes, i.e.

shapes. The deformation occurring at each point

having a one-to-one correspondence. Having done

of the shape uniformly changes with time. Our re-

this, the second step is to choose a suitable path for

sults verify that our method does not have the dis-

each vertex from its position in the original mesh

pleasing visual effects that often arise when using

to its position in the final mesh, while keeping the

linear interpolation, and indeed many other exist-

connectivity of the mesh the same. The simplest

ing methods, such as squeezing, shrinking and local

(but generally unsuitable) method for finding ver-

self-intersection.

tex paths is to use linear interpolation. Two kinds of meshes may be used in 3D mor-

2

Related Work

phing, surface (triangle) meshes [6,7] and volumetric (tetrahedron) meshes [8]. Surface meshes have

Mesh morphing is an active research area in com-

fewer elements and so methods based on them gen-

puter graphics. Some work [10–13] considers how to

erally take less computational time. Solid meshes

create consistent meshes for pairs of shapes of genus

fill the interior of the shape instead of covering its

zero using a topological merging method. Much

boundary, and have the advantage that methods

work [6,14–17] is based on dissecting the source and

based on them can more easily avoid volume shrink-

target shape into several pieces, and constructing

age, and generally result in less distortion.

a local parameterization for each piece, then using

In this paper, we propose a novel physically-

merging or remeshing methods to create a consis-

based morphing approach for 3D meshes, which is

tent mesh. Praun [18] gives a tracing method which

an extension of a 2D physically based morphing

can dissect the source and target shapes automat-

method we reported earlier [9]. Note that the 3D

ically.

case is much more complex than the 2D case; it also

The above papers focus on the problem of cre-

has more potential applications. We focus in this

ating consistent meshes, and most of them then use

paper on the particular issue of finding paths for

simple linear interpolation methods to find the ver-

the vertices of consistent meshes—finding consis-

tex paths during the morphing process. For objects

tent meshes can be done using existing methods [8].

having very similar shapes, linear interpolation is

The main contribution of our work is the use of

good enough for simple visual effects. However,

an appropriate mathematical tool to quantitatively

for objects undergoing large deformation, especially

describe shape deformation in 3D morphing. This

when bending occurs, linear interpolation always

Han-Bing Yan et al.: Three Dimensional Strain Field Morphing

3

leads to shrinkage of intermediate shapes, which

a global optimization method. Bao et al. [30] used

is visually unacceptable. In [19, 20], Floater and

a physically based method for morphing, like the

Surazhsky proposed the use of barycentric coordi-

present paper, but based on point sampled geome-

nate and mean value interpolation to find suitable

try while we use meshes.

paths. Blanding et al. [21] represented the interi-

A method which can handle source and tar-

ors of 3D shapes using compatible skeletons and

get shapes with large differences is presented in [8].

applied blending to parametric descriptions of the

This method first converts both surface polygon

skeletons.

meshes into a tetrahedral mesh. To perform mor-

Alexa [22] suggested using interpolation of

phing, it then finds a transformation which is lo-

Laplacian coordinates for the morphing path and

cally as similar as possible to the optimal transfor-

discussed how to control morphing locally. Such

mation between each pair of corresponding tetra-

differential methods have also been used to study

hedra. Optimization is used to minimize the dif-

deformation, a similar problem to morphing [23,

ference between the desired transformation, and

24].

Laplacian coordinates are invariant under

the actual transformation which is applied, taking

translation but are not invariant to rotation and

into account the connectivity constraints on adja-

scaling, so the interpolated Laplacian coordinates

cent tetrahedra. This paper also considers how to

need to be modified to obtain good morphing re-

create consistent tetrahedral meshes using a topo-

sults [25].

Sheffer and Kraevoy [26] introduced

logical merging method. Sumner [31] used similar

so called pyramid coordinates into mesh editing

simplex transformation ideas to learn deformations

and morphing. Pyramid coordinates are rotation-

from examples.

invariant, although their use requires the solution

An alternative approach is proposed in [32, 33].

of a non-linear optimization problem. Lipman [27]

In these methods, consistent meshes are not re-

proposed rotation invariant differential coordinates

quired. They dynamically and adaptively change

by defining tangential and normal components of

the connectivity of intermediate meshes, gradu-

the surface, and used them for morphing; this ap-

ally transforming the connectivity from that of the

proach needs to solve two linear equations for each

source model to that of the target. It would seem

intermediate frame. Xu et al. [28] calculate inter-

difficult for this method to get good results for

mediate surface gradients by quaternion interpola-

shapes that differ greatly.

tion, then reconstruct surfaces by solving a Pois-

By using concepts of positive and negative sur-

son equation. This method produces good results

faces, Lee [34] gave a method to parameterize non-

in many cases even when differences between initial

zero genus surfaces and applied it to morphing

and final shapes are large.

models of different genus. Liu and Che also studied

Hu [29] et al. presented a method based on min-

morphing of different genus objects [35, 36].

imization of deformation energy, which is novel in

For further discussions of previous work, the

that it does not use interpolation. However, it is

reader is referred to two excellent 3D morphing sur-

4

J. Comput. Sci. & Technol., Month 200X, Vol.21, No.X

veys by Alexa, and Lazarus [37, 38].

chanics to describe shape deformation for hundreds of years: strain. In this paper, we use the concept

3

Framework of 3D Strain Field Morphing

of strain to describe shape deformation for morphing, and use it as the basis of a new approach to 3D morphing.

The purpose of morphing is to create a smooth

Here, to apply the concepts of strain, we use

deformation process. The path of each vertex in

a solid tetrahedral mesh to represent shape. The

linear interpolation is smooth, so why does it not

inputs to our method are a source mesh and a tar-

produce a visually acceptable result in many cases?

get mesh, which are consistent tetrahedral meshes.

The reason is that used by itself, it does not ensure

Consistent tetrahedral meshes can be created using

that shape change during this process is smooth.

existing methods [8]. The output is a sequence of

A smooth deformation requires not only that each

intermediate meshes forming a morphing sequence.

vertex path should be smooth, but also that shape

The main steps of our method are as follows:

should change in a monotonic manner.

• Compute the strain field between the source

It would seem that previous 3D morphing meth-

shape and target shape.

ods have not used an effective means of analyzing • Interpolate strain to determine the strain

and controlling shape deformation. As we know,

field for each intermediate shape.

deformation is a local infinitesimal quantity. In some cases, points may have very large displace-

• Calculate the intermediate shapes from the

ment but small deformation. For example, strain

intermediate strain fields.

should remain at zero under rigid body motion. In In Section 4, we outline the basic concepts

other cases, there can be large deformation at a point but small displacement. For example, if we stretch a bar by pulling its left and right ends outwards with equal force, the centre is not displaced, but there is still a large deformation at the center (as there is at all other points of the bar). All previous methods, such as barycentric coordinates,

necessary.

Then we explain our 3D strain field

interpolation morphing method in detail in Section 5. Results and future work are discussed in Sections 6 and 7.

4

Preliminaries

Laplacian coordinates, or surface gradients, cannot

Our aim is to make shape deformation during 3D

satisfy simultaneously the requirements for describ-

morphing seem natural and visually appealing. We

ing shape deformation and displacement. Thus,

want the deformation to occur in a uniform man-

previous methods do not provide the correct theo-

ner. But what is deformation? Note carefully that

retical basis to ensure the morphing process is uni-

local deformation at a point is not the same as the

form as desired.

displacement of this point. Points in an object can

In fact, an ideal quantity has been used in me-

have very small deformation although they have

Han-Bing Yan et al.: Three Dimensional Strain Field Morphing

5

moved a long distance, or conversely, they can have

engineering. In 3D, the strain field is a second-

large deformation but small displacement. The key

order tensor field, with 6 independent components

idea is that deformation concerns how much a point

(for homogeneous materials): ǫx , ǫy , ǫz are ten-

is displaced relative to neighboring points. Thus,

sion components, and γ yz , γ zx , γ xy are shear com-

deformation is an infinitesimal quantity. To ana-

ponents. In detail, ǫx ,ǫy , ǫz measure in relative

lyze deformation, we use a tool from mechanics,

terms how much local expansion or shrinkage at

strain. We start by giving definitions of the po-

each point along each coordinate direction. Pos-

sition field and the strain field associated with a

itive values represent expansion and negative val-

shape.

ues represent shrinkage. γ xy represents the relative change in angle between lines initially in the x and y

4.1

Definition of 3D Strain Fields

directions at a given point, and similarly for γ yz and

The positions of all points in a shape comprise a

γ zx . Engineers are often only interested in small de-

field, which we call its position field. In 3D space,

formations, which can be approximately expressed

the position field has three components: [x, y, z].

by a linear relationship between strain and posi-

When a shape moves or deforms, each point on the

tion, for example: ǫx = ∂x /∂x, etc. However, in

shape ends up in a new place [x′ , y ′ , z ′ ].

this work, we need to deal with large deformations,



Using ideas from mechanics, the difference between a source shape and a target, or any intermediate shape, can be decomposed into two parts: a rigid body motion, and a deformation. The rigid

so we must use large deformation strain field, or Lagrange strain field, formulae. The relationship between the Lagrange strain field and the position field in 3D is given by:

body motion can be further decomposed into a translation and rotation. In 3D, there are six degrees of freedom for rigid body motion: three for translation and three for rotation. The deformation is separately captured by a strain field, which is independent of rigid body motion. If only rigid body motion happens, without deformation, although each point has displacement, the strain field is zero.

               



ǫx   ǫy   ǫz

γ yz γ zx γ xy



           =               

1 2





2 ( ∂x ∂x )

+



2 ( ∂y ∂x )

+



2 ( ∂z ∂x )

 

−1 

   + + −1      ′ ′ ′  ∂y 2 ∂z 2 1 ∂x 2  2 ( ∂z ) + ( ∂z ) + ( ∂z ) − 1   ′ ′ ′ ′ ′ ′  ∂y ∂y ∂x ∂x ∂z ∂z  ∂y ∂z + ∂y ∂z + ∂y ∂z  ′ ′  ′ ′ ′ ′ ∂y ∂y ∂x ∂x ∂z ∂z  + +  ∂z ∂x ∂z ∂x ∂z ∂x  ′ ′ ′ ′ ′ ′ 1 2





2 ( ∂x ∂y )

∂x ∂x ∂x ∂y



2 ( ∂y ∂y )

+

∂y ∂y ∂x ∂y



2 ( ∂z ∂y )

+

∂z ∂z ∂x ∂y

(1)

where x, y and z are the position field components

In morphing, we wish to handle large deforma-

before deformation, and x′ , y ′ and z ′ are compo-

tions, whereas in mechanics and mechanical engi-

nents of the position field after deformation. The

neering the deformations are often small. Thus,

displacement field has components u, v, w, and is

here we must use large deformation formulae in-

related to the position field by u = x′ −x, v = y ′ −y,

stead of the small deformation (approximate, lin-

w = z ′ − z.

earised) formulae most often used in mechanical

In the following, the strain field is rep-

6

J. Comput. Sci. & Technol., Month 200X, Vol.21, No.X

Figure 1: Linear Interpolation

Figure 2: Strain Field Interpolation resented in vector form, and we write ε for

when using linear interpolation, and strain field

[εx , εy , εz , γ yz , γ zx , γ xy ]T .

We assume the shape

interpolation, respectively. Each figure shows six

varies from source to target over the time interval

curves for the different components of strain. In

t ∈ [0, 1] and we use a superscript to denote time.

the case of linear interpolation, the curves for ǫz ,

For example, εt means the strain field of the target

γ yz and γ zx almost overlap; in strain field interpo-

shape at time t, so ε1 means the final strain field.

lation, ǫy , ǫz , γ yz and γ zx are nearly identical to zero. In Figure 1, the tip of the elephant’s trunk

4.2

Quantitative Analysis of Strain Fields

becomes smaller in the x-y plane at first, then becomes bigger again. The corresponding linear interpolation strain curves show ǫx and ǫy become

Figures 1 and 2 are two results produced using lin-

negative at first, meaning that the trunk’s tip is

ear interpolation, and strain field interpolation re-

highly compressed. Then the curves rise again, as

spectively. It is clear that the result of strain field

the tip restores its size. This effect is visually un-

interpolation is more natural and uniform: observe

desirable. In contrast, in Figure 2, the elephant’s

the elephant’s trunk. The result in Figure 1 is

trunk deforms uniformly, and the corresponding

poor because the trunk shrinks before expanding

strain curves change in a monotonic way, leading

again. Linear mesh interpolation results in signifi-

to a much more visually desirable result.

cant size changes manifested as shrinkage followed by re-expoansion in this case. This is shown in Fig-

Considering what happens in the case of linear

ure 3, which presents strain curves calculated for a

interpolation shows that strain fields are a pow-

tetrahedron near the tip of the elephant’s trunk,

erful quantitative tool to analyze shape deforma-

Han-Bing Yan et al.: Three Dimensional Strain Field Morphing

7 Strain Field Interpolation

Linear Interpolation 0.2

0.12

0.1

x

0.08

x

0.04

y

0.0

z

-0.2 xy

-0.3

z

0.00

xy

-0.04

yz

-0.4

yz

-0.08

-0.5 0.0

Strain

Strain

y

-0.1

zx

0.2

0.4

0.6

0.8

1.0

zx

-0.12 0.0

0.2

0.4

0.6

0.8

1.0

Time

Time

Figure 3: Strain-Time Curve tion. Going further, if we want a shape to deform

selected near the center of the source and target

gradually, the strain field should change monotoni-

shapes, while B 0 , B 1 , C 0 and C 1 should lie along

cally. Otherwise squeezing or wobbling (oscillations

the shape’s ‘natural’ axes.

in deformation) may happen, as in Figure 1. Our approach not only uses strain fields to analyze deformation, but to control it.

We now place the source and target shapes in a canonical position and orientation, using these

5

Strain Field Morphing

reference points. The source shape is moved until A0 coincides with the origin, the translation vector

We now describe the steps of our new method of carrying out deformation using strain fields.

necessary being T 0 . Next, the source shape is rotated around the origin until B 0 lies on the x axis. Let the rotation axis be R0 , and rotation angle be

5.1

Removing the Rigid Body Motion

α0 . Finally, the source shape is rotated around the

Strain is independent of rigid body motion.

x axis until C 0 is in the x − y plane with positive y

The overall metamorphosis comprises a deforma-

component; the angle of rotation is β 0 . The target

tion plus a rigid body motion, and we firstly sepa-

shape treated is then similarly, with corresponding

rate out the the latter so that we can consider the

parameters T 1 , R1 , α1 and β 1 .

strain by itself. A rigid body has 6 degrees of freedom in 3D space. To factor out the rigid body motion, we

The x, y, z coordinates of A, the y, z coordinates

select three corresponding points on source and

of B, and the z coordinate of C are then fixed dur-

target shapes, A0 , B 0 , C 0 , and A1 , B 1 , C 1 . The

ing the entire deformation process, and the rigid

points chosen to determine the rigid body motion

body component of metamorphosis is added back as

can be selected by the computer automatically, or

a final computation after the deformation has been

interactively by the user. A0 and A1 should be

determined, as will be explained in Section 5.4.

8

J. Comput. Sci. & Technol., Month 200X, Vol.21, No.X

5.2

Intermediate Strain Field Calcula-

for a tetrahedron into discrete form. Using the node

tion

coordinates for each source and target tetrahedron

The strain field for intermediate shapes between the source and target shapes can be calculated using the definitions in Eqn. 1. We use tetrahedral elements, as often used in the finite element method (FEM), to calculate the strain field. Because, unlike engineering analysis, morphing does not re-

in Eqn. 1 and Eqn. 2, the strain field can then be calculated tetrahedron by terahedron. The simplest way to choose a strain field for intermediate shapes is to linearly interpolate the strain (which is not the same as linearly interpolating vertex positions!):

quire high precision results, it is sufficient to use

εt = (1 − t)ε0 + tε1 ;

(4)

linear tetrahedral elements rather than higher order elements. In FEM, the displacement of each point inside an element can be expressed as a convex combination of the displacements of the element’s nodes. The vertex coordinates of a tetrahedron in the source mesh are v i = (xi , y i , z i ), i = 1 . . . 4; in the target mesh, its coordinates are v ′ i = (x′ i , y ′ i , z ′ i ). Any point inside some source or target tetrahedron can be expressed in terms of its vertices and shape functions; for example, for a

note that ε0 is zero. Linear strain interpolation is usually an adequate method, producing good morphing results for most examples and avoiding oscillations in local size over time. However, in some extreme cases, linear strain interpolation gives unequal rates of change of shape over time, even though at each intermediate time the shape itself is good. In Section 5.5, we analyze this problem further, and provide an alternative method of interpolation for such

target tetrahedron:

extreme cases. x′

=

y′ = z′ =

P

P

P

k =1

4N

k

k =1

4N

′ ky k,

k =1

4N

′ kz k.

x′

k,

(2)

5.3

From Strain Field to Position

The above approach gives the required strain

The N k are the shape functions of the element, and

field at any intermediate time. Note that the strain

depend on x, y and z. For linear tetrahedral ele-

field has six components, while the position field

ments, the N k are barycentric coordinates within

has three components. Clearly, as a result, the six

the tetrahedron which can be expressed in the (lin-

components of the strain field cannot be indepen-

ear) form:

dent, and in fact they are connected by a set of N k = ak + bk x + ck y + dk z,

(3)

compatibility conditions [40]. In general, arbitrarily interpolated strain fields will not satisfy these

where ak , bk , ck , dk are functions of the source co-

compatibility conditions and hence do not corre-

ordinates xi , y i and z i —for details, see e.g. [39].

spond to physically realisable position fields. To

Substituting Eqn. 3 into Eqn. 2, and thence into

resolve this issue, we attempt to find that posi-

Eqn. 1, we can convert the strain field calculation

tion field for each intermediate shape whose actual

Han-Bing Yan et al.: Three Dimensional Strain Field Morphing strain field is as close as possible to the interpo-

or z) is defined by:

lated strain field. We define an energy function in



Eqn. 5 which computes the norm of the difference between the interpolated strain field and a physiB jX

cally correct strain field generated by some position field: 1 W = 2

Z

(ε∗ − ε)T · (ε∗ − ε)dΩ.

(5)

Ω is taken over the whole source shape, ε is the interpolated strain field, and ε∗ is calculated from the position field using Eqn 1. We find the position field which minimizes this energy function to give the intermediate shape. This problem can be solved by any multivariate optimization method; note that the variables are the coordinates of all

9

       =       

∂X t ∂N i ∂x ∂x ∂X t ∂N i ∂y ∂y ∂X t ∂N i ∂z ∂z ∂X t ∂N i ∂y ∂z

+

∂X t ∂N i ∂z ∂y

∂X t ∂N i ∂z ∂x

+

∂X t ∂N i ∂x ∂z

∂X t ∂N i ∂x ∂y

+

∂X t ∂N i ∂y ∂x



       .       

This non-linear equation can be solved using the Newton-Raphson method. We generally wish to calculate the position field for a series of intermediate shapes. The coordinate vector for the source shape is used as the initial value for iterative calculation of the coordinate vector for the first intermediate shape, and the calculation for each subsequent intermediate shape is initialized using the co-

nodes in the intermediate shape. In practice, for efficiency, we convert this optimisation problem into a set of non-linear equations by setting the derivative of Eqn. 5 to zero. This

ordinate vector of the previous intermediate shape. We use the conjugate gradient method to solve the sparse linear equations in each iterative process. As each step has good initial values, rapid convergence

non-linear equation system can be written as:

is obtained. If the number of intermediate shapes φ(V ) = 0

(6)

required is very small, Eqn. 6 could also be solved by using a continuation method, but in practice,

where V is the coordinate vector of the interme-

simply adding more intermediate shapes is more

diate shape. φ(V ) has the form below, where the

efficient.

overall function is evaluated by summing a function over each tetrahedron in turn: φ(V ) =

X

i=1

m

Z

5.4

(B T ε∗ − B T ε)dΩi .

(7)

Incorporating Rigid Body Motion

Deformations for intermediate shapes were determined by the method previous section. Now, the

Here m is the number of tetrahedra, and B and ǫ are the strain matrix and strain for each separate tetrahedron as appropriate. B can be written as B = [ B1

B2

B3

B4 ]

(8)

appropriate rigid body motion must also be incorporated to give each final intermediate shape in its correct position and orientation. We simply reverse the process given in Section 5.1, adding back a linearly interpolated translation and rotation. First

where B j = [ B jx

B jy

B jz ], and B jX (X = x, y,

we rotate the intermediate shape at time t around

10

J. Comput. Sci. & Technol., Month 200X, Vol.21, No.X line segment P Q in the source shape. Let the coor-

the x axis by the angle: β t = −[(1 − t)β 0 + tβ 1 ].

(9)

0

R = (1 − t)R + tR

coordinates of Q be (ax + dax , ay + day , az + daz ). Let the length of P Q be dS 0 . The corresponding

Then we find the axis of rotation t

dinates of P be (ax , ay , az ), or a for short. Let the

1

line segment in the target shape is P 1 Q1 , of length (10)

dS 1 . The relation between dS 0 and dS 1 is:

and rotate around this axis by the angle αt = −[(1 − t)α0 + tα1 ].

(dS 1 )2 − (dS 0 )2

Finally, the intermediate shape is translated by T t = −[(1 − t)T 0 + tT 1 ],

(12)

giving the desired result.

5.5

(dS 0 )2

(11)

= 2da · E 1 · da

(13)

= da · da

(14)

where da is the vector (dax , day , daz ), and E 1 is the matrix form of the strain field tensor for the target mesh. The general strain field tensor E is of the form: 

 ǫx  E=  γ xy

Modified Interpolation Method



Using linear interpolation of strain as described

γ xz

γ xy ǫy γ yz



γ xz   γ yz  . ǫz

(15)



in Section 5.2 is often adequate to produce good

The length of segment P Q at time t obeys a similar

results. However, in a few extreme cases where the

relation:

deformation is very large, although each interme(dS t )2 − (dS 0 )2 = 2da · E t · da.

diate shape has a good shape, and shape change is monotonic, shape change may occur at an uneven rate over time. The reason for this phenomenon is

(16)

If we want the length of P Q to change linearly with time, we should let:

that Eqn. 1 includes quadratic terms.

dS t − dS 0 = t. dS 1 − dS 0

In fact, many morphing methods suffer from

(17)

non-uniform (and often oscillatory) changes over

Substituting Eqns. 13 and 16 into Eqn. 17, we ob-

time, but unlike other methods, in the case of strain

tain

field morphing we can find a theoretically-based way of compensating for this. The basis of this modification is to force the lengths of edges parallel to the coordinate axes to change linearly with

(dS 0 )2 + 2daE t da = hp

t (dS 0 )2 + 2daE 1 da + (1 − t)dS 0

from mechanics can be found in [39, 40].

2.

(18)

For a line segment parallel to the x axis, da is: da = [dax , 0, 0].

time, which also constrains the length change ratio in other directions. Appropriate background ideas

i

(19)

Substituting Eqn. 19 into Eqn. 18, and using Eqn. 14, we find that:

In essence, the strain field arises due to length changes of line segments. Consider an infinitesimal

ǫx t =

i i 1 hh p t 1 + 2ǫx 1 + (1 − t) 2 − 1 2

(20)

Han-Bing Yan et al.: Three Dimensional Strain Field Morphing

7

Similarly we may show that ǫy t =

1 2

 q



t 1 + 2ǫy 1 + (1 − t)

2



−1

11

Discussion and Future Work

(21)

and

In this paper, we have presented a new method ǫz t =

i i 1 hh p t 1 + 2ǫz 1 + (1 − t) 2 − 1 2

for 3D morphing. By making use of the concept (22)

of strain from mechanics to control deformation in

We now use Formulae 20–22 to interpolate the

3D, we have developed an algorithm for 3D morph-

tension strains, while still using linear interpolation

ing based on strain field interpolation. While linear

for shear strains γ xy , γ yz and γ zx . Our experiments

interpolation of strain is often adequate, in cases of

show that in all large deformation cases, this tech-

very large deformations, this produces non-uniform

nique avoids the problem of uneven deformation

rates of deformation over time, and we have further

over time, even for very large deformations, and

given a modified strain interpolation method which

provides good visual results.

can avoid this problem. Experiments show that our method gives very good results which appear nat-

6

Results

ural.

We have applied the technique of strain field

Although our strain field interpolation method

interpolation to various kinds of models, both mor-

gives good results, it has a high computational cost,

phing between two different objects, and morphing

but so do other physically based methods using

processes corresponding to several kinds of funda-

solid meshes. Our future goal is to reduce the cal-

mental deformation of a single object. Typical ex-

culation cost of our method. We envision two ap-

perimental results are shown in Figures 4–6. All ex-

proaches to do this. Firstly, the current method re-

periments were performed on a 3.2GHz Pentium 4

quires all elements of the solid mesh to be processed

computer. Calculation times to produce 30 frames

to compute the deformation. In practice it would

for the simple models in Figures 4 and 5 were 3.4

be much more efficient if we could use a multireso-

and 14.7 seconds; they have 80 and 164 vertices re-

lution method in which strain field interpolation is

spectively. The more complex model in Figure 6

used to ensure the gross deformations of the shape

has about 17000 vertices; it took about 55 minutes

are performed in a plausible manner, while using a

to produce 80 frames.

simpler method such as direct linear interpolation

Our experiments show that the 3D morphing

of geometry to control the fine changes in shape.

results generated by our method are smooth and

A second possibility is to extend our strain field

natural.

No shape jittering or wobbling occurs.

interpolation method to work directly with 3D sur-

The key is the use of strain in our method, which

face meshes rather than solid volume meshes, which

is a powerful tool to describe shape deformation in

would also significantly lower the calculational ex-

an infinitesimal way.

pense.

12

J. Comput. Sci. & Technol., Month 200X, Vol.21, No.X

Figure 4: Twisting a Rod

Figure 5: Helix

Figure 6: Animal Morphing

Han-Bing Yan et al.: Three Dimensional Strain Field Morphing

8

Acknowledgements

13

metamorphosis based on harmonic maps. The Visual Computer, 14(4):166–176, 1998.

We acknowledge Qi-Xing Huang and Qian-Yi Zhou’s help in our work.

We would also like

[7] Aaron WF Lee, David Dobkin, Wim Sweldens,

to thank Bruno Levy for providing the elephant

and Peter Schroder.

model.

morphing.

This work was supported by the Natu-

ral Science Foundation of China (Project Numbers 60225016, 60333010, 60321002) and the National Basic Research Project of China (Project Number 2006CB303106).

Multiresolution mesh

In Proceedings of SIGGRAPH

1999, pages 343–350, 1999. [8] Marc Alexa, Daniel Cohen-Or, and David Levin. As-rigid as-possible shape interpolation.

In Proceedings of SIGGRAPH 2000,

pages 157–164, 2000.

References

[9] Han-Bing Yan, Shi-Min Hu, and Ralph Mar-

[1] George Wolberg. Image morphing: a survey. The Visual Computer, 14(8/9):360–372, 1998.

tin.

Morphing based on strain field inter-

polation. Computer Animation and Virtual Worlds, 15(3-4):443–452, 2004.

[2] Daniel Cohen-Or, Amira Solomovici, and David Levin. Three dimensional distance field

[10] Marc Alexa. Merging polyhedral shapes with

metamorphosis. ACM Transactions on Graph-

scattered features.

ics, 17(2):116–141, 1998.

16(1):26–37, 2000.

[3] Apostolos Lerios, Chase D. Garfinkle, and

The Visual Computer,

[11] James R. Kent, Wayne E. Carlson, and

Marc Levoy. Feature based volume metamor-

Richard E. Parent.

Shape transformation

phosis. Computer Graphics, 29:449–456, 1995.

for polyhedral objects. Computer Graphics, 26(2):47–54, 1992.

[4] Xiang Fang, Hujun Bao, Pheng-Ann Heng, Tien-Tsin Wong, and Qunsheng Peng. Con-

[12] Francis Lazarus and Anne Verroust. Meta-

tinuous field based free-form surface model-

morphosis of cylinder- like objects.

Jour-

ing and morphing. Computer and Graphics,

nal of Visualization and Computer Animation,

25(2):235–243, 2001.

8(3):131–146, 1997. Shape

[13] Avner Shapiro and Ayellet Tal. Polyhedron re-

transformation using variational implicit func-

alization for shape transformation. The Visual

tions.

Computer, 14(8/9):429–444, 1998.

[5] Greg Turk and James F. O’Brien.

In Proceedings of ACM SIGGRAPH

1999, pages 335–342, 1999. [6] Takashi Kanai, Hiromasa Suzuki, and Fumihiko Kimura.

Three-dimensional geometric

[14] Hujun Bao and Qunsheng Peng.

Interac-

tive 3d morphing. Computer Graphics Forum, 17(3):23–30, 1998.

14

J. Comput. Sci. & Technol., Month 200X, Vol.21, No.X

[15] Arthur Gregory, Andrei State, Ming C. Lin,

[22] Marc Alexa. Local control for mesh morph-

Dinesh Manocha, and Mark A. Livingston.

ing. In Proceedings of the International Con-

Feature-based surface decomposition for corre-

ference on Shape Modeling and Applications,

spondence. In Computer Animation 98, pages

pages 209–215, 2001.

64–71, 1998. [23] Marc Alexa. Differential coordinates for local [16] Tong-Yee Lee and Po-Hua Huang.

Fast

and intuitive metamorphosis of 3d polyhe-

mesh morphing and deformation. The Visual Computer, 19(2):105–114, 2003.

dral models using smcc mesh merging scheme. IEEE Trans. Visualizaton Comput Graphics,

[24] Yizhou Yu, Kun Zhou, Dong Xu, Xiaohan Shi, Hujun Bao, Baining Guo, and Heung-Yeung

9(1):85–98, 2003.

Shum. Mesh editing with poisson-based gra[17] Jin-Bey Yu and Jung-Hong Chuang. Consistent mesh parameterizations and its application in mesh morphing. In Computer Graphics

dient field manipulation. ACM Trans. Graphics (Proc. SIGGRAPH2004), 23(3):644–651, 2004.

Workshop 2003, 2003. [18] Emil Praun,

Wim Sweldens,

and Peter

Schroder. Consistent mesh parameterizations. In Proceedings of SIGGRAPH 2001, pages 179–184, 2001.

[25] Olga Sorkine, Daniel Cohen-Or, and Yaron Lipman. Laplacian surface editing. In Proceedings of the Eurographics/ACM SIGGRAPH symposium on Geometry Processing, pages 179–188, 2004.

[19] Michael S. Floater and Craig Gotsman. How to morph tilings injectively. Journal of Computational and Applied Mathematics, 101(1-

[26] Alla Sheffer and Vladislav Kraevoy. Pyramid coordinates for morphing and deformation. In The 2nd International Symposium on 3D Data

2):117–129, 1999.

Processing, Visualization and Transmission, [20] Vitaly Surazhsky and Craig Gotsman. Intrin-

pages 68–75, 2004.

sic morphing of compatible triangulations. In In 4th Bi-National Israel-Korea Conference on

[27] Yaron Lipman, Olga Sorkine, David Levin,

Geometric Modeling and Computer Graphics,

and Daniel Cohen-Or.

Linear rotation-

pages 45–50, Tel Aviv, Israel.

invariant coordinates for meshes. ACM Transactions on Graphics, 24(3):479–487, 2005.

[21] Rob Blanding, George Turkiyyah, Duane Storti, and Mark Ganter.

Skeleton based

[28] Dong Xu, Hongxin Zhang, Qing Wang, and

three-dimensional geometric morphing. Jour-

Hujun Bao. Poisson shape interpolation. In

nal of Computational Geometry: Theory and

Proceedings of ACM Symposium on Solid and

Applications, 15(1-3):129–148, 2000.

Physical Modeling 2005, pages 267–274, 2005.

Han-Bing Yan et al.: Three Dimensional Strain Field Morphing [29] Shi-Min Hu, Chen-Feng Li, and Hhui Zhang.

15

Generating genus-n-to-m mesh morphing us-

Actual morphing: A physical-based approach

ing spherical parameterization.

for blending. In ACM Symposium on Solid

Animation and Virtual Worlds, 17:433–443,

Modeling and Application 2004, 2004.

2006.

[30] Yunfan Bao, Xiaohu Guo, and Hong Qin.

Computer

[35] Li-Gang Liu and Guo-Jin Wang.

Three-

Physically based morphing of point-sampled

dimensional shape blending: intrinsic solu-

surfaces.

tions to spatial interpolation problems. Com-

Computers Animation Virtual

Worlds, 16:509–518, 2005. [31] R.-W Sumner and J Popovic.

puters & Graphics, 23(4):535–545, 1999. Deforma-

tion transfer for triangle meshes.

[36] Wu-Jun Che, Shi-Min Hu, and Ralph R. Mar-

ACM

tin. Skeleton-driven 2d mesh morphing with

Trans. Graphics (Proc. SIGGRAPH 2004),

controllable topological transition. In 17th In-

23(3):399–405, 2004.

ternational Conference on Computer Anima-

[32] Tong-Yee Lee and Chien-Chi Huang. Dynamic and adaptive morphing of three-dimensional mesh using control maps. IEICE Transactions on Information and Systems, 88(3):646–651,

tion and Social Agents, pages 147–154, 2004. [37] Marc Alexa. Recent advances in mesh morphing. Computer Graphics Forum, 21(2):173– 197, 2002.

2005. [38] Francis Lazarus and Anne Verroust. Three[33] Chao-Hung Lin and Tong-Yee Lee.

Meta-

morphosis of 3d polyhedral models us-

dimensional metamorphosis: A survey. The Visual Computer, 14(8/9):373–389, 1998.

ing progressive connectivity transformations. IEEE Transactions on Visualizaton Computer Graphics, 10(6):2–12, 2005. [34] Tong-Yee Lee, Chih-Yuan Yao, Hung-Kuo Chu, Ming-Jen Tai, and Cheng-Chieh Chen.

[39] O.C.Zienkiewicz. The finite element method. McGraw-Hill, 2000. [40] Flugge Wilhelm. Tensor analysis and continuum mechanics. Springer-Verlag, 1972.