Surface Reconstruction Algorithms:Review and Comparison

22
Surface Reconstruction Algorithms: Review and Comparison Renoald Tang 1 Setan Halim Majid Zulkepli Photogrmmetry and Laser Scanning Research Group, Faculty of Geoinformation and Real Estate, Universiti Teknologi Malaysia (UTM), 81310 UTM Skudai, Johor, Malaysia E-mail:[email protected], [email protected], [email protected] Abstract. This paper reviews the well-known algorithms used to reconstruct the topology surface from sample points in three dimensional spaces. The sample points can be generated from laser scanner, photogrammetry technique or some mathematical function. In most cases, the sample points will describe the shape and topology surface of the object. By applying the surface reconstruction algorithm on the sample points, the 3D model of the object can be generated. The algorithms discussed in this paper will be applied to various models. The topology surface generated from each algorithm will be analysed. Based on this analysing, the problem and the idea to develop the new surface reconstruction are proposed. 1. Introduction Surface reconstruction algorithms are a well studied problem in the computer graphic community. The input is a set of sample points that describe the shape or topology of the object in three dimensions. Surface reconstruction algorithms turned these points into a 3D model. These algorithms play an importance role in 3D applications , for example ,the generating the 3D model in reverse engineering , modeling of scatter data in geology and the sciences mathematic community and to name a few (Wang et al ,2010;Heckel et al,2011;Burke et al ,2010). To generate the 3D model from point clouds that captured by using laser scanner, the surface reconstruction algorithms can be applied. Most of the surface reconstruction algorithms discussed in this paper are coming from the computer graphics community. By reviewing the well-known surface reconstruction algorithm and analysing surface generated by these algorithms, the problems and direction that can be used for the future improvement of surface reconstruction algorithms are proposed. 2. Tangent Plane Estimation Method The first surface reconstruction algorithm based on tangent plane estimation is introduced by Boissonnat (1984). His algorithm selects the neighbourhood of sample point in the point cloud, then projected these sample points on tangent plane and compute the Delaunay triangulation in the projected neighbourhood area. When the surface is smooth and sufficiently dense, the neighbour of a

description

Review and compare well known surface reconstruction algortihm

Transcript of Surface Reconstruction Algorithms:Review and Comparison

Page 1: Surface Reconstruction Algorithms:Review and Comparison

Surface Reconstruction Algorithms: Review and Comparison

Renoald Tang1

Setan Halim

Majid Zulkepli

Photogrmmetry and Laser Scanning Research Group, Faculty of Geoinformation and

Real Estate, Universiti Teknologi Malaysia (UTM), 81310 UTM Skudai, Johor,

Malaysia

E-mail:[email protected], [email protected], [email protected]

Abstract. This paper reviews the well-known algorithms used to reconstruct the topology

surface from sample points in three dimensional spaces. The sample points can be generated

from laser scanner, photogrammetry technique or some mathematical function. In most cases,

the sample points will describe the shape and topology surface of the object. By applying the

surface reconstruction algorithm on the sample points, the 3D model of the object can be

generated. The algorithms discussed in this paper will be applied to various models. The

topology surface generated from each algorithm will be analysed. Based on this analysing, the

problem and the idea to develop the new surface reconstruction are proposed.

1. Introduction

Surface reconstruction algorithms are a well studied problem in the computer graphic community. The

input is a set of sample points that describe the shape or topology of the object in three dimensions.

Surface reconstruction algorithms turned these points into a 3D model. These algorithms play an

importance role in 3D applications , for example ,the generating the 3D model in reverse engineering ,

modeling of scatter data in geology and the sciences mathematic community and to name a few (Wang

et al ,2010;Heckel et al,2011;Burke et al ,2010). To generate the 3D model from point clouds that

captured by using laser scanner, the surface reconstruction algorithms can be applied. Most of the

surface reconstruction algorithms discussed in this paper are coming from the computer graphics

community. By reviewing the well-known surface reconstruction algorithm and analysing surface

generated by these algorithms, the problems and direction that can be used for the future improvement

of surface reconstruction algorithms are proposed.

2. Tangent Plane Estimation Method

The first surface reconstruction algorithm based on tangent plane estimation is introduced by

Boissonnat (1984). His algorithm selects the neighbourhood of sample point in the point cloud, then

projected these sample points on tangent plane and compute the Delaunay triangulation in the

projected neighbourhood area. When the surface is smooth and sufficiently dense, the neighbour of a

Page 2: Surface Reconstruction Algorithms:Review and Comparison

point in the point clouds should not deviate too much from the tangent plane of the surface at that

point (Figure 1). Hence, by computed the tangent plane for each sample point, the surface of the point

clouds can be estimated (Boissonnat and Teillaud, 2004).

Hoppe et al (1992) proposed another algorithm for reconstructed the surface from unorganized point

by using tangent plane estimation and contour tracing. Same with the concept using by Boissonnat

(1984), the tangent plane is estimated by using principle component analysis. The Riemannian Graph

(David, 1999) is constructed to orient the direction of each tangent plane. This tangent plane will be

used to compute the sign distance function for each sample point. The final 3D surface can be

generated by extracting the zero set of sign distance by using well-known marching cube algorithm

(Newman and Yi, 2006). The main problem of the tangent estimation algorithm is the density of the

point clouds. When the point clouds are not dense enough, the wrong tangent plane will be estimated

and the surface reconstructed is not same with the original object (Figure 2b).

.

Figure 1 The information of

normal or tangent plane can be

used to estimate the local

triangulation of sample points (Pal,

2001).

(a)Original object (b)The reconstructed

surface when the tangent

estimation is wrong

Figure 2 The comparison of original object and reconstructed

surface when the tangent estimation is wrong (Hoppe et al,

1992)

Page 3: Surface Reconstruction Algorithms:Review and Comparison

3 Alpha Shape

Edelsbrunner and mucke introduced the alpha shape algorithm in 1994. Alpha shape using the Delaunay Triangulation and the user given radius (the α value) to define the surface bounding by

sample points. The Delaunay Triangulation of sample point defines as simplicial complex, (vertices

,edges ,triangles and tetrahedral). Let O is the sphere whose boundary contains all vertices of .(

Figure 3). The size of is defined to be the square of the radius of O. Then, the subcomplex of

simplices in sample point is the alpha shape if

(a) The size of is less than α value

(b) is the face triangle in the subcomplex.

The α value can be range from 0 to . When the α value is zero, the shape of Alpha shape is the

point. Alpha shape will become convex hull of sample point when α value goes to infinity (Figure 4).

The collection of all possible α shape of sample point P is called the family of alpha shapes of the P

(Bajaj et al, 1995). The complexity of algorithm alpha shape is O (n2), where n is the number of

sample points.

The α value of Alpha shape algorithm must choose randomly since not have any specific α value can

be used to describe all the surface objects. Teichmann and Capps (1998) , Melkemi (1997) , Xu and

Harada (2002) proposed the choosing of alpha value based on density of sample points. But their

algorithm still cannot propose the exact α value that can be applied to all sample points.

Figure 3 The definition of vertices, edge, triangle and tetrahedral. The

alpha shape is the surface inside the blue sphere

Page 4: Surface Reconstruction Algorithms:Review and Comparison

4 The Delaunay/Voronoi Based Algorithms

Boissonnat (1984) for the first time, proposed the surface approximation of sample points by using

Delaunay triangulation. The Alpha shape algorithm (Edelsbrunner and mucke, 1994) is a subcomplex

of Delaunay Triangulation with α value. But all these algorithms not come with theoretical guarantee.

Amenta and Bern (1998a), Amenta et al (1998b) proposed the first surface reconstruction algorithm

that comes with theoretical guarantee. Based on their works, the extension of the Delaunay/Voronoi

algorithm: Cocone, Tight Cocone, Robust Cocone and PowerCrust are developed. Compared with

other existing algorithms, Delaunay/Voronoi based algorithm always produces a good approximate

surface when the sample points are good enough (Amenta et al, 1998a &b).

4.1 The Crust Algorithm

Given the sample point in plane, the Crust is the graph that connects every pair of correct edge, as

what show in Figure 5(a & b). In two dimensions, the Crust can be defined by using Voronoi Diagram.

For three dimensions, the Crust can be estimated by using medial axis. The medial axis of a surface S

is a closure of the set of points in the plane which have two or more closet points in S (see Figure 6).

Definitely, the surface of sample point can be estimated by using medial axis. Amenta et al (1998a

&b) has shown that when the sample points are dense enough, the Voronoi vertex which called as

pole, well approximated the medial axis of the surface. By computing the Delaunay Triangulation of

the sample points, then using the pole to remove the unwanted triangle, the surface triangulation that

approximates the original surface of S will obtain.

Figure 4 The change of Alpha shape from α value 0 to 10

Page 5: Surface Reconstruction Algorithms:Review and Comparison

The theoretical guarantees for Crust algorithm is defined by using r sampling. The sample point S is

said to be the r sample of the surface S if no point p (p is point of surface S) on S is farther than r.LFS

(p) from a point of S, where LFS(p) is the local feature size of point p. Based on this sampling

definition, the Crust algorithm will guarantee reconstruct the good surface when (Amenta et al ,

1998b):

a.) For r 1, the Delaunay triangulation of P contains the polygonal reconstruction of S

b.) For r 0.40, the Crust of P from Delaunay triangulation contains the polygonal reconstruction of

S c) For r 0.252, the Crust of P from Delaunay triangulation is the polygonal reconstruction of S

where P is the sample points from surface S.

The worst case running time and memory consumption for the Crust algorithm are O (m2), where m is

the size of the pole and Delaunay Triangulation P. The computation time of this algorithm is slow

when the number of sample points is increased. To improve this algorithm, the Cocone algorithm,

which is simpler than Crust algorithm is introduced.

(a) The point. The correct

edges are the point

with colour brown

(b) The Crust, the line

that connect all the

correct edge

Figure 5 The point and the Crust

Figure 6 The medial axis, the

black line beside the body of

Giraffe

Page 6: Surface Reconstruction Algorithms:Review and Comparison

4.2 The Cocone Algorithm

The improvement of the Crust algorithm, the Cocone algorithm is proposed by Amenta et al (2000).

The Cocone of point p is the complement of a double cone centered at p with an opening angle 8

3

around the axis aligned with the normal direction (Figure 7). Collection of Cocone triangle in the

Delaunay triangulation approximated the medial axis of sample points. By computing all Cocone

triangles from the Delaunay triangulation, the surface of sample point can be determined.

When the sample points are dense enough (r > 0) , the Cocone surface is homeomorphic with the

surface of the object (Amenta et al , 2000). The complexity of Cocone is O(n2) , where n is the number

of sample points. Compare with Crust algorithm, Cocone is faster since the Delaunay triangulation of

input point p is computed once in the algorithm.

Several improvements for Cocone algorithm have been introduced. Day et al (2001) splits the point

clouds into chunks using octree. The Cocone triangle for sample then is computed on each chunk and

the surface of adjacent octree cells is obtained by duplicating the sample point on the cell’s surface.

His algorithm reduced the time used to compute the Delaunay triangulation. Funke and Ramos (2002)

reduced the time used for computing the Cocone algorithm by avoiding the computation of Delaunay

triangulation. Their algorithm computes nearest neighbour of sample point in all spatial directions.

This neighbour sample point approximated the Voronoi neighbour , and can directly used to compute

the Cocone triangle.

4.3 Tight Cocone and Robust Cocone Algorithm

The Crust and Cocone algorithms will leave the hole on the reconstruct surface when the point clouds

are not dense enough, for example, downsampling. This cause the reconstructed surface becomes

incomplete. Dey and Goswami (2003) proposed the Tight Cocone algorithm which produces the

watertight surface that's free of holes. The concept of the Tight Cocone algorithm is simple: after

compute the Cocone triangle, marking the tetrahedral triangle as “In” or “Out”. All the “Out”

tetrahedral triangles are peeling out and the final surface of point clouds is generated from the

boundary of union “In” tetrahedral triangles. This algorithm runs in O (n2) time and space in the worst

case. Tight Cocone algorithm can only handle some amount of displacements of the point away from

Figure 7. (a) Cocone in 2D. np is the normal

direction of point p. The shaded area is Cocone

region. (b) Cocone in 3D. P+ is the normal

direction of point p. The shaded area is Cocone

and S is Cocone surface (c) Double Cocone in 3D

(Dey et al, 2003)

Page 7: Surface Reconstruction Algorithms:Review and Comparison

the surface (Dey, 2007). When the noises in the points are beyond this limit, this algorithm fails to

reconstruct the surface.

Dey and Goswami (2004) proposed the Robust Cocone algorithm, which can be used to reconstruct

the surface from noisy sample points. The union of polar balls approximates the solid bounded by the

sampled surface (Amenta et al, 2001a &b). But this property does not hold in the presence of noise in

point set surface. To resolve this problem, Robust Cocone algorithm using big Delaunay ball or

feature ball to approximate the solid surface bounded by point clouds. As shows by Dey and Sun

(2005a), under some reasonable noise model, some of the Delaunay balls (called as big Delaunay ball

or feature ball) remain relative big and can play the role of the polar ball. Tight Cocone and Robust

Cocone also categorize as “Labeling” algorithms since these two algorithms labelled the triangle

surface as “In” or “Out” before the final surface are generated.

4.4 The PowerCrust Algorithm

The PowerCrust algorithm by Amenta et al (2001a&b) is another “Labeling” algorithm that can

reconstruct the watertight surface (surface free of holes) from sample points. PowerCrust algorithm

approximates the medial axis transform (MAT) of the object by using Voronoi Diagram. Then, using

inverse transform to produce the surface from MAT. The MAT can be estimated by using medial ball .

Different with the Tight and Robust Cocone algorithm, PowerCrust algorithm estimated the MAT of

point clouds by using weighted Voronoi Diagram or Power Diagram (Figure 8). This algorithm

generated two surfaces, Power Crust and Power shape. Power Crust is the boundary between the

power diagram cells belonging to inner and power diagram cells belonging to outer poles. Power

shape is a subset of weighted Delaunay triangulation dual to the power diagram (Amenta et al,

2001a&b). Since the boundary of surface captured the nature shape of the object, Power Crust or

Power Shape can be used to represent the 3D surface of the object.

PowerCrust algorithm fails to reconstruct the surface when the point clouds have noise. This is

because the noise will cause the sample points scatter away from the object surface, and the wrong

medial axis is estimated.

Figure 8 The Power Diagram is a weighted

Voronoi Diagram, where the sample points

are divided according to the power distance

Page 8: Surface Reconstruction Algorithms:Review and Comparison

5 Ball Pivoting Algorithm

The Ball Pivoting Algorithm (BPA), where surface generated is sub complex of the alpha shape

algorithm was introduced by Bernardini et al (1999). When the point clouds are dense enough, the p

ball (a ball with radius p) cannot pass through the surface without touching the points set surface.

Hence, the p ball will in contact with at least three sample points from point clouds. By keeping this

ball in contact with two of these initial points, “pivot” the ball until it touches with another points

(Figure 9). Triplet of points that the ball contacts will formed new triangles. The set of triangles

formed while the ball “walks” on the surface will become the mesh or the surface of the sample points.

Compare with Delaunay/Voronoi based algorithm, BPA algorithm is time efficiency because this

algorithm doesn’t need to compute the Delaunay Triangulation or Voronoi Diagram to produce the

mesh surface. But this algorithm will output the surface with the hole when the sample points are not

dense enough.

6 Surface Interpolated Methods

Surface interpolated methods using a specific mathematical function to interpolate the sample points.

The final mesh of sample point is the triangulated surface from interpolated function. Compare with

other existing algorithm, the surface interpolated method can be used to reduce the effect of noise in

sample point (smooth the surface) or simplified the density of sample points to resolve the storage

problem.

Carr et al (2001) using polyharmonic Radial Basis Functions (RBF) to reconstruct the smooth surface

from point cloud data. The zero set of RBF function is used to fit the point clouds data. Then, using

Marching Cube algorithm (Newman and Yi, 2006) to extract the isosurface from RBF function. Levin

(2001) proposed the using of Moving Least Square (MLS) surface for data interpolation. Based on this

work, Alexa et al (2001a & b) introduced how to use MLS surface to represent the point cloud's

surface. Their method is simple: first, computed the local reference domain (tangent plane) for the

sample point. Then, project the sample point to this tangent plane (Figure 10). The point that projected

Figure 9 The ball pivoting

algorithm in 2D.A circle of

radius p pivots from sample

point to sample point,

connecting them with edges

Page 9: Surface Reconstruction Algorithms:Review and Comparison

on tangent plane will be the MLS surface of the point clouds. By changing the value of Gaussian

function in MLS surface, the smoothness of surface can be controlled.

The Adaptive Moving Least Square (AMLS) surfaces that come with theoretical guarantee was

introduced by Dey and Sun (2005b). Their AMLS surface is based on the model proposed by Shen et

al (2004). The projection technique on AMLS surface is similar to the projection technique on the

MLS surface by Alexa et al (2001 a& b). They applied the featured ball and local feature function

(the concept introduced by Crust algorithm) to compute the Gaussian functions. This cause the change

of Gaussian function in AMLS surface directly give effect to the point set surface.

7 Other Algorithms

A lot of algorithms had been developed in the computer graphic community. In this paper we

only consider the well-known surface reconstruction algorithms that always refer by other

researcher when developed or proposed new algorithms. For algorithms that are the extension

of the well-known algorithm, for example the improvement of original algorithm will only

give a brief explanation in Table 1. The details of algorithm can refer to the book by

Boissonnat and Teillaud (2007).

Figure 10 The MLS projection procedure. First, a local

reference domain H for the point r is generated. The projection

of r onto H defines its original q. Then a local polynomial

approximation g to the height fi of point pi over H is computed.

In both case, the weight for each pi is a function of the distance

to q. The projection of r onto g (the blue point) is the result of

MLS projection (Alexa et al, 2001 a&b)

Page 10: Surface Reconstruction Algorithms:Review and Comparison

8 Experiments

Since the limited space and scope of study, only five well-known algorithms (Alpha shape, Cocone,

PowerCrust, BPA and interpolated method) are chosen to reconstruct the surface from point clouds in

this paper. Table 2 shows these algorithms and their implementations. The object and the number of

point clouds for each model are shown in Table 3. The point clouds of face, vase and box are captured

by using Vivid910 laser scanner. The rest is the free model that can be downloaded from the

homepage aims@shape project . All the 3D model reconstructed from the algorithms will be viewed

by using Open source, MeshLab (MeshLab, 2012). The analysing of each 3D model generated from

algorithms are based on:

1) The topology surface,

2) Number of surface and

Surface reconstruction

algorithms

Concept Reference

Greedy algorithm Incrementally reconstructs an

oriented surface by selecting

triangles from Delaunay

Triangulation of sample point

and stitching to surface

Steiner and Da(2004)

Natural neighbour The surface of sample points

is computed from a subset of

Delaunay Triangulation from

implicit function

Boissonnat and Cazals(2000

& 2001)

Wrap The stable manifolds of

sample points are

approximated by sub-

complexes of Delaunay

Triangulation and subset of

the maxima of flow relation

Edelsbrunner (2003)

Convection algorithm Using evolution equations to

construct the surface that

minimizes the energy

functional by deforming a

good initial enclosing

approximation of the surface.

Chaine(2003)

Regular interpolant The triangle contributing to

the interpolant are the Gabriel

triangle minimizing the

granularity at the vertices.

Petitjean and boyer (2001)

,Attene and

Spagnuolo(2000)

Morse theory Obtaining a topologically

correct mesh based on

sweeping through the family

of surface f(x,y,z)=α for

varying parameters α and

watching the critical point

where the topology changes

Stander and Hart(1997)

Siersma(1999)

Table 1 The concept and reference for surface reconstruction algorithms

Page 11: Surface Reconstruction Algorithms:Review and Comparison

3) The time used by algorithm to compute the surface

9 Results and Analysis

Figures 11 to 15 show the 3D model reconstructed by using Alpha shape (Figure 11), BPA (Figure

12), PowerCrust (Figure 13), Cocone (Figure 14) and Interpolated method (Figure 15). For

interpolated method, first compute the AMLS surface (Dey and Sun, 2005b), then applied the

PowerCrust algorithm to define the 3D surface. The α value of the Alpha shape algorithm is chosen

based on point cloud density (MeshLab, 2010).

Algorithm Implementation

Alpha shape MeshLab

BPA MeshLab

PowerCrust MATLAB

Cocone Open source

Interpolated method(AMLS) Open source

Model Number of points

Face 11642

Box 10757

Engine 10755

Vase 9649

Flower 7916

Sphere 5724

Table 2 Surface reconstruction algorithm and their implementations

Table 3 The model and number of point clouds

(a) (b) (c)

Page 12: Surface Reconstruction Algorithms:Review and Comparison

(d) (e) (f)

Figure 11 Surface created from Alpha shape algorithm

(a) (b) (c)

(d) (e) (f)

Figure 12 Surface created from Ball Pivoting Algorithm

Page 13: Surface Reconstruction Algorithms:Review and Comparison

(a) (b) (c)

(d) (e) (f)

Figure 13 Surface created from PowerCrust Algorithm

(a) (b) (c)

(d) (e) (f)

Figure 14 Surface created from Cocone Algorithm

Page 14: Surface Reconstruction Algorithms:Review and Comparison

The comparison from Figures 11 to 15 had shown that the topology surfaces created by each algorithm

are based on the density of input point. For point clouds with good sampling density, for example the

face, vase and box , almost all algorithm we used have successfully reconstruct the true surface (refer

(b), (e), (f) for Figures 11 to 15. The extra step needs to remove the noise in the model, but this not

discuss here since beyond the scope of this paper). Alpha shape, BPA and Cocone algorithm will

reconstruct the incomplete surface (surface have unwanted hole, see (a), (c) and (e) from Figure 11 to

15) when the sample point are not dense enough.

PowerCrust algorithm created the surface without hole, even the point clouds are not dense enough

(Figure 13). But the problem is, this algorithm also closes the “inside” surface of the 3D model. For

example, the engine model. The true topology surface of this model should be same with Figure 11 (d)

12 (d) and 14 (d). This is because the PowerCrust algorithm computed the surface using inside

(outside) boundary, the inside surface will not define (this type of surface called as watertight surface).

The advantage of interpolate method (Figure 15) is the removal of noise effect on 3D surface.

Compare with other algorithm, interpolated method interpolates the true surface based on

mathematical functions, for example the Adaptive Moving Least square (AMLS) surface. The final

surface or point clouds from this method are a smooth surface and same topology with the original

model. Figure 16 compared the point clouds before (colour red) and after (colour blue) the AMLS

algorithm is applied. Please mention that these methods just interpolate the true point but not adding

the extra point on the point clouds.

(a) (b) (c)

(d) (e) (f)

Figure 15 Surface created from Interpolated (AMLS) method

Page 15: Surface Reconstruction Algorithms:Review and Comparison

Table 4 compared the number of surfaces for each model based on algorithms. The table had shown

that the alpha shape algorithm computed more surfaces that other algorithm. Among the algorithms we

had applied in this paper, BPA or ball pivoting algorithm only creates a small collection of surface

from point clouds. Even for same object and model, the surfaces created by different algorithms are

not same. Alpha shape, PowerCrust and Cocone can be categorized as Delaunay/Voronoi based

algorithm. This type of algorithm will compute more surface that other existing algorithm.

Model Alpha

shape

BPA PowerCrust Cocone Interpolate

method

Face 53713 22917 23182 22975 23208

Box 33877 20197 21492 21414 21494

Engine 48189 19851 21906 21143 21524

Vase 50774 18011 18648 17812 18718

Flower 29120 14493 15838 15440 15844

Sphere 10980 10504 11456 11433 11432

Figure 16 The comparison of point clouds before and after applied the AMLS

algorithm. The point cloud with colour red is original point and colour blue is point

after AMLS algorithm is computed. This Figure show how these two point cloud

deviated to each other

Table 4 The number of surface of each model based on the algorithms

Number of surface

Page 16: Surface Reconstruction Algorithms:Review and Comparison

Figure 17 shows the time used by each algorithm to compute the surface based on the number of point

clouds. From the graph, the time used to compute the surface is directly proportional to the number of

input points. More time is needed to compute the surface when the number of point clouds is

increasing. Delaunay/Voronoi based algorithm (Alpha shape, Cocone and PowerCrust) using more

time to compute surface compare with other algorithm. This is because the computation of Voronoi

Diagram or Delaunay Triangulation is time consuming (Bernardini, 1999; Dey, 2007).The interpolated

method, for example, the computation of Moving Least square surface, involving the using of matrix

in the algorithm. When the number of point clouds increases, the dimension of matrix will also

increase, the high memory storage is needed. Indirectly, the complexity time for an algorithm will also

increase. The BPA algorithm not involved any computation in Voronoi Diagram or Delaunay

Triangulation. Hence, this algorithm is faster than other algorithms.

10 The Problems in Surface Reconstruction Algorithms

The choosing of surface reconstruction algorithms that can be applied for all datasets still is an open

problem in computer graphics community (Boissonnat and Teillaud, 2004). Tangent plane estimation

proposed by Boissonnat (1984) and Hoppe et al (1992) will fail to reconstruct the surface when the

point clouds have noise. In real time scanning, the noise cannot be avoided since the measurements

always contain errors. The tangent plane estimation method will estimate the wrong tangent plane.

Hence, the surface with noise will be created.

The Delaunay/Voronoi based algorithms (Alpha shape, Crust, PowerCrust and Cocone) are surface

reconstruction algorithm come with theoretical guarantee. But this theoretical guarantee only met

under some conditions. If these conditions are not met, their behaviour is not specified. From our

experience, it is not easy to meet these conditions in real time scanning. For example, the point clouds

are not dense enough to describe the real object. This will cause the algorithms reconstruct the wrong

surface.

The time complexity is another factor should be considered in surface reconstruction algorithms.The

real time scanning project always produce the huge number of point clouds. The computation of

5000 6000 7000 8000 9000 10000 11000 120000

2

4

6

8

10

12

14The comparison of Time for surface reconstrcution based on algortihms

Number of point clouds

Tim

e(i

n s

eco

nd

)

BPA

alpha shape

powercrust

cocone

Interpolate method

Figure 17 The comparison of time for surface

reconstruction based on algorithms

Page 17: Surface Reconstruction Algorithms:Review and Comparison

Voronoi Diagram and Delaunay Triangulation (for example, the Delaunay/Voronoi based algorithm)

on these point clouds are time consuming. The time used to generate the 3D model must be considered

in real time scanning project. This is because the time used by algorithm to generate 3D model from

point clouds will affect the progress of scanning project.

11 Conclusions

This paper compared and analysis the surface generated by well-known surface reconstruction

algorithms. The comparison had shown the topology surface generated by these algorithms is based on

the density of point clouds. When the density of point clouds is not good enough, Alpha shape, BPA

and Cocone algorithm will reconstruct the incomplete surface. PowerCrust algorithm can reconstruct

the surface from low density point clouds, but the surface created is not smooth. This problem can be

resolved by represented the surface as AMLS or Adaptive Moving Least Square surface. The number

of surfaces generated by BPA algorithm is less than the number of surfaces generated by

Delaunay/Voronoi based algorithms. Hence, the generating of 3D surface by using BPA algorithm

will faster than Delaunay/Voronoi based algorithms. These algorithms (except interpolated method)

fail to reconstruct the smooth surface when the point clouds had noise. Based on this analysing, the

new surface reconstruction algorithm will be proposed.

12 The Proposed of new Surface Reconstruction Algorithm

Two factors will be considered in the new surface reconstruction algorithm:

1.) Time complexity of algorithm and

2.) How the algorithm can deal with error or noise in point clouds

For the first factor, the idea is to simplify the number of point clouds. The simplify direction should be

as follows: the algorithm will simplify the point clouds at plane region, since for plane area; just few

numbers of points are enough to describe the true shape of the object. For areas with high curvature,

the simplification process should be maintained the geometry and topology surface of the object.

Overall, the simplification algorithm should not change the shape and topology surface of the point

clouds.

For surface reconstruction, the using of Voronoi Diagram or Delaunay Triangulation in the algorithm

is avoided. So, the solution is extracted the boundary of the point clouds as a line, as what proposed by

Kalogerakis et al (2008). Several researches had been proposed for reconstructing the surface from

noisy sample (Kolluri et al, 2004; Mederos et al, 2005; Ohtake et al, 2005). These ideas will apply in

the new surface reconstruction algorithm.

These two algorithms (simplify the point clouds and extract the boundary of point clouds as a

line) will be combined to become new surface reconstruction algorithm. Hence, the new

surface reconstruction algorithm should be able to simplify the point and at the same time

reconstructed the 3D surface (Figure 18). The detail of this algorithm will discuss in next

paper.

Page 18: Surface Reconstruction Algorithms:Review and Comparison

References

[1] Amenta, N. and Bern ,M. 1998a Surface reconstruction by Voronoi filtering. Discrete

Comput.Geom., 22(4):481-504

[2] Amenta, N., Bern,M. and Eppstein, D. 1998b The Crust and the beta skeleton:

combinatorial curve reconstruction. Graphical models and Image Processing,60:125-

135

[3] Amenta, N., Choi, S.,Dey,T.K. and Leekha,N. 2000 A simple algorithm for

homeomorphic surface reconstruction. In Proc 16th

Ann. Sympos.Comput.Geom,pg

213-222

Figure 18 The proposed new surface reconstruction

algorithm

Page 19: Surface Reconstruction Algorithms:Review and Comparison

[4] Amenta,N. ,Choi,S. and Kolluri,R. 2001a The power Crust. In ACM Solid modeling,

pg 213-222

[5] Amenta, N., Choi, S. and Kolluri,R. 2001b The power Crust , unions of balls and the

medial axis transform. Comput Geom,Theory Appl(9):127-153

[6] Alexa, M., Behr, J., Cohen, O., Fleishman, S., Levin, D. and Silva, T. 2001a Point set

surface. Proceedings of conference on Visualization .20-26 October. San Diego,

United state.

[7] Alexa, M., Behr, J., Cohen, O., Fleishman, S. ,Levin,D. and Silva, T. 2001b

Computing and Rendering point set surface. Journal IEEE Transaction on

visualization and computer graphics. 9(1):3-15.

[8] Attene, M. and Spagnuolo, M. 2000 Automatic surface reconstruction from point sets

in space. In Eurographics ,ACM press.pg 457-465

[9] Boissonnat, J.D. and Teillaud, M. 2004 Effective Computational geometry for curves

and surfaces. Springer Berlin Heidelberg New York

[10] Boissonnat, J.D. 1984.Geometric structures for three dimensional shape

representation.ACM Trans.Graph.,3(4):266-286.

[11] Boissonnat, J.D. and Cazals, F.2000 Smooth surface reconstruction via natural

neighbour interpolation of distance functions. In Proc, 16th Ann Symposium on

computational geometry, pg 223-232

[12] Boissonnat, J.D. and Cazals, F. 2001 Coarse to fine surface simplification with

geometric guarantees. In A.chalmers and T-M.Rhyne ,editor ,Eurographics. Pg 490-

499

[13] Burke, H.F, Morgan, D.J., Kessler, H. and Cooper, A.H. 2010 A 3D geological

model of the superficial deposits of the Holderness area. British Geological Survey,58

pp. 101-103

[14] Bajaj, C.L ,Bernardini, F. and Xu, G. 1995 Automatic Reconstruction of surfaces and

scalar fields from 3D scans. Proceedings of the 22nd

annual conference on computer

graphics, August 6-11,Los Angles,USA

[15] Bernardini, F., Mittleman, J., Rushmeir, H., Silva, C. and Taubin, G. 1999 The ball

pivoting algorithm for surface reconstruction algorithm. IEEE Transaction on

Visualization and Computer Graphics. 5(4):349-359

[16] Chaine, R. 2003 A convection geometric based approach to surface reconstruction.

In Symp, Geometry Processing, pages 218-229

Page 20: Surface Reconstruction Algorithms:Review and Comparison

[17] Curles, B. and Levoy, M. 1996 A volumetric method for building complex models

from range image. Proc SiGGRAPH, pp 303-312

[18] Carr, J.C., Cherrie, R.K., Cherrie, J.B., Mitchell, T.J., Fright, W.R., Mccallum, B.C.

and Evans, T.R. 2001 Reconstrcution and representation of 3D objects with radial

basis functions. In Proceedings of ACM SIGGRAPH ,ACM Press, pp 67-76

[19] David, E. 1999 Spanning trees and spanners. Handbook of computational

Geometry.Elsevier, pp 425-461

[20] Dey, T.K. 2007 Curve and surface reconstruction :algorithms with mathematical

analysis .Cambridge University Press

[21] Dey, T.K., Giesen, J. and Hudson, J. 2001 Delaunay based shape reconstruction from

large data. In IEEE Symposium in Parallel and Large Data Visualization and

Graphics. Pg 19-27

[22] Dey, T.K. and Goswami, S. 2003 Tight Cocone : A water tight surface reconstructor

. Journal of computing and information science in enginerring.pg 302-307

[23] Dey, T.K. and Goswami, S. 2004 Provable Surface Reconstruction from Noisy Point

Clouds. Technical Report, OSU-CISRC-7/50-TR50. Department of CSE, Ohio State

University

[24] Dey, T.K. and Sun, J. 2005a Normal and Feature Approximation from Noisy

PointClouds. Technical Report , OSU-CISRC-7/50-TR50. Department of CSE. Ohio

State University

[25] Dey, T.K. and Sun, J. 2005b An adaptive MLS surface for reconstruction with

guarantees. Proceedings of 3th Eurographics symposium on geometry processing.15-

17 october ,Aire-la-villa ,Switzerland.

[26] Edelsbrunner, H. and Mucke, D. 1994 Three-dimensional alpha shapes. ACM

Transcations on Graphics 13(1):43-72.

[27] Edelsbrunner, H. 2003 Surface reconstruction by wrapping finite point sets in space.

In.Springer-Verlag,pg 379-404

[28] Funke, S. and Ramos, E.A. 2002.Smooth surface reconstruction in near linear time.

In ACM SODA.pg 781-790

[29] Heckel, F., Konrad, O., Hahn, H.K. and Peitgen, H.O. 2011 Interactive 3D medical

image segmentation with energy –minimizing implicit functions. Computer &

Graphics, 35(2) 275-287.

Page 21: Surface Reconstruction Algorithms:Review and Comparison

[30] Hoppe, H., DeRose, T., Duchamp, T., McDonald, J. and Stutzle, W. 1992 Surface

reconstruction from unorganized points. In Proc.SIGGRAPH, pp 71-78

[31] Kolluri , R. , Shewchuk, J.R. and Brien, J.F. 2004 Spectral surface recon-struction

from noisy point clouds. EuroGraphics Symposium on Geometry Processing , pg 11-

21

[32] Kalogerakis, E. ,Nowrouzezahrai, D., Simari, P. and Singh, K. 2008 Extracting lines

of curvature from noisy point clouds. Computer aided Design.41(4):pg 282-292.

[33] Levin, D. 2001.Mesh Independent surface representation. Technical Report ,Tel

Aviv university

[34] Melkemi, M. 1997 A shape of a finite point set. In 13th

ACM symposium on

computational geometry.pg 367-369

[35] Mederos, B., Amenta, N., Velho, L. and Henrique , L. 2005 Surface Recon-struction

from Noisy Point clouds . Eurographics Symposium on Geometry Processing. Article

No. 53

[36] MeshLab (2010). Version 1.3.2. Open Source

[37] Newman, T.S. and Yi, H 2006 A survey of the marching cubes algorithm. Computer

& Graphics 30(6):854-879

[38] Ohtake, Yutaka , Belyaev, Alexander ,Seidel and Hans, P. 2005 An integrating

approach to meshing scattered point data , Proceedings ACM symposium on Solid and

physical modeling,pg 61-69

[39] Pal, P. 2001 An easy rapid prototyping technique with point cloud data. Rapid

Prototyping Journal.7(2):82-90.

[40] Petitjean, S. and Boyer, B. 2001 Regular and non regular points sets: Properties and

reconstruction . Comput.Geom.Theory Appl.19:101-126.

[41] Siersma, D. 1999 Voronoi Diagrams and Morse theory of the distance function. In

Geometry in present day science ,World Scientific ,Singapore. PP.187-208.

[42] Steiner, D.C. and Da, F. 2004 A greedy Delaunay based surface reconstruction

algorithm. The Visual Computer.20:4-16.

[43] Stander, B.T and Hart, J.C. 1997 Guaranteeing the topology of an implicit surface

polygonization for interative modeling. Computer Graphics,31:279-286

[44] Teichmann, M. and Capps, M. 1998 Surface reconstruction with anisotropic density

scaled alpha shapes. In proceedings of IEEE Visualization , pg 67-72.

Page 22: Surface Reconstruction Algorithms:Review and Comparison

[45] Wang, H. ,Rong, Y. ,Li, H and Shaun, P. 2010 Computer aided fixture design:

Recent research and trends. Computer aided design,42(12):1085-1094.

[46] Xu, X. and Harada, K. 2002 Auto surface reconstruction with alpha shape. IAPR

workshop on machine vision application.Dec11-12,Nara,Japan

Open sources and web page:

Meshlab, http://meshlab.sourceforge.net/

Cocone and Tight Cocone, http://www.cse.ohio-state.edu/~tamaldey/surfrecon.htm

Free 3D model, http://shapes.aimatshape.net/