variational surface reconstruction based on delaunay ...frey/papers/meshing/wan m., variatio… ·...

24
INTERNATIONAL JOURNAL FOR NUMERICAL METHODS IN ENGINEERING Int. J. Numer. Meth. Engng 2011; 85:206–229 Published online 1 July 2010 in Wiley Online Library (wileyonlinelibrary.com). DOI: 10.1002/nme.2965 Variational surface reconstruction based on Delaunay triangulation and graph cut Min Wan, Yu Wang and Desheng Wang , Division of Mathematical Sciences, School of Physical and Mathematical Sciences, Nanyang Technological University, Singapore 637371, Singapore SUMMARY A novel method for surface reconstruction from an unorganized point set is presented. An energy functional based on a weighted minimal surface model is proposed for surface reconstruction, which is efficiently minimized by graph cut methods. By solving the minimization problem on the graph dual to a Delaunay- based tetrahedral mesh, the advantages of explicit and implicit methods for surface reconstruction are well integrated. A triangular surface mesh homeomorphic to the original surface can be extracted directly from the tetrahedral mesh provided a sufficient sampling density exists. Difficult cases involving undersampling, non-uniformity, noises and topological complexities can be handled effectively as well. Furthermore, for the first time, multi-phase surface reconstruction is realized based on the graph cut methods. Various examples are included for demonstrating the efficiency and effectiveness of the proposed method. Copyright 2010 John Wiley & Sons, Ltd. Received 3 December 2009; Revised 18 April 2010; Accepted 25 May 2010 KEY WORDS: surface reconstruction; reverse engineering; Delaunay triangulation; graph cut; multi-phase 1. INTRODUCTION Reconstruction of a surface from a given unorganized point set is an important yet challenging problem in computer graphics. As the first step of creating computer graphics, surface recon- struction plays a significant role in converting discrete scanned data to a continuous surface model. In real applications, however, it is inevitable to encounter difficulties such as non-uniform sampling, incomplete scanning, noises as well as complicated geometry and topologies, which often make reconstruction problems ill-posed. To address these issues, extensive researches have been conducted and various methods have been proposed, most of which can be categorized into two groups: explicit methods [1–13], and implicit methods [14–18]. In view of these existing methods, some are only dedicated to special applications; some are not efficient enough, and some involve complicated postprocessing. Therefore, a robust and efficient reconstruction method which can incorporate most advantages of explicit and implicit methods and takes all aforementioned difficulties into account, is of much necessity and will be the objective of this paper. Most explicit methods are based on Voronoi diagrams and dual Delaunay triangulations. One advantage of these Delaunay-based approaches is that given a sufficient sampling density, i.e. -sampling [2], the restricted Delaunay triangulation of data set points is homeomorphic to the original surface [4], which suggests a sound approximation of the original surface. Another Correspondence to: Desheng Wang, Division of Mathematical Sciences, School of Physical and Mathematical Sciences, Nanyang Technological University, Singapore 637371, Singapore. E-mail: [email protected] Copyright 2010 John Wiley & Sons, Ltd.

Upload: others

Post on 22-Jul-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Variational surface reconstruction based on Delaunay ...frey/papers/meshing/Wan M., Variatio… · representations such as level set are applied. The main idea is to represent surface

INTERNATIONAL JOURNAL FOR NUMERICAL METHODS IN ENGINEERINGInt. J. Numer. Meth. Engng 2011; 85:206–229Published online 1 July 2010 in Wiley Online Library (wileyonlinelibrary.com). DOI: 10.1002/nme.2965

Variational surface reconstruction based on Delaunay triangulationand graph cut

Min Wan, Yu Wang and Desheng Wang∗,†

Division of Mathematical Sciences, School of Physical and Mathematical Sciences, Nanyang TechnologicalUniversity, Singapore 637371, Singapore

SUMMARY

A novel method for surface reconstruction from an unorganized point set is presented. An energy functionalbased on a weighted minimal surface model is proposed for surface reconstruction, which is efficientlyminimized by graph cut methods. By solving the minimization problem on the graph dual to a Delaunay-based tetrahedral mesh, the advantages of explicit and implicit methods for surface reconstruction are wellintegrated. A triangular surface mesh homeomorphic to the original surface can be extracted directly fromthe tetrahedral mesh provided a sufficient sampling density exists. Difficult cases involving undersampling,non-uniformity, noises and topological complexities can be handled effectively as well. Furthermore, for thefirst time, multi-phase surface reconstruction is realized based on the graph cut methods. Various examplesare included for demonstrating the efficiency and effectiveness of the proposed method. Copyright � 2010John Wiley & Sons, Ltd.

Received 3 December 2009; Revised 18 April 2010; Accepted 25 May 2010

KEY WORDS: surface reconstruction; reverse engineering; Delaunay triangulation; graph cut; multi-phase

1. INTRODUCTION

Reconstruction of a surface from a given unorganized point set is an important yet challengingproblem in computer graphics. As the first step of creating computer graphics, surface recon-struction plays a significant role in converting discrete scanned data to a continuous surfacemodel. In real applications, however, it is inevitable to encounter difficulties such as non-uniformsampling, incomplete scanning, noises as well as complicated geometry and topologies, whichoften make reconstruction problems ill-posed. To address these issues, extensive researches havebeen conducted and various methods have been proposed, most of which can be categorized intotwo groups: explicit methods [1–13], and implicit methods [14–18]. In view of these existingmethods, some are only dedicated to special applications; some are not efficient enough, and someinvolve complicated postprocessing. Therefore, a robust and efficient reconstruction method whichcan incorporate most advantages of explicit and implicit methods and takes all aforementioneddifficulties into account, is of much necessity and will be the objective of this paper.

Most explicit methods are based on Voronoi diagrams and dual Delaunay triangulations.One advantage of these Delaunay-based approaches is that given a sufficient sampling density,i.e. �-sampling [2], the restricted Delaunay triangulation of data set points is homeomorphic tothe original surface [4], which suggests a sound approximation of the original surface. Another

∗Correspondence to: Desheng Wang, Division of Mathematical Sciences, School of Physical and MathematicalSciences, Nanyang Technological University, Singapore 637371, Singapore.

†E-mail: [email protected]

Copyright � 2010 John Wiley & Sons, Ltd.

Page 2: Variational surface reconstruction based on Delaunay ...frey/papers/meshing/Wan M., Variatio… · representations such as level set are applied. The main idea is to represent surface

VARIATIONAL SURFACE RECONSTRUCTION 207

advantage is that the resulting homeomorphic sub-complex, i.e. the restricted Delaunay triangula-tion, has a structure of triangular surface mesh, which is preferred in many applications due to itssimplicity, its efficiency to approximate the original surface, and its convenience as the boundaryinput for further volumetric mesh generation or other processing [19–24]. The Alpha Shape[1], the CRUST algorithm [2] and the COCONE algorithm [7] are good examples of explicitDelaunay-based methods. However, undersampling, non-uniformity, and noises introduced duringthe data acquisition stage are likely to destroy the desirable homeomorphic sub-complex, hencemake reconstruction problems ill-posed and cause various difficulties. Scanning insufficiencyaside, complicated topologies of multi-phases are challenges for the explicit methods.

Considering difficulties faced by explicit methods, researchers turned to variational implicitmethods in the last decade. Variational methods regularize the ill-posedness and eliminate theheuristics which is more or less required in the explicit methods. By utilizing implicit surfacerepresentation such as level set terminology, some implicit methods [14–17] were proposed tohandle one or several difficulties mentioned above. Since [18], the weighted minimal surface modelhas proven to be a useful framework in various reconstruction problems. In this study, a generalizedweighted minimal surface model is proposed of which both the original model in [18] and the onein [25] turn out to be special cases. More details of this model will be given in Section 3.

Although implicit methods have several advantages over explicit ones, it would be even moreideal that the merits of both the kinds of approaches can be exploited. For example, triangularsurface meshes preferred by most applications cannot be extracted in implicit methods as easilyas explicit methods. Besides, the nice ‘�-sampling-homeomorphic’ theoretic guarantee has seldombeen exploited by the implicit methods. Therefore, in this study the proposed variational model isminimized on a Delaunay-based tetrahedral mesh instead of a regular grid like [18, 25]. As all datapoints have been inserted into the background mesh in a Delaunay way, the homeomorphic surfacepursued by [1–7] exists given a sufficient sample and a proper mesh. Even though the homeo-morphic surface may not exist due to the impairment of noises or undersampling, the Delaunaytriangulation could still provide a ‘partial homeomorphic’ sub-complex. For the sufficiently sampledpart, the corresponding surface patches are still homeomorphic; for the part suffering from noisesor undersampling, the variational model can obtain a reasonable result though without the home-omorphic guarantee. By in turn solving the minimization problem, the uncertainties caused bynoises or undersampling are eliminated and complicated topologies can be handled as well. Themerits of explicit and implicit methods are therefore beautifully integrated into one method.

Regarding the minimization problem, one approach is to solve the Euler–Lagrange equation ofthe energy functional by gradient descent as in [18]. However, in this paper, the graph cut technique[26] is used to solve the minimization problem. Compared with the iterative gradient descentapproach, the graph cut algorithm, with polynomial complexity, provides a much faster solver. Since[27], the graph cut has been widely applied in low computer vision and graphics problems. Severalgraph-based works have been accomplished in surface reconstruction [25, 28–32]. Many efficientmin-cut/max-flow algorithms were developed during the study of combinatorial optimization.Especially, the algorithm in [33] has empirically a good performance on grids and proves efficienton the graphs dual to Delaunay tetrahedral meshes in this study as well.

Furthermore, the proposed reconstruction method is extended from two-phase to multi-phaseproblems, which arise in numerous applications such as CAD, medical imaging and animation.The energy functional in this paper can model multi-phase problems as well, but the correspondingmin-cut/max-flow problems become multi-way cut ones, which have been challenges since thewide application of graph cut [33–35]. Our method adapts the multi-layer idea in [36], whichtranslates the original multi-way cut problem to a binary cut in a new multi-layer graph. Withregion growing algorithms, both the multi-phase and two-phase cases can be solved in an automaticand unified way. To the best of our knowledge, this is the first time that the multi-phase surfacereconstruction problem is solved by the graph cut technique.

The remainder of this paper is organized as follows. In Section 2 the weighted minimal surfacemodel in [18] is reviewed and the level set approach is given for comparison. In Section 3, ageneralized weighted minimal surface model is proposed and the graph cut approach is presented.

Copyright � 2010 John Wiley & Sons, Ltd. Int. J. Numer. Meth. Engng 2011; 85:206–229DOI: 10.1002/nme

Page 3: Variational surface reconstruction based on Delaunay ...frey/papers/meshing/Wan M., Variatio… · representations such as level set are applied. The main idea is to represent surface

208 M. WAN, Y. WANG AND D. WANG

One simple example illustrates the main stages. In Section 4, the proposed method is extendedfrom two-phase to multi-phase problems. The method in [36] is adapted to generate a higher-dimensional graph, from which a hyper-surface is obtained and then translated to several surfacesin original dimensions. In Section 5, some interesting and challenging examples are provided.Section 6 concludes this paper.

2. WEIGHTED MINIMAL SURFACE MODEL AND LEVEL SET APPROACH

By applying implicit surface representation, the weighted minimal surface model in [18] can handlecomplicated topologies easily. A brief introduction of the level set approach utilized in [18] willbe given in this section.

Let S be a data set, which contains points, curves and patches of surfaces. Define the distancefunction from a point x to S as d(x)=d(x, S)= infy∈S dist(x, y), where dist(x, y) is the Euclideandistance between points x and y. The weighted minimal surface model defines a surface energyfunctional:

E(�)=[∫

�d p(x)ds

]1/p

, 1�p�∞, (1)

where � is an arbitrary surface and ds is the surface area. If p<∞, E(�) is based on an integralon surface area weighted by a certain power of the distance function. That is the reason why thismodel is called the weighted minimal surface model. When p=∞, E(�) becomes the Hausdorffdistance between � and S:

limp→∞ E(�)= sup

x∈�infy∈S

d(x, y). (2)

To find a local minimizer of E(�), the gradient flow of the energy functional E(�) is obtained,

d�

dt=−

[∫�

d p(x)ds

]1/p−1

d p−1(x)

[∇d(x) · N + 1

pd(x)�

]N , (3)

and the corresponding Euler–Lagrange equation is as follows:

d p−1(x)

[∇d(x) · N + 1

pd(x)�

]=0, (4)

where N is the unit normal and � is the mean curvature.Since the Euler–Lagrange Equation (4) and the gradient flow (3) involves surface-related

geometric properties, a consistent global parametrization of surface is required in the explicit repre-sentations, which is very difficult for complex topologies and evolving surfaces. Instead, implicitrepresentations such as level set are applied. The main idea is to represent surface by a certainlevel set of a scalar function, usually the zero level set.

In an Rd space X , define a level set function �(x), by which we can represent a co-dimensionone surface as, �={x :�(x)=0}. Geometric properties such as, unit normal N and mean curvature� can be calculated in the level set formulation as follows.

Area(�) =∫

�ds =

∫X

|∇ H (�)|dx =∫

X�(�)|∇�|dx, (5)

N = ∇�

|∇�| , �=∇ ·( ∇�

|∇�|)

. (6)

Similar to the surface area, the energy functional in (5) can be translated as follows,∫�

d p(x)ds =∫

Xd p(x)�(�(x))|∇�|dx . (7)

Copyright � 2010 John Wiley & Sons, Ltd. Int. J. Numer. Meth. Engng 2011; 85:206–229DOI: 10.1002/nme

Page 4: Variational surface reconstruction based on Delaunay ...frey/papers/meshing/Wan M., Variatio… · representations such as level set are applied. The main idea is to represent surface

VARIATIONAL SURFACE RECONSTRUCTION 209

Since �(t)={x :�(x, t)=0}, by differentiating both the sides of this equation with respect to t , wecan obtain,

d�(�(t), t)

dt= ��

�t+ d�(t)

dt·∇�=0. (8)

Substituting d�(t)/dt into (8) by (3),

��

�t=−d�(t)

dt·∇�= 1

p|∇�|

[∫d p(x)�(�)|∇�|dx

](1/p)−1

∇ ·[

d p(x)∇�

|∇�|]. (9)

Thus, the level set formulation translates the partial differential equation of � to that of �, ascalar function defined on the entire domain X . The standard finite difference method can be usedto discretize Equation (9) on regular grids [18]. In this paper, the graph cut technique is insteadapplied to minimize a modified version of the above energy functional, which will be discussedin the following section.

3. RECONSTRUCTION BASED ON DELAUNAY TRIANGULATION ANDTHE GRAPH CUT

During the last decade, many researchers and works paid much attention to the weighted minimalsurface model, based on which we propose our variational model. In the proposed model, aregularization term concerning the surface area is added. Moreover, an indicator function as wellas a confidence function is introduced to make the model more flexible and efficient. The graph cuttechnique is used to minimize the energy functional. Equivalence between the minimal cut and theenergy minimization can be verified by the conclusion of [26]. In this section, the variational modelis presented with a detailed explanation. Then, the process of graph construction is discussed.Finally, the whole algorithm is presented with details.

3.1. The variational model

Let S, �, � and d(x) be the same as in Section 2. The following cost energy is proposed forsurface reconstruction,

E(�)=∫

�|��(x)− I (x)|�(x)dx +

∫�

d(x)ds+�∫

�ds, (10)

where ��(x) is the level set function induced by the surface �, I (x) the indicator function, �(x) theconfidence function and � the regularization coefficient. The discussions throughout this sectionare based on two-phase cases though similar arguments are valid for multi-phase cases.

Instead of using unsigned distance function in [18], a piecewise constant level set function ��(x)is used

��(x)={

1 if x inside �

2 if x outside �,(11)

which is more suitable for graph representing, and hence the surface is now represented as discon-tinuities of the function rather than the zero level set. In addition, the level values such as 1 and 2can be arbitrarily selected as long as they are consistent with the indicator values.

The crust region around S is defined as

Crust={x :d(x, S)�dth}, (12)

where dth defines the thickness of the crust region. In Crust , a priori topology information isunreliable due to the influences of noises. The building of the crust takes account of the noise level:the higher the noise level is, the larger dth is taken, which means a wider vicinity of the data set is

Copyright � 2010 John Wiley & Sons, Ltd. Int. J. Numer. Meth. Engng 2011; 85:206–229DOI: 10.1002/nme

Page 5: Variational surface reconstruction based on Delaunay ...frey/papers/meshing/Wan M., Variatio… · representations such as level set are applied. The main idea is to represent surface

210 M. WAN, Y. WANG AND D. WANG

included in the thicker crust. The watertight crust separates � into two disconnected sub-domains,the interior and the exterior. The indicator function is used to identify these sub-domains.

I (x)=

⎧⎪⎨⎪⎩

1 if x in the interior

2 if x in the exterior

0 if x is in the Crust.

(13)

The indicator function serves as an initial estimation of level set function or a priori knowledgeof the topology information, which can be identified interactively or accomplished automaticallyby the region growing algorithm as in this paper.

The confidence function suggests the extent to which this initial estimation is faithful. Thefollowing confidence function is used in this study

�(x)={

c x ∈Crustc

0 x ∈Crust,(14)

where c is a relatively large constant.Actually, since the confidence decreases down to zero in the crust region and the first term

contributes nothing to (10), any indicator value is acceptable and zero is taken in this example. Itis worth mentioning that the functional used in [31] is similar to (10) but without the first termwhich means it cannot be solved by the graph cut method directly since its global minimizerscorrespond to isolated data set points which are trivial for surface reconstruction. Thus, in theirwork a narrow-band implementation is applied which is equivalent to taking the I (x) and �(x) in(10) as (13) and (14). In other words, the functional (10) is more general and flexible, and properchoices of I (x) and �(x) not only guarantee a meaningful global minimizer but also improve theefficiency of the max-flow/min-cut algorithm.

3.2. Mesh and discretization

In this study, an unstructured tetrahedral mesh is used instead of structured grid to solve theminimization problem. Generally speaking, a three-dimensional tetrahedral mesh Th consists oftetrahedra {Ki }N

i=1, the intersection of any two of which is either empty set or a lower dimensionalface, i.e. triangle, edge and vertex [37]. A proper sized mesh reasonably discretizes the domain aswell as any energy function defined on the domain. In this subsection, a brief introduction of thediscrete versions of most definitions in Section 3.1 is given.

The surface reconstruction problem can be thought of as a segmentation problem. Once thedomain is segmented into two partitions, the surface can be easily represented by the interface of twopartitions. When the domain is discretized as tetrahedra {Ki }N

i=1 by the mesh Th , the segmentationproblem is equivalent to labeling all tetrahedra: L(Ki )= li , li ∈{1,2}. As a consequence, the surface,the interface of two partitions, is approximated by the union of those triangle faces shared bytetrahedra of different labels: �h =⋃

li �=l j(Ki ∩K j ). The crust region notation is also modified

to the union of the tetrahedra in a vicinity of S. Normally the n-ring neighborhood of S is agood choice for the crust region. All the functions involved in the E(�) can also be modified forthe mesh framework. Generally, the domain of those discrete functions is {Ki }N

i=1 instead of �for the continuous functions. Take the level set function as an example, the continuous function�� :�→{1,2}, while the discrete function ��h

:{Ki }Ni=1 →{1,2}.

��h(Ki )=

{1 if Ki inside �h

2 if Ki outside �h,(15)

which is equivalent to the labeling function L(Ki )= li . In the remainder of this paper, we refer��h

(Ki ) and li to the same thing.

Copyright � 2010 John Wiley & Sons, Ltd. Int. J. Numer. Meth. Engng 2011; 85:206–229DOI: 10.1002/nme

Page 6: Variational surface reconstruction based on Delaunay ...frey/papers/meshing/Wan M., Variatio… · representations such as level set are applied. The main idea is to represent surface

VARIATIONAL SURFACE RECONSTRUCTION 211

Similarly, the crust region separates the tetrahedra {Ki }Ni=1 into two sub-domains, i.e. interior

and exterior. In addition, the modified indicator function and confidence functions are as follows.

I (Ki ) =

⎧⎪⎨⎪⎩

1 if Ki in the interior

2 if Ki in the exterior

0 if Ki is in the Crust.

(16)

�(Ki ) ={

c Ki ∈Crustc

0 Ki ∈Crust.(17)

Hence, the energy functional proposed in (10) can be approximated as follows:

E(�) =∫

�|��(x)− I (x)|�(x)dx +

∫�

d(x)ds+�∫

�ds

≈N∑

i=1|��h

(Ki )− I (Ki )|�(Ki )+∑

i< j,li �=l j

∫Ki ∩K j

(d(x)+�)ds

≈N∑

i=1|li − I (Ki )|�(Ki )+

∑i< j,li �=l j

(dij +�)Sij

=N∑

i=1|li − I (Ki )|�(Ki )+

∑i< j

(dij +�)Sij1{li �=l j }

= Eh(�h), (18)

where

dij =

⎧⎪⎪⎨⎪⎪⎩

∫Ki ∩K j

d(x)ds∫Ki ∩K j

dsif Ki ∩K j �=∅

0 others

, Sij =∫

Ki ∩K j

ds. (19)

A concrete example is given to illustrate the discretiztion of a tetrahedral mesh. Data pointsin Figure 1(a) are sampled from a sphere surface and mesh points are generated around the datapoints. A proper tetrahedral mesh is generated on the union of data points and mesh points, a cutview of which is shown in Figure 1(b). The crust region separates all tetrahedra into two partitions,labeled by different colors.

Figure 1. An illustration of the tetrahedral mesh and the crust around the data set. (a) Data points andmesh points; and (b) A cut view with crust.

Copyright � 2010 John Wiley & Sons, Ltd. Int. J. Numer. Meth. Engng 2011; 85:206–229DOI: 10.1002/nme

Page 7: Variational surface reconstruction based on Delaunay ...frey/papers/meshing/Wan M., Variatio… · representations such as level set are applied. The main idea is to represent surface

212 M. WAN, Y. WANG AND D. WANG

(a)

(b)

Figure 2. Illustration of graph construction.

Table I. Primal–dual relationship.

Primal mesh Th Dual graph G

Tetrahedron Ki Node xiTriangle Fij = Ki ∩K j Edge eij = (xi , x j )��h

(Ki )= li , li ∈{1,2} L(xi )= li , li ∈{1,2}�h =⋃

li �=l j(Ki ∩K j ) C =⋃

li �=l j(xi , x j )

3.3. Graph construction

To minimize the approximated energy functional Eh(�h) in (13), a graph G dual to the tetrahedralmesh Th is constructed. For each tetrahedron Ki in Th , a node xi is added to the dual graph G.For each triangle face shared by two tetrahedra Ki and K j in Th , an edge connecting xi andx j is added to G. This primal–dual relationship is illustrated by a two-dimensional example inFigure 2(a), in which the solid lines stand for the primal mesh and the dashed lines the dual graph.

Given a watertight surface triangulation mesh �h in Th , all tetrahedra can be separated into twopartitions, which can be represented by the level set function ��h

(Ki )= li , li ∈{1,2}. This piecewiseconstant level set function is equivalent to a labeling function in the graph G, L(xi )= li , li ∈{1,2}.Furthermore, the surface �h in Th is equivalent to a cut C in the dual graph G. The surface �his the union of all triangles shared by tetrahedra from different partitions, while the cut C is theunion of all edges connecting the nodes of different labels. This primal–dual relationship and itsderivatives are summarized in Table I.

The first term in (18) corresponds to the t-links in the graph and the second term n-links. Thesketch in Figure 2(b) and the following (20) illustrates the edge weight assigning procedure.The whole algorithm of constructing graph is given in details in the next subsection.

si = |I (Ki )−2|�(Ki ),s j =|I (K j )−2|�(K j ),

ti = |I (Ki )−1|�(Ki ), t j =|I (K j )−1|�(K j ),

Nij = (dij +�)Sij, Nji = (dij +�)Sij.

(20)

Furthermore, [26] proved that for an energy function having the form of

E(x1, . . . , xn)=∑i

Ei (xi )+∑i< j

Ei, j (xi , x j ) (21)

the minimization of E can be approached by the graph cut technique, i.e. E is graph representable,if and only if each Ei, j satisfies the inequality

Ei, j (1,1)+ Ei, j (2,2)�Ei, j (1,2)+ Ei, j (2,1). (22)

Copyright � 2010 John Wiley & Sons, Ltd. Int. J. Numer. Meth. Engng 2011; 85:206–229DOI: 10.1002/nme

Page 8: Variational surface reconstruction based on Delaunay ...frey/papers/meshing/Wan M., Variatio… · representations such as level set are applied. The main idea is to represent surface

VARIATIONAL SURFACE RECONSTRUCTION 213

Comparing Eh(�h) to (21), it is not difficult to find,

Ei (xi )=|li − I (Ki )|�(Ki ) , E(xi , x j )= (dij +�)Sij1{li �=l j }. (23)

Hence, it can be verified that E(�) is graph representable by finding that

E(li =1, l j =1)= E(li =2, l j =2)=0. (24)

3.4. Algorithm and discussions

The proposed algorithm consists of three stages. The first stage is the primal mesh generationbased on the Delaunay triangulation. The second stage includes establishing the crust region andspecifying functions in the variational model, i.e. the distance function, the indicator function andthe confidence function. The third stage includes constructing the dual graph, finding the minimalcut and extracting the desired surface from the minimal cut.

In the first stage, the primal mesh can be generated in several ways since no specific propertyof the mesh is required in the discretization through Section 3.3. In most previous graph-basedsurface reconstruction methods, structured grids are utilized, which also work well in our method.However, the direct surface extraction from a structured grid and the graph cut would result in astaircase surface. Hence, some preprocessing or postprocessing are required to obtain a triangularsurface mesh without any undesirable ‘blockiness’. On the contrast, by utilizing a tetrahedral mesh,the desirable triangular surface mesh can be readily obtained from the minimal cut in the proposedmethod. Compared with the deliberate design of the octahedron sub-graph [25] or generating atriangle fan [31], the method proposed in this paper is simple and elegant, though with extra costin generating the tetrahedral mesh, which can be considerably reduced by means of the well-developed triangulation technique and the adaptive mesh generation. The implementation of theclassical incremental Delaunay triangulation algorithm [38, 39] provided by the ComputationalGeometry Algorithms Library (CGAL) [40] is applied in the experiments.

Before the end of the first stage, some operation on mesh points distribution is required since meshpoints too close to the data set may destroy the faces supposed to form the desired homeomorphicsurface as in Figure 3(a). Centroidal Voronoi tessellation (CVT) can help move the mesh pointsaway from the potential surface and more details about CVT are presented in [41–43]. The resultafter CVT optimization is shown in Figure 3(b). Simply deleting the points within a small vicinityof the data set is another way, in which a good estimation for the ‘safe distance’ is required.

In the second stage, the crust region is first constructed as the n-ring neighborhood of the dataset S followed by the specification of both the indicator and the confidence functions. Next, thestructure of the Delaunay triangulation is exploited to efficiently compute the distance function.This can be achieved because a vertex in the Delaunay triangulation only connects the nearestvertices. In the graph construction, only the distance function of points in crust is of interest,which will be explained in the next paragraph. Therefore, instead of calculating distances fromthe mesh points to the data set, we calculate the distances from the data set to its nearby meshpoints, i.e. points in the crust region. This fast algorithm utilizes the Delaunay triangulation data

Figure 3. This figure shows (a) an undesirable resulting surface caused by too close mesh points and(b) the desirable surface after CVT optimization.

Copyright � 2010 John Wiley & Sons, Ltd. Int. J. Numer. Meth. Engng 2011; 85:206–229DOI: 10.1002/nme

Page 9: Variational surface reconstruction based on Delaunay ...frey/papers/meshing/Wan M., Variatio… · representations such as level set are applied. The main idea is to represent surface

214 M. WAN, Y. WANG AND D. WANG

Table II. Graph construction procedure.

Inputs 1. Mesh topological informationa. tetrahedra {Ki }N

i=1b. triangle faces{Fr }R

r=12. Crust3. Indicator function I (Ki ) and confidence function �(Ki )

Algorithm1. Add xi to graph G for every Ki

%% N -links2. Add edges (xi , x j ) and (x j , xi ) to G for every Fr = Ki ∩K j3. If any of Ki and K j is in Crust4. Assign (dij +�)Sij as weights of (xi , x j ) and (x j , xi )5. Else6. Assign c as weights of (xi , x j ) and (x j , xi )

%% T-links7. Assign |I (Ki )−2|�(Ki ) to si for every xi8. Assign |I (Ki )−1|�(Ki ) to ti for every xi

Outputs Graph G

structure requiring no more storage and the distance calculation can be accomplished efficientlyduring the crust establishment.

In the third stage, the dual graph is constructed following the instructions in Section 3.3. In theimplementation, some computation of edge weights can be saved and a fast graph constructionalgorithm is proposed as follows. For each Ki in the crust region, xi does not have any valid t-linksaccording to (27). For each Ki out of the crust region, either of xi ’s t-links is zero and the otheris a relatively large value c. It is safe to assert li =1 if si =c, ti =0 and vice versa. The minimalcut would not cross the edges out of crust region provided c is large enough. Hence, it is notnecessary to calculate the weight of n-link (xi , x j ) when Ki and K j are out of the crust. In otherwords only the n-links in the crust region is of interest. It is sufficient to calculate the distancefunction of points in the crust region. To keep the graph construction procedure logical and clear,we use c-weighted n-links to connect nodes out of the crust. Finally, the whole algorithm of thegraph construction is given in Table II.

Subsequently the min-cut/max-flow algorithm [44] is applied on the obtained graph. After theminimal cut is obtained, the reconstructed surface can be easily extracted from the primal meshaccording to Table I. Finally, a number of figures in Figure 4 illustrate all the stages.

4. MULTI-PHASE SURFACE RECONSTRUTION

In Section 3, two-phase surface reconstruction is considered, in which the surface is obtainedas the interface of two partitions. When the phase number increases up to more than two, thecorresponding min-cut/max-flow problem becomes a multi-way cut problem. Some approximationmethods, such as � expansion [33], have been developed to solve multi-way cut problems. Formore approximation methods, we refer to [34, 35]. Recently a new method to find the solution ofa multi-way cut problem is presented in [36]. In this section, the surface reconstruction method isextended from two-phase cases to multi-phase cases by adapting the multi-layer graph idea in [36].To the best of our knowledge, this is the first time that multi-phase surface reconstruction problems,which ubiquitously occur in CAD, animation and medical imaging applications, are solved by thegraph cut technique. A brief review of the multi-layer graph idea in [36] is provided in Section 4.1for completeness and the method for multi-phase surface reconstruction is presented in Section 4.2.An example illustrating the robustness of the proposed method concludes this section.

Copyright � 2010 John Wiley & Sons, Ltd. Int. J. Numer. Meth. Engng 2011; 85:206–229DOI: 10.1002/nme

Page 10: Variational surface reconstruction based on Delaunay ...frey/papers/meshing/Wan M., Variatio… · representations such as level set are applied. The main idea is to represent surface

VARIATIONAL SURFACE RECONSTRUCTION 215

Figure 4. Main stages in our method. (a) Data set points and mesh points; (b) Crust estab-lishment; (c) Graph construction; (d) Segmentation by the minimal cut; (e) Surface being

extracted from the minimal cut; and (f) Surface extracted.

4.1. Multi-phase segmentation problems

In [36], the segmentation problem is considered, aiming to find a partitioning of the domain �which satisfies

M⋂m=1

�m =∅,M⋃

m=1�m =�. (25)

The piecewise constant level set function �(x)=m for x ∈�m , m =1,2, . . . , M. The surfaces areinterfaces between partitions presented by the discontinuities of �. In multi-phase cases, surfacescan be considered as a hyper-surface in a higher dimensional domain. The level set function

�(x)=m in �m, m =1,2, . . . , M, x ∈ Rd (26)

can be represented as

�(x)−z =0, (x, z)∈ Rd ×{1,2, . . . , M}. (27)

Therefore, one extra dimension is introduced to handle the multi-phase issue. The multi-waycut problem in the original graph can be translated to a binary cut problem in a new multi-layergraph. A brief description of the translating algorithm is given as follows.

Assume that the original graph contains N nodes {xi , i =1, . . . , N } and the phase number is M .Then, a new graph of M −1 layers is constructed, which contains N ×(M −1) nodes {xi,k, i =1, . . . , N ,k =1, . . . , M −1}. The nodes {xi,k,1�i�N ,k =1, . . . , M −1} are M −1 images of xi . Thesub-set of nodes {xi,k, i =1, . . . , N ,1�k�M −1} forms the kth layer in the graph.

The edges in the new graph can be classified into two groups: horizontal edges and verticaledges. Horizontal edges include the edges connecting nodes in the same layer, while verticaledges include t-links and the edges connecting nodes in different layers. For every edge (xi , x j )in the original graph, there are M −1 images in the new graph: {(xi,k, x j,k), 1�k�M −1},whose weights are the same with that of (xi , x j ). Hence, every layer is a replica of the originalgraph except the t-links. Vertical edges include {(xi,k, xi,k+1), i =1, . . . , N ,k =1, . . . , M −2} and

Copyright � 2010 John Wiley & Sons, Ltd. Int. J. Numer. Meth. Engng 2011; 85:206–229DOI: 10.1002/nme

Page 11: Variational surface reconstruction based on Delaunay ...frey/papers/meshing/Wan M., Variatio… · representations such as level set are applied. The main idea is to represent surface

216 M. WAN, Y. WANG AND D. WANG

Figure 5. One-dimensional example to illustrate multi-layer graph. (a) two-phasesegmentation; (b) multi-phase segmentation; (c) two-phase segmentation result;

and (d) multi-phase segmentation result.

{(s, xi,1), (xi,M−1, t), i =1, . . . , N }. The vertical edge weight assignment has something to do withthe application and is left to be discussed in Section 4.2.

After applying the min-cut/max-flow algorithm to the new graph, each node’s label in theoriginal graph can be determined by the following equation based on the obtained minimal cut C ,

�i =

⎧⎪⎨⎪⎩

1, (s, xi,1)∈C

l +1, (xi,l , xi,l+1)∈C

M, (xi,M−1, t)∈C.

(28)

Equation (28) converts the binary partitioning of the multi-layer graph to a multi-partitioning ofthe original graph and hence the multi-way cut problem is solved.

We borrow the one-dimensional example in [36] to illustrate the above algorithm. The originalgraph contains six nodes. Figures 5(a) and (c) show the binary cut and the segmentation result.When a four-way cut is required, a three-layer graph is built as in Figure 5(b), in which everynode in the original graph has three images. The horizontal edges are replicas of n-links in theoriginal graph while the vertical edges connect the neighboring layers and terminals. After applyingthe min-cut/max-flow algorithm to the new graph, the converted result is obtained as shown inFigure 5(d).

4.2. The multi-phase method

In this study, the multi-layer graph idea used in [36] is adapted to handle the multi-phase cases.Given a data set, the primal mesh is generated and the original graph is constructed in the sameway to that of Section 3. Then, the multi-layer graph as well as the horizontal edge weights isestablished following the instructions in Section 4.1. Once the assignment of vertical edge weightsis finished, the graph cut algorithm is applied and Equation (28) converts the min-cut to the correctpartitioning, from which the corresponding surfaces are subsequently extracted. The remaining ofthis subsection will describe how to determine the vertical edge weights in the multi-layer graph.

Let � and K be the same as in Section 3. The Crust separates � into several disconnectedsub-domains {�′

i }Mi=1, on which the indicator, confidence and level set functions can be defined as

follows:

I (Ki ) ={

m if Ki ∈�′m

0 if Ki ∈Crust,(29)

�(Ki ) ={

0 if Ki ∈Crust

c others,(30)

Copyright � 2010 John Wiley & Sons, Ltd. Int. J. Numer. Meth. Engng 2011; 85:206–229DOI: 10.1002/nme

Page 12: Variational surface reconstruction based on Delaunay ...frey/papers/meshing/Wan M., Variatio… · representations such as level set are applied. The main idea is to represent surface

VARIATIONAL SURFACE RECONSTRUCTION 217

and

��(Ki )=m, Ki ∈�m, (31)

where {�m}Mm=1 are partitions induced by the resulting surface �. Consider a tetrahedron Ki ∈�′

m .The indicator function I (Ki )=m, which results in that the level set function ��(Ki ) induced bythe reconstructed surface � has to be m. Otherwise, any deviation between the level set functionand the indicator function, i.e. ��(Ki )=n �= I (Ki )=m, would keep the energy functional E(�)from being minimized. By recalling (28), this assertion can be achieved by assigning the verticaledge weights as shown in Table III.

For the tetrahedron Ki ∈Crust and corresponding node xi , no t-link or vertical edge is neededfor xi, j since the min-cut is totally determined by the geodesic defined by

∫�(d(x)+�)ds which

corresponds to n-links in the original graph or horizontal edges in the multi-layer graph. Therefore,those vertical edges are simply assigned to be zero and this policy works well in all experiments.This is equivalent to imposing hard boundary conditions [45] or the narrow-band implementation[31]. An example of two intersecting spheres is illustrated in Figure 6, where the zero weightededges are removed from the graph for clearer demonstration of the vertical edge weight distribution.Thus far, two-phase cases and multi-phase cases are unified into a general graph framework, whichcan be implemented in a single algorithm as shown in Table IV, where s is considered as the 0thlayer and t the M th one, i.e. xi,0, xi,M ,1�i�KN stands for s and t, respectively. The multi-layergraph such as Figure 5(b) automatically degrades to a single-layer graph like Figure 5(a) as longas the phase number decreases to two.

Table III. Weights for vertical edges.

I (Ki )=0 I (Ki )=1 I (Ki )=2 · · · I (Ki )=k · · · I (Ki )= M

w(s, xi,1) 0 0 c. . . c

. . . c

w(xi,1, xi,2) 0 c 0. . . c

. . . c...

. . .. . .

. . .. . .

. . .. . .

. . .

w(xi,k−1, xi,k ) 0 c c. . . 0

. . . c...

. . .. . .

. . .. . .

. . .. . .

. . .

w(xi,M−1, t) 0 c c. . . c

. . . 0

Figure 6. This figure illustrates the multi-layer graph structure by two intersecting spheres.(a) presents the cut view of the mesh, where the crust separates the domain into four regions.The corresponding multi-layer graph is shown in (b), in which I (Ki )=1,2,3,4. The weights ofvertical edges depend on I (Ki ). Therefore, some vertical edges vanish as shown in (b) and the

Crust-nodes do not have vertical edges at all.

Copyright � 2010 John Wiley & Sons, Ltd. Int. J. Numer. Meth. Engng 2011; 85:206–229DOI: 10.1002/nme

Page 13: Variational surface reconstruction based on Delaunay ...frey/papers/meshing/Wan M., Variatio… · representations such as level set are applied. The main idea is to represent surface

218 M. WAN, Y. WANG AND D. WANG

Table IV. Graph construction for multi-phase problem.

Inputs 1. Mesh topological informationa. tetrahedra {Ki }N

i=1b. triangle faces {Fr }R

r=12. Crust3. Phase number M

Algorithm1. For every Ki and every k =1, . . . , M −1 layer2. Add xi,k to Graph G

%% horizontal edges3. For every Fr = Ki ∩K j and every k =1, . . . , M −1 layer4. Add (xi,k , x j,k ) and (x j,k , xi,k ) to G5. If any of Ki and K j is in Crust4. Assign (dij +�)Sij as weights of (xi,k , x j,k ) and (x j,k , xi,k )5. Else6. Assign c as weights of (xi, j , x j,k ) and (x j,k , xi,k )

%% vertical edges7. For every Ki /∈Crust and every k =0, . . . , M −1 layer8. If I (Ki ) �=k9. Add a c-weighted edge (xi,k , xi,k+1)

Outputs Graph G

Figure 7. The femur example shows robustness of multi-phase surface reconstruction.

Concerning the phase number, it can be computed by region growing instead of interactive spec-ification. The computation is usually sensitive to the mesh, especially in some complex topologies,nevertheless the proposed method can handle this uncertainty without any trouble. One example ispresented to show the robustness of our method and also to conclude this section on multi-phaseproblems. The data set in Figure 7(a) is sampled from a femur surface. The original surface is asingle watertight one. In an ideal mesh, the crust should separate the domain into two sub-domains,the inner one of which is an integral cavity as in Figure 7(b), then a two-phase partitioning canbe obtained as shown in Figure 7(c). However, if the mesh points selection is not perfect, sometopological change happens as establishing the crust. For example, in the inner part of the femur,the cavity may be split into two or more sub-domains as shown in Figure 7(d) while the partitioningresult goes as in Figure 7(e). Two different meshes lead to two different graphs, however, either ofthe reconstructed results is a reasonable solution to the same problem. Comparing the two recon-structed results, it can be found that two results are almost the same except that the multiphasesolution has one more internal surface, which is redundant however can be easily removed bymerging the phases. The desired surface is shown in Figure 7(f). What is worth mentioning is thatwhen the reconstruction problem becomes more ill-posed, such as the data set is more insufficiently

Copyright � 2010 John Wiley & Sons, Ltd. Int. J. Numer. Meth. Engng 2011; 85:206–229DOI: 10.1002/nme

Page 14: Variational surface reconstruction based on Delaunay ...frey/papers/meshing/Wan M., Variatio… · representations such as level set are applied. The main idea is to represent surface

VARIATIONAL SURFACE RECONSTRUCTION 219

sampled, and the noise level is higher, more unfaithfulness is likely to be observed in the result.One example is two disjoint surfaces separated by a small gap, whose size is comparable to thedata density. The regularization term tends to fill that gap and a connected surface may be obtained.This topological unfaithfulness cannot be as easily removed as in Figure 7(e). The ill-posednessof this degree means the information carried by the insufficient data set only suggests a roughprofile instead of an exact solution. In this case, we consider both the separated surfaces and theconnected surface reasonable results.

5. NUMERICAL EXPERIMENTS

In this section, various examples are presented to illustrate the effectiveness, efficiency androbustness of the proposed method. All experiments were conducted on a PC with Intel Pentium 4CPU of 3.2 GHz and 4 GB memory. The Dragon, the Buddha and the armadillo data were obtainedfrom the Stanford 3D Scanning Repository (http://graphics.stanford.edu/data/3Dscanrep/). Thehand skeleton and the horse data were obtained from Large Geometric Models Archive of GeorgiaInstitute of Technology (http://www.cc.gatech.edu/projects/large_models/). Those intersectingobjects were synthesized by ourselves and other models were obtained from Digital ShapeWorkbench (http://dsw.aimatshape.net/). Only point locations were used. The reconstructionsurfaces were rendered by MeshLab (http://meshlab.sourceforge.net/).

Figure 8(a) shows an example of a genus 6 object, which is a smoothened perforated cube. Figure8(b) shows two identical objects from Figure 8(a) entangling with each other. Figure 8(c) shows aknot with a starry pattern on its surface. Being simple but interesting, these make good examplesfor topologically complex problems and manifest the powerfulness of our method. An example offour concatenating tori is shown in Figure 9. More multi-phase examples with intersections areshown in Figure 10.

Figure 8. This figure presents three models with complex topologies. The model in (a) is a smoothenedcube been perforated from three directions. The model in (b) is two identical objects in (a) entangling

with each other. The model in (c) is a knot with a starry pattern on its surface.

Figure 9. A typical multi-phase model without intersection, which consists of four concatenating tori.

Copyright � 2010 John Wiley & Sons, Ltd. Int. J. Numer. Meth. Engng 2011; 85:206–229DOI: 10.1002/nme

Page 15: Variational surface reconstruction based on Delaunay ...frey/papers/meshing/Wan M., Variatio… · representations such as level set are applied. The main idea is to represent surface

220 M. WAN, Y. WANG AND D. WANG

Figure 10. Several multi-phase examples with intersections: (a) is one cube intersecting one sphere. Thephase number is four; (b) is eight cubes intersecting one sphere. The phase number is 18; and (c) is four

intersecting spheres, any sub-set of which has a non-empty intersection. The phase number is 16.

Figure 11. This model is the identical femur in Figure 7 but nailed with a cylindrical object from the top.The intersecting part is presented and the interface is zoomed for details. A cut-view is provided as well.

Figure 11 presents a femur nailed by a stick, a case widely occurring in the femur surgery. In theprevious simulations, two objects have to be reconstructed separately. But in our method two objectsare reconstructed simultaneously and intersections are automatically generated. Figures 11(a)–(d)show the details from different aspects and Figure 11(e) illustrates the cut view of the intersec-tion part.

Figure 12 shows the reconstruction of a golf ball. Owing to the sufficient sampling density andthe proper mesh, the dimples spreading on the sphere are successfully reconstructed. The triangularsurface mesh is shown in Figure 12(a) and the rendered surface is shown in Figure 12(b).

Figure 13 shows several classic examples in the surface reconstruction field: the hand skeleton,the armadillo and the horse. Figures 14 and 15 show another two classic examples in differentresolutions: Happy Buddha and Dragon. In high resolutions, surface features are clear and detailsare well preserved. In low resolutions, profiles are roughly but faithfully maintained with a fewtopological distortions.

Copyright � 2010 John Wiley & Sons, Ltd. Int. J. Numer. Meth. Engng 2011; 85:206–229DOI: 10.1002/nme

Page 16: Variational surface reconstruction based on Delaunay ...frey/papers/meshing/Wan M., Variatio… · representations such as level set are applied. The main idea is to represent surface

VARIATIONAL SURFACE RECONSTRUCTION 221

Figure 12. This figure shows the reconstruction of a golf ball surface. Delicate dimples spreading overthe surface have been reconstructed faithfully due to the sufficient sampling density and the proper mesh.

(a) shows the triangular surface mesh; and (b) shows the rendered surface.

Figure 13. This figure shows several classic examples in the surface reconstruction field:(a) Hand skeleton; (b) Armadillo; and (c) Horse.

Figure 16 shows a group of statuettes. Subtle facial expressions of the kids, shapes of the hairand the ribbon, and eyelashes of the kitten have been faithfully presented.

Figure 17 shows a group of sculpture reconstruction examples. The patterns on Pegasus andGargoyle wings provide more examples of delicate details. Furthermore, both the Ramesses andNeptune sculptures contain smooth human bodies and sharp rigid features such as Ramesses’ stonyseat and Neptune’s trident. These mixed style surfaces are not challenges to our method. Theexample shown in Figure 18(a) is a raptor with an elongated tail and sharp claws. The details ofone front claw are illustrated in Figure 18(b).

Figure 19 shows a real example. The statue ‘Khmer’s smile’ was scanned by our 3D scannerand a data set of 20 663 points was obtained. To remove noises introduced by the scanner, thesurface has been smoothened by increasing the regularization coefficient. The result keeps mostfeatures and one can still read the subtle smile from the reconstructed face.

The noise level in Khmer’s smile example is relatively low. To study the performance of theproposed method in highly noisy cases, two data sets with higher noise levels are investigatedas shown in Figure 20. One is with noises around one point and the other along the sphere

Copyright � 2010 John Wiley & Sons, Ltd. Int. J. Numer. Meth. Engng 2011; 85:206–229DOI: 10.1002/nme

Page 17: Variational surface reconstruction based on Delaunay ...frey/papers/meshing/Wan M., Variatio… · representations such as level set are applied. The main idea is to represent surface

222 M. WAN, Y. WANG AND D. WANG

Figure 14. This figure shows another classic example in different resolutions: Dragon (a) shows thetriangular surface mesh of the low-resolution model; (b) shows the rendered surface; and (c) shows the

rendered surface in the high resolution.

Figure 15. This figure shows another classic example in different resolutions: Happy Buddha (a) showsthe triangular surface mesh of the low-resolution model; (b) shows the rendered surface; and (c) shows

the rendered surface in the high resolution.

equator. Figure 20 shows the results with different regularization coefficient � in (10). When theregularization coefficient � deceases to zero, our model becomes Zhao’s model in [18]. It can beseen from Figures 20(b) and (f) that few noises have been removed in these cases. By increasing the

Copyright � 2010 John Wiley & Sons, Ltd. Int. J. Numer. Meth. Engng 2011; 85:206–229DOI: 10.1002/nme

Page 18: Variational surface reconstruction based on Delaunay ...frey/papers/meshing/Wan M., Variatio… · representations such as level set are applied. The main idea is to represent surface

VARIATIONAL SURFACE RECONSTRUCTION 223

Figure 16. This figure shows a group of statuettes including kid, kitten and girl. Subtle facial expressionand delicate patterns of hair and accessories are faithfully reconstructed.

Figure 17. This figure shows a group of mythologic and ancient sculptures. The first two models,Pegasus in (a) and Gargoyle in (b), are used to show the ability of handling shallow patterns.The last two models, Ramesses in (c) and Neptune in (d), are used to show the performance

on one single model containing both the rigid sharp features and a smooth human body.

Figure 18. This figure shows an example of a raptor model. (a) Rendered reconstructed surfaceand (b) details of the front claw. The long tail and sharp claws both are faithfully reconstructed.

regularization coefficient most noises have been removed as shown in (c) and (g). However, therestill exist some remaining noise points forming the ‘scar’ surfaces as shown in (d) and (h). Thedenoising becomes extremely difficult because the noise level is comparable to the data density.

In Figure 21, a technique called Feature Swap for preserving features such as ridges and corners isillustrated. This technique requires some a priori knowledge such as some critical points presenting

Copyright � 2010 John Wiley & Sons, Ltd. Int. J. Numer. Meth. Engng 2011; 85:206–229DOI: 10.1002/nme

Page 19: Variational surface reconstruction based on Delaunay ...frey/papers/meshing/Wan M., Variatio… · representations such as level set are applied. The main idea is to represent surface

224 M. WAN, Y. WANG AND D. WANG

Figure 19. This figure shows a real example of a Combodia statuette named ‘Khmer’s Smile’, in whichthe data set is acquired by our 3D scanner. The picture of the statuette is shown in (a) for comparison.(b) presents the data set points. The reconstructed surface is shown in (c), in which the subtle smile in

the Buddha’s face still can be read.

Figure 20. This figure demonstrates two groups of noise removal experiments. The data set in thisseries of examples is sampled from a sphere surface into which two different types of artificialnoises are added. In (a) noise points are around one location while in (e) noise points are alongthe sphere equator. (b) and (f) show the reconstructed surfaces with the regularization coefficient�=0. Results obtained with �=0.001 are shown in (c) and (g). The remaining noise points and

these ‘scar’ surfaces are zoomed in (d) and (h).

the features. The proposed variational model tends to smoothen the features with large curvaturesas a side effect of the regularization term whose original purpose is denoising. Though being agood solution for the general surface reconstruction problem, the smoothed surface is undesirablein the CAD industry where the rigid features are important. The fact that all data points are apart of the mesh framework makes possible the existence of a surface triangulation homeomorphicto the ground truth, which is a prerequisite of a feature preserving reconstruction method. TheFeature Swap method is proposed as a postprocessing to recover all features described by somecritical points.

The main idea of Feature Swap is to ensure the presence of every critical point in the reconstructedsurface. The detailed algorithm is described in Table V. The first half part of the algorithm intendsto recover the presence of all critical points in the reconstructed surface. After executing this part,

Copyright � 2010 John Wiley & Sons, Ltd. Int. J. Numer. Meth. Engng 2011; 85:206–229DOI: 10.1002/nme

Page 20: Variational surface reconstruction based on Delaunay ...frey/papers/meshing/Wan M., Variatio… · representations such as level set are applied. The main idea is to represent surface

VARIATIONAL SURFACE RECONSTRUCTION 225

Figure 21. This figure demonstrates a technique called Feature Swap used to recover important featuressuch as edges and corners. The data set is sampled from a cut-an-eighth sphere surface. The initialreconstruction surface is shown in (a), in which sharp parts have been smoothened due to the regularizationterm in the proposed variational model. As shown in (b), most of edges have been recovered by the firsthalf part of Feature Swap operation except the corners. These corners are recovered as in (c) after the

Feature Swap method is finished. Details of (a) and (c) are shown in (d) and (e).

the smoothened surface in Figure 21(a) is turned to (b), in which most features are recovered whilethree corners still suffer from distortions. The second half part of the algorithm aims to regularizethese undesirable distortions by some measures such as area and curvature. In this study, the areaof the reconstructed surface is used. The result in (b) will be turned to the surface in (c) which hasall features preserved. Details on the feature are shown in (d) and (e). It is worth mentioning thatthis Feature Swap method is strongly dependent on a proper mesh. As a heuristic but empiricallyuseful postprocessing to recover features of a surface, this method is still under investigation andan important aspect of our future work.

Finally, an example of a chameleon model concludes this section, which contains most difficultiesin the surface reconstruction problems: undersampling, non-uniformity, noises and thin parts. Theelongated tongue contains less than 200 sample points. Four or less points are sampled in a contourof tongue. This poorly sampled data set presents a challenge to all the reconstruction methods. Withthe properly generated mesh, careful selection of the parameter and the Feature Swap technique thesurface is reconstructed as shown in Figure 22(a) and the tongue details are shown in (b) and (c).The reconstruction from this poorly sampled points proves the robustness and effectiveness of theproposed method.

Table VI gives the sizes of the data sets involved in our examples and CPU time counted inseconds. The first column of Table VI gives the names of examples, where ‘Low Res’ means ‘lowresolution’ and ‘High Res’ means ‘high resolution’. The second column contains the number ofdata points for each example and their corresponding Delaunay insertion time is given in the thirdcolumn. The fourth and the fifth columns give the numbers of background mesh points and meshelements. The CPU time given in the sixth column is the time consumed by the graph constructionwhile the CPU time in the last column is the graph cut time. It can be observed that the mosttime-consuming procedure is the mesh generation in two-phase examples while the graph cut timedominates in the multi-phase examples. The overhead caused by the mesh generation is worthwhilesince the surface conversion is avoided and the feature preserved technique can be applied. InTable VI, the femur example spent 0.07 s on data inserting, 0.025 s on graph construction and0.005 s on graph cut. The large model raptor spent 38.82, 25.33 and 21.77 s on data inserting,

Copyright � 2010 John Wiley & Sons, Ltd. Int. J. Numer. Meth. Engng 2011; 85:206–229DOI: 10.1002/nme

Page 21: Variational surface reconstruction based on Delaunay ...frey/papers/meshing/Wan M., Variatio… · representations such as level set are applied. The main idea is to represent surface

226 M. WAN, Y. WANG AND D. WANG

Table V. Feature Swap Algorithm.

Inputs 1. Mesh information

a. tetrahedra {Ki }NKi=1

b. triangle faces {Fi }NFi=1

2. Critical Points, {Pi }NPi=1

3. The partitioning, L :{Ki }NKi=1 →{1,2}

4. The surafce �h =⋃L(Ki )�=L(K j )(Ki ∩K j ).

5. The presence number P R(�h)=∑PNi=1 1{Pi ∈�h}.

Algorithm1 For i =1: NP2 If Pi /∈�h3 Find Km incident to Pi , l = L(Km )4 Find the minimal N , ∃Fj in N -ring neighborhood of Pi

such that Fj ⊂�h5 Find the segment seg between Pi and the centroid of Fj6 Find all M tetrahedra intersecting seg, {KN j }M

j=17 L(KN j )={1,2}\l, j =1, · · · , M8 End If9 End For10 For i =1: NK11 If Ki has a neighbor K j such that L(Ki )= l1 �= L(K j )= l212 L(Ki )= l2 and obtain the new surface �

′h

13 If Area(�′h)>Area(�h) or P R(�

′h)<P R(�h)

14 L(Ki )= l115 End If16 End If17 End If

Outputs The new surface �h =⋃L(Ki )�=L(K j )(Ki ∩K j )

Figure 22. This figure shows an example of chameleon. Thin part, i.e. chameleon’s tongue, consists ofvery sparse sample points as shown in (b). Owing to the properly generated mesh, careful selection ofthe parameter and the Local Swap technique, the surface is successfully reconstructed as shown in (a).

The most difficult part tongue is shown in (c).

the graph construction and the graph cut, respectively. Above examples have demonstrated theefficiency of the proposed method used in complicated and realistic applications. It should be notedthat the data inserting time is roughly proportional to the data size, and the similar relation exists

Copyright � 2010 John Wiley & Sons, Ltd. Int. J. Numer. Meth. Engng 2011; 85:206–229DOI: 10.1002/nme

Page 22: Variational surface reconstruction based on Delaunay ...frey/papers/meshing/Wan M., Variatio… · representations such as level set are applied. The main idea is to represent surface

VARIATIONAL SURFACE RECONSTRUCTION 227

Table VI. Statistics of surface reconstruction examples.

Data Data insert Mesh Mesh Graph built Graph cutExample Set time points elements time time

Femur 2020 0.07 1330 17735 0.025 0.005Perforated cube 7672 1.83 38160 244935 0.52 0.24Two perforated cubes 15344 3.09 19693 204989 0.55 1.53Knot 478704 17.63 185245 3655240 9.59 4.83Four tangling tori 32768 1.78 133686 1007425 9.23 26.79A cube and a sphere 11692 0.43 4924 83557 0.25 2.398 cubes and a sphere 54714 2.99 132584 928907 11.86 381.546Four spheres 22184 0.67 21176 248504 2.78 54.56Nailed femur 36968 1.72 102850 884783 4.64 29.85Golf 35 984 2.35 6573 138440 0.29 0.12Hand skeleton 327323 15.6 340940 4025863 12.98 24.91Horse 494195 20.03 471649 5173576 13.52 6.96Armadillo 172974 6.36 86828 1455076 3.63 1.65Happy Buddha Low Res 7108 0.24 9628 95334 0.19 0.07Happy Buddha High Res 543652 21.19 328651 5006848 12.76 10.88Dragon Low Res 5205 0.17 4962 63347 0.12 0.07Dragon High Res 437645 17.29 238633 3840493 10.08 6.55Kid bust 255358 9.52 124399 2234355 5.89 3.09Kitten 137098 4.86 58058 1099154 2.93 1.35Bimba 74764 2.65 31747 560483 1.4 0.6Pegasus 63544 2.29 27278 522159 1.21 0.67Gargoyle 863210 32.74 456579 7651135 20.18 10.68Ramesses 193252 7.08 75835 1481239 3.88 1.84Neptune 205835 8.03 113146 1733813 4.49 2.06Raptor 1000080 38.82 785813 10340012 25.33 21.77Khmer’s smile 20664 0.73 16930 216104 0.47 0.24Chameleon 4594 0.16 308636 1737455 8.15 1.19

between the mesh element number and the graph construction time. The graph cut time stronglydepends on element number or graph size, and interestingly, it also depends on the surface shapein a more complicated way, which is still under investigation.

6. CONCLUSION

In this paper, a variational method for surface reconstruction is proposed based on the Delaunaytriangulation and the graph cut. The variational model is based on the weighted minimal surfacemodel [18] with an additional regularization term and special fidelity terms as boundary conditions.The graph cut technique is used to minimize the energy functional in the variational model.Different from the previous graph cut-based method, the Delaunay-based mesh is applied. TheDelaunay triangulation not only makes possible the existence of a homeomorphic sub-complex,but also accelerates the calculation of the distance function and saves the overload of cut-surfaceconversion.

The multi-layer graph is applied to solving multi-phase problems by converting the multi-waycut problem to a binary cut one. It is the first attempt to solve multi-phase surface reconstructionproblems by the graph cut technique. In some complex cases whose phase numbers are ambiguous,different meshes and parameters may lead to different reconstructed surfaces, all of which, however,are reasonable. The example in Section 4.2 has already shown the robustness and the flexibility inmulti-phase problems. Limitation of the proposed method on insufficient data set is also discussed.

What is worth mentioning is that the faithfulness of the reconstructed surface is strongly depen-dent on the sufficiency of the sampled data set. If it does not satisfy the �-sampling for a small�, the data set is not able to present the small features. Small features are likely to be treated asnoises and eliminated by the regularization term in the variational model. As a result, sharp corners

Copyright � 2010 John Wiley & Sons, Ltd. Int. J. Numer. Meth. Engng 2011; 85:206–229DOI: 10.1002/nme

Page 23: Variational surface reconstruction based on Delaunay ...frey/papers/meshing/Wan M., Variatio… · representations such as level set are applied. The main idea is to represent surface

228 M. WAN, Y. WANG AND D. WANG

and ridges tend to be smoothened while small gaps be filled. After all, the reconstructed surfacewith a little unfaithfulness or some topological distortion is still a sound and reasonable solutionto the insufficient data set, which is an ill-posed reconstruction problem, as shown in Figure 21(a).Furthermore, to tackle these problems brought by the insufficient data sampling, a postprocessingFeature Swap is introduced to recover those features which are beyond the presenting ability ofthe data set. This Feature Swap will help present sharper and clearer features as in Figure 21(c),which is desirable in the CAD industry. However this technique is still in the experimental periodand some heuristics is required. The underlying nature of such insufficient sampling is underinvestigation and more robustness and efficiency is expected in our future work.

Another direction of our future work is to develop a quantitative quality measure for thesurface reconstruction, surface smoothing and surface enhancement. This measure should take intoaccount the smoothness of surface, the rigid sharp features and the deviation from the ground truthif available.

ACKNOWLEDGEMENTS

This work was supported by Singapore MOE ARC 29/07 under grant number T207B2202, MOE RG59/08 under grant number M52110092 and NRF 2007IDM-IDM under grant number 002-010. The authorsthank the referees for their valuable suggestions on the improvement of this paper.

REFERENCES

1. Edelsbrunner H, Mucke E. Three-dimensional alpha shapes. Proceedings of the 1992 Workshop on VolumeVisualization. ACM: New York, NY, U.S.A., 1992; 75–82.

2. Amenta N, Bern M. Surface reconstruction by Voronoi filtering. Discrete and Computational Geometry 1999;22(4):481–504.

3. Amenta N, Bern M, Kamvysselis M. A new Voronoi-based surface reconstruction algorithm. Proceedings of the25th Annual Conference on Computer Graphics and Interactive Techniques. ACM: New York, NY, U.S.A., 1998;415–421.

4. Amenta N, Choi S, Dey T, Leekha N. A simple algorithm for homeomorphic surface reconstruction. Proceedingsof the 16th Annual Symposium on Computational Geometry. ACM: New York, NY, U.S.A., 2000; 213–222.

5. Adamy U, Giesen J, John M. New techniques for topologically correct surface reconstruction. Proceedings ofthe Conference on Visualization’00. IEEE Computer Society Press: Los Alamitos, CA, U.S.A., 2000; 373–380.

6. Boissonnat J, Cazals F. Smooth surface reconstruction via natural neighbour interpolation of distance functions.Proceedings of the 16th Annual Symposium on Computational Geometry. ACM: New York, NY, U.S.A., 2000;223–232.

7. Dey TK, Goswami S. Tight cocone: a water-tight surface reconstructor. Journal of Computing and InformationScience in Engineering 2003; 3:302.

8. Cebral J, Lohner R. From medical images to anatomically accurate finite element grids. International Journalfor Numerical Methods in Engineering 2001; 51(8):985–1008.

9. Wu Z, Sullivan J. Multiple material marching cubes algorithm. International Journal for Numerical Methods inEngineering 2003; 58(2):189–207.

10. Boissonnat J. Shape reconstruction from planar cross sections. Computer Vision, Graphics, and Image Processing1988; 44(1):1–29.

11. Oliva J, Perrin M, Coquillart S. 3D reconstruction of complex polyhedral shapes from contours using a simplifiedgeneralized Voronoi diagram. Computer Graphics Forum, vol. 15. Blackwell Science Ltd: Oxford, 1996; 397–408.

12. Cong G, Parvin B. Robust and efficient surface reconstruction from contours. The Visual Computer 2001;17(4):199–208.

13. Wang D, Hassan O, Morgan K, Weatherill N. Efficient surface reconstruction from contours based ontwo-dimensional Delaunay triangulation. International Journal for Numerical Methods in Engineering 2006;65:734–751.

14. Hoppe H, DeRose T, Duchamp T, McDonald J, Stuetzle W. Surface reconstruction from unorganized points.Computer Graphics New York Association for Computing Mechinery 1992; 26:71–71.

15. Curless B, Levoy M. A volumetric method for building complex models from range images. SIGGRAPH96.Computer Graphics Proceedings, 1996.

16. Alexa M, Behr J, Cohen-Or D, Fleishman S, Levin D, Silva C. Point set surfaces. IEEE Visualization 2001;1:21–28.

17. Ohtake Y, Belyaev A, Alexa M, Turk G, Seidel H. Multi-level partition of unity implicits. International Conferenceon Computer Graphics and Interactive Techniques. ACM: New York, NY, U.S.A., 2005.

Copyright � 2010 John Wiley & Sons, Ltd. Int. J. Numer. Meth. Engng 2011; 85:206–229DOI: 10.1002/nme

Page 24: Variational surface reconstruction based on Delaunay ...frey/papers/meshing/Wan M., Variatio… · representations such as level set are applied. The main idea is to represent surface

VARIATIONAL SURFACE RECONSTRUCTION 229

18. Zhao H, Osher S, Fedkiw R. Fast surface reconstruction using the level set method. Proceedings of the IEEEWorkshop on Variational and Level Set Methods (VLSM’01). IEEE Computer Society: Washington, DC, U.S.A.,2001; 194.

19. George P, Hecht F, Saltel E. Automatic mesh generator with specified boundary. Computer Methods in AppliedMechanics and Engineering 1991; 92(3):269–288.

20. Weatherill N, Hassan O. Efficient three-dimensional Delaunay triangulation with automatic point creationand imposed boundary constraints. International Journal for Numerical Methods in Engineering 1994;37(12):2005–2039.

21. Shewchuk J. Constrained Delaunay tetrahedralizations and provably good boundary recovery. EleventhInternational Meshing Roundtable, Citeseer, 2002; 193–204.

22. Karamete B, Beall M, Shephard M. Triangulation of arbitrary polyhedra to support automatic mesh generators.International Journal for Numerical Methods in Engineering 2000; 49:167–191.

23. Du Q, Wang D. Boundary recovery for three dimensional conforming Delaunay triangulation. Computer Methodsin Applied Mechanics and Engineering 2004; 193(23-26):2547–2563.

24. Du Q, Wang D. Constrained boundary recovery for three dimensional Delaunay triangulations. InternationalJournal for Numerical Methods in Engineering 2004; 61(9):1471–1500.

25. Hornung A, Kobbelt L. Robust reconstruction of watertight 3d models from non-uniformly sampled point cloudswithout normal information. Geometry Processing 2006: Fourth Eurographics Symposium on Geometry ProcessingCagliari, Sardinia Italy, 26–28 June 2006, Eurographics 2006; 41.

26. Kolmogorov V, Zabin R. What energy functions can be minimized via graph cuts? IEEE Transactions on PatternAnalysis and Machine Intelligence 2004; 26(2):147–159.

27. Greig D, Porteous B, Seheult A. Exact maximum a posteriori estimation for binary images. Journal of the RoyalStatistical Society, Series B (Methodological) 1989; 271–279.

28. Kolmogorov V, Zabih R, Gortler S. Generalized Multi-camera Scene Reconstruction Using Graph Cuts. LectureNotes in Computer Science. Springer: Berlin, 2003; 501–516.

29. Vogiatzis G, Torr P, Cipolla R. Multi-view stereo via volumetric graph-cuts. IEEE Computer Society Conferenceon Computer Vision and Pattern Recognition, 2005, CVPR 2005, vol. 2, 2005.

30. Paris S, Sillion F, Quan L. A surface reconstruction method using global graph cut optimization. InternationalJournal of Computer Vision 2006; 66(2):141–161.

31. Hornung A, Kobbelt L. Hierarchical volumetric multi-view stereo reconstruction of manifold surfaces based ondual graph embedding. 2006 IEEE Computer Society Conference on Computer Vision and Pattern Recognition,vol. 1, 2006.

32. Sormann M, Zach C, Bauer J, Karner K, Bishof H. Watertight Multi-view Reconstruction Based on VolumetricGraph-cuts. Lecture Notes in Computer Science, vol. 4522. Springer: Berlin, 2007; 393.

33. Boykov Y, Veksler O, Zabih R. Fast approximate energy minimization via graph cuts. IEEE Transactions onPattern Analysis and Machine Intelligence 2001; 23(11):1222–1239.

34. Komodakis N, Tziritas G, Paragios N. Fast, approximately optimal solutions for single dynamic MRFs. IEEEConference on Computer Vision and Pattern Recognition, 2007. CVPR’07, 2007; 1–8.

35. Lempitsky V, Rother C, Blake A. Logcut-efficient graph cut optimization for Markov random fields. IEEE 11thInternational Conference on Computer Vision, 2007. ICCV 2007, Citeseer, 2007.

36. Bae E, Tai XC. In Graph Cut Optimization for the Piecewise Constant Level Set Method Applied to MultiphaseImage Segmentation. Tai XC, Morken K, Lysaker M, Lie KA (eds), SSVM. Lecture Notes in ComputerScience, vol. 5567. Springer: New York, 2009; 1–13. Available from: http://dblp.uni-trier.de/db/conf/scalespace/ssvm2009.html#BaeT09.

37. George PL, Borouchaki H. Delaunay Triangulation and Meshing: Application to Finite Elements. Kogan Page,1998; 20–21.

38. Borouchaki H, Lo S. Fast Delaunay triangulation in three dimensions. Computer Methods in Applied Mechanicsand Engineering 1995; 128(1–2):153–167.

39. Borouchaki H, George P, Lo S. Optimal Delaunay point insertion. International Journal for Numerical Methodsin Engineering 1996; 39, 20.

40. Cgal. Computational geometry algorithms library. Available from: http://www.cgal.org.41. Du Q, Faber V, Gunzburger M. Centroidal Voronoi tessellations: applications and algorithms. SIAM Review 1999;

41(4):637–676.42. Du Q, Wang D. Tetrahedral mesh generation and optimization based on centroidal Voronoi tessellations.

International Journal for Numerical Methods in Engineering 2002; 56:1355–1373.43. Du Q, Wang D. Anisotropic centroidal Voronoi tessellations and their applications. SIAM Journal on Scientific

Computing 2005; 26(3):737–761.44. Boykov Y, Kolmogorov V. An experimental comparison of min-cut/max-flow algorithms for energy minimization

in vision. IEEE Transactions on Pattern Analysis and Machine Intelligence 2004; 1124–1137.45. Boykov Y, Jolly M. Interactive graph cuts for optimal boundary and region segmentation of objects in ND

images. International Conference on Computer Vision, Citeseer, vol. 1, 2001; 105–112.

Copyright � 2010 John Wiley & Sons, Ltd. Int. J. Numer. Meth. Engng 2011; 85:206–229DOI: 10.1002/nme