Reconstruction of implicit curves and surfaces via ...

6 downloads 0 Views 71KB Size Report
salvatore[email protected],. {ardelio.galletti,giulio.giunta,livia.marcellino}@uniparthenope.it. Keywords. RBF interpolation, curve/surface reconstruction, ...
Reconstruction of implicit curves and surfaces via RBF interpolation Salvatore Cuomo(1) , Ardelio Galletti(2) , Giulio Giunta(2) , Livia Marcellino(2) (1)

Dept. of Mathematic and Application, University of Naples Federico II, Italy Dept. of Science and Technology, University of Naples Parthenope, Italy [email protected], {ardelio.galletti,giulio.giunta,livia.marcellino}@uniparthenope.it (2)

Keywords. RBF interpolation, curve/surface reconstruction, conditioning. Many problems in computer visualization, scientific computing, medical imaging, computer-aided design and manufacturing (CAD/CAM) require to reconstruct a graphic object starting from an unorganized 2D/3D point cloud, i.e. a set of scattered points in R2 or R3 . The process of building a geometric model from such point clouds is usually referred to as curve and surface reconstruction. This problem can be expressed as [1]: Problem 1. Given n distinct points X = {xj }nj=1 of a curve/surface M ⊂ Rs , find a curve/surface M′ that is a reasonable approximation of M. The classical approach via implicit curves/surfaces assumes that it exists a realvalued function f : Rs 7→ R (s = 2 for curves, s = 3 for surfaces), such that: ( f (x) = 0, if x is on the curve/surface, f (x) 6= 0, if x is off (inside/outside) the curve/surface. In other words, M is the zero level set of f , i.e. M = L0 (f ) = f −1 ({0}) = {x ∈ Rs | f (x) = 0},

(1)

and the function f implicitly defines M. In order to construct an approximation of M, one can firstly fit a function Pf to f and then extract the Pf isocurve/surface M′ , i.e. the zero level set M′ = L0 (Pf ) could be taken as a reasonable solution of Problem 1. We emphasize that, given a curve/surface M, the function f that verifies (1) is not unique, i.e. finding f (or Pf ) starting from M, is an inverse ill-posed problem in the Hadamard’s sense. Therefore, the choice of the kind of function Pf (the space which it belongs to, and other additional conditions), may be seen as a sort of regularization of the problem. Generally, a common approach assumes that Pf is a linear combination of certain basis functions Bj Pf (x) =

N X

cj Bj (x),

x ∈ Rs ,

(2)

j=1

and imposes the interpolation conditions Pf (xj ) = 0,

∀xj ∈ X . 1

(3)

In order to avoid the meaningless trivial solution, i.e. the zero function, whose zero level set is Rs , additional interpolation conditions, involving off-curve/surface points where Pf 6= 0, must be given. This approach leads to a surface reconstruction scheme that consists of three main steps: 1. extending X by generating off-curve/surface points; 2. fitting an interpolant Pf to f on the extended dataset; 3. extracting the zero iso-curve/surface of Pf . For step 1., a common practice to extend X [6] considers the set of curve/surface normalized normal directions nj to M at points xj . If these normals are not explicitly known, there are several techniques and tools1 that allow to estimate them. The off-curve/surface points, generated by a point xj , are defined as x+ j = xj + δj nj ,

x− j = xj − δj nj ,

(4)

where δj is a small distance. The sets of points X , X + = {x+ j | xj ∈ X }, and X − = {x− | x ∈ X } gives the extended dataset j j X ext = X ∪ X + ∪ X −

(5)

where to fit Pf . More generally, in order to reduce computational complexity and the conditioning of the interpolation problem, many authors [1, 4] suggest to fit the interpolant only on a subset of X ext . Regarding step 2., to fit Pf to f on the extended dataset, instead of taking f as the signed-distance function as in [1], we assume that f is 0 on X , 1 on X + and −1 on X − , respectively, i.e.    0 if x ∈ X ; f (x) = +1 if x ∈ X + ; (6)   −1 if x ∈ X − . Under the previous assumptions, the implicit surface reconstruction scheme for finding Pf gives rise to the following scattered data interpolation problem. Problem 2 Given a set of N distinct points in X ext = {xj }N j=1 and a set of corresponding function values {fj }N , find an interpolant P : Rs 7→ R such f j=1 that Pf (xj ) = fj , ∀ j = 1, . . . , N. (7) Assuming Pf as in (2), and starting from (7), the coefficients c = (c1 , . . . , cN )T are obtained by solving the linear system Bc = f , where f = (f1 , . . . , fN )T and   B1 (x1 ) B2 (x1 ) · · · BN (x1 )  B1 (x2 ) B2 (x2 ) · · · BN (x2 )    B= . .. .. .. ..   . . . . B1 (xN ) B2 (xN ) · · · BN (xN ) 1

package ply.tar.gz provided by Greg Turk, available at http://www.cc.gatech.edu/projects/large models/ply.html

(8)

(9)

In a multivariate setting, as stated by the Mairhuber-Curtis theorem [3], in order to have a unique solution for (8) and a well-posed scattered data interpolation problem, the basis functions {B1 , . . . , BN } must depend on the points xj . A wide class of basis functions with this property are the RBF [5]. The dependence of the RBF on the data can be easily introduced by setting:  Bj (x) ≡ Φj (x) = ϕ d(x, xj ) , j = 1, . . . , N,

where ϕ : [0, +∞[ 7→ R is called basic function and xj are referred as centers. Finally, the determination of L0 (Pfǫ ), or extraction, in step 3., can be realized in several ways (see [1], section 7). Those implementations often require the evaluation of the interpolant Pf on a data set, whose size depends on the desired resolution, organized in a regular pixel/voxel grid. We emphasize how the extraction of the zero level set of Pf , without imposing suitable additional constraints, may give rise to some drawbacks known as artifacts. In this paper we are interested in investigating theoretical and practical issues in using RBFs for reconstructing implicit curves and surfaces. Here, we

– establish how the problem parameters and the results have to be taken in order to find meaningful solutions and avoid artifacts and similar drawbacks; – study the conditioning of the problem in terms of number of points, point cloud topology and standard deviation of several functions; – suggest a strategy for decreasing the condition number of the problem by means of a two stages selective reduction of the cloud points; – show a parallel code for preconditioning and solving the problem with very large data sets starting from [2].

References [1] J. C. Carr, R. K. Beatson, J. B. Cherrie, T. J. Mitchell, W. R. Fright, B. C. McCallum, T. R. Evans. Reconstruction and representation of 3D objects with Radial Basis Functions. In Proc. of the 28th annual Conf on Computer graphics and interactive techniques, pp. 67–76. ACM, 2001. [2] S. Cuomo, A. Galletti, G. Giunta, A. Starace. Surface Reconstruction from Scattered Point via RBF Interpolation on GPU. In Federated Conference on Computer Science and Information Systems, FedCSIS 2013, pp. 433–440 (2013) [3] P.C. Curtis. n-parameter families and best approximation. Pacific Journal of Mathematics, 9(4) pp. 1013–1027, 1959. [4] Shengxin Zhu, A.J. Wathen. Convexity and Solvability for Compactly Supported Radial Basis Functions with Different Shapes. Source of the DocumentJournal of Scientific Computing, Article in Press, 2014 [5] G: F. Fasshauer Meshfree Approximation Methods with MATLAB In World Scientific Publishing River Edge, NJ, USA, 2007 ISBN:9812706348 [6] g. turk, h. q. dinh, j. f. o’brien, g. yngve. implicit surfaces that interpolate. in shape modeling and applications, smi 2001 international conf on., pp. 62–71. ieee, 2001.