Reconstructing Implicit Surfaces with Sharp Edges ... - Semantic Scholar

1 downloads 0 Views 304KB Size Report
allows to integrate sharp edges by simply specifying the implicit equation of a ...... [5] J. C. Carr, R. K. Beatson, J. B. Cherrie, T. J. Mitchell, W. R. Fright, B. C. ...
Laboratoire Bordelais de Recherche en Informatique UMR 5800 - Universit´e Bordeaux I, 351, cours de la Lib´eration, 33405 Talence CEDEX, France

Research Report RR-1334-04

Reconstructing Implicit Surfaces with Sharp Edges via Enriched Reproducing Kernel Approximation Patrick Reuter, Pierre Joyot, Jean Trunzler, Tamy Boubekeur, Christophe Schlick preuter|boubek|[email protected] december 2004

Reconstructing Implicit Surfaces with Sharp Edges via Enriched Reproducing Kernel Approximation Patrick Reuter LIPSI ESTIA [email protected]

Pierre Joyot LIPSI ESTIA [email protected]

Jean Trunzler LIPSI ESTIA [email protected]

Tamy Boubekeur LaBRI - CNRS - INRIA University of Bordeaux [email protected]

Christophe Schlick LaBRI - CNRS - INRIA University of Bordeaux [email protected] Abstract We present a new efficient implicit surface reconstruction technique from unorganized point sets that allows to integrate sharp edges by simply specifying the implicit equation of a half-space that cuts the sharp edge, i.e. where the derivative of the defining function of the implicit surface is discontinuous. As the underlying surface descriptor, we use the Enriched Reproducing Kernel Particle Approximation (ERKPA) method [8] that is an extension of the Reproducing Kernel Particle Approximation (RKPA) method, which is itself a generalization of the Moving Least Squares (MLS) method.

1 Introduction The recent evolution in 3D acquisition devices, which has made 3D range scanners available to a larger public, has generated in a shift that 3D models are more and more often acquired rather than modeled. The large unorganized point sets that are coming from these devices are often noisy and non-uniform, and it is desirable to reconstruct a continuous surface representation. It is not sufficient to simply connect the points since the noise in the data would be present in the reconstruction. A large number of surface reconstruction techniques have been presented recently. Basically, they can be divided into two categories, whether they reconstruct either parametric surfaces or implicit ones.

We present a new technique that belongs to the latter category. Implicit reconstruction techniques generate a surface defined as the zero-set of a trivariate scalar defining function. The stereotype that implicit surfaces always have this ”blobby” character, that has existed for years in the computer graphics field, has fairly disappeared nowadays, thanks to recent implicit techniques based for example on Moving Least Squares [2], Radial Basis Functions [25, 5] or the Partition of Unity [17]. On the other hand, the reconstructed implicit surfaces generally remain smooth and several researchers qualified their approaches with respect to the degree of continuity. But in addition to the smoothness, it is desirable to include the possibility to represent sharp edges (and corners) in a coherent implicit surface description. To our knowledge, there is no existing approach to model implicit surfaces with sharp edges using a unique surface descriptor; the only few techniques that exist are all based on piecewise defined implicit surfaces, see for example [17]. In this paper, we present a new efficient implicit surface reconstruction technique from unorganized point sets that allows to integrate sharp edges by simply specifying the implicit equation of a half-space that cuts the sharp edge (i.e. where the derivative of the defining function of the implicit surface is discontinuous). The Enriched Reproducing Kernel Particle Approximation (ERKPA) [8] is used as the underlying surface descriptor. ERKPA is an extension of the Reproducing Kernel Particle Approximation (RKPA) method that was introduced by Liu et al. in 1995 [15]. As shown by Belytschko et al. [3], RKPA can be seen as a generalization of the well-known Moving Least Squares technique, originally presented by Lancaster and Salkauskas in 1981 [10]. Note that by the MLS method we do not refer to the way MLS have been introduced in the field of computer graphics by Alexa et al. [2] (i.e. where a surface is defined as the set of stationary points under Levin’s projection operator [12]) but we rather come back to the original definition of MLS. Such a ”return to the basis” was also recently done in computer graphics by Shen et al. [22] who proposed to use the term Implicit Moving Least Squares (IMLS) to avoid the confusion. The theoretical foundation of all these numerical techniques will by detailed in Section 3. Except the ability to reproduce sharp edges, the reconstruction technique that we propose in this paper also has the following features: • The reconstruction of complex surfaces of arbitrary topology is handled, and the generated surfaces are inherently seamless and manifold. • As a locally supported weighting function is used, the proposed technique is completely local and offers a linear complexity with respect to the number of points in the support. • The shape and the size of the support for each weighting function can be chosen independently and may vary throughout space, hence we can reconstruct implicit surfaces from highly non-uniformly distributed point sets. • Compared to the use of radial basis functions, there is no need for a global preprocessing step (besides the construction of a spatial subdivision for efficiency reasons), and the elegant technique to circumvent the creation of off-surface points proposed by Shen et al. [22] can be used. • The surface descriptor is coherent throughout the entire surface and not piecewise defined, thus easily enabling, for instance, local and global deformations.

• It is not only possible to reconstruct an approximating implicit surface, but also an interpolating surface. The interpolating surface can either be calculated thanks to a global preprocessing step or by using a singular weighting function. This paper is organized as follows. Section 2 recalls some previous work on surface reconstruction techniques. Section 3 provides a step-by-step instruction to obtain a reconstruction of an implicit surface with the new ERKPA technique. In Section 4, we present and discuss some of our experimental results, before we conclude and give some directions to future work in Section 5.

2 Previous work Reconstructing an implicit surface from a point set as the zero-set of a function can be formulated as a general scattered data interpolation problem in a d-dimensional space Ω: for a given unstructured but finite set of N distinct points pi = (xi , yi , zi ) ∈ Ω with associated function values λ i ∈ R, find a function f : Ω → R, that satisfies the following constraints: f (pi ) = λi

∀i = 1..N

(1)

This problem is clearly ill-posed, since it has an infinite number of solutions. In order to choose one particular solution, some more a priori knowledge about the function to be reconstructed is required. The most common form of a priori knowledge consists in assuming smoothness (i.e., that two similar inputs p0 ≈ p1 create two similar outputs f (p0 ) ≈ f (p1 )) which ensures some order of geometric continuity of the reconstructed implicit surface. Moreover, it has to be determined whether the reconstructed function should fulfil the constraints (1) either exactly (i.e. interpolation problem) or only approximately (i.e. approximation problem). Many different techniques have been proposed in the literature to reconstruct an implicit surface from an unstructured point set. To clearly distinguish these methods from the usual mesh-based reconstruction techniques (e.g. Finite Element Methods) that work on structured locally parameterized point sets, the word Meshless Methods is now ubiquitously used to qualify this research field. Meshless Methods were simultaneously developed in the field of applied mathematics, and in the field of physics, more precisely in mechanics, hydrodynamics and astrophysics. Surprisingly, these two streams have only merged recently, mainly thanks to the work done by Belytschko et al. in their exhaustive survey published in 1996 [3]. Some of these existing meshless methods have recently been introduced in the computer graphics field, mainly to provide an efficient and robust solution to the surface reconstruction from 3D range scanner measures. Meshless methods imported in computer graphics can be classified into three different categories: methods based on the Partition of Unity, methods based on Radial Basis Functions and methods based on Moving Least Squares. Let us first have a closer look on Radial Basis Functions (RBF). The pioneering work to interpolating surfaces using RBFs starting from unstructured point sets can be attributed to Savchenko et al. [21] and Turk and O’Brien [25], where a dense linear system is involved since they used RBFs with a global support. Hence, both techniques fail to reconstruct surfaces from point sets larger than a few thousands of points. Two different directions have been investigated to overcome this problem. First, Carr et al. [5] proposed to use Fast Multipole Methods (FMM). Unfortunately, this technique involves a specific far field expansion that has to be done for every different radial basis function, and which is very complex

to implement. Second, Morse et al. [16] proposed to use Wendland’s compactly supported RBFs [26], which leads to a sparse linear system. Nevertheless, the radius of support involved in Wendland’s RBFs has to be chosen globally, which means that the method is not robust when the density of the samples varies significantly over the point set. This problem has recently been addressed by Ohtake et al. [18]. The second category concerns the methods that are using the Partition of Unity (PoU) to ensure the scalability. Wendland applied the partition of unity to RBFs in a theoretical survey [27] and a more practical sketch [28] on which Tobor et al. [23, 24] developed an implicit surface reconstruction technique. Ohtake et al. [17] used the partition of unity method to define their MPU implicits, where different types of piecewise quadratic functions capturing the local shape of the surface are blended together. To our knowledge, this is one of the few techniques that can automatically preserve sharp features. The third category are methods based on the Moving Least Squares (MLS) that have drawn much attention recently. They are the most closely related to our approach, in particular the so-called Implicit Moving Least Squares (IMLS) method that has been used to interpolate and approximate implicit surfaces from polygon soup [22]. Alexa et al. [2, 1] presented the Point Set Surfaces (PSS), where an implicit surface is defined as the set of stationary points under Levin’s projection operator [11, 12]. It should be noted that PSS were not formally introduced as an implicit surface reconstruction by their authors, but rather than a kind of point set filtering technique; but actually PSS is an implicit reconstruction technique, thanks to the underlying MLS machinery. More recently, PSS were further enhanced in order to include a multiresolution representation [7]. There is not much previous work about handling sharp edges when reconstructing an implicit surface from unorganized point sets. From the techniques presented above, only the approach of Ohtake et al. [17] automatically recognizes sharp features by using a heuristic of Kobbelt et al. [9]. Another approach was presented by Dinh et al. [6] where anisotropic basis functions are used to handle automatically recognize sharp edges. Note that in both approaches, sharp edges cannot be manually introduced, as it is possible with our technique. The possibility of the manual definition of sharp edges, in addition to automatically detected ones, is especially interesting when the data is very noisy, as many false sharp edges are usually detected when using a heuristic criterion. To conclude this brief survey of previous work, let us focus on a specific difficulty of implicit surface reconstruction. By looking at Equation 1, it becomes obvious that if we only specify a set of points p i that all lie on the surface (i.e. ∀i = 1..N, λi = 0), the system would lead to the trivial solution where f (p) = 0 in the entire domain. To overcome this problem, Turk and O’Brien as well as Carr et al. [25, 5] proposed to include a set of additional constraints, called off-surface constraints, and hence defined an additional set of points {p 1 , . . . , p N } where f (p i ) = λi = 0. Each off-surface point p i is computed starting from the initial points p i and moved by a small amount along the normal vector: p  i = pi + κ ni . The computation of these off-surface points not only strongly increases the size of the linear system involved in the computation, but it also introduces numerical instabilities as shown by Shen et al. [22]. To overcome these difficulties, Shen et al. presented an elegant technique that avoids the need of offsurface points: instead of using a constant constraint value λ i at each point pi , they used a functional constraint λi (p):

λi (p) = λi + (p − pi )T ni

(2)

This functional constraint achieves a much better stability than the usual off-surfaces points. But it

should be noted that Shen’s technique cannot be employed neither with the RBF techniques, nor with the PoU ones, due to the specific way these techniques account for the constraints. Only methods based on the MLS or the RKPA are able to include such non-constant constraints.

3 Enriched Reproducing Kernel Particle Approximation 3.1 Introduction

As said above, an extremely rich family of numerical methods, called meshless methods, have been developed both in the fields of applied mathematics and physics. It is clearly out of the scope of this paper to provide an exhaustive survey of all these approaches. We have already mentioned the classical survey and introduction to the domain written by Belytschko et al. in 1996 [3]. A more recent survey (referencing more than 400 articles) has been published in 2002 by Li and Liu [13]. The basic idea of meshless methods is to take the classical Finite Series Representation and Finite Integral Representation of an N-dimensional function (that have been intensively used in mesh-based methods) and try to find out what can be done without any assumption about parameterization. It is interesting to note that the first family of meshless methods, called Finite Series Meshless Approximation, was specifically developed in the field of applied mathematics, mainly to solve the scattered data fitting problem, whereas the second family, called Finite Integral Meshless Approximation, was exclusively developed in physics (more precisely in hydrodynamics and astrophysics). Among all the techniques that exist in the very crowded meshless zoo, we have chosen to use the Enriched Reproducing Kernel Particle Method (ERKPM) [8] for its ability to include very general constraints on the reconstructed surface. Since the underlying theory of Reproducing Kernel Approximation is not very widely known in computer graphics, we propose to follow a step-by-step constructive approach to explain the method. 3.2 Scattered Data Approximation with ERKPA

For the sake of simplicity, we focus on the 1D case from now on (i.e. Ω ⊆ R) but all the results have their direct 3D counterpart for reconstructing implicit surfaces. The points in 1D are denoted by x, x i , and s. The central idea of the Reproducing Kernel Approximation theory, which has been borrowed from the older Smoothed Particle Hydrodynamics method, is to define the approximated function f (x) as the convolution of the original function f (x) with a kernel function w ε (x): f (x) =

 Ω

wε (x − s) f (s) ds

(3)

The kernel function wε (x) is also called the weighting function or the smoothing function. Note that wε (x) depends on an additional parameter ε that defines the size of the convolution kernel (it is sometimes called the feature size) and may vary throughout the domain. It has been shown that several properties are desirable for the kernel function wε (x): • Positivity: wε (x) >= 0, ∀x • Decay: wε (x) is monotonically decreasing

• Compact support: wε (x − s) = 0 when x − s > ε • Partition of unity:



Ω wε (x − s)

ds = 1

• Dirac-like shape: wε (s) → δ (s) when ε → 0 where δ (s) is the Dirac function. A usual quality criterion of an approximation technique is its consistency order, that is its ability to be able to exactly reproduce a polynomial function up to a given degree n. The RKPA method has specifically been designed to automatically build approximations with n th -order consistency. The ERKPA goes one step further by allowing the approximation to reproduce an additional function e(x) called Enrichment Function. This enrichment function is the key issue that enables to include sharp edges in implicit surfaces, since, as we will see later, by using a Heaviside function for e(x), localized discontinuity in the derivatives can be added to the approximation function. More formally, we want f (x) to reproduce all functions of the following type: f (x) = a0 + a1 x + . . . + an xn + e(x)

(4)

The properties required for the kernel function wε (x − s) to reproduce the function given by (4) can be established step-by-step. First suppose that we want the approximation f (x) defined by Equation (3) to reproduce a constant function: f (x) = a0 . This means that  Ω

that implies

wε (x − s)a0 ds = a0

(5)

wε (x − s) ds = 1

(6)

 Ω

So we rederive the Partition of Unity property of the kernel function. This is not surprising because PoU is precisely the condition required to be able to reproduce a constant function. Now, suppose that we want to reproduce a linear function: f (x) = a0 + a1 x  Ω

which can be rewritten as

wε (x − s)(a0 + a1 s)ds = a0 + a1 x

(7)

 

w (x − s) ds = 1 Ω ε Ω wε (x − s)

s ds = x

By iterating this process, we can write the nth -order consistency as     Ω wε (x − s) ds = 1    wε (x − s) s ds = x Ω ..  .     w (x − s) sn ds = xn Ω ε

(8)

(9)

and finally, the reproduction of Equation (4) implies    w (x − s) ds = 1  Ω ε    w  Ω ε (x − s) s ds = x .. .    n n   Ω wε (x − s) s ds = x    w Ω ε (x − s) e(s) ds = e(x)

(10)

In order to find a suitable kernel function wε (x) that satisfies the reproduction conditions given by Equation (10), Liu et al. [14] proposed to introduce a correction function C(x, s). Thus, from now on, we define f (x) by  f (x) =



C(x, s) wε (x − s) f (s) ds

(11)

where C(x, s) = BT (x, s)A(x) BT (x, s) represents the vector containing the functions that belong to the approximation basis, and A(x) is a vector containing the unknown functions that have to be determined for satisfying the reproduction conditions. Thus, Equation (10) can be rewritten as    BT (x, s)A(x)wε (x − s) ds = 1  Ω T     Ω B (x, s)A(x)wε (x − s) s ds = x .. (12) .    T n n   Ω B (x, s)A(x)wε (x − s) s ds = x    B T (x, s)A(x)w (x − s) e(s) ds = e(x) ε Ω Equation (12) represents the continuous form of the ERKPA. Since our goal is to reconstruct an implicit surface from a discrete point set, we have to consider the discrete form of the ERKPA that is expressed as a finite series, instead of a finite integral:  T  ∑N i=1 B (x, xi )A(x)wε (x − xi )∆xi = 1   T   ∑N  i=1 B (x, xi )A(x)wε (x − xi )xi ∆xi = x .. (13) .   N T n n  ∑ B (x, xi )A(x)wε (x − xi )xi ∆xi = x    N i=1T ∑i=1 B (x, xi )A(x)wε (x − xi )e(xi )∆xi = e(x) resulting in the following linear system  N



∑ R(xi)B

T

(x, xi )wε (x − xi )∆xi A(x) = R(x)

(14)

i=1

where R(x) is the reproduction vector defined by RT (x) = [1, x, . . . , xn , e(x)] Equation (14) allows the computation of the vector A(x),

(15)

Ω1 Γd Ω0

Figure 1. Problem domain containing an interface with a discontinuous normal derivative.

A(x) = M−1 (x)R(x)

(16)

where the matrix M(x) is called the moment matrix and is defined by N

M(x) = ∑ R(xi )BT (x, xi )wε (x − xi )∆xi

(17)

i=1

The discrete form of the approximation function f (x) derives from Equations (11) and (16): N

f (x) ∼ = ∑ BT (x, xi )M−1 (x)R(x)wε (x − xi ) f (xi )∆xi i=1

N

= ∑ φi (x)λi

(18)

i=1

where φi is called the ERKPA shape function:

φi (x) = BT (x, xi )M−1 (x)R(x)wε (x − xi )∆xi

(19)

3.3 Sharp edges reconstruction with ERKPA

From now on, we focus on the case to construct functions in 3D in order to approximate the constraints of Equation 1. Furthermore, we limit the reproduction to linear polynomials in 3D with an enriched function e(x, y, z). Consequently, Equation 4 with n = 1 becomes f (x, y, z) = a0 + a1 x + a2 y + a3 z + e(x, y, z)

(20)

Let now Ω ⊆ R3 be the domain where the problem is defined in 3D and Γ a surface implicitly defined by θ (x, y, z), where the gradient of the defining function f should become discontinuous, and hence the implicit surface has a sharp edge. This discontinuity surface splits the domain into two subdomains Ω 0 and Ω1 (see Figure 1) Ω0 ∪ Ω1 ∪ Γ = Ω and Ω0 ∩ Ω1 = 0/ The enrichment function e(x, y, z) that is introduced in the reproduction vector R(x) has to satisfy the following conditions

∀(x, y, z) ∈ Ω, e(x, y, z) is C0 continuous ∀(x, y, z) ∈ Ω0 , e(x, y, z) is C1 continuous ∀(x, y, z) ∈ Ω1 , e(x, y, z) is C1 continuous ∀(x, y, z) ∈ Γ, ∇e(x, y, z) · n is C−1 continuous

(21)

where n denotes the unit outward vector defined on the surface Γ that is implicitly defined by θ (x, y, z). Thus, for satisfying the conditions (21), we define the enrichment function e(x, y, z) by e(x, y, z) = θ (x, y, z)H(θ (x, y, z)) where H(t) represents the usual Heaviside step function  H(θ (x, y, z)) = 1 if θ (x, y, z) ≥ 0 H(θ (x, y, z)) = 0 if θ (x, y, z) < 0

(22)

(23)

In order to define the reproduction function f (x) of Equation 18, we set: RT (x, y, z) = [1, x, y, z, θ (x, y, z)H(θ (x, y, z))] RT (xi , yi , zi ) = [1, xi , yi , zi , θ (xi , yi , zi )H(θ (xi , yi , zi ))] BT (x, y, z, xi , yi , zi ) =

[1, x − xi , y − yi , z − zi , θ (xi , yi , zi )H(θ (xi , yi , zi ))]

(24)

(25)

The resulting reproduction function f (x, y, z) allows to reproduce a function the type of Equation 20. It is easy to see that by reproducing a linear polynomial in 3D with an enrichment function e(x, y, z), the vectors R and B are of dimension 5, and hence the moment matrix M of Equation 17 becomes a 5x5 non-symmetric matrix. The main issue by using a Heaviside function is to ensure that this moment matrix M can be inverted. This requires that the support of every shape function φ i contains nodes xi on either side of the Heaviside function. Indeed, when the function φi only contains nodes where the Heaviside function is 0, one line of the matrix M will contain only 0 values, and similarly when the function φ i does not contains any node where the Heaviside function is 0, one line of the matrix is linearly dependent of the other lines. If one of these cases arise, we simply switch to the non-enriched RKPA formulation to retrieve the shape functions φi defined by the 4-dimensional vectors R and B, and the 4x4 non-symmetric moment matrix M. It has been proved that this connection ensures the consistency degree [8]. 3.4 Approximating and Interpolating Implicit Surfaces

Unorganized point sets from 3D scanners are often noisy, and simply connecting the points in the point set in order to generate a continuous surface embeds the noise in the reconstruction. Hence, it is often necessary to reconstruct approximated implicit surfaces rather than interpolating implicit surfaces. Our new reconstruction method can be used in either case. In order to reconstruct an approximated implicit surface that does not necessarily interpolate the unorganized point set, we may use any non-singular compactly supported kernel function w ε (x) proposed

in the literature. The larger the support radius ε , the more the reconstructed implicit surface approximates the unorganized point set while being less sensible to noise and while smoothing out features that are smaller than the support radius. Anyway, for a too large support radius ε , we suggest to rather down-sample the model in a preprocess for efficiency reasons (see Pauly et al. for a survey [20]). On the other hand, it is often desirable to exactly interpolate the unorganized point set. Actually, there are two different approaches to interpolate the points. The first approach uses a singular kernel function wε (x) (i.e. where wε (0) = ∞), which forces the reconstructed implicit surface to pass through each point, due to the impact of the singular kernel function. This interpolation by singular kernel function has been used in [2] and [22]. Unfortunately, singular kernel functions are very sensitive to numerical instabilities. So we propose here a second approach, called Collocation Method that does not require the use of a singular kernel function wε . The general idea of the collocation method is to force the approximation function to interpolate each point xi by modifying the function value λ i at point xi . Hence, we have to find modified function values λi , such that N

f (xi ) = ∑ φ j (xi )λi = λi

(26)

j=i

This leads to the following linear system: 









φ1 (x1 , y1 , z1 ) .. φN (x1 , y1 , z1 ) λ1 λ1  φ1 (x2 , y2 , z2 ) .. φN (x2 , y2 , z2 )   λ2   λ2  =  : :  :   :  φ1 (xN , yN , zN ) .. φN (xN , yN , zN ) λN λN

(27)

After solving for all λi , we replace the original values of λi (that were chosen to constrain the implicit surface) in Equation 1 by λi and use the ERKPA method described above. Of course, the corresponding linear system has the size of the number of points N of the point set, but with a compact support radius ε , the matrix M becomes band-diagonal, and there are various techniques to solve the linear system efficiently. Note that in this second case, we still reconstruct an approximating function, but since we changed the constraints, it interpolates the points in the point set. In other words, the function approximates the collocated points, but interpolates the original ones.

4 Experimental results All results presented in this section were performed on an Intel Pentium 2.4 GHz with 512 MB of RAM running Cygwin. We only reproduced polynomials of degree one, and we used the non-singular kernel function wε (x) = 1 − 6x5 + 15x4 − 10x3 . Recall, that the implicit surfaces inherit the smoothness of the kernel function, and consequently, all resulting implicit surfaces are C 2 , except at the points where we explicitly impose a discontinuity for the derivatives. With our current implementation, all the images in this paper were produced by polygonizing the implicit surfaces using the marching cubes algorithm by Bloomenthal [4]. In order to represent sharp features more precisely, improved polygonizers that are feature-sensitive (see Ohtake and Belyaev [19]

as well as Kobbelt et al. [9]) should definitely be more adapted 1 . 4.1 Sharp edges

First of all, we demonstrate how sharp edges can be reconstructed using our ERKPA implicit surface reconstruction technique. Remember that only a surface that cuts the sharp edge has to be specified. As a first simple example, consider the point set of a parallelepiped in Figure 2(a) and of a twisted parallelepiped in Figure 2(d). Using the classical RKPA implicit surface reconstruction, the edges are smoothed out as can be seen in Figure 2(b) (resp. Figure 2(e)). By simply specifying the surface that cuts the edges of the parallelepiped and applying the ERKPA implicit surface reconstruction techniques, the edges remain sharp as can be seen in Figure 2(c) (resp. Figure 2(f)). (Note that the artifacts along the sharp edges are only generated during the polygonization step, since we did not use a feature-sensitive polygonizer as said above).

(a) The original point set (3900 points).

(b) Classical reconstruction smoothes out sharp edges.

(c) The new ERKPA surface reconstruction preserves sharp edges.

(d) 3900 points of a twisted parallelepiped.

(e) Classical reconstruction smoothes out sharp edges.

(f) The new ERKPA surface reconstruction preserves sharp edges.

Figure 2. The new ERKPA surface reconstruction preserves sharp edges.

As a second example, consider the 711 point venus model (Figure 5(a)) that fits into the bounding box [(0, 0, 0), (0.490477, 1, 0.35619)]. By specifying a surface Γ defined by the implicit equation θ (x, y, z) = y − 12 , a sharp edge is generated at the intersection of the surface with the plane y = 12 as can be seen in Figure 5(d). As a more complex example, consider the highly non-uniformly distributed point set of the Cyberware screwdriver (Figure 3(a) with a close-up in Figure 3(d)). Again, we compare the classical RKPA implicit surface reconstruction (Figure 3(b) with a close-up in Figure 3(e)) with the reconstruction that preserves sharp edges (Figure 3(c) with a close-up in Figure 3(f)). We simply specified two planes along the planar part of the screwdriver. Again, the polygonizing artifacts should be mentally occulted when watching the figure. 1 Note

to the reviewers: Feature-sensitive polygonization will be included in the final version of the paper

(a) 40,722 unorganized points.

(b) Classical reconstruction.

(c) The new ERKPA surface reconstruction preserves sharp edges.

(d) Closeup.

(e) Close-up.

(f) Close up.

Figure 3. The new ERKPA surface reconstruction preserves sharp edges

4.2 Scalability

Due to its locality, the computation time required by the ERKPA reconstruction grows linearly with respect to the number of nodes in the radius of support. Besides the retrieval of the neighboring points, our technique is independent of the number of points in the point set, but strongly depends on the number of generated triangles. As an example of a commonly used model, we reconstructed the Max Planck model from 52,809 points (Figure 4.2). Table 1 shows several experimental data about the models that were used in this paper: the global reconstruction time (including polygonization), the number of generated triangles, the average number of nodes in the local support, and the number of evaluations per second of the defining function f . 4.3 Influence of the support radius

As already stated before, the higher the support radius ε , the more our reconstruction technique tolerates noise in the point set and smoothes out small features. In Figure 5, we show several reconstructions of the 711 point venus model with increasing support radius. 4.4 Varying support radii

A nice feature of our new implicit surface reconstruction technique is, that we can vary the support radii throughout the domain, thus we can adapt it to the local density of the data. In Figure 6(b), we show the Stanford Buddha model with a constant support radius in the entire domain. In Figure 6(c), we

Figure 4. Reconstruction of the Max Planck head from 52,809 points (both the points and the surface are shown).

Model Max Planck 52,809 pts Screwdriver 40,722 pts Screwdriver+Sharp 40,722 pts Buddha 5,000 pts Venus 711 pts

#triangles

time

≈ #nodes

#eval/s

165,388

2862 s

3196

424

25,484

880 s

2384

213

26,160

1442 s

2384

133

58,080

176 s

455

2409

8,871

6s

93

10971

Table 1. Experimental results for the models used in this paper.

continuously vary the support radius with respect to the y-axis, on the upper part the support radius is lower and increasing further down and thus smoothing out small features. Varying the support radius is not possible in the reconstruction of radial basis functions, where the support radius has to be globally defined.

5 Conclusion 5.1 Summary

In this paper, we presented a new implicit reconstruction technique from unorganized point sets based on the Enriched Reproducing Kernel Particle Approximation. This new surface descriptor has several benefits, in particular it allows specifying sharp edges in a coherent (and not piecewise-defined) surface description. Furthermore, complex surfaces of arbitrary topology can be handled. The technique is completely local and scales linearly with respect to the number of points in the support. It can be used either to interpolate the data, or to approximate it, mainly when noise in present in the data. Moreover, there is no need for a global preprocessing step, and thus the defining function of the implicit surface can be directly evaluated. One straightforward step, that we haven’t implemented yet, is to integrate a multi-scale hierarchy in the reconstruction in order to avoid unnecessary evaluations of the defining function, such as an octree hierarchy [17] or a data thinning algorithm [24]. Finally, the technique has shown to be very robust when the density of the points varies significantly throughout the point set, due to the possibility to locally adapt the feature size. Consequently, our technique can also be used for repairing meshes. 5.2 Work in progress

We are currently investigating various directions for future work. First, we are trying to further improve the evaluation of the implicit function, particularly by shifting the local matrix inversion into a preprocessing, when there is no enriched function e in the approximation function. We are also interested in multiresolution RKPA using wavelets. Second, we are studying the possibility to include sharp edges into Levin’s MLS surface that is based on the projection on an estimated local plane [12], and we are planning to integrate this operator into the PointShop3D system [29] with the possibility to intuitively mark sharp edges. Finally, we think that the ERKPA is particularly well adapted to sketching thanks to its ability to mix smooth zones and sharp edges within a single surface definition. Acknowledgements The models are courtesy of the Stanford 3D Scanning Repository (Buddha) and Cyberware (Screwdriver).

References [1] M. Alexa, J. Behr, D. Cohen-Or, S. Fleishman, D. Levin, and C. T. Silva. Computing and rendering point set surfaces. IEEE Transactions on Visualization and Computer Graphics, 9(1):3–15, January 2003. [2] M. Alexa, J. Behr, D. Cohen-Or, D. Levin, S. Fleishman, and C. T. Silva. Point set surfaces. In IEEE Visualization 2001, pages 21–28. IEEE, 2001.

[3] T. Belytschko, Y. Krongauz, D. Organ, M. Fleming, and P. Krysl. Meshless methods: An overview and recent developments. Computer Methods in Applied Mechanics and Engineering, 139:3–47, 1996. [4] J. Bloomenthal. An implicit surface polygonizer. Graphics Gems IV, pages 324–349, 1994. [5] J. C. Carr, R. K. Beatson, J. B. Cherrie, T. J. Mitchell, W. R. Fright, B. C. McCallum, and T. R. Evans. Reconstruction and representation of 3D objects with radial basis functions. In Proceedings of ACM SIGGRAPH 2001, pages 67–76, 2001. [6] H. Q. Dinh, G. Slabaugh, and G. Turk. Reconstructing surfaces using anisotropic basis functions. In Proceedings of International Conference on Computer Vision (ICCV) 2001, pages 606–613, 2001. [7] S. Fleishman, M. Alexa, D. Cohen-Or, and C. T. Silva. Progressive point set surfaces. ACM Transactions on Computer Graphics, 22(4), 2003. [8] P. Joyot, J. Trunzler, and F. Chinesta. Enriched reproducing kernel approximation: Reproducing functions with discontinuous derivatives. In M. A. Griebel, Michael; Schweitzer, editor, Meshfree Methods for Partial Differential Equations II, volume 43 of Lecture Notes in Computational Science and Engineering, pages 93–108, 2004. ISBN: 3-540-23026-2. [9] L. P. Kobbelt, M. Botsch, U. Schwanecke, and H.-P. Seidel. Feature-sensitive surface extraction from volume data. In Proceedings of ACM SIGGRAPH 2001, pages 57–66, 2001. [10] P. Lancaster and K. Salkauskas. Surfaces generated by moving least squares methods. Mathematics of Computation, 37(155):141–158, 1981. [11] D. Levin. The approximation power of moving least-squares. Mathematics of Computation, 67(224), 1998. [12] D. Levin. Mesh-independent surface interpolation. In G. Brunnett, B. Hamann, and H. Mller, editors, Geometric Modeling for Scientific Visualization. Springer, Heidelberg, Germany, 2003. [13] S. Li and W.-K. Liu. Meshfree particle methods and their applications. Applied Mechanics Review, 54:1–34, 2002. [14] W. Liu, S. Jun, S. Li, J. Adee, and T. Belytschko. Reproducing kernel particle methods for structural dynamics. Int. J. Numer. Meths. Eng., 38:1655–1679, 1995. [15] W. K. Liu, R. A. Uras, and Y. Chen. Enrichment of the finite element method with reproducing kernel particle method. Journal of Applied Mechanics ASME, 64:861–870, 1997. [16] B. S. Morse, T. S. Yoo, P. Rheingans, D. T. Chen, and K. R. Subramanian. Interpolating implicit surfaces from scattered surface data using compactly supported radial basis functions. In Proceedings of Shape Modeling International, 2001. [17] Y. Ohtake, A. Belyaev, M. Alexa, G. Turk, and H.-P. Seidel. Multi-level partition of unity implicits. ACM Transactions on Graphics (TOG), 22(3):463–470, 2003.

[18] Y. Ohtake, A. Belyaev, and H.-P. Seidel. 3d scattered data approximation with adaptive compactly supported radial basis functions. In Shape Modeling International 2004, 2004. [19] Y. Ohtake and A. G. Belyaev. Dual/primal mesh optimization for polygonized implicit surfaces. Journal of Computing and Information Science in Engineering, 2(4), 2002. [20] M. Pauly, M. Gross, and L. P. Kobbelt. Efficient simplification of point-sampled surfaces. In IEEE Visualization 2002, pages 163–170, 2002. [21] V. V. Savchenko, A. Pasko, O. G. Okunev, and T. L. Kunii. Function representation of solids reconstructed from scattered surface points and contours. Computer Graphics Forum, 14(4):181– 188, 1995. [22] C. Shen, J. F. O’Brien, and J. R. Shewchuk. Interpolating and approximating implicit surfaces from polygon soup. In Proceedings of ACM SIGGRAPH 2004. ACM Press, Aug. 2004. [23] I. Tobor, P. Reuter, and C. Schlick. Efficient reconstruction of large scattered geometric datasets using the partition of unity and radial basis functions. Journal of WSCG 2004, 2004. [24] I. Tobor, P. Reuter, and C. Schlick. Multiresolution reconstruction of implicit surfaces with attributes from large unorganized point sets. In Shape Modeling International 2004, 2004. [25] G. Turk and J. O’Brien. Variational implicit surfaces. Technical Report GIT-GVU-99-15, Georgia Institute of Technology, 1998. [26] H. Wendland. Piecewise polynomial, positive definite and compactly supported radial functions of minimal degree. Advances in Computational Mathematics, 4:389–396, 1995. [27] H. Wendland. Fast evaluation of radial basis functions: Methods based on partition of unity. In C. K. Chui, L. L. Schumaker, and J. St¨ockler, editors, Approximation Theory X: Abstract and Classical Analysis, pages 473–483. Vanderbilt University Press, Nashville, 2002. [28] H. Wendland. Surface reconstruction from unorganized points. Preprint Gottingen, 2002. [29] M. Zwicker, M. Pauly, O. Knoll, and M. Gross. Pointshop 3D: An interactive system for pointbased surface editing. ACM Transactions on Graphics (Proceedings of ACM SIGGRAPH 2002), 21(3):322–329, 2002.

(a) 711 points

(b) ε = 10 %

(c) ε = 30 %

(d) ε = 30 % with a sharp edge at y = 12

(e) ε = 50 %

(f) ε = 100 % Figure 5. Approximating the 711 point venus model with increasing support radii (in % of the size of the bounding box).

(a) points

5000

(b) Constant support radius of ε = 5 % of the bounding box.

(c) Varying support radius from ε = 5 % (y=1) until ε = 100 % of the bounding box in the same model

Figure 6. Approximating the Stanford Buddha model.