a general framework for surface modeling using geometric...

22
ARTICLE IN PRESS UNCORRECTED PROOF Please cite this article in press as: G. Xu, Q. Zhang, A general framework for surface modeling using geometric partial differential equations, Computer Aided Geometric Design (2007), doi:10.1016/j.cagd.2007.06.002 JID:COMAID AID:1037 /FLA [m3SC+; v 1.73; Prn:2/07/2007; 16:33] P.1 (1-22) Computer Aided Geometric Design ••• (••••) •••••• www.elsevier.com/locate/cagd 1 1 2 2 3 3 4 4 5 5 6 6 7 7 8 8 9 9 10 10 11 11 12 12 13 13 14 14 15 15 16 16 17 17 18 18 19 19 20 20 21 21 22 22 23 23 24 24 25 25 26 26 27 27 28 28 29 29 30 30 31 31 32 32 33 33 34 34 35 35 36 36 37 37 38 38 39 39 40 40 41 41 42 42 43 43 44 44 45 45 46 46 47 47 48 48 49 49 50 50 51 51 52 52 A general framework for surface modeling using geometric partial differential equations Guoliang Xu a,, Qin Zhang b a LSEC, Institute of Computational Mathematics, Academy of Mathematics and System Sciences, Chinese Academy of Sciences, Beijing 100080, China b Department of Mathematics, Beijing Information Science and Technology University, Beijing 100085, China Received 8 April 2006; received in revised form 9 June 2007; accepted 11 June 2007 Abstract In this paper, a general framework for surface modeling using geometric partial differential equations (PDEs) is presented. Start- ing with a general integral functional, we derive an Euler–Lagrange equation and then a geometric evolution equation (also known as geometric flow). This evolution equation is universal, containing several well-known geometric partial differential equations as its special cases, and is discretized under a uniform framework over surface meshes. The discretization of the equation involves approximations of curvatures and several geometric differential operators which are consistently discretized based on a quadratic fitting scheme. The proposed algorithm can be used to construct surfaces for geometric design as well as simulate the behaviors of various geometric PDEs. Comparative experiments show that the proposed approach can handle a large number of geometric PDEs and the numerical algorithm is efficient. © 2007 Published by Elsevier B.V. Keywords: Surface modeling; Geometric PDEs; Triangular surface mesh 1. Introduction Using geometric partial differential equations (PDEs) in surface modeling and designing has been an interesting research topic (see Xu et al. (2006) for references). The frequently used geometric PDEs include mean curvature flow, averaged mean curvature flow, surface diffusion flow and Willmore flow etc. Some of these equations have solutions with certain properties, for example, the mean curvature flow leads to minimal surfaces and Willmore flow yields surfaces with minimal squared mean curvature. But other equations may not share these kinds of optimal properties. In surface modeling or shape design, the target surfaces constructed are often required to possess certain optimal properties. In this paper, we present a general framework for surface modeling using geometric PDEs. Starting with a general integral functional, we then derive an Euler–Lagrange equation and a geometric PDE. The geometric PDE is universal, which contains several well-known geometric PDEs as its special cases, but can be discretized under a Project supported in part by NSFC grant 10371130 and National Key Basic Research Project of China (2004CB318000). * Corresponding author. E-mail address: [email protected] (G. Xu). 0167-8396/$ – see front matter © 2007 Published by Elsevier B.V. doi:10.1016/j.cagd.2007.06.002

Upload: others

Post on 24-Jul-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: A general framework for surface modeling using geometric ...lsec.cc.ac.cn/~xuguo/papers/article_xuzhang07.pdf · approximations of curvatures and several geometric differential operators

ARTICLE IN PRESSJID:COMAID AID:1037 /FLA [m3SC+; v 1.73; Prn:2/07/2007; 16:33] P.1 (1-22)

1 1

2 2

3 3

4 4

5 5

6 6

7 7

8 8

9 9

10 10

11 11

12 12

13 13

14 14

15 15

16 16

17 17

18 18

19 19

20 20

21 21

22 22

23 23

24 24

25 25

26 26

27 27

28 28

29 29

30 30

31 31

32 32

33 33

34 34

35 35

36 36

37 37

38 38

39 39

40 40

41 41

42 42

43 43

44 44

45 45

46 46

47 47

48 48

49 49

50

51

52

UN

CO

RR

EC

TED

PR

OO

F

Computer Aided Geometric Design ••• (••••) •••–•••www.elsevier.com/locate/cagd

A general framework for surface modeling using geometric partialdifferential equations ✩

Guoliang Xu a,∗, Qin Zhang b

a LSEC, Institute of Computational Mathematics, Academy of Mathematics and System Sciences,Chinese Academy of Sciences, Beijing 100080, China

b Department of Mathematics, Beijing Information Science and Technology University, Beijing 100085, China

Received 8 April 2006; received in revised form 9 June 2007; accepted 11 June 2007

Abstract

In this paper, a general framework for surface modeling using geometric partial differential equations (PDEs) is presented. Start-ing with a general integral functional, we derive an Euler–Lagrange equation and then a geometric evolution equation (also knownas geometric flow). This evolution equation is universal, containing several well-known geometric partial differential equations asits special cases, and is discretized under a uniform framework over surface meshes. The discretization of the equation involvesapproximations of curvatures and several geometric differential operators which are consistently discretized based on a quadraticfitting scheme. The proposed algorithm can be used to construct surfaces for geometric design as well as simulate the behaviorsof various geometric PDEs. Comparative experiments show that the proposed approach can handle a large number of geometricPDEs and the numerical algorithm is efficient.© 2007 Published by Elsevier B.V.

Keywords: Surface modeling; Geometric PDEs; Triangular surface mesh

1. Introduction

Using geometric partial differential equations (PDEs) in surface modeling and designing has been an interestingresearch topic (see Xu et al. (2006) for references). The frequently used geometric PDEs include mean curvature flow,averaged mean curvature flow, surface diffusion flow and Willmore flow etc. Some of these equations have solutionswith certain properties, for example, the mean curvature flow leads to minimal surfaces and Willmore flow yieldssurfaces with minimal squared mean curvature. But other equations may not share these kinds of optimal properties.

In surface modeling or shape design, the target surfaces constructed are often required to possess certain optimalproperties. In this paper, we present a general framework for surface modeling using geometric PDEs. Starting witha general integral functional, we then derive an Euler–Lagrange equation and a geometric PDE. The geometric PDEis universal, which contains several well-known geometric PDEs as its special cases, but can be discretized under a

✩ Project supported in part by NSFC grant 10371130 and National Key Basic Research Project of China (2004CB318000).* Corresponding author.

E-mail address: [email protected] (G. Xu).

Please cite this article in press as: G. Xu, Q. Zhang, A general framework for surface modeling using geometric partial differential equations,Computer Aided Geometric Design (2007), doi:10.1016/j.cagd.2007.06.002

50

51

520167-8396/$ – see front matter © 2007 Published by Elsevier B.V.doi:10.1016/j.cagd.2007.06.002

Administrator
插入号
,b
Page 2: A general framework for surface modeling using geometric ...lsec.cc.ac.cn/~xuguo/papers/article_xuzhang07.pdf · approximations of curvatures and several geometric differential operators

ARTICLE IN PRESSJID:COMAID AID:1037 /FLA [m3SC+; v 1.73; Prn:2/07/2007; 16:33] P.2 (1-22)

2 G. Xu, Q. Zhang / Computer Aided Geometric Design ••• (••••) •••–•••

1 1

2 2

3 3

4 4

5 5

6 6

7 7

8 8

9 9

10 10

11 11

12 12

13 13

14 14

15 15

16 16

17 17

18 18

19 19

20 20

21 21

22 22

23 23

24 24

25 25

26 26

27 27

28 28

29 29

30 30

31 31

32 32

33 33

34 34

35 35

36 36

37 37

38 38

39 39

40 40

41 41

42 42

43 43

44 44

45 45

46 46

47 47

48 48

49 49

50 50

51 51

52 52

UN

CO

RR

EC

TED

PR

OO

F

uniform framework over triangular surfaces. The discretization of the equation involves discrete approximations ofcurvatures and several differential operators, such as mean curvature, Gaussian curvature, Laplace–Beltrami operatoretc. All these quantities are consistently discretized based on a quadratic fitting scheme.

Modeling problem. We are given a triangulated surface with some vertices labeled as inner and the others outer.The inner vertices are subject to change while the outer fixed. If an outer vertex is a one-ring neighbor of an innervertex, we refer to it as a boundary vertex. The aim is moving the inner vertices to satisfy a specified geometric PDE.

Previous work on PDE approaches

1. Using biharmonic equation. Biharmonic equation and its variants on a rectangular domain have been used forsolving the blending and hole filling problems (see Bloor et al.’s works at the end of 1980s (Bloor and Wilson, 1989a,1989b, 1990)). The advantage of using biharmonic equation is that it is linear, and therefore easy to solve. Recentlythis equation and its generalizations have been used in interactive surface design (see Du and Qin (2005), Ugailet al. (1999)) and interactive sculpting (see Du and Qin (2000)). Lowe et al. (1990) presented a PDE method withcertain functional constraints, such as geometric constraints, physical criteria and engineering requirements, whichcan be incorporated into the shape design process. However, the biharmonic equation is not geometry intrinsic andthe solution of the equation (the geometry of the surface) depends on the concrete parametrization used. Furthermore,these methods are inappropriate for modeling surfaces with arbitrary shaped boundaries.

2. Using second order geometric equations. Mean curvature flow (MCF) and its variants have been intensivelyused for smoothing or fairing noisy surfaces. We just mention a few references among the large number of literatures.Desbrun et al. (1999) employed an implicit discretization of MCF to obtain a strongly stable numerical smoothingscheme. The same strategy of discretization is also adopted and analyzed by Deckelnick and Dziuk (2002) withthe conclusion that this scheme is unconditionally stable. Clarenz et al. (2000) introduced an anisotropic geometricdiffusion to enhance features as well as smoothing. Ohtake et al. (2000) combined an inner fairness mechanism intheir fairing process to increase the mesh regularity. Bajaj and Xu (2003) smoothed both surfaces and functions onsurfaces in a C2 smooth function space defined by the limit of triangular subdivision surfaces (quartic box splines)with sharp features enhanced.

3. Using higher order geometric equations. MCF has been shown to be the most important and efficient flowfor fairing or denoising surface meshes. However, for solving the surface modeling and designing problems, MCFcannot achieve G1 smooth joining of different patches. Recently, fourth order flows have been used to solve theproblems of surface blending and free-form surface design. In Schneider and Kobbelt (2000) fair meshes with G1

boundary conditions are created using surface diffusion flow in a special case where the meshes are assumed to havesubdivision connectivity. The later paper (Schneider and Kobbelt, 2001) employed the same equation for smoothingmeshes while satisfying G1 boundary conditions. Outer fairness (the smoothness in the classical sense) and innerfairness (the regularity of the vertex distribution) criteria are used in their fairing process. A finite element methodis used in Clarenz et al. (2004) to solve the equation of Willmore flow for surface restoration. Willmore flow is alsoapplied to smooth triangular mesh in Yoshizawa and Belyaev (2002). In Xu et al. (2006) and Xu and Pan (2006)several geometric flows, including the second, fourth and sixth order flows have been employed for surface blending,N-sided hole filling and free-form surface design.

Main contributions of this paper. Traditionally different geometric PDEs are treated separately. In this research,we propose a uniform framework to handle a class of geometric PDEs for solving the surface modeling problems.We derive these PDEs by a complete-variation from a general integral functional. The resulted PDEs, which havesome desirable features, are solved using a divided-difference-like method. This divided-difference-like method re-quires approximations of the involved geometric differential operators. Previous work on the discrete approximationsof these geometric differential operators are constructed based on several different theorems from differential geom-etry. Therefore, they are not consistent in the sense that they may not come from an identical surface. We employ aconsistent estimation of these geometric differential operators.

The rest of this paper is organized as follows. Section 2 introduces some basic materials on differential geometry.Section 3 derives the nonlinear geometric PDE used in this paper. Numerical solving of the proposed PDE is discussedin Section 4, where Section 4.1 gives the discretization scheme for the involved differential operators, Section 4.2outlines the algorithms as a whole for the surface modeling problems. Comparative examples to illustrate the differenteffects achievable from the solutions of several geometric PDEs are given in Section 5. Section 6 concludes the paper.

Please cite this article in press as: G. Xu, Q. Zhang, A general framework for surface modeling using geometric partial differential equations,Computer Aided Geometric Design (2007), doi:10.1016/j.cagd.2007.06.002

Administrator
插入号
.
Administrator
插入号
Please add two spaces here. Thanks a lot.
Page 3: A general framework for surface modeling using geometric ...lsec.cc.ac.cn/~xuguo/papers/article_xuzhang07.pdf · approximations of curvatures and several geometric differential operators

ARTICLE IN PRESSJID:COMAID AID:1037 /FLA [m3SC+; v 1.73; Prn:2/07/2007; 16:33] P.3 (1-22)

G. Xu, Q. Zhang / Computer Aided Geometric Design ••• (••••) •••–••• 3

1 1

2 2

3 3

4 4

5 5

6 6

7 7

8 8

9 9

10 10

11 11

12 12

13 13

14 14

15 15

16 16

17 17

18 18

19 19

20 20

21 21

22 22

23 23

24 24

25 25

26 26

27 27

28 28

29 29

30 30

31 31

32 32

33 33

34 34

35 35

36 36

37 37

38 38

39 39

40 40

41 41

42 42

43 43

44 44

45 45

46 46

47 47

48 48

49 49

50 50

51 51

52 52

UN

CO

RR

EC

TED

PR

OO

F

2. Notations and differential geometry preliminaries

In this section, we introduce the used notations, curvatures and several geometric differential operators.Some resultsused in this paper are also presented.

Let M = {x(u, v) ∈ R3; (u, v) ∈ Ω ⊂ R

2} be a regular sufficiently smooth parametric surface. To simplify thenotation we sometimes write w = (u, v) = (u1, u2). Let gαβ = 〈xuα ,xuβ 〉 and bαβ = 〈n,xuαuβ 〉 be the coefficients ofthe first and the second fundamental forms of M with

xuα = ∂x∂uα

, xuαuβ = ∂2x∂uα∂uβ

, α,β = 1,2, n = (xu × xv)/‖xu × xv‖,where 〈·, ·〉 and × denote the usual scalar and cross products of two vectors, respectively, in Euclidean space R

3. Set

g = det[gαβ ], [gαβ ] = [gαβ ]−1, b = det[bαβ ].Curvatures. To introduce the mean curvature and Gaussian curvature, let us first introduce the concept of Wein-

garten map or shape operator. The shape operator of surface M is a self-adjoint linear map on the tangent spaceTxM := span{xu,xv} defined by

W :TxM → TxM,

such that

W(xu) = −nu, W(xv) = −nv.

We can represent this linear map by a 2 × 2 matrix S = [bαβ ][gαβ ]. In particular,

[nu,nv] = −[xu,xv]ST (2.1)

is valid. The eigenvalues k1, k2 of S are principal curvatures of M and their arithmetic average and product are themean curvature and Gaussian curvature, respectively. That is

H = k1 + k2

2= tr(S)

2, K = k1k2 = det(S).

Tangential gradient operator. Let f be a C1 smooth function on M. Then the tangential gradient operator ∇acting on f is given by (see do Carmo (1976), p. 102)

∇f = [xu,xv][gαβ ](fu, fv)T ∈ R

3, (2.2)

where fu and fv denote the first order partial derivatives of f with respect to arguments u and v. The second orderpartial derivatives of f are denoted by fuαuβ below.

Second tangent operator. Let f be a C1 smooth function on M. Then we define the second tangent operator �acting on f by

�f = [xu,xv][hαβ ](fu, fv)T ∈ R

3,

where

[hαβ ] := 1

g

[b22 −b12

−b12 b11

].

To the best of the authors’ knowledge, operator � is newly introduced. For a vector-valued function f =(f1, . . . , fk)

T ∈ C1(M)k , we define

∇f = [∇f1, . . . ,∇fk] ∈ R3×k, �f = [�f1, . . . ,�fk] ∈ R

3×k.

Hence, it is easy to see that

∇x = [xu,xv][gαβ ][xu,xv]T , (2.3)

∇n = −[xu,xv][gαβ ]S[xu,xv]T , (2.4)

and both ∇x and ∇n are symmetric 3 × 3 matrices. From the definitions of operators ∇ and �, we can derive that

Please cite this article in press as: G. Xu, Q. Zhang, A general framework for surface modeling using geometric partial differential equations,Computer Aided Geometric Design (2007), doi:10.1016/j.cagd.2007.06.002

Page 4: A general framework for surface modeling using geometric ...lsec.cc.ac.cn/~xuguo/papers/article_xuzhang07.pdf · approximations of curvatures and several geometric differential operators

ARTICLE IN PRESSJID:COMAID AID:1037 /FLA [m3SC+; v 1.73; Prn:2/07/2007; 16:33] P.4 (1-22)

4 G. Xu, Q. Zhang / Computer Aided Geometric Design ••• (••••) •••–•••

1 1

2 2

3 3

4 4

5 5

6 6

7 7

8 8

9 9

10 10

11 11

12 12

13 13

14 14

15 15

16 16

17 17

18 18

19 19

20 20

21 21

22 22

23 23

24 24

25 25

26 26

27 27

28 28

29 29

30 30

31 31

32 32

33 33

34 34

35 35

36 36

37 37

38 38

39 39

40 40

41 41

42 42

43 43

44 44

45 45

46 46

47 47

48 48

49 49

50 50

51 51

52 52

UN

CO

RR

EC

TED

PR

OO

F

�n + K∇x = 0. (2.5)

Divergence operator. Let v be a C1 smooth vector field on M. Then the divergence of v is defined by

div(v) = 1√g

[∂

∂u,

∂v

][√g[gαβ ][xu,xv]T v

]. (2.6)

Note that if v is a normal vector field of M, div(v) = 0.For a matrix-valued function Q = [q1, . . . ,qk] ∈ C1(M)3×k , we define

div[Q] = (div(q1), . . . ,div(qk)

)T ∈ Rk.

Laplace–Beltrami operator. Let f be a C2 smooth function on M. Then ∇f is a smooth vector field on M. TheLaplace–Beltrami operator (LBO) � applying to f is defined by (see do Carmo (1992), p. 83)

�f = div(∇f ). (2.7)

From the definitions of ∇ and div, we can derive that

�f = 1√g

[∂

∂u,

∂v

][√g[gαβ ](fu, fv)

T]

(2.8)

= g�u fu + g�

v fv + g�uufuu + g�

uvfuv + g�vvfvv, (2.9)

= 1

g(g22f11 + g11f22 − 2g12f12) (2.10)

= [gαβ ]:[fαβ ], (2.11)

where

g�u = −(

g11(g22g122 − g12g222) + 2g12(g12g212 − g22g112) + g22(g22g111 − g12g211))/g2,

g�v = −(

g11(g11g222 − g12g122) + 2g12(g12g112 − g11g212) + g22(g11g211 − g12g111))/g2,

g�uu = g22/g, g�

uv = −2g12/g, g�vv = g11/g,

with gαβδ = 〈xuα ,xuβuδ 〉, and

fαβ = fuαuβ − (∇f )T xuαuβ , α,β = 1,2,

are the second covariant derivatives. The notation A:B stands for the trace of AT B . It is easy to see that � is a secondorder differential operator.

Remark 2.1. Let us explain how (2.8)–(2.11) are derived. First, equality (2.8) is obtained by simply substituting(2.2) into (2.7). (2.9) is derived from (2.8) by a straightforward computation of the first order partial derivative of√

g[gαβ ](fu, fv)T using the product rule for differentiation. Then (2.10) follows easily from (2.9). Writing (2.10) into

a matrix form, we obtain the last equality.

� operator. Let f be a C2 smooth function on M. Then the � operator acting on f is given by

�f = div(�f ). (2.12)

From the definitions of � and div, there is no difficulty to derive that

�f = 1√g

[∂

∂u,

∂v

][√g[Kbαβ ](fu, fv)

T]

(2.13)

= g�u fu + g�

v fv + g�uufuu + g�

uvfuv + g�vvfvv (2.14)

= 1

g(b22f11 + b11f22 − 2b12f12) (2.15)

= [hαβ ]:[fαβ ], (2.16)

Please cite this article in press as: G. Xu, Q. Zhang, A general framework for surface modeling using geometric partial differential equations,Computer Aided Geometric Design (2007), doi:10.1016/j.cagd.2007.06.002

Page 5: A general framework for surface modeling using geometric ...lsec.cc.ac.cn/~xuguo/papers/article_xuzhang07.pdf · approximations of curvatures and several geometric differential operators

ARTICLE IN PRESSJID:COMAID AID:1037 /FLA [m3SC+; v 1.73; Prn:2/07/2007; 16:33] P.5 (1-22)

G. Xu, Q. Zhang / Computer Aided Geometric Design ••• (••••) •••–••• 5

1 1

2 2

3 3

4 4

5 5

6 6

7 7

8 8

9 9

10 10

11 11

12 12

13 13

14 14

15 15

16 16

17 17

18 18

19 19

20 20

21 21

22 22

23 23

24 24

25 25

26 26

27 27

28 28

29 29

30 30

31 31

32 32

33 33

34 34

35 35

36 36

37 37

38 38

39 39

40 40

41 41

42 42

43 43

44 44

45 45

46 46

47 47

48 48

49 49

50 50

51 51

52 52

UN

CO

RR

EC

TED

PR

OO

F

where

g�u = −(

b11(g22g122 − g12g222) + 2b12(g12g212 − g22g112) + b22(g22g111 − g12g211))/g2,

g�v = −(

b11(g11g222 − g12g122) + 2b12(g12g112 − g11g212) + b22(g11g211 − g12g111))/g2,

g�uu = b22/g, g�

uv = −2b12/g, g�vv = b11/g.

Since bij involves the second order derivatives of the surface considered, Eq. (2.13) implies that � is a third orderdifferential operator at first glance, but equality (2.14) indicates that it is of second order.

For a vector-valued function f = (f1, . . . , fk)T ∈ C1(M)k , we define

�f = div[∇f], (2.17)

�f = div[�f]. (2.18)

Remark 2.2. Equalities (2.13)–(2.16) can be derived in the same way as the equalities (2.8)–(2.11). We ignore thedetails.

For the operators introduced above, we can prove the following theorems that are used in the sequel. The sketchesof the proofs are given in Appendix A. Detailed proofs can be found in our technical report (Zhang and Xu, 2007).

Theorem 2.1. Let x ∈ M. Then

�x = 2Hn, (2.19)

�n = −2∇H − 2H�x + �x. (2.20)

Theorem 2.2. Let x ∈ M. Then

�x = 2Kn, (2.21)

�n = −∇K − K�x = −∇K − H�x. (2.22)

Remark 2.3. The first equality of Theorem 2.1 is well-known. We believe that the second equality and the equalitiesof Theorem 2.2 are newly established.

Theorem 2.3. If v is a smooth three-dimensional vector field on M and f ∈ C1(M), then

div(v) = vT �x + ∇x:∇xv + ∇n:∇nv, (2.23)

div[f ∇v] = f �v + [∇v]T ∇f, (2.24)

∇n:∇v = −2H∇x:∇v + ∇x:�v, (2.25)

where

∇xv = [∇xv1,∇xv2,∇xv3], ∇nv = [∇nv1,∇nv2,∇nv3],∇xvi =

(∂vi

∂x1,∂vi

∂x2,∂vi

∂x3

)T

, ∇nvi =(

∂vi

∂n1,

∂vi

∂n2,

∂vi

∂n3

)T

with v = (v1, v2, v3)T , x = (x1, x2, x3)

T and n = (n1, n2, n3)T .

Theorem 2.4 (Green’s formula). Let v be a smooth three-dimensional vector field on M and f ∈ C1(M) withcompact support, then∫

M

〈v,∇f 〉dA = −∫M

f div(v)dA. (2.26)

Note that the Green’s formula could also be regarded as a definition of the divergence operator div. Since weintroduce the divergence operator div by (2.6), we therefore treat the Green’s formula as a theorem.

Please cite this article in press as: G. Xu, Q. Zhang, A general framework for surface modeling using geometric partial differential equations,Computer Aided Geometric Design (2007), doi:10.1016/j.cagd.2007.06.002

Page 6: A general framework for surface modeling using geometric ...lsec.cc.ac.cn/~xuguo/papers/article_xuzhang07.pdf · approximations of curvatures and several geometric differential operators

ARTICLE IN PRESSJID:COMAID AID:1037 /FLA [m3SC+; v 1.73; Prn:2/07/2007; 16:33] P.6 (1-22)

6 G. Xu, Q. Zhang / Computer Aided Geometric Design ••• (••••) •••–•••

1 1

2 2

3 3

4 4

5 5

6 6

7 7

8 8

9 9

10 10

11 11

12 12

13 13

14 14

15 15

16 16

17 17

18 18

19 19

20 20

21 21

22 22

23 23

24 24

25 25

26 26

27 27

28 28

29 29

30 30

31 31

32 32

33 33

34 34

35 35

36 36

37 37

38 38

39 39

40 40

41 41

42 42

43 43

44 44

45 45

46 46

47 47

48 48

49 49

50 50

51 51

52 52

UN

CO

RR

EC

TED

PR

OO

F

3. Geometric PDEs

First let us examine the energy of a flow. Generally speaking, any flow possesses its own energy because it cannotmove without the driving of an energy. For instance, mean curvature flow is the L2 gradient flow of the area functional.Surface diffusion flow comes also from the area functional in the sense of H−1 inner product, a notion proposed byFife (1991). From squared mean curvature functional, we can derive Willmore flow. To generalize the area functionalfor meeting different requirements in various fields, many energy functionals have been introduced. In chemistry andbiology fields such as phase transition, crystal growth (Gurtin and Jabbour, 2002), biologic vesicle (Ou-Yang et al.,1999), various functionals have been proposed. In computer graphics and image analysis such as shape segmentation,boundary detection (Caselles et al., 1997), tracking, different energy models (Mumford and Shah, 1989) have alsobeen used. Having the notion of the flow energy in mind, we construct the geometric flows in this paper from ageneral energy functional.

3.1. Euler–Lagrange equation derivation

Let f (H,K) ∈ C1(R × R) be a Lagrange function. Then the Euler–Lagrange equation in the normal directionvariation for the curvature function integral

F (M) =∫M

f (K,H)dA =∫ ∫Ω

f (K,H)√

g dudv

over surface M = {x(u, v); (u, v) ∈ Ω ⊂ R2} is given by (see Giaquinta and Hildebrandt (1996), pp. 82–85)

�fK + 1

2�fH + 2HKfK + (2H 2 − K)fH − 2f H = 0, (3.1)

where fK and fH are partial derivatives of f with respect to its arguments K and H , respectively. The scalar equation(3.1) is derived by considering a family of normal-variation x(w, ε) of M defined by

x(w, ε) = x(w) + εφ(w)n, w ∈ Ω, |ε| � 1, φ ∈ C∞c (Ω).

In this paper we intend to derive a vector-valued equation from the complete-variation

x(w, ε) = x(w) + εΦ(w), w ∈ Ω, |ε| � 1, Φ ∈ C∞c (Ω)3, (3.2)

for the functional

E(M) =∫M

f (K,H)dA +∫M

h(x,n)dA, (3.3)

where f (H,K) ∈ C1(R × R) and h(x,n) ∈ C2(R3 × R3\{0}). Note that normal-variation deforms the surface point

x in the normal direction only (not tangential direction). In contrast, complete-variation allows the surface point x tomove in both normal and tangential directions. Thus normal-variation is part of complete-variation. We summarizethe obtained result as the following theorem.

Theorem 3.1. Let f (H,K) ∈ C1(R × R) and h(x,n) ∈ C2(R3 × R3\{0}), respectively. Then the Euler–Lagrange

equation of the integral E(M) from the complete-variation (3.2) is

�(fKn) + 1

2�(fH n) − div

[fH ∇n

] − div[(f + h − 2KfK)∇x] + ∇xh + div(∇nh)n + ∇n∇nh = 0. (3.4)

Proof. Suppose that M is an extremal surface of functional (3.3). Then we obtain

0 = dE(M(·, ε))

∣∣∣∣ =: δE(M,Φ),

Please cite this article in press as: G. Xu, Q. Zhang, A general framework for surface modeling using geometric partial differential equations,Computer Aided Geometric Design (2007), doi:10.1016/j.cagd.2007.06.002

dε ε=0

Administrator
插入号
only
Administrator
删划线
Page 7: A general framework for surface modeling using geometric ...lsec.cc.ac.cn/~xuguo/papers/article_xuzhang07.pdf · approximations of curvatures and several geometric differential operators

ARTICLE IN PRESSJID:COMAID AID:1037 /FLA [m3SC+; v 1.73; Prn:2/07/2007; 16:33] P.7 (1-22)

G. Xu, Q. Zhang / Computer Aided Geometric Design ••• (••••) •••–••• 7

1 1

2 2

3 3

4 4

5 5

6 6

7 7

8 8

9 9

10 10

11 11

12 12

13 13

14 14

15 15

16 16

17 17

18 18

19 19

20 20

21 21

22 22

23 23

24 24

25 25

26 26

27 27

28 28

29 29

30 30

31 31

32 32

33 33

34 34

35 35

36 36

37 37

38 38

39 39

40 40

41 41

42 42

43 43

44 44

45 45

46 46

47 47

48 48

49 49

50 50

51 51

52 52

UN

CO

RR

EC

TED

PR

OO

F

where

δE(M,Φ) =∫ ∫Ω

(fH δ(H) + fKδ(K) + (∇xh)T δ(x) + (∇nh)T δ(n) + (f + h)δ(

√g)/

√g)√

g dudv. (3.5)

Now we compute δ(H), δ(K), δ(x), δ(n) and δ(√

g) in (3.5) separately. First noticing that

x = x + εΦ,

xuα = xuα + εΦuα ,

xuαuβ = xuαuβ + εΦuαuβ ,

then we obtain

δ(x) = Φ, (3.6)

δ(gαβ) = 〈Φuα ,xuβ 〉 + 〈Φuβ ,xuα 〉, α,β = 1,2,

δ(g) = 2g∇x:∇Φ,

(δ√

g)/√

g = ∇x:∇Φ. (3.7)

Since δ(n) is a tangent vector to M, we thus have

δ(n) = −[xu,xv][gαβ ][ 〈n,Φu〉

〈n,Φv〉]

= −∇Φn, (3.8)

and

δ(bαβ) = ⟨δ(n),xuαuβ

⟩ + ⟨n, δ(xuαuβ )

⟩= −〈n, (∇Φ)T xuαuβ 〉 + 〈n,Φuαuβ 〉= 〈n,Φαβ〉.

Therefore,

δ(H) = 1

2(b11g22 + b22g11 − 2b12g12)

−δ(g)

g2+ 1

2g

(〈n,Φ11g22 + Φ22g11 − 2Φ12g12〉+ 2b11〈xv,Φv〉 + 2b22〈xu,Φu〉 − 2b12

(〈xv,Φu〉 + 〈xu,Φv〉))

= −2H∇x:∇Φ + 1

2〈n,�Φ〉 + ∇x:�Φ

= ∇n:∇Φ + 1

2〈n,�Φ〉, (3.9)

where relations (2.1) and (2.25) are used.

δ(K) = δ

(1

g

)(b11b22 − b2

12

) + 1

gδ(b11b22 − b2

12

)

= −2K∇x:∇Φ + 1

g〈n,Φ11b22 + Φ22b11 − 2Φ12b12〉

= −2K∇x:∇Φ + 〈n,�Φ〉. (3.10)

Substituting (3.6)–(3.10) into (3.5), we obtain

0 = δE(M,Φ)

=∫ ∫Ω

(fH ∇n:∇Φ + (f + h − 2KfK)∇x:∇Φ + 1

2fH 〈n,�Φ〉 + fK〈n,�Φ〉

+ (∇xh)T Φ − (∇nh)T ∇Φn)√

g dudv

Please cite this article in press as: G. Xu, Q. Zhang, A general framework for surface modeling using geometric partial differential equations,Computer Aided Geometric Design (2007), doi:10.1016/j.cagd.2007.06.002

Page 8: A general framework for surface modeling using geometric ...lsec.cc.ac.cn/~xuguo/papers/article_xuzhang07.pdf · approximations of curvatures and several geometric differential operators

ARTICLE IN PRESSJID:COMAID AID:1037 /FLA [m3SC+; v 1.73; Prn:2/07/2007; 16:33] P.8 (1-22)

8 G. Xu, Q. Zhang / Computer Aided Geometric Design ••• (••••) •••–•••

1 1

2 2

3 3

4 4

5 5

6 6

7 7

8 8

9 9

10 10

11 11

12 12

13 13

14 14

15 15

16 16

17 17

18 18

19 19

20 20

21 21

22 22

23 23

24 24

25 25

26 26

27 27

28 28

29 29

30 30

31 31

32 32

33 33

34 34

35 35

36 36

37 37

38 38

39 39

40 40

41 41

42 42

43 43

44 44

45 45

46 46

47 47

48 48

49 49

50 50

51 51

52 52

UN

CO

RR

EC

TED

PR

OO

F

=∫ ∫Ω

⟨−div[fH ∇n] − div[(f + h − 2KfK)∇x] + 1

2�(fH n) + �(fKn)

+ ∇xh + div(∇nh)n + ∇n(∇nh),Φ

⟩√g dudv (3.11)

for any Φ ∈ C∞c (Ω)3. The last equality is valid owing to Green’s formula (2.26). Therefore, the Euler–Lagrange

equation of functional (3.3) is (3.4) and the theorem is proved. �From the theorem, we can derive Giaquinta and Hildebrandt’s result mentioned above. In fact, we have the follow-

ing corollary.

Corollary 3.1. Let f (H,K) ∈ C1(R × R) and h(x,n) ∈ C2(R3 × R3\{0}), respectively. Then

�(fKn) + 1

2�(fH n) − div[fH ∇n] − div

[(f − 2KfK)∇x

]

= n(

�fK + 1

2�fH + 2HKfK + (2H 2 − K)fH − 2Hf

), (3.12)

∇xh + div(∇nh)n + ∇n∇nh − div[h∇x] = n(nT ∇xh + div(∇nh) − 2hH

). (3.13)

Proof. We first have the following equalities,

�(fKn)(A.6)=(2.5)

(�fK)n − 2[K∇x]T ∇fK + fK�n

(2.22)= (�fK)n − 2K∇fK + fK(−∇K − 2KHn),

�(fH n)(A.3)= (�fH )n + 2[∇n]T ∇fH + fH �n(2.20)= (�fH )n + 2[∇n]T ∇fH + 2fH (Kn − 2H 2n − ∇H),

div[fH ∇n] (A.2)= fH �n + [∇n]T ∇fH = 2fH (Kn − 2H 2n − ∇H) + [∇n]T ∇fH ,

div[(f − 2KfK)∇x

] (A.2)= (f − 2KfK)�x + [∇x]T ∇(f − 2KfK)

= 2(f − 2KfK)Hn + fH ∇H + fK∇K − 2K∇fK.

After substituting them into the left-hand side of (3.12), we can obtain the right-hand side. Noticing that

div[h∇x] = h�x + 〈∇x,∇h〉 = h�x + ∇h = h�x + ∇x∇xh + ∇n∇nh, (3.14)

we can derive (3.13). �3.2. The geometric flows

For given functions f (H,K) and h(x,n), let M0 be a given initial surface with boundary Γ (see Fig. 1(a)). Thenthe geometric flow consists of finding a family {M(t): t � 0} of smooth orientable surfaces in R

3 which evolveaccording to the following equation⎧⎪⎨

⎪⎩∂x∂t

+ �(fKn) + 12�(fH n) − div[fH ∇n] − div[(f + h − 2KfK)∇x]

+ ∇xh + div(∇nh)n + ∇n∇nh = 0,

M(0) = M0, ∂M(t) = Γ.

(3.15)

Note that �(fKn) and �(fH n) involve the fourth order derivatives of M in general. The equation is of the fourthorder if fH or fK is not a constant function. Now we reformulate Eq. (3.15). With the help of (2.24), (2.25), (A.10)and Theorem 2.1, we have

div[fH ∇n] = fH �x − 2fH H�x − 2fH ∇H + �fH − 2H∇fH .

Please cite this article in press as: G. Xu, Q. Zhang, A general framework for surface modeling using geometric partial differential equations,Computer Aided Geometric Design (2007), doi:10.1016/j.cagd.2007.06.002

Page 9: A general framework for surface modeling using geometric ...lsec.cc.ac.cn/~xuguo/papers/article_xuzhang07.pdf · approximations of curvatures and several geometric differential operators

ARTICLE IN PRESSJID:COMAID AID:1037 /FLA [m3SC+; v 1.73; Prn:2/07/2007; 16:33] P.9 (1-22)

G. Xu, Q. Zhang / Computer Aided Geometric Design ••• (••••) •••–••• 9

1 1

2 2

3 3

4 4

5 5

6 6

7 7

8 8

9 9

10 10

11 11

12 12

13 13

14 14

15 15

16 16

17 17

18 18

19 19

20 20

21 21

22 22

23 23

24 24

25 25

26 26

27 27

28 28

29 29

30 30

31 31

32 32

33 33

34 34

35 35

36 36

37 37

38 38

39 39

40 40

41 41

42 42

43 43

44 44

45 45

46 46

47 47

48 48

49 49

50 50

51 51

52 52

UN

CO

RR

EC

TED

PR

OO

F

Fig. 1. (a) shows the initial surface M0 with boundary Γ and an outer surface. (b) is the discretization of the initial surface M0 and the outersurface. Vertices labeled with solid dots are inner ones. Others are outer ones.

On the other hand, equality (3.14) yields

∇xh + ∇n∇nh − div[h∇x] = [I − ∇x]∇xh − h�x.

Therefore the first equation of (3.15) becomes

∂x∂t

+ �(fKn) + 1

2�(fH n) − fH �x + (2HfH + 2KfK − f − h)�x

+ [I − ∇x]∇xh + div(∇nh)n + 2fH ∇H − �fH + 2H∇fH − ∇(f − 2KfK) = 0. (3.16)

Suppose that fH and fK could be represented as

fH = 2αH + 2βK + μ, fK = 2γH + 2δK + ν. (3.17)

Then (3.16) becomes

∂x∂t

+ �(γ�x + δ�x + νn) + 1

2�(α�x + β�x + μn) − fH �x

+ (2HfH + 2KfK − f − h)�x + [I − ∇x]∇xh + div(∇nh)n

+ 2fH ∇H − �fH + 2H∇fH − ∇(f − 2KfK) = 0, (3.18)

where div(∇nh) is computed, from (2.23), by

div(∇nh) = (∇nh)T �x + ∇x:[∇2nxh

] + ∇n:[∇2nnh

](3.19)

with ∇2nxh = ∇n∇xh ∈ R

3×3 and ∇2nnh = ∇n∇nh ∈ R

3×3. The nonlinear equation (3.18) is our starting point ofdiscretization. Advantages of using (3.18) instead of (3.1) is addressed in the next section (see Remark 4.4).

Remark 3.1. In the discussion above, we do not impose any restriction on f (H,K) and h(x,n). In order to make thegenerated flow meaningful and well-defined. We first require that f and h are smooth functions about their arguments.We also assume that f and h are algebraic functions, meaning they do not involve differential and integral operationsabout their variables. To make the geometric flow independent of the orientation of the surface normal, we furtherassume that

fH (H,K) = −fH (−H,K), fK(H,K) = fK(−H,K),

∇xh(x,n) = ∇xh(x,−n), ∇nh(x,n) = −∇nh(x,−n),

∇nxh(x,n) = −∇nxh(x,−n), ∇nnh(x,n) = ∇nnh(x,−n).

(3.20)

Finally, we assume that the energy density f (H,K) + h(x,n) � 0 such that the energy functional is non-negative inorder to decrease it to a finite limit. Otherwise, an undetermined flow may be obtained. For example, Gauss curvatureflow is fallen into this category.

Please cite this article in press as: G. Xu, Q. Zhang, A general framework for surface modeling using geometric partial differential equations,Computer Aided Geometric Design (2007), doi:10.1016/j.cagd.2007.06.002

Page 10: A general framework for surface modeling using geometric ...lsec.cc.ac.cn/~xuguo/papers/article_xuzhang07.pdf · approximations of curvatures and several geometric differential operators

ARTICLE IN PRESSJID:COMAID AID:1037 /FLA [m3SC+; v 1.73; Prn:2/07/2007; 16:33] P.10 (1-22)

10 G. Xu, Q. Zhang / Computer Aided Geometric Design ••• (••••) •••–•••

1 1

2 2

3 3

4 4

5 5

6 6

7 7

8 8

9 9

10 10

11 11

12 12

13 13

14 14

15 15

16 16

17 17

18 18

19 19

20 20

21 21

22 22

23 23

24 24

25 25

26 26

27 27

28 28

29 29

30 30

31 31

32 32

33 33

34 34

35 35

36 36

37 37

38 38

39 39

40 40

41 41

42 42

43 43

44 44

45 45

46 46

47 47

48 48

49 49

50 50

51 51

52 52

UN

CO

RR

EC

TED

PR

OO

F

4. Numerical solving of the geometric PDE

Let M be a triangulation of surface M. Let {xi}Ni=1 be the vertex set of M . For a vertex xi with valence l, denote byN(i) = {i, i1, i2, . . . , il} the set of the vertex indices of xi and its one-ring neighbors. We assume in what follows thatthese i1, . . . , il are arranged such that the triangles [xixik xik−1] and [xixik xik+1] are in M , and xik−1 , xik+1 are oppositeto the edge [xixik ].

4.1. Discretizations of geometric differential operators

To solve the geometric PDE (3.16) or (3.18) using a divided-difference-like method, discrete approximations ofmean curvature, Gaussian curvature, Laplace–Beltrami operator and � operator are required. Many discrete schemeshave been proposed for geometric differential operators from different points of view (see Langer et al. (2005), Meekand Walton (2000), Meyer et al. (2002), Xu (2004, 2006) for references). Except for the schemes based on the interpo-lation or fitting, none of these schemes converges without any restriction on the regularity of the meshes considered.In this paper, all the used differential operators are approximated based on a parametric quadratic fitting. In order touse a semi-implicit scheme, the approximations of the above mentioned differential operators are required to have thefollowing form

�f (xi ) =∑

j∈N(i)

w�ij f (xj ), �f (xi ) =

∑j∈N(i)

w�ij f (xj ), w

�ij , w�

ij ∈ R. (4.1)

Definition 4.1. A set of approximate geometric differential operators is consistent if there exists a smooth surface S ,such that the approximate operators coincide with the exact counterparts of S .

Note that the definition of consistency between approximate differential operators is irrelevant to the consistencybetween differential equation and difference equation. Since using different approaches to discretize various differ-ential operators may lead to conflicting results, the consistent approximations of differential operators are of greatimportance. Here we use a biquadratic fitting of the surface data and function data to calculate the approximate dif-ferential operators. The algorithm we adopted is from Xu (2004). Let xi be a vertex of M with valence l and xj itsneighbor vertices for j ∈ N(i).

Algorithm 4.1 (Quadratic fitting).

1. Compute angles αk = cos−1(〈xik − xi ,xik+1 − xi〉/(‖xik − xi‖‖xik+1 − xi‖)), and then compute the angles βk =2παk/

∑lj=1 αj for k = 1, . . . , l. Set q0 = (0,0), θ1 = 0 and qk = ‖xik −xi‖(cos θk, sin θk), θk = β1 +· · ·+βk−1,

for k = 1, . . . , l.2. Take the basis functions {Bj (u, v)}5

j=0 = {1, u, v, 12u2, uv, 1

2v2}, and determine the coefficient cj ∈ R3 of∑5

j=0 cjBj so that

5∑j=0

cjBj (qk) = xik , k = 0, . . . , l (assume i0 = i),

in the least square sense. This system is solved by solving the normal equation. Let A = [Bj (qk)]l,5k=0,j=0 ∈R

(l+1)×6, and let

C = [AT A]−1AT ∈ R6×(l+1), (4.2)

then [c0, . . . , c5] = [xi0, . . . ,xil ]CT .

Please cite this article in press as: G. Xu, Q. Zhang, A general framework for surface modeling using geometric partial differential equations,Computer Aided Geometric Design (2007), doi:10.1016/j.cagd.2007.06.002

Page 11: A general framework for surface modeling using geometric ...lsec.cc.ac.cn/~xuguo/papers/article_xuzhang07.pdf · approximations of curvatures and several geometric differential operators

ARTICLE IN PRESSJID:COMAID AID:1037 /FLA [m3SC+; v 1.73; Prn:2/07/2007; 16:33] P.11 (1-22)

G. Xu, Q. Zhang / Computer Aided Geometric Design ••• (••••) •••–••• 11

1 1

2 2

3 3

4 4

5 5

6 6

7 7

8 8

9 9

10 10

11 11

12 12

13 13

14 14

15 15

16 16

17 17

18 18

19 19

20 20

21 21

22 22

23 23

24 24

25 25

26 26

27 27

28 28

29 29

30 30

31 31

32 32

33 33

34 34

35 35

36 36

37 37

38 38

39 39

40 40

41 41

42 42

43 43

44 44

45 45

46 46

47 47

48 48

49 49

50 50

51 51

52 52

UN

CO

RR

EC

TED

PR

OO

F

Partial derivatives. Let (d0, . . . , d5)T = C(f (xi0), . . . , f (xil ))

T . Then we compute the partial derivatives up to thesecond order. Denote the second, third, fourth, fifth and sixth rows of C as C1, C2, C11, C12 and C22, respectively,then we can see that

xuα = [xi0, . . . ,xil ]CTα , α = 1,2,

∂f

∂uα= (

f (xi0), . . . , f (xil ))CT

α , α = 1,2,

xuαuβ = [xi0, . . . ,xil ]CTαβ, 1 � α � β � 2,

∂2f

∂uα∂uβ= (

f (xi0), . . . , f (xil ))CT

αβ, 1 � α � β � 2.

(4.3)

Laplace–Beltrami operator. Substituting (4.3) into (2.9), we get an approximation of LBO as follows:

�f (xi ) ≈∑

j∈N(i)

w�ij f (xj ), (4.4)

where w�i,ij

= g�u c

(j)

1 + g�v c

(j)

2 + g�uuc

(j)

11 + g�uvc

(j)

12 + g�vvc

(j)

22 . Here c(j)α and c

(j)αβ are the j th components of Cα and

Cαβ , respectively. Using the relation 2Hn = �x, mean curvature H(xi ) is easily computed.� operator. Substituting (4.3) into (2.14), we get an approximation of � as follows:

�f (xi ) ≈∑

j∈N(i)

w�ij f (xj ), (4.5)

where w�i,ij

= g�u c

(j)

1 +g�v c

(j)

2 +g�uuc

(j)

11 +g�uvc

(j)

12 +g�vvc

(j)

22 . Using the relation 2Kn = �x, Gaussian curvature K(xi )

can be computed.

Remark 4.1. The quadratic fitting algorithm above may fail if the coefficient matrix of the normal equation is singularor nearly singular. In this case, we look for a least square solution with minimal normal. Let AT Ax = b be the linearsystem in the matrix form. We find a least square solution x such that ‖x‖2 = min. That is, we replace [AT A]−1

in (4.2) with the Moore–Penrose inverse [AT A]+. It is well known that [AT A]+ could be computed by the SVDdecomposition of AT A (see Xu (2007) for more details).

Remark 4.2. Now we explain why we derive the used differential operators based on the parametric fitting. The firstreason is that this fitting scheme yields a convergent approximation in general as the mesh size (the maximal edgelength) h → 0 (see Theorem 4.1 in the following). The second reason is that the computation of these operators isconsistent. The third reason is that the fitting scheme yields the required form expressions, which are ready for usein the semi-implicit discretization of the PDEs. The last reason is that all the differential operators used in this paperinvolve the first and second order derivatives of the surface or functions on the surface. Hence, quadratic function isenough to provide these partial derivative data.

Now let us quote a result from Xu (2007). The proof of this result is beyond the scope of this paper.

Theorem 4.1. Let f (q) be a smooth function around the origin q0 = (0,0), and let {qi}li=0 be a well-posed node set.

Let G(h) = ∑i+j�2 a

(h)ij uivj /i!j ! be the quadratic fitting function generated by Algorithm 4.1 for the sampling data

[hqTi , f (hqi )]T ∈ R

3 of function f . Then∣∣∣∣a(h)ij − ∂i+j f (q0)

∂ui∂vj

∣∣∣∣ � cijh3−i−j , i + j � 2, as h → 0, (4.6)

where cij are constants depending on f .

The node set {qi}ni=0 is called well-posed, provided that matrix A in (4.2) is of full rank in row. The theorem impliesthat the approximate normal from fitting function converges in the rate O(h2), the approximate curvatures convergein the rate O(h).

Please cite this article in press as: G. Xu, Q. Zhang, A general framework for surface modeling using geometric partial differential equations,Computer Aided Geometric Design (2007), doi:10.1016/j.cagd.2007.06.002

Administrator
删划线
Page 12: A general framework for surface modeling using geometric ...lsec.cc.ac.cn/~xuguo/papers/article_xuzhang07.pdf · approximations of curvatures and several geometric differential operators

ARTICLE IN PRESSJID:COMAID AID:1037 /FLA [m3SC+; v 1.73; Prn:2/07/2007; 16:33] P.12 (1-22)

12 G. Xu, Q. Zhang / Computer Aided Geometric Design ••• (••••) •••–•••

1 1

2 2

3 3

4 4

5 5

6 6

7 7

8 8

9 9

10 10

11 11

12 12

13 13

14 14

15 15

16 16

17 17

18 18

19 19

20 20

21 21

22 22

23 23

24 24

25 25

26 26

27 27

28 28

29 29

30 30

31 31

32 32

33 33

34 34

35 35

36 36

37 37

38 38

39 39

40 40

41 41

42 42

43 43

44 44

45 45

46 46

47 47

48 48

49 49

50 50

51 51

52 52

UN

CO

RR

EC

TED

PR

OO

F

4.2. Main algorithm

Given are suitable smooth bivariate functions f (H,K) and h(x,n). Suppose that we have a subroutine for com-puting f,α,β,μ,γ, δ and ν at a given point (H,K) and another subroutine for computing h, ∇xh, ∇nh, ∇2

nxh and∇2

nnh. We further assume that an initial surface mesh M(0) is provided with certain vertices labeled as inner (seeFig. 1(b)).

An explicit Euler scheme for temporal discretization is unstable in general, therefore requires a small temporalstep-size. To make the evolution process more efficient, an implicit scheme is more desirable. However, since the PDEis highly nonlinear, a complete implicit scheme is hard to solve. In the following we present a semi-implicit scheme,which leads to a linear system of equations. The basic idea for forming the linear system is to represent �x and �x atxi as linear combinations of its neighbor vertices. Starting from M(0), the following algorithm generates a sequenceof triangular surfaces {M(m)}m�0.

Algorithm 4.2 (Semi-implicit scheme).

1. Set m = 0, x(0)i = xi and set temporal step-size τ .

2. For each inner vertex x(m)i , i = 1, . . . , n, compute a quadratic fitting function by Algorithm 4.1. Then compute

n(m)i = n(x(m)

i ), Hi = H(x(m)i ), Ki = K(x(m)

i ), w�ij and w�

ij from the fitting function, and then compute f , α, β ,μ, γ , δ and ν at (Hi,Ki) using the provided subroutine. These values are denoted by fi , αi , βi , μi , γi , δi and νi ,respectively. We further compute ∇xh(x(m)

i ,n(m)i ) and div(∇nh(x(m)

i ,n(m)i )) using (3.19).

3. Compute

E(M(m)) ≈∑

i

AM(m)

(x(m)i

)(f

(H

(x(m)i

),K

(x(m)i

)) + h(x(m)i ,n(m)

i

)),

where AM(m)(x(m)i ) is the area of the Voronoi region of M(m) around x(m)

i . If E(M,m) is stable, that is

∣∣E(M(m)) − E(M(m−1))∣∣ � τε,

for a given threshold value ε, or m is beyond a given number of iteration, then we terminate the computation.Otherwise, go to the next step.

4. For each inner vertex x(m)i , i = 1, . . . , n, discretize (3.18) as the following linear system

x(m+1)i + τ

(∑cij x(m+1)

j + bi

)= x(m)

i , cij ∈ R, bi ∈ R3, (4.7)

where the first term of (3.18) is approximated byx(m+1)i −x(m)

i

τand the other terms are approximated by∑

cij x(m+1)j + bi .

5. Solve the linear system (4.7) for the unknowns x(m+1)i , for i = 1, . . . , n. We use Saad’s iterative method (see

Saad (2000)), named GMRES, with incomplete LU decomposition as a pre-conditioner to solve the system. Theexperiments show that this iterative method works very well.

6. Set m to be m + 1 and go back to step 2.

Spatial discretization. Now let us explain in detail how Eq. (3.18) is spatially discretized to derive the linear system(4.7). Using (4.5) and (4.4), we have

�(fKn)|xi≈

∑j∈N(i)

w�ij

(γj�

(x(m+1)j

) + δj�(x(m+1)j

) + n(m)j νj

)

≈∑

w�ij

∑ (γjw

�jk + δjw

�jk

)x(m+1)k +

∑w�

ij νj n(m)j , (4.8)

Please cite this article in press as: G. Xu, Q. Zhang, A general framework for surface modeling using geometric partial differential equations,Computer Aided Geometric Design (2007), doi:10.1016/j.cagd.2007.06.002

j∈N(i) k∈N(j) j∈N(i)

Page 13: A general framework for surface modeling using geometric ...lsec.cc.ac.cn/~xuguo/papers/article_xuzhang07.pdf · approximations of curvatures and several geometric differential operators

ARTICLE IN PRESSJID:COMAID AID:1037 /FLA [m3SC+; v 1.73; Prn:2/07/2007; 16:33] P.13 (1-22)

G. Xu, Q. Zhang / Computer Aided Geometric Design ••• (••••) •••–••• 13

1 1

2 2

3 3

4 4

5 5

6 6

7 7

8 8

9 9

10 10

11 11

12 12

13 13

14 14

15 15

16 16

17 17

18 18

19 19

20 20

21 21

22 22

23 23

24 24

25 25

26 26

27 27

28 28

29 29

30 30

31 31

32 32

33 33

34 34

35 35

36 36

37 37

38 38

39 39

40 40

41 41

42 42

43 43

44 44

45 45

46 46

47 47

48 48

49 49

50 50

51 51

52 52

UN

CO

RR

EC

TED

PR

OO

F

�(fH n)|xi≈

∑j∈N(i)

w�ij

(αj�

(x(m+1)j

) + βj�(x(m+1)j

) + n(m)j μj

)

≈∑

j∈N(i)

w�ij

∑k∈N(j)

(αjw

�jk + βjw

�jk

)x(m+1)k +

∑j∈N(i)

w�ijμj n(m)

j , (4.9)

fH �x|xi≈ fH

∑j∈N(i)

w�ij x(m+1)

j , (4.10)

(2HfH + 2KfK − f − h)�x|xi≈ (2HifH + 2KifK − fi − hi)

∑j∈N(i)

w�ij x(m+1)

j , (4.11)

[I − ∇x]∇xh + div(∇nh)n|xi≈ [

I − ∇x(m)i

]∇xh(x(m)i ,n(m)

i

) + div(∇nh

(x(m)i ,n(m)

i

))n(m)

i , (4.12)

2fH ∇H − �fH + 2H∇fH − ∇(f − 2KfK)|xi≈ 2fH ∇H − �fH + 2H∇fH − ∇(f − 2KfK)|

x(m)i

. (4.13)

Plugging (4.8)–(4.13) into (3.18) and adding the coefficient of x(m+1)k to cij if x(m+1)

k is an inner vertex, and addingthe remaining terms to bi , we obtain (4.7).

Remark 4.3. The coefficient matrix of the system is very sparse. Since each inner vertex involves only its two-ringneighbors, the number of nonzero elements for each row of the coefficient matrix is 19 in average (assume the averageof the vertex-valence is 6).

Remark 4.4. Now let us explain why we use Euler–Lagrange equation (3.4) instead of (3.1). The main reason is thatflow (3.15) constructed from Euler–Lagrange equation (3.4) does not contain the terms n�H , n�H , n�K and n�K .As a result, the coefficients cij in (4.7) are scalars, while the coefficients of the geometric flow constructed from (3.1)are 3 × 3 matrices (see (Xu et al., 2006)). For instance, n�H is discretized as

n�H |xi≈ n(m)

i

∑j∈N(i)

w�ijHj ≈ 1

2

∑j∈N(i)

w�ij

∑k∈N(j)

n(m)i

(n(m)

j

)Tw

�jkxk,

where n(m)i (n(m)

j )T ∈ R3×3. Since cij are scalars, system (4.7) can be solved separately by splitting it into three sub-

systems with the same coefficient matrix (δij + τcij ). Hence the new formulation not only saves the storage but alsoaccelerates the computation. More importantly, the numerical behavior of the small systems is better than that of thelarge one, and therefore requires less iteration steps for solving the system. To see this more clearly, let us examinethe discretization of (3.1). Suppose that (3.1) is linearized as∑

j

dTij xj = ei, dij ∈ R

3, ei ∈ R.

Taking an inner product of this equation with n(m)i , we get∑

j

cij xj = n(m)i ei, cij = n(m)

i dTij ∈ R

3×3, i = 1, . . . , n.

Note that this system is of low rank, since the three equations at vertex xi are of rank one.

5. Examples

In this section, we give several examples to show the strength of the proposed approach. Considering the approachis general, there are infinitely many possibilities for choosing f and h as well as the geometric models. The examplesprovided here are just a few of them. In the illustrative figures of this section, τ and T stand for the temporal step-sizeand the number of iteration used.

5.1. The effects of the geometric PDEs

To illustrate the effects caused by the various geometric PDEs, we use a few simple surface models, such ascylinder, ring and sphere as the inputs, so that the shape deformations are distinguishable. Most of the figures presented

Please cite this article in press as: G. Xu, Q. Zhang, A general framework for surface modeling using geometric partial differential equations,Computer Aided Geometric Design (2007), doi:10.1016/j.cagd.2007.06.002

Page 14: A general framework for surface modeling using geometric ...lsec.cc.ac.cn/~xuguo/papers/article_xuzhang07.pdf · approximations of curvatures and several geometric differential operators

ARTICLE IN PRESSJID:COMAID AID:1037 /FLA [m3SC+; v 1.73; Prn:2/07/2007; 16:33] P.14 (1-22)

14 G. Xu, Q. Zhang / Computer Aided Geometric Design ••• (••••) •••–•••

1 1

2 2

3 3

4 4

5 5

6 6

7 7

8 8

9 9

10 10

11 11

12 12

13 13

14 14

15 15

16 16

17 17

18 18

19 19

20 20

21 21

22 22

23 23

24 24

25 25

26 26

27 27

28 28

29 29

30 30

31 31

32 32

33 33

34 34

35 35

36 36

37 37

38 38

39 39

40 40

41 41

42 42

43 43

44 44

45 45

46 46

47 47

48 48

49 49

50 50

51 51

52 52

UN

CO

RR

EC

TED

PR

OO

F

Fig. 2. The input is a triangulated cylinder. We evolve the middle part of the cylinder using the geometric flows with different Lagrange functionsf (H,K) and h(x,n) = 0. Figures (a)–(f) are the evolution results of the corresponding flows. The boundaries are two circles on the cylinder, theinitial surface to be evolved is the input cylinder between the two circles.

Fig. 3. The surface to be evolved is defined as a graph of a function g: x(u, v) = (u, v, g(u, v))T , g(u, v) = e(u, v) + e(u + 1, v) +e(u, v + 1) + e(u + 1, v + 1), with (u, v) ∈ Ω := [−1,1]2 and e(u, v) = exp[− 81

16 (u − 0.5)2 + (v − 0.5)2]. This surface is uniformly triangu-lated using a 60 × 60 grid over the domain Ω . We evolve a part of the surface, where g > 1.5, with different Lagrange functions f (H,K) andh(x,n) = 0. Figures (a)–(f) show the evolution results of the corresponding flows. The boundary curve is defined by g = 1.5, the surface g > 1.5 isserved as the initial surface of the evolutions.

in the following show the steady solutions of the PDEs considered, except for a few of them which show short timesolution, since longer time evolution may cause singularities.

Example 5.1. Take f = 1, h = 0, then (3.4) becomes H = 0. The resulted surface is a minimal surface (see Dierkeset al. (1992), Nitsche (1989) for references). Figs. 2(a), 3(a), 4(e) and 7(a) show four examples of the minimal surfaceconstructions. If f = H,h = 0, (3.4) becomes K = 0. The resulted surface is a developable surface. From this equa-tion, we get Gauss curvature flow. As we have noted in Remark 3.2, this flow is undetermined because the integrandH is not necessarily positive. Hence all the previous results about this flow require that the surfaces to be evolved arestrictly convex (Tso, 1985) or convex (Andrews, 1994). Fig. 8(a) shows a short time evolution result of a triangulatedring. If f = K,h = 0, the Euler–Lagrange equation is 0 = 0, and E(M) is an invariant integral.

Example 5.2. Take f = α|H |p + β|K|q , (p, q > 1, α,β � 0), h = 0. (3.4) becomes

β[q�(|K|q−2K

) + 2(q − 1)|K|qH] + α[(p/2)�

(|H |p−2H) + 2(p − 1)H |H |p − pHK|H |p−2] = 0.

In particular, if α = 1, β = 0 and p = 2, the resulted surface is a Willmore surface (see Willmore (1993)), whichsatisfies the equation �H +2H(H 2 −K) = 0. Figs. 2(b), 3(b), 4(c) and 5(d) show four examples of Willmore surfaceconstructions. If α = 0, β = 1 and q = 2, the resulted surface satisfies the equation �K + HK2 = 0. Figs. 2(c) and3(c) show two solution surfaces of the equation. In general, the result of this flow is not desirable for surface processingif the considered surface is not convex (see Fig. 8(b)). Figs. 2(d), 3(d) and 8(d) show three examples of the solutionsurfaces for α = β = 1 and p = q = 2.

Please cite this article in press as: G. Xu, Q. Zhang, A general framework for surface modeling using geometric partial differential equations,Computer Aided Geometric Design (2007), doi:10.1016/j.cagd.2007.06.002

Page 15: A general framework for surface modeling using geometric ...lsec.cc.ac.cn/~xuguo/papers/article_xuzhang07.pdf · approximations of curvatures and several geometric differential operators

ARTICLE IN PRESSJID:COMAID AID:1037 /FLA [m3SC+; v 1.73; Prn:2/07/2007; 16:33] P.15 (1-22)

G. Xu, Q. Zhang / Computer Aided Geometric Design ••• (••••) •••–••• 15

1 1

2 2

3 3

4 4

5 5

6 6

7 7

8 8

9 9

10 10

11 11

12 12

13 13

14 14

15 15

16 16

17 17

18 18

19 19

20 20

21 21

22 22

23 23

24 24

25 25

26 26

27 27

28 28

29 29

30 30

31 31

32 32

33 33

34 34

35 35

36 36

37 37

38 38

39 39

40 40

41 41

42 42

43 43

44 44

45 45

46 46

47 47

48 48

49 49

50 50

51 51

52 52

UN

CO

RR

EC

TED

PR

OO

F

Fig. 4. The input is a triangulated ring which interpolates 4 circles as shown in (a). We evolve the ring using the geometric flows with differentLagrange functions f (H,K) and h(x,n) = 0, and require the surface to interpolate the circles. Figures (b)–(h) are the evolution results of thecorresponding flows. The boundary condition is the four circles as shown in (a). The initial surface to be evolved is a ring interpolating the fourcircles.

Example 5.3. Take f = |H |p|K|q , (p, q > 1), h = 0. (3.4) becomes

q�(K|H |p|K|q−2) + (p/2)�

(H |H |p−2|K|q) + (2p + 2q − 2)H |H |p|K|q − pHK|H |p−2|K|q = 0.

Figs. 2(e), 3(e) and 8(c) show three examples for p = q = 2. The smoothing effect of the flow constructed from theabove equation is not desirable if the considered surface is not convex.

Example 5.4. Take f = (|k1|p + |k2|p)q , p > 1, q > 0. If p = 2k, q is a natural number, then f is a polynomial

of H and K . For instance, if p = 2, q = 1, f = k21 + k2

2 = 4H 2 − 2K . But taking Gauss–Bonnet–Chern formulainto consideration, we can easily find that this functional will generate Willmore surfaces. Figs. 2(f) and 3(f) showtwo solution surfaces of the equation for p = 4, q = 1. Figs. 4(b), (c) and (d) show three examples for p = 2 andq = 1

2 ,1, 32 , respectively. Figs. 4(f), (g) and (h) show three other examples for p = 4, q = 1

4 , 12 and 1, respectively.

This family of equations generates pleasing surfaces in general.

Example 5.5. Take f = 12kc(2H + c0)

2 + λ, h = 13Pδ〈x,n〉, where kc, c0, λ and Pδ are constants, then (3.3) becomes

E(M) = 1

2kc

∫M

(2H + c0)2 dA + Pδ

∫V

dV + λ

∫M

dA,

where M is a closed surface and V ⊂ R3 is the region enclosed by M. This is the shape energy of biologic vesicle

(see Ou-Yang et al. (1999)). Here the constant kc is the bending rigidity of the vesicle surface, c0 is the spontaneouscurvature, Pδ = pout − pin is the difference of the outer pressure and inner pressure of the vesicle. λ is the strain ofthe surface. Then the Euler–Lagrange equation of E(M) is

Pδ − 2λH + kc(2H + c0)(2H 2 − c0H − 2K

) + 2kc�H = 0. (5.1)

This is the general equation of the biologic vesicle.

Now let us consider two simple cases. As one may know, the red blood cell and ring-shaped vesicle minimize theenergy:∫

(2H + c0)2 dA,

∫H 2 dA,

Please cite this article in press as: G. Xu, Q. Zhang, A general framework for surface modeling using geometric partial differential equations,Computer Aided Geometric Design (2007), doi:10.1016/j.cagd.2007.06.002

M M

Page 16: A general framework for surface modeling using geometric ...lsec.cc.ac.cn/~xuguo/papers/article_xuzhang07.pdf · approximations of curvatures and several geometric differential operators

ARTICLE IN PRESSJID:COMAID AID:1037 /FLA [m3SC+; v 1.73; Prn:2/07/2007; 16:33] P.16 (1-22)

16 G. Xu, Q. Zhang / Computer Aided Geometric Design ••• (••••) •••–•••

1 1

2 2

3 3

4 4

5 5

6 6

7 7

8 8

9 9

10 10

11 11

12 12

13 13

14 14

15 15

16 16

17 17

18 18

19 19

20 20

21 21

22 22

23 23

24 24

25 25

26 26

27 27

28 28

29 29

30 30

31 31

32 32

33 33

34 34

35 35

36 36

37 37

38 38

39 39

40 40

41 41

42 42

43 43

44 44

45 45

46 46

47 47

48 48

49 49

50 50

51 51

52 52

UN

CO

RR

EC

TED

PR

OO

F

Fig. 5. We simulate the shape of two biomembranes–a red blood cell and a ring-shaped vesicle. (a) is an input closed surface served as an initialsurface for the evolution, and (b) shows the evolution result for f = (H + c0)2, h = 0. (c) is an input ring, as an initial surface (without boundary).(d) is the evolution result of the input ring for f = H 2 and h = 0.

Fig. 6. The input initial surface to be evolved is a triangulated sphere (without boundary). (a) ellipsoid sphere, (b) disk, (c) octahedron and (d)octahedron are the evolution results for f = 0 and h = h1, h = h2, h = h3 and h = h4, respectively, where hi is defined by (5.3). (d) is a half-wayresult of the evolution. The steady solution is the same as (c). These figures show the results after 200 iterations with temporal step-size 0.01.

respectively. Hence, we take f = (2H + c0)2 and f = H 2, h = 0. Fig 5 shows the evolution results, where (a) is an

initial approximation of the red blood cell, (b) is the evolution result, a circular biconcave discoid. Here, c0 is takento be 1.51/

√A/(4π), where A is the area of the surface (see Ou-Yang et al. (1999) for more details on the theory of

the shape of red blood cell). The second energy leads to Willmore surfaces. The ring type solution of the Willmoreequation satisfies R/r = √

2, where the ring is formed by rotating a circle of radius r along another circle of radiusR. Figure (c) shows an input ring with R/r = 20/7, (d) is the evolution result, where R/r = 1.419 ≈ √

2. Hence, thenumerical solution does approach the exact one.

Example 5.6. In physical settings such as phase transitions, epitaxial deposition and grain growth, the followinginterfacial free energy∫

M

(ψ0(n) + 1

2ε1‖∇n‖2 + 2ε2H

2)

dA

is considered (see (Gurtin and Jabbour, 2002)), where ψ0(n) is the interfacial free energy density, ‖∇n‖2 = ∇n:∇n,ε1, ε2 are constant scalar moduli with ε1 > 0 and 1

2ε1 + ε2 > 0 to ensure that the interfacial energy is positive-definite.This energy can be cast into our general framework with

f (H,K) = 2(ε1 + ε2)H2 − ε1K, h(x,n) = ψ0(n).

For the sake of giving another category of examples that are important in physical and chemical settings, wepoint out that a function f ∈ C1(Rn\{0}) is positively homogeneous of degree t (t ∈ R), if f (λx) = λtf (x) for allx ∈ R

n\{0} and positive real λ.

Example 5.7. If we take f (H,K) = 0, h(x,n) a positive homogeneous function of degree t , then we can write (3.4)as

nT ∇xh + 2hH(t − 1) + ∇x:[∇2xnh

] + ∇n:[∇2nnh

] = 0. (5.2)

Please cite this article in press as: G. Xu, Q. Zhang, A general framework for surface modeling using geometric partial differential equations,Computer Aided Geometric Design (2007), doi:10.1016/j.cagd.2007.06.002

Page 17: A general framework for surface modeling using geometric ...lsec.cc.ac.cn/~xuguo/papers/article_xuzhang07.pdf · approximations of curvatures and several geometric differential operators

ARTICLE IN PRESSJID:COMAID AID:1037 /FLA [m3SC+; v 1.73; Prn:2/07/2007; 16:33] P.17 (1-22)

G. Xu, Q. Zhang / Computer Aided Geometric Design ••• (••••) •••–••• 17

1 1

2 2

3 3

4 4

5 5

6 6

7 7

8 8

9 9

10 10

11 11

12 12

13 13

14 14

15 15

16 16

17 17

18 18

19 19

20 20

21 21

22 22

23 23

24 24

25 25

26 26

27 27

28 28

29 29

30 30

31 31

32 32

33 33

34 34

35 35

36 36

37 37

38 38

39 39

40 40

41 41

42 42

43 43

44 44

45 45

46 46

47 47

48 48

49 49

50 50

51 51

52 52

UN

CO

RR

EC

TED

PR

OO

FFig. 7. The input initial surface to be evolved is a triangulated sphere with radius 3. The vertices xi = (xi , yi , zi )T with |xi | < 1.5 are subject to

change by the geometric PDE. The other vertices are fixed. Figure (a) is the evolved result for H0 = 0. Hence it is a minimal surface. The otherfigures are the evolution results of this minimal surface for H0 = 1

3 − 120 , H0 = 1

3 and H0 = 13 + 1

20 , respectively. Since 13 is the mean curvature

of the input sphere, the exact sphere is recovered as shown in figure (c). These figures are the results after 400 iterations with temporal step-size0.01.

Fig. 8. The input initial surface to be evolved is a triangulated ring (as shown in Fig. 5(c)). Figures (a), (b), (c) and (d) are the evolved results fordifferent f and h = 0.

The left-hand side of (5.2) can be regarded as the definition of weighted mean curvature. Especially, if t = 1, Taylor(1992) named it as weighted mean curvature. But considering the first and third terms of the left-hand side of (5.2)relate to the position of the surface, the authors of (Clarenz, 2002; Zhang and Xu, 2005) took the last term, i.e.,∇n:[∇2

nnh] as the definition of weighted mean curvature. This generalized mean curvature has been applied in surfaceprocessing (Clarenz et al., 2003) and computer vision (Goldlücke and Magnor, 2004), see also Zhang and Xu (2005).In Fig 6, we present four examples to show the anisotropic effects by taking h = hi with

h1 =(

1

2n2

1 + n22 + 1

2n3

3

) 12

, h2 =(

1

2n2

1 + n22 + n3

3

) 12

,

h3 = (n4

1 + n42 + n4

3

) 14 , h4 = (

n41 + 4n4

2 + 4n43

) 14 .

(5.3)

The evolved surface is a triangulated sphere. Fig. 6 shows that h1, h2 and h3 alter the sphere into an ellipsoid, a diskand an octahedron, respectively. h4 also alters the sphere into an octahedron, but speed is anisotropic. Fig. 6(d) showsan intermediate result.

Example 5.8. Let f = 1, h = 23H0〈x,n〉, then the Euler–Lagrange equation (3.4) becomes H = H0. Obviously, a

surface with constant mean curvature H0 satisfies this equation. Fig. 7 shows four constructed constant mean curvaturesurfaces.

Remark 5.1. The graphical examples show that the second order flow can achieve G0 continuity. The fourth orderflow can achieve G1 continuity at the boundaries (see Figs. 2(b)–(f), Figs. 3(b)–(f) and Figs. 4(b)–(d), (f)–(h)). Forsurface processing and modeling, the fourth order flows derived from f = H 2, f = H 2 +K2 and f = (|k1|p +|k2|p)q

produce desirable shaped smooth surfaces.

Remark 5.2. Some flows related to Gaussian curvature do not smooth surface well in general. Fig. 8 exhibits the case,where an input ring is evolved. If f = H , wrinkle shaped bumpy is generated (see figure (a)). Note that f = H does notsatisfy the condition (3.20). Though f = K2 and f = H 2K2 satisfy condition (3.20), but figures (b) and (c) show thatthe result surfaces are still bumpy at the non-convex parts, even for a short period of time. For f = H 2 + K2, no such

Please cite this article in press as: G. Xu, Q. Zhang, A general framework for surface modeling using geometric partial differential equations,Computer Aided Geometric Design (2007), doi:10.1016/j.cagd.2007.06.002

Page 18: A general framework for surface modeling using geometric ...lsec.cc.ac.cn/~xuguo/papers/article_xuzhang07.pdf · approximations of curvatures and several geometric differential operators

ARTICLE IN PRESSJID:COMAID AID:1037 /FLA [m3SC+; v 1.73; Prn:2/07/2007; 16:33] P.18 (1-22)

18 G. Xu, Q. Zhang / Computer Aided Geometric Design ••• (••••) •••–•••

1 1

2 2

3 3

4 4

5 5

6 6

7 7

8 8

9 9

10 10

11 11

12 12

13 13

14 14

15 15

16 16

17 17

18 18

19 19

20 20

21 21

22 22

23 23

24 24

25 25

26 26

27 27

28 28

29 29

30 30

31 31

32 32

33 33

34 34

35 35

36 36

37 37

38 38

39 39

40 40

41 41

42 42

43 43

44 44

45 45

46 46

47 47

48 48

49 49

50 50

51 51

52 52

UN

CO

RR

EC

TED

PR

OO

FFig. 9. The input is the bunny model with noise added as shown in (a). We evolve the model using the geometric flows with different Lagrangefunctions f (H,K) and h(x,n) = 0. Figures (b)–(f) are the evolution results of the corresponding flows.

artifacts occur even though K2 is involved. Figure (d) shows a long-standing solution of the flow for f = H 2 + K2,and the obtained surface is smooth.

5.2. Surface smoothing and blending

In this subsection, we present two application examples. One is surface smoothing, the other is surface blending.For surface smoothing, we are given a noisy initial surface, and then use different PDEs to evolve the surface. Theaim is to see how well the different PDEs behave. Fig. 9 shows the smoothing results, where (a) is the input surfacemodel. (b)–(f) is the results for different f and h = 0. It is easy to see from these figures that f = 1, f = H 2 and

f =√

k21 + k2

2 yields more desirable smoothing results.For the blending problem, we are given a surface with some parts missing. We want to use different PDEs to

reconstruct the surface. The aim is to observe the smoothness at the blending boundary. Fig. 10 shows the blendingresults, where (a) is the input surface model to be blended. (b) shows the initial blending surface construction. (c)–(h)show the results for different f and h = 0. It could be observed that all the used fourth order flows yield smoothjoining bending surfaces at the boundaries.

5.3. Running times

We summarize in Table 1 the computation time needed by our examples. The algorithm was implemented in C++running on a Dell PC with a 3.0 GHz Intel CPU. The second column in Table 1 lists the number of unknowns.These numbers are counted as 3n0 (each vertex has x, y, z variables). Here n0 is the number of interior vertices. Thethird column is the temporal step-sizes used. The fourth column in the table is the time (in seconds) for forming the

Please cite this article in press as: G. Xu, Q. Zhang, A general framework for surface modeling using geometric partial differential equations,Computer Aided Geometric Design (2007), doi:10.1016/j.cagd.2007.06.002

Page 19: A general framework for surface modeling using geometric ...lsec.cc.ac.cn/~xuguo/papers/article_xuzhang07.pdf · approximations of curvatures and several geometric differential operators

ARTICLE IN PRESSJID:COMAID AID:1037 /FLA [m3SC+; v 1.73; Prn:2/07/2007; 16:33] P.19 (1-22)

G. Xu, Q. Zhang / Computer Aided Geometric Design ••• (••••) •••–••• 19

1 1

2 2

3 3

4 4

5 5

6 6

7 7

8 8

9 9

10 10

11 11

12 12

13 13

14 14

15 15

16 16

17 17

18 18

19 19

20 20

21 21

22 22

23 23

24 24

25 25

26 26

27 27

28 28

29 29

30 30

31 31

32 32

33 33

34 34

35 35

36 36

37 37

38 38

39 39

40 40

41 41

42 42

43 43

44 44

45 45

46 46

47 47

48 48

49 49

50 50

51 51

52 52

UN

CO

RR

EC

TED

PR

OO

F

Fig. 10. The input is four cylinders to be blended as shown in (a). The initial blending surface is shown in (b). We evolve the initial surface using thegeometric flows with different Lagrange functions f (H,K) and h(x,n) = 0. Figures (c)–(h) are the evolution results of the corresponding flows,where figure (c) is the result after 135 iterations with temporal step-size 0.01 and figures (d)–(h) show the results after 1000 iterations with temporalstep-size 0.00008.

Table 1First column: examples. Second column: the number of unknowns. Third column: the temporal step-size. Fourth column: the time in seconds forcomputing the coefficient matrix. Fifth column: the number of evolution steps. Last column: the time cost of one step for solving the linear systems.The algorithm was implemented in C++ running on a Dell PC with a 3.0 GHz Intel CPU

Examples # unknowns τ (k) Form matrix # steps Solving Time

Fig. 2(b) 3600 0.0001 0.01 1000 0.14(22)

Fig. 3(b) 2520 0.000045 0.01 500 0.11(20)

Fig. 4(b) 9120 0.00002 0.02 1000 0.34(19)

Fig. 5(b) 12294 0.00001 0.05 1000 0.42(20)

Fig. 6(a) 9600 0.01 0.04 200 0.40(20)

Fig. 7(b) 6528 0.01 0.02 400 0.22(20)

Fig. 8(b) 9600 0.0001 0.03 100 0.36(20)

Fig. 9(c) 89721 0.000001 0.49 5 5.36(26)

Fig. 10(d) 4410 0.00008 0.02 1000 0.15(20)

coefficient matrix (one time step). The fifth column is the number of evolution steps. The last column is the total timefor solving the linear systems. The linear systems are solved by GMRES iterative method. The threshold value ofcontrolling the iteration-stopping is taken to be 10−5, about the single word-length accuracy. Note that the coefficientmatrix of the resulting system is a unit one, if the temporal step-size is zero. Hence smaller temporal step-size leadsto fewer number of iterations in using GMRES method. To make the running times comparable for different sizeproblems, we need to select the temporal step-size so that the required numbers of GMRES iterations are about thesame (around 20). The numbers are presented in ( ) of the sixth column. In Table 1, we present only one case foreach of the nine figures. This is because the coefficient matrices of the linear systems are computed in the same wayfor the same surface model and different functions f or h, and the matrices have the same size and the same sparsity.But the iteration numbers of using GMRES method may be different.

6. Conclusions

We have presented a general framework for surface modeling using a general form geometric PDE. Starting witha general form integral

∫f (H,K) + ∫

h(x,n), we obtain the Euler–Lagrange equation and the geometric PDE. The

Please cite this article in press as: G. Xu, Q. Zhang, A general framework for surface modeling using geometric partial differential equations,Computer Aided Geometric Design (2007), doi:10.1016/j.cagd.2007.06.002

Page 20: A general framework for surface modeling using geometric ...lsec.cc.ac.cn/~xuguo/papers/article_xuzhang07.pdf · approximations of curvatures and several geometric differential operators

ARTICLE IN PRESSJID:COMAID AID:1037 /FLA [m3SC+; v 1.73; Prn:2/07/2007; 16:33] P.20 (1-22)

20 G. Xu, Q. Zhang / Computer Aided Geometric Design ••• (••••) •••–•••

1 1

2 2

3 3

4 4

5 5

6 6

7 7

8 8

9 9

10 10

11 11

12 12

13 13

14 14

15 15

16 16

17 17

18 18

19 19

20 20

21 21

22 22

23 23

24 24

25 25

26 26

27 27

28 28

29 29

30 30

31 31

32 32

33 33

34 34

35 35

36 36

37 37

38 38

39 39

40 40

41 41

42 42

43 43

44 44

45 45

46 46

47 47

48 48

49 49

50 50

51 51

52 52

UN

CO

RR

EC

TED

PR

OO

F

geometric PDE is general, which includes several known geometric PDEs as its special cases, but is discretized undera uniform framework. The proposed approach is easy to implement, requiring only the discretizations of LBO and �operator in the form of (4.1) and evaluating subroutines for computing f , fH , fK , h, ∇xh, ∇nh, ∇2

nxh and ∇2nnh. The

proposed algorithm can be used to simulate the behaviors of various geometric PDEs, such as mean curvature flow,weighted mean curvature flow, Willmore flow, biologic vesicle equations and the equations in chemical and physicalsettings. The implementation shows that the proposed approach is efficient and works well.

Appendix A. Sketch proofs to theorems in Section 2

To prove the theorems in Section 2, the following lemma is required. This lemma can be proved easily using thedefinitions of the related differential operators and the product rule for differentiation.

Lemma 6.1. For any function f ∈ C2(M) and three-dimensional vector-valued functions f,h ∈ C2(M)3, we have

div(∇f h) = 〈�f,h〉 + ∇f:∇h, (A.1)

div[f ∇h] = f �h + [∇h]T ∇f, (A.2)

�(f h) = �f h + 2[∇h]T ∇f + f �h, (A.3)

div(�f h) = 〈�f,h〉 + ∇f:�h = 〈�f,h〉 + ∇h:�f, (A.4)

div[f �h] = f �h + [�h]T ∇f = f �h + [∇h]T �f. (A.5)

�(f h) = �f h + 2[�h]T ∇f + f �h = �f h + 2[∇h]T �f + f �h. (A.6)

Proof of Theorem 2.1. Proving (2.19) is equivalent to verifying

〈�x,n〉 = 2H, (A.7)

〈�x,xu〉 = 0, (A.8)

〈�x,xv〉 = 0, (A.9)

since {xu,xv,n} constitutes one frame of surface M. In view of (A.1), we have

〈�x,n〉 = div(∇xn) − ∇x:∇n = −tr[[xu,xv][gαβ ][−S][xu,xv]T

] = tr[S] = 2H,

and

div(xu) = div(∇xxu) = 〈�x,xu〉 + ∇x:∇xu.

Furthermore, we can calculate that

div(xu) = 1√g

[∂

∂u,

∂v

][1√g

[g22 −g12

−g12 g11

][g11

g12

]]= 1√

g

∂(√

g )

∂u= gu

2g,

∇x:∇xu = tr[[xu,xv][gαβ ][xuu,xuv]T

] = tr

[[gαβ ]

[ 〈xuu,xu〉 〈xuu,xv〉〈xuv,xu〉 〈xuv,xv〉

]]= gu

2g.

Thus (A.8) is proved. Similar proof to (A.9) can be carried out.To prove (2.20), we notice that

∇n = −[xu,xv][gαβ ]S[xu,xv]T= −[xu,xv]

[(2H)gαβ + Kbαβ

][xu,xv]T = −2H∇x + �x, (A.10)

where the second equality is true because of the following equality

2H [gαβ ] − [gαβ ]S − K[bαβ ] = 0.

Therefore from (2.17),

�n = div[∇n] = div[−2H∇x + �x] = −2∇H − 2H�x + �x,

Please cite this article in press as: G. Xu, Q. Zhang, A general framework for surface modeling using geometric partial differential equations,Computer Aided Geometric Design (2007), doi:10.1016/j.cagd.2007.06.002

Page 21: A general framework for surface modeling using geometric ...lsec.cc.ac.cn/~xuguo/papers/article_xuzhang07.pdf · approximations of curvatures and several geometric differential operators

ARTICLE IN PRESSJID:COMAID AID:1037 /FLA [m3SC+; v 1.73; Prn:2/07/2007; 16:33] P.21 (1-22)

G. Xu, Q. Zhang / Computer Aided Geometric Design ••• (••••) •••–••• 21

1 1

2 2

3 3

4 4

5 5

6 6

7 7

8 8

9 9

10 10

11 11

12 12

13 13

14 14

15 15

16 16

17 17

18 18

19 19

20 20

21 21

22 22

23 23

24 24

25 25

26 26

27 27

28 28

29 29

30 30

31 31

32 32

33 33

34 34

35 35

36 36

37 37

38 38

39 39

40 40

41 41

42 42

43 43

44 44

45 45

46 46

47 47

48 48

49 49

50 50

51 51

52 52

UN

CO

RR

EC

TED

PR

OO

F

where the last equality is held because of (A.2), (2.18) and the symmetry property (2.3) of ∇x. Thus the correctnessof (2.20) yields the completion of the proof. �Proof of Theorem 2.2. In analogy with the proof of Theorem 2.1, we can calculate, without too much difficulty, thefollowing equalities

〈�x,n〉 = −∇x:�n = tr[K[bαβ ]S[gαβ ]] = 2K,

〈�x,xu〉 = 0,

〈�x,xv〉 = 0,

with the help of (A.4) and Mainardi–Codazzi equations (do Carmo, 1976, p. 235), whence (2.21) is valid. From (2.18),(2.5) and (A.5), we obtain

�n = div[�n] = −∇K − K�x.

Furthermore, taking (2.19) and (2.21) into account, the last equality of (2.22) can be proved. Thus we complete thisproof. �Proof of Theorem 2.3. (2.23) can be proved with a straightforward calculation without any difficulty from the defin-ition of operator div. (2.24) is (A.2) in Lemma 6.1. We can prove (2.25) by virtue of (A.4) and (A.10). �References

Andrews, B., 1994. Contraction of convex hypersurface in Euclidean space. Calc. Var. 2, 151–171.Bajaj, C.L., Xu, G., 2003. Anisotropic diffusion of surface and functions on surfaces. ACM Trans. Graph. 22 (1), 4–32.Bloor, M.I.G., Wilson, M.J., 1989a. Generating blend surfaces using partial differential equations. Computer-Aided Design 21 (3), 165–171.Bloor, M.I.G., Wilson, M.J., 1989b. Generating N-sided patches with partial differential equations. In: Advances in Computer Graphics. Springer,

Berlin, pp. 129–145.Bloor, M.I.G., Wilson, M.J., 1990. Using partial differential equations to generate free-form surfaces. Computer-Aided Design 22 (4), 221–234.Caselles, V., Kimmel, R., Sapiro, G., Sbert, C., 1997. Minimal surfaces based object segmentation. IEEE Trans. Pattern Anal. Mach. Intell. 19,

394–398.Clarenz, U., 2002. Enclosure theorems for extremals of elliptic parametric functionals. Calc. Var. 15, 313–324.Clarenz, U., Diewald, U., Dziuk, G., Rumpf, M., Rusu, R., 2004. A finite element method for surface restoration with boundary conditions.

Computer Aided Geom. Design 21 (5), 427–445.Clarenz, U., Diewald, U., Rumpf, M., 2000. Anisotropic geometric diffusion in surface processing. In: Proceedings of Viz2000, IEEE Visualization,

Salt Lake City, Utah, 2000, pp. 397–405.Clarenz, U., Dziuk, G., Rumpf, M., 2003. On generalized mean curvature flow in surface processing. In: Karcher, H., Hildebrandt, S. (Eds.),

Geometric Analysis and Nonlinear Partial Differential Equations. Springer, Berlin, pp. 217–248.Deckelnick, K., Dziuk, G., 2002. A fully discrete numerical scheme for weighted mean curvature flow. Numer. Math. 91, 423–452.Desbrun, M., Meyer, M., Schröder, P., Barr, A.H., 1999. Implicit fairing of irregular meshes using diffusion and curvature flow. In: SIGGRAPH99,

Los Angeles, USA, pp. 317–324.Dierkes, U., Hildebrandt, S., Küster, A., Wohlrab, O., 1992. Minimal Surfaces I (Boundary Value Problems), II (Boundary Regularity). Grundlehren

der mathematischen Wissenschaften, vol. 295–296. Springer, Berlin.do Carmo, M.P., 1976. Differential Geometry of Curves and Surfaces. Prentice-Hall, Englewood Cliffs, NJ.do Carmo, M.P., 1992. Riemannian Geometry. Birkhäuser, Boston, Basel, Berlin.Du, H., Qin, H., 2000. Direct manipulation and interactive sculpting of PDE surfaces. Comput. Graph. Forum 19 (3), 261–270.Du, H., Qin, H., 2005. Dynamic PDE-based surface design using geometric and physical constraint. Graphical Models 67 (1), 43–71.Fife, P.C., 1991. Seminar Notes on Curve Shortening. University of Utah, Salt Lake City, UT.Giaquinta, M., Hildebrandt, S., 1996. Calculus of Variations, vol. I. A Series of Comprehensive Studies in Mathematics, vol. 310. Springer, Berlin.Goldlücke, B., Magnor, M., 2004. Weighted minimal hypersurfaces and their applications in computer vision. In Proc. European Conference on

Computer Vision (ECCV’04), Prague, Czech Republic, vol. 2, pp. 366–378.Gurtin, M.E., Jabbour, M.E., 2002. Interface evolution in three-dimensions with curvature-dependent energy and surface diffusion: Interface-

controlled evolution, phase transitions, epitaxial growth of elastic films. Arch. Rat. Mech. Anal. 163, 171–208.Langer, T., Belyaev, A.G., Seidel, H., 2005. Analysis and design of discrete normals and curvatures. MPI-I-2005-4-003, Max-Planck-Institute for

Informatik.Lowe, T., Bloor, M., Wilson, M., 1990. Functionality in blend design. Computer-Aided Design 22 (10), 655–665.Meek, D., Walton, D., 2000. On surface normal and Gaussian curvature approximations given data sampled from a smooth surface. Comput. Aided

Geom. Design 17, 521–543.

Please cite this article in press as: G. Xu, Q. Zhang, A general framework for surface modeling using geometric partial differential equations,Computer Aided Geometric Design (2007), doi:10.1016/j.cagd.2007.06.002

Administrator
删划线
Administrator
插入号
holds
Page 22: A general framework for surface modeling using geometric ...lsec.cc.ac.cn/~xuguo/papers/article_xuzhang07.pdf · approximations of curvatures and several geometric differential operators

ARTICLE IN PRESSJID:COMAID AID:1037 /FLA [m3SC+; v 1.73; Prn:2/07/2007; 16:33] P.22 (1-22)

22 G. Xu, Q. Zhang / Computer Aided Geometric Design ••• (••••) •••–•••

1 1

2 2

3 3

4 4

5 5

6 6

7 7

8 8

9 9

10 10

11 11

12 12

13 13

14 14

15 15

16 16

17 17

18 18

19 19

20 20

21 21

22 22

23 23

24 24

25 25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

TED

PR

OO

F

Meyer, M., Desbrun, M., Schröder, P., Barr, A., 2002. Discrete differential-geometry operators for triangulated 2-manifolds. In: Proceedings ofVisual Mathematics’02, Berlin, Germany.

Mumford, D., Shah, J., 1989. Optimal approximation by piecewise smooth functions and associated variational problems. Comm. Pure Appl.Math. 42, 577–685.

Nitsche, J.C.C., 1989. Lectures on Minimal Surfaces, vol. 1. Cambridge University Press, Cambridge.Ohtake, Y., Belyaev, A.G., Bogaevski, I.A., 2000. Polyhedral surface smoothing with simultaneous mesh regularization. In: Geometric Modeling

and Processing Proceedings, pp. 229–237.Ou-Yang, Z., Liu, J., Xie, Y., 1999. Geometric Methods in the Elastic Theory of Membranes in Liquid Crystal Phases. World Scientific, Singapore.Saad, Y., 2000. Iterative Methods for Sparse Linear Systems. Second edition with corrections.Schneider, R., Kobbelt, L., 2000. Geometric fair meshes with G1 boundary conditions. In: Geometric Modeling and Processing, Hongkong, China,

pp. 251–261.Schneider, R., Kobbelt, L., 2001. Geometric fairing of irregular meshes for free-form surface design. Comput. Aided Geom. Design 18 (4), 359–

379.Taylor, J.E., 1992. Mean curvature and weighted mean curvature. Acta Metall. Mater. 40 (7), 1475–1485.Tso, K., 1985. Deforming a hypersurface by its Gauss–Kronecker curvature. Comm. Pure Appl. Math. 38, 867–882.Ugail, H., Bloor, M., Wilson, M., 1999. Techniques for interactive design using the PDE method. ACM Trans. Graph. 18 (2), 195–212.Willmore, T.J., 1993. Riemannian Geometry. Clarendon Press, Oxford.Xu, G., 2004. Discrete Laplace–Beltrami operators and their convergence. Comput. Aided Geom. Design 21 (8), 767–784.Xu, G., 2006. Convergence analysis of a discretization scheme for Gaussian curvature over triangular surfaces. Comput. Aided Geom. Design 23

(2), 193–207.Xu, G., 2007. Consistent approximation of some geometric differential operators. Research Report No. ICM-07-02, Institute of Computational

Mathematics, Chinese Academy of Sciences, http://icmsec.cc.ac.cn/research_report.html.Xu, G., Pan, Q., Bajaj, C.L., 2006. Discrete surface modelling using partial differential equations. Compu. Aided Geom. Design 23 (2), 125–145.Xu, G., Pan, Q., 2006. G1 surface modelling using fourth order geometric flows. Computer-Aided Design 38 (4), 392–403.Yoshizawa, S., Belyaev, A.G., 2002. Fair triangle mesh generation with discrete elastica. In: Geometric Modeling and Processing, Saitama, Japan,

pp. 119–123.Zhang, Q., Xu, G., 2005. Weighted minimal surfaces and discrete weighted minimal surfaces. J. Info. Comp. Scien. 2 (2), 395–408.Zhang, Q., Xu, G., 2007. Several couples of differential operators and their applications in variational calculus for a third or-

der geometric energy. Research Report No. ICM-07-05, Institute of Computational Mathematics, Chinese Academy of Sciences,http://icmsec.cc.ac.cn/research_report.html.

UN

CO

RR

EC

Please cite this article in press as: G. Xu, Q. Zhang, A general framework for surface modeling using geometric partial differential equations,Computer Aided Geometric Design (2007), doi:10.1016/j.cagd.2007.06.002

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52