laplacian - semantic scholar...laplacian algorithm. one approac h to surface smo othing is the...

24

Upload: others

Post on 29-Jun-2020

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Laplacian - Semantic Scholar...Laplacian algorithm. One approac h to surface smo othing is the Laplacian algorithm. V ersions of Laplacian smo othing are e.g. kno wn in image pro cessing

Improved LaplacianSmoothing of NoisySurface MeshesJ. Vollmer, R. Mencl, H. M�ullerResearch Report No. 711 /1999June 1999

Page 2: Laplacian - Semantic Scholar...Laplacian algorithm. One approac h to surface smo othing is the Laplacian algorithm. V ersions of Laplacian smo othing are e.g. kno wn in image pro cessing
Page 3: Laplacian - Semantic Scholar...Laplacian algorithm. One approac h to surface smo othing is the Laplacian algorithm. V ersions of Laplacian smo othing are e.g. kno wn in image pro cessing

Improved LaplacianSmoothing of NoisySurface MeshesJ. Vollmer, R. Mencl, H. M�ullerUniversit�at DortmundInformatik VII (Computer Graphics)D{44221 DortmundGermanyTel.: +49 (0231) 755 - 6122E-mail: fmencl,[email protected] Report No. 711 /1999�June 1999z�Available in color postscript and pdf format at the LS7 Publications page(http://LS7-www.cs.uni-dortmund.de).zTo appear in Proceedings of EUROGRAPHICS '99, Milano, Italy,September 7th{11th, 1999.

Page 4: Laplacian - Semantic Scholar...Laplacian algorithm. One approac h to surface smo othing is the Laplacian algorithm. V ersions of Laplacian smo othing are e.g. kno wn in image pro cessing

AbstractThis paper presents a technique for smoothing polygonal surface meshesthat avoids the well-known problem of deformation and shrinkage causedby many smoothing methods, like e.g. the Laplacian algorithm. The ba-sic idea is to push the vertices of the smoothed mesh back towards theirprevious locations. This technique can be also used in order to smoothunstructured point sets, by reconstructing a temporary surface mesh towhich the smoothing technique is applied. The key observation is that asurface mesh which is not necessarily topologically correct, but which cane�ciently be reconstructed, is su�cient for that purpose.ZusammenfassungDieser Artikel stellt ein Verfahren zur Gl�attung von Ober �achennetzenvor, welches das bekannte Problem der Deformation und Schrumpfungvermeidet, das bei vielen, wie z.B. dem Laplace-Algorithmus, auftritt.Der Grundgedanke besteht darin, die Knoten des gegl�atteten Netzes inRichtung der urspr�unglichen Positionen zur�uckzuverschieben. Das Ver-fahren kann weiter zur Gl�attung von reinen Punktmengen verwendet wer-den, indem ein tempor�ares Netz konstruiert wird, auf das der Algorith-mus angewendet wird. Der wesentliche Punkt dabei ist, da� dieses Netznicht notwendigerweise topologisch korrekt sein mu, sich allerdings e�zientberechnen l�a�t und f�ur die Aufgabe des Gl�attens v�ollig ausreicht.

Page 5: Laplacian - Semantic Scholar...Laplacian algorithm. One approac h to surface smo othing is the Laplacian algorithm. V ersions of Laplacian smo othing are e.g. kno wn in image pro cessing

1 IntroductionA useful approach to acquire complex geometric models in computergraphics is digitization. From the cloud of points scanned by digitizingdevices like laser scanners or tactile scanners, a surface description maybe obtained by connecting the points in an appropriate manner into asurface mesh, e.g. a mesh of triangles.Unfortunately, the digitized points often do not re ect the correct loca-tion on the real surface, because of physical noise added by the technicalscanning device. The e�ect is that the reconstructed surfaces often do notlook satisfactory. The consequence is that the mesh has to be smoothed,with the goal to remove the noise.Figure 1: From left to right: origin, noisy mesh, three iterations of the Laplacianalgorithm.One approach to surface smoothing is the Laplacian algorithm. Versionsof Laplacian smoothing are e.g. known in image processing and �nite-element-meshing [6, 1, 3]. The basic idea in image processing is to replacethe grey value of a pixel with an average of the grey values of pixels insome neighborhood. Similarly, the location of a vertex in a �nite-elementmesh is corrected by calculating a new location as the average of thelocations of vertices in the neighborhood on the mesh. This process ofaveraging can be applied iteratively, until the result is satis�able.Averaging causes a smoothing e�ect which is similar to that which wedesire in our application of surface mesh smoothing. This observation canbe transferred to surface meshes by calculating a new location of a vertexon a surface mesh by averaging the locations of the neighboring vertices.Figure 1 shows the result of an iterative application of this approach1

Page 6: Laplacian - Semantic Scholar...Laplacian algorithm. One approac h to surface smo othing is the Laplacian algorithm. V ersions of Laplacian smo othing are e.g. kno wn in image pro cessing

to a data set. For demonstration, the originally smooth vertices weredisarranged by noise.However, the example of �gure 1 shows an undesirable e�ect of that ap-proach. The essential di�culty is that the application of the Laplacianalgorithm shrinks the mesh. Evidently the resulting smooth skull is sig-ni�cantly smaller than the original one.Figure 2: From left to right: origin, noisy mesh, three iterations of our algorithm.In this contribution, we present a general approach, called HC-algorithm,which prevents the e�ect of shrinking, while preserving the e�ect ofsmoothing. The key idea is to push the vertices obtained in each step ofiteration of the Laplacian algorithm back into the direction of the originalvertices. Figure 2 shows the result of an application on the data set of�gure 1. The smoothed mesh is quite similar to the original, also in size.After �xing the required notation in section 2, in section 3 we intro-duce in some more detail the Laplacian algorithm for surface meshes,including several useful variants. Section 4 describes the HC-algorithm.In section 5, the behavior of convergence of the iteration of the originalLaplacian algorithm and the HC-algorithm is given. Section 7 discussesthe more general case that only a cloud of points not connected by amesh has to be smoothed. The basic idea of our solution to that prob-lem is to construct a surface mesh connecting the given points which,when smoothed, yields the desired smoothed point set. The interestingobservation with this approach is that it is not necessary to construct atopologically correct mesh which makes the task much more easy thanthe rather complex surface reconstruction problem.2

Page 7: Laplacian - Semantic Scholar...Laplacian algorithm. One approac h to surface smo othing is the Laplacian algorithm. V ersions of Laplacian smo othing are e.g. kno wn in image pro cessing

2 Formal conventionsIn the following a mesh M with vertex set V = f1; : : : ; ng is given bya tupel (K;p), where K � 2V is a simplicial complex and p : V ! IR3is a function, which maps every vertex i to its position pi. In generaldi�erent vertices i 6= j can have the same position pi = pj . The "set" ofpoints p will be represented in the following by the vertical point vectort(p1; : : : ;pn). The set of vertices V is split up into two disjoint sets of�xed vertices Vfix and movable vertices Vvar. The set of adjacent verticesof one vertex i is denoted by Adj (i). Let E := fe 2 K j jej = 2g be theset of edges and F := ff 2 K j jf j = 3g be the set of faces of M .It is characteristically for smoothing algorithms in contrast to swapping-(see sect. 7) and subdivision algorithms (see sect. 6) that they modify thepositions pi; i 2 Vvar of the moveable vertices while keeping the topologyK of the mesh unchanged. We follow the convention that oi are theoriginal given points, qi the current points (before the application ofthe algorithm) and pi the new, modi�ed positions after one iteration ofthe algorithm. E.g. a smoothing algorithm starts with vertex positionso =: q and maps the current positions q onto p by one step.Usually, the new position pi of any vertex i depends solely on the posi-tions of its adjacent vertices j 2 Adj (i). To avoid problematic cases, westate the convention that if Adj (i) = ; then i 2 Vfix.3 Laplacian smoothingIn this section the original version and two modi�cations of the Laplacianalgorithm will be introduced. They belong to the class of smoothingalgorithms de�ned as above.3.1 The original versionThe Laplacian algorithm is quite simple: the position pi of vertex i isreplaced with the average of the positions of adjacent vertices (�gure 3).3

Page 8: Laplacian - Semantic Scholar...Laplacian algorithm. One approac h to surface smo othing is the Laplacian algorithm. V ersions of Laplacian smo othing are e.g. kno wn in image pro cessing

We have pi := � 1jAdj (i)jPj2Adj (i) qj ; i 2 Vvar ;qi; i 2 Vfix:qj6

qj5

qi

qj4qj2

qj1

qj3

qj1

qj2

qj3

qj4

qj6

qj5

ip

Figure 3: The Laplacian algorithm.There are two techniques to calculate new positions pi. The �rst methodis to modify all positions q 7! p by one step. So every new position pi,i = 1; : : : ; n, depends completely on the same set of positions, namely q.This method is called the simultaneous version. The second variant isto update the new positions pi immediately. This variant is called thesequential version. In this case a position pi may not solely depend onthe \set" of old positions q but can depend on a previously calculatednew position pj , too. Hence the result of one smoothing pass through allvertices i 2 Vvar will depend on the order how the vertices are considered.The simultaneous version needs more storage space for holding all oldpositions q until the new are calculated completely. However, the resultsof this techniques are better. Surprisingly, among all other smoothingalgorithms the Laplacian algorithm is the single one that has the propertythat the limits of the two techniques are the same if they exist (see 3.3and 5).Figure 4 shows meshes with Vfix = ; after 1,2, and 3 iterations smoothedwith the Laplacian algorithm. We can recognize strong shrinkage. If thenumber of iterations k goes to in�nity the mesh will be shrinking towardsa point. 4

Page 9: Laplacian - Semantic Scholar...Laplacian algorithm. One approac h to surface smo othing is the Laplacian algorithm. V ersions of Laplacian smo othing are e.g. kno wn in image pro cessing

Figure 4: Laplacian algorithm applied to a noisy torus.3.2 Inclusion of the central pointIt is noticeable that only the positions of the adjacent vertices and notthe current position qi is included in the calculation of the new positionpi. This could be done by extending the Laplacian rule topi =8<: �qi + 1��jAdj (i)jPj2Adj (i) qi; i 2 Vvar;qi; i 2 Vfix:It turns out that this modi�cation is not essential. We obtain neither abetter smoothing quality nor better properties concerning the shrinkinge�ect. This modi�cation only delays the smoothing process in comparisonwith the original version.3.3 Inclusion of the original pointIn general, the Laplacian algorithm might not converge. In order toexplain this we consider a mesh consisting of only two vertices i; j jointby one edge fi; jg. The original simultaneous Laplacian algorithm letsthe positions pi $ pj exchange alternately. But in most cases the meshconverges towards one point.An idea to avoid these disadvantages and to force convergence againsta non-trivial mesh is to include the original points oi �-weighted in thecalculation: pi := � �oi + 1��jAdj (i)jPj2Adj (i) qj ; i 2 Vvar;qi; i 2 Vfix:5

Page 10: Laplacian - Semantic Scholar...Laplacian algorithm. One approac h to surface smo othing is the Laplacian algorithm. V ersions of Laplacian smo othing are e.g. kno wn in image pro cessing

Figure 5: Extended Laplacian algorithm with � = 0:2.Figure 6: Extended Laplacian algorithm with � = 0:4.Depending on the location of � near at 1 or near at 0, we can choosebetween a strong or a weak binding of pi to the original position oi. Itwill be shown in section 5 that non-trivial convergence is guaranteed if� > 0. An interesting question is whether we can solve the deformationand shrinkage problem by this idea. Obviously, the last torus in �gure5 is quite better in comparison with the result produced by the originalLaplacian algorithm showed in 4. However, it is not free from shrinkage.Concerning shrinkage we rather would like to obtain a mesh shown in�gure 6. Unfortunately, this mesh is not smooth enough. All of ourexamples have shown that the results of this technique only form a badcompromise between smoothing quality and degree of deformation orshrinkage, respectively.4 The HC-algorithmThe idea of the HC-algorithm (HC = Humphrey's Classes is a nicknameand has no deeper meaning) is to push the modi�ed points pi (produced6

Page 11: Laplacian - Semantic Scholar...Laplacian algorithm. One approac h to surface smo othing is the Laplacian algorithm. V ersions of Laplacian smo othing are e.g. kno wn in image pro cessing

p j2

jq1

p i

p j3

q i

q j3

q j4

q j2

b j2

d i b i

b j3

d ip i+

Figure 7: The de�nition of di in the case of the HC-modi�cation based on theLaplacian algorithm (for simpli�cation with � = 0, i.e. without in uence of oi).by the Laplacian algorithm e.g.) back towards the previous points qi and(or) the original points oi by the average of the di�erencesbi := pi � (�oi + (1� �)qi); i.e. bydi := � 1jAdj (i)j Xj2Adj (i)bj :It turns out (see sect. 5) that in this case, in contrast to sect. 3.2 thedi�erence bi at the center vertex i must be included, weighted by ascalar � 2 [0; 1] so thatdi := �(�bi + 1� �jAdj (i)j Xj2Adj (i)bj):Hence, there are two steps: the given smoothing algorithm that maps q top, and the HC-modi�cation that maps p to p+d as a kind of correction.It is remarkable that this calculation is, similar to the Laplacian operationfrom sect. 3.2, also not relating to the points pi but to the di�erences bi.Four iterations of the two steps are applied to a noisy cube in �gure 9.We notice that the size of the cube de- and increases alternately. The7

Page 12: Laplacian - Semantic Scholar...Laplacian algorithm. One approac h to surface smo othing is the Laplacian algorithm. V ersions of Laplacian smo othing are e.g. kno wn in image pro cessing

Figure 8: From left to right: noisy mesh, four steps of Laplacian smoothing only.We notice a high degree of deformation and shrinkage.

Figure 9: From left to right: origin, noisy mesh, alternately a Laplacian operationand a HC-modi�cation.Figure 10: The size of the bounding box of the cube is identical to the original cubeof �gure 9 (upper left).last cube seems to be shrunk a little. Figure 10 shows that this is notthe case. The reason for this optical illusion are the rounded edges andcorners of the cube. Obviously the cubes smoothed by the Laplacianalgorithm only (�gure 9) are shrinking much more. In both cases thesimultaneous version of the algorithms has been taken.8

Page 13: Laplacian - Semantic Scholar...Laplacian algorithm. One approac h to surface smo othing is the Laplacian algorithm. V ersions of Laplacian smo othing are e.g. kno wn in image pro cessing

Algorithm 1 HC-algorithmp := o; // initialize points with original locationsrepeatq := p;for all i 2 Vvar don := jAdj (i)j;if n 6= 0 thenpi := 1nPj2Adj (i) qj ; // Laplacian operationend ifbi := pi � (�oi + (1� �)qi);end forfor all i 2 Vvar don := jAdj (i)j;if n 6= 0 thenpi := pi � (�bi + 1��n Pj2Adj (i) bj);end ifend foruntil <condition> // e.g. smooth enough5 Mathematical treatmentThe goal of this section is to investigate the convergence behavior ofthe Laplacian- and of the HC-algorithm. In section 3.3 was mentionedthat the version described there converges in every case. It became cleartoo that convergence only does not guarantee a good smoothing algo-rithm. However, convergence should be the minimum requirement weexpect from an algorithm that works iteratively. While convergence ofthe extended Laplacian algorithm described in 3.3 is quite evident, thisis not the case for the HC-algorithm. We formulate the iteration step ofthe simultaneous Laplacian algorithm in matrix notation, since it is themore important case in practice. The treatment of the sequential ver-sion is more extensive. Both versions can be interpreted as two kinds ofnumerical algorithms for solving the same matrix equation Ax = b. Ad-ditionally, this implies that the two limits are equal as mentioned above.Further details on this are not considered here.Let M = (K;p) be a mesh with vertex set V and edge set E. With-9

Page 14: Laplacian - Semantic Scholar...Laplacian algorithm. One approac h to surface smo othing is the Laplacian algorithm. V ersions of Laplacian smo othing are e.g. kno wn in image pro cessing

out loss of generality we assume that Vvar = f1; : : : ;mg and Vfix =fm+1; : : : ; ng. Hence, the points p1; : : :pm are the interesting moveablepoints. One step of the Laplacian algorithm can be represented in matrixnotation [email protected] = [email protected]+0B@ r1...rm1CA ;with matrix T = (tij)i;j=1;:::;m de�ned bytij := � 1=jAdj (i)j if fi; jg 2 E;0 else,and the vector r := t(r1; : : : ; rm) byri := 1jAdj (i)j nXl=m+1� pl if fi; lg 2 E;0 else.The iteration of the Laplacian algorithm provides a sequence of vectorst(p1; : : : ;pm), denoted by x(k) where k is the index of the iteration num-ber.If we initialize x(0) := t(o1; : : : ;om) the sequences of the points generatedby x(k+1) := Tx(k) + r (1)x(k+1) := [�E+ (1� �)T]x(k) + (1� �)r (2)x(k+1) := [(1� �)T]x(k) + �x(0) + (1� �)r (3)represent the iterated point vectors of the three versions of the Laplacianalgorithm described in sections 3.1, 3.2, and 3.3, respectively.It follows from Banach's �xpoint theorem that those sequences convergeif the matrix applied to the iteration variable x(k) has only eigenvalues� with j�j < 1. It can easily be seen that the row sum Pmj=1 tij ofevery matrix is � 1. Equality happens if the corresponding vertex is notadjunct with any �xed vertex. Since this is the general case we only canconclude j�j � 1 for the eigenvalues � of T. The same holds for thematrix �E+ (1� �)T. But in the third case we can ensure convergencebecause (1��)T has eigenvalues j�j < 1 if � > 0. The following theoremsummarizes these observations. 10

Page 15: Laplacian - Semantic Scholar...Laplacian algorithm. One approac h to surface smo othing is the Laplacian algorithm. V ersions of Laplacian smo othing are e.g. kno wn in image pro cessing

Theorem 5.1 The sequence of points generated by the three versions insections 3.1, 3.2, 3.3 of the Laplacian algorithm are given by the threeequations (1), (2), (3), resp. Let � denote the spectral radius, i.e. thelargest absolute value of all eigenvalues � in T. Convergence is ensuredin all cases if �(T) < 1. This can be guaranteed only in the third case if� > 0.A more precise analysis shows that convergence in the �rst two cases canbe concluded if the mesh is connected and has at least one �xed point.Unfortunately, the general case for surface meshes is Vfix = ;.Now we consider the HC-algorithm. Let T be the matrix as de�nedabove. Expressed in terms of T, the HC-algorithm isx(k+1) = Tx(k) + r� (�E+ (1� �)T) ��Tx(k) + r� ��x(0) + (1� �)x(k)�� :Theorem 5.2 The HC-algorithm converges if � > 0 and � > 0:5.Proof Transforming the equation of the HC-algorithms yieldsx(k+1) = Tx(k) + r� (�E+ (1� �)T) ��Tx(k) + r� ��x(0) + (1� �)x(k)��=��(1� �)T2 + (2� �)(1� �)T+ (1� �)�E�x(k)+(��E+ �(1� �)T)x(0) + (1� �)(E�T)r:Responsible for the convergence is the matrix in front of x(k), i.e.H := �(1� �)T2 + (2� �)(1� �)T + (1� �)�E:The eigenvalues of H are obtained by applying the polynomialp(X) := �(1� �)X2 + (2� �)(1� �)X + (1� �)�to the eigenvalues � of T which are known to satisfy j�j � 1. Calculatingthe absolute value of p(X) for X 2 CI ; jX j � 1 is not easy. Fortunately,11

Page 16: Laplacian - Semantic Scholar...Laplacian algorithm. One approac h to surface smo othing is the Laplacian algorithm. V ersions of Laplacian smo othing are e.g. kno wn in image pro cessing

all eigenvalues of T are real. To see this, we considerD := 0BBBB@ jAdj (1)j 0 : : : 00 jAdj (2)j ...... . . . 00 : : : 0 jAdj (m)j 1CCCCAand notice that DT is symmetric. Matrices remain symmetric if theyare multiplied from the left and the right with the same diagonal matrix.Now, jAdj (i)j > 0 for all i 2 f1; : : : ;mg = Vvar because of the conven-tion that Adj (i) = ; implies i 2 Vfix. Hence, there exist an inverseelement and a square root (not uniquely). Since D�1=2 is a diagonal ma-trix, multiplying DT from the left and the right with D�1=2 results inD1=2TD�1=2 which is symmetrical and similar to T. It follows that alleigenvalues of T are in IR.This result makes it much more easy to show that jp(X)j < 1 if X � 1,� > 0, and � > 0:5. This technical task will not be shown here in detailbecause of the lack of space. A proof can be found in [12]. 2The conclusion � 2 IR is important since the upper bound 1 for p(X)will be exceeded if X 2 CI and jX j � 1. For � = 0:6 and � = 0:1 it isp(X) = �0:4X2 + 0:76X + 0:54 and so jp(i)j = j0:94 + 0:76ij � 1:2.6 DiscussionWe could see that the HC-algorithm yields quite satisfying results. How-ever, a smoothing algorithm with HC-modi�cation is not completely freefrom shrinkage, too. So further modi�cations are possible:Smoothing algorithms map qi to pi for each vertex i 2 V , according toour de�nition. Immediately after a local Laplacian smoothing operationat vertex i, �(i) := pi�Pj2Adj (i) qj = 0 holds. Clearly, after a completetreatment of all vertices �(i) = 0 cannot be expected. Rather, �(i) is adiscrete normal vector and can be regarded as a measure of the curvatureat vertex i (it even is a discrete approximation of the Laplacian operator�, which is an approximation of the mean curvature.[8]) A mesh is planarif �(i) goes towards the zero vector for all i. On the other hand, a mesh is12

Page 17: Laplacian - Semantic Scholar...Laplacian algorithm. One approac h to surface smo othing is the Laplacian algorithm. V ersions of Laplacian smo othing are e.g. kno wn in image pro cessing

smooth if neighboring normal vectors �(j); j 2 Adj (i), are similar. Thisis an important di�erence. Hence, for mesh smoothing, the �(i) need notnecessarily tend towards the zero vector like for the Laplacian algorithm.Rather, it is appropriate to �lter the high frequency parts from �. Forthis purpose, a spectral decomposition or Fourier analysis, respectively,of � would be necessary to get a �ltered function �0.The HC-algorithm is a step into this direction. � = 0 and � = 0:5imply �0 = 0:5� � � (where � is the composition operator), i.e. the HC-algorithm �lters the di�erences of second order. Probably, there can befound a better choice for �0 which perhaps can avoid deformation andshrinkage completely.The HC-modi�cation can also be applied in combination withsubdivision[8] algorithms like the Doo-Sabin- or Catmull-Clark-algorithm[5, 4]. Most of the subdivision algorithms contain rules that calculate av-erages of adjacent points. Hence, they have a component of shrinkage,too. It is possible to expand such rules by the HC-modi�cation in thesame way as we did with the Laplacian algorithm.7 Smoothing of noisy sample pointsMesh smoothing techniques may also be used in order to smooth anoriginal cloud of points without surface information. The immediate ideais to reconstruct a surface mesh from the cloud of points. Smoothing ofthe resulting mesh yields vertices in new locations which are taken asthe smoothed cloud. The di�culty with this approach is that surfacereconstruction in general is not an easy problem, cf. [11] However, itwill turn out in the following that, for the purpose of smoothing, it isnot necessary to reconstruct a perfect mesh. The only requirement isthat the neighborhoods on the reconstructed mesh are about the same asthey are on the underlying real surface. Whenever a reconstructed meshthrough the noisy point set is not available, the RFS-mesh (replacementfor surface) can be taken in order to eliminate the noise. This RFS-meshcontains nearly the same number of faces as a valid surface mesh, butabout 50 percent more edges. Faces can cross and overlap in a RFS-mesh.The RFS-mesh is based on the SDG (surface description graph) of Mencl13

Page 18: Laplacian - Semantic Scholar...Laplacian algorithm. One approac h to surface smo othing is the Laplacian algorithm. V ersions of Laplacian smo othing are e.g. kno wn in image pro cessing

Figure 11: Left: the noisy point set. Right: the EMST.et al. [9, 10]. The kernel of the SDG, in turn, is the EMST of the givenpoint cloud. The EMST (Euclidean minimum spanning tree) is a tree con-necting all points of the given set P of points with line segments so thatthe sum of its edge lengths is minimized (see �gure 11, right). The EMST(as initial surface description graph) is then extended to the surface de-scription graph (SDG) of higher order by adding edges at appropriateregions (cf. �gure 12, left, for an example of the SDG). This graph con-sists of signi�cantly more edges than the EMST and can serve as a basefor getting neighborhood information when generating the RFS-mesh.Figure 12: Left: the SDG. Right: the RFS-mesh.Independently from the degree of noise, the SDG-mesh is always de�ned.It contains less edges than a surface mesh but favourable edges, i.e. itcontains edges, that "lie" close to the assumed but actually unknownsurface that is described by the noisy point set.In the following we outline the computation of the RFS-mesh out of the14

Page 19: Laplacian - Semantic Scholar...Laplacian algorithm. One approac h to surface smo othing is the Laplacian algorithm. V ersions of Laplacian smo othing are e.g. kno wn in image pro cessing

SDG.If required, the SDG can be �lled with additional nearest-neighbor-edges.In order to take care of variations of the density of the noisy points we usean adaptive number of nearest neighbors estimated by using the SDG-mesh as reference for di�erent vertices.Around each vertex a corona of faces is be created on base of incidentedges like a spanning umbrella. By this, for each face one new edge willbe created, if it does not already exist. These edges are important forthe connectivity of the new mesh.Faces that do not ful�ll a given mesh quality measure will be deleted.We use a quality measure introduced by Bank and Smith.[2]To make edge swapping between neighboring triangles applicable, inci-dent faces to an edge are deleted by comparing their enclosed dihedralangles until there remain at most two at an edge. If there are more thantwo faces at an edge we keep that pair of edges that form the maximumdihedral angle.All edges that do not have at least one incident face are deleted.The resulting mesh is called the RFS-mesh and can be taken as input forthe HC-algorithm in order to eliminate the noise out of the point set. In�gure 12 (right) an example for an RFS-mesh is depicted. If we wouldtake the RFS-mesh of this �gure as input for the smoothing algorithm, apoint set of similar quality, with respect to the noise reduction factor, tothe one of �gure 2 in section 1 will be obtained.During the smoothing process it is advantageous to apply edge swappingand one step of the HC-algorithm alternately. Edge swapping betweentwo adjacent faces is used to increase the sum of dihedral angles at all �veedges of the two faces in the triangular mesh. Freitag et al.[7] recognizedthat the combination of edge swapping and smoothing yields better re-sults than one of the two techniques only. This was examined in the �eldof �nite element methods, i.e. for meshes in IR2 and tetrahedral meshesin IR3. We found out that this is also valid for surface meshes. The reasonis, that smoothing techniques do not change the connectivity formed bythe edges and faces (see sect. 2). All examples show that we can improvethe degree of smoothness if we permit edges to adjust themselves in a newmanner. Note, that edge swapping does not change any vertex position15

Page 20: Laplacian - Semantic Scholar...Laplacian algorithm. One approac h to surface smo othing is the Laplacian algorithm. V ersions of Laplacian smo othing are e.g. kno wn in image pro cessing

Figure 13: Noisy set of points.and hence the mesh does not shrink under this operation.An example for the smoothing process with a large point set is shownin �gures 13{17. The �rst �gure 13 shows the noisy input point setand �gure 14 its corresponding RFS-mesh. In �gure 15 the RFS-mesh issmoothed. The computation time for the whole smoothing process wasabout 10 seconds on a standard PC (Pentium MMX 300MHz). It canbe seen that the RFS-mesh is not a valid surface mesh.The smoothedpoint set of the RFS-mesh is depicted in �gure 16. This smooth pointset was taken as input for the surface reconstruction algorithm of Menclet al. [9, 10] and the result is shown in �gure 17.8 ConclusionsA technique for the elimination of noise in sets of sample points and sur-face meshes has been developed and applied successfully. The proposedtechnique presents certain advantages:16

Page 21: Laplacian - Semantic Scholar...Laplacian algorithm. One approac h to surface smo othing is the Laplacian algorithm. V ersions of Laplacian smo othing are e.g. kno wn in image pro cessing

Figure 14: Temporary RFS-mesh.� it can produce meshes with the same smoothing degree as the Lapla-cian algorithm,� in contrast to the Laplacian algorithm it preserves shape and sizeof the sampled object far better,� it preserves the point density of the mesh,� the algorithm works very fast and requires only calculations of sim-ple vector arithmetic,� it is easy to implement.References[1] N. Amenta, M. Bern, and D. Eppstein. Optimal point placement formesh smoothing. In 8th ACM-SIAM Symp. on Discrete Algorithms,17

Page 22: Laplacian - Semantic Scholar...Laplacian algorithm. One approac h to surface smo othing is the Laplacian algorithm. V ersions of Laplacian smo othing are e.g. kno wn in image pro cessing

Figure 15: RFS-mesh smoothed by the HC-algorithm in combination with edgeswapping.New Orleans, 1997.[2] R.E. Bank and R.K. Smith. Mesh smoothing using a posterior errorestimation. SIAM Journal on Numerical Analysis, 1997.[3] S. Canann, M. Stephenson, and T. Blacker. Optismoothing: Anoptimization-driven approach to mesh smoothing. Finite Elementsin Analysis and Design, 13:185{190, 1993.[4] E. Catmull and J. Clark. Recursively generated b-spline surfaces onarbitrary topological meshes. Computer Aided Design, 10(6):350 {355, 1978.[5] D. Doo and M. Sabin. Behavior of recursive division surfaces nearextraordinary points. Computer Aided Design, 10(6):356 { 360, 1978.[6] L. Freitag. On combining laplacian and optimization - based meshsmoothing techniques. In Proceedings of the 1997 Joint Sum-18

Page 23: Laplacian - Semantic Scholar...Laplacian algorithm. One approac h to surface smo othing is the Laplacian algorithm. V ersions of Laplacian smo othing are e.g. kno wn in image pro cessing

Figure 16: Noise reduced set of points maintained by the smoothed RFS-mesh.mer Meeting of American Society of Mechanical Engineers (ASME)American Society of Civil Engineers (ASCE) and Society of En-ginieers Science (SES), pages 37{44, 1997.[7] L. Freitag and C. Ollovier-Gooch. Tetrahedral mesh improvementusing face swapping and smoothing. International Journal for Nu-merical Methods in Engineering, Vol. 40, 1997.[8] Leif Kobbelt. Iterative Erzeugung glatter Interpolanten. PhD thesis,University of Karlsruhe, 1994.[9] Robert Mencl. A graph{based approach to surface reconstruction.Computer Graphics forum, 14(3):445{456, 1995. Proceedings ofEUROGRAPHICS '95, Maastricht, The Netherlands, August 28 -September 1, 1995.[10] Robert Mencl and Heinrich M�uller. Graph{based surface reconstruc-tion using structures in scattered point sets. In Proceedings of CGI'98 (Computer Graphics International), Hannover, Germany, June19

Page 24: Laplacian - Semantic Scholar...Laplacian algorithm. One approac h to surface smo othing is the Laplacian algorithm. V ersions of Laplacian smo othing are e.g. kno wn in image pro cessing

Figure 17: Reconstruction based on the noise reduced set of points.22th{26th 1998., pages 298{311, 1998. similar version also availableas Research Report No. 661, 1997, Fachbereich Informatik, LehrstuhlVII, University of Dortmund, Germany.[11] Robert Mencl and Heinrich M�uller. Interpolation and approxima-tion of surfaces from three{dimensional scattered data points. pages51{67, 1998. EUROGRAPHICS '98, STAR - State of the Art Re-ports, also available as Research Report No. 662, 1997, FachbereichInformatik, Lehrstuhl VII, University of Dortmund, Germany.[12] J.C. Vollmer. Eliminierung von lokalem und globalem Rauschenin ungeordneten Punktmengen auf dreidimensionalen Ober �achen.Master's thesis, University of Dortmund, Germany, November 1998.20