12
Computers & Graphics 74 (2018) 44–55 Contents lists available at ScienceDirect Computers & Graphics journal homepage: www.elsevier.com/locate/cag Special Section on SMI 2018 Surface reconstruction of incomplete datasets: A novel Poisson surface approach based on CSRBF Jules Morel a,b,, Alexandra Bac b , Cédric Véga c a French Institute of Pondicherry, 11 Saint Louis Street, Pondicherry 605001, India b Laboratoire des Sciences de l’Information et des Systèmes, 163 Avenue de Luminy, Marseille 13288, France c Laboratoire dInventaire Forestier, Institut National de LInformation Géographique et Forestière, 14 rue Girardet, Nancy 54000, France a r t i c l e i n f o Article history: Received 27 April 2018 Revised 11 May 2018 Accepted 14 May 2018 Available online 17 May 2018 Keywords: Surface reconstruction Approximation Radial basis functions Poisson surface Terrestrial LiDAR scanning a b s t r a c t This paper introduces a novel surface reconstruction method based on unorganized point clouds, which focuses on offering complete and closed mesh models of partially sampled object surfaces. To accomplish this task, our approach builds upon a known a priori model that coarsely describes the scanned object to guide the modeling of the shape based on heavily occluded point clouds. In the region of space visible to the scanner, we retrieve the surface by following the resolution of a Poisson problem: the surface is modeled as the zero level-set of an implicit function whose gradient is the closest to the vector field induced by the 3D sample normals. In the occluded region of space, we consider the a priori model as a sufficiently accurate descriptor of the shape. Both models, which are expressed in the same basis of compactly supported radial functions to ensure computation and memory efficiency, are then blended to obtain a closed model of the scanned object. Our method is finally tested on traditional testing datasets to assess its accuracy and on simulated terrestrial LiDAR scanning (TLS) point clouds of trees to assess its ability to handle complex shapes with occlusions. © 2018 Elsevier Ltd. All rights reserved. 1. Introduction The reconstruction of 3D surfaces from scattered data has re- ceived increasing attention with the emergence of new close-range 3D acquisition technologies, such as laser scanning devices (Li- DAR), close-range photogrammetry and time-of-flight cameras. The dense 3D point clouds thus acquired accurately describe object sur- faces (e.g., millimeter resolution for laser scanning). Such scanning processes have a wide range of applications: urban reconstruc- tion and modeling, architecture, artifacts modeling, quality control for production, and medical imaging. However, despite their accu- racy, the data acquired by these sensing technologies share com- mon constraints, such as non-homogeneous sampling, occlusion and noise. In view of their characteristics and complexity, dedi- cated algorithms are required to segment, model and reconstruct objects of interest from raw point clouds. Terrestrial laser scan- ning (TLS) technology is broadly used in forest studies. TLS en- ables 3D forest structures to be acquired as point clouds in record time [1], with applications ranging from ecology (allometric re- Corresponding author at: French Institute of Pondicherry, 11 Saint Louis Street, Pondicherry 605001, India. E-mail address: [email protected] (J. Morel). lationships, 1 and growth modeling carbon storage assessment) to forestry (forest monitoring, sustainable development) and industry (harvest planning, sawmill optimization). However, the features of such data are even more challenging with respect to reconstruct- ing models and extracting information (e.g., more challenging than classic applicative data, such as urban environments or isolated objects, because the clouds are extremely dense, inhomogeneous, noisy and present large occlusions). These constraints arise both from the remote sensing technology and from the complexity of forest environments. The TLS point cloud sampling rate may vary from one scanner to another, and the spherical geometry of the sensor results in irregular sampling density. Moreover, the combi- nation of TLS geometry and the vegetation itself (branches, leaves, low vegetation) results in large and numerous occluded areas that expand both in size and number far from the sensor. Noise con- tributes additional confusion at surface extremities and in foliage. Therefore, data obtained from a given tree have different charac- teristics from the base up to the crown. Forest measurements from TLS data also suffer from object-specific limitations. Stems bark can 1 Allometry consists of a set of general relations derived from a large compilation of forest measurements. It provides an estimate of the tree structure according to a few given parameters, such as the diameter at breast height (DBH, diameter of the stem 1.30 m above the ground) and the tree height. https://doi.org/10.1016/j.cag.2018.05.004 0097-8493/© 2018 Elsevier Ltd. All rights reserved.

Surface reconstruction of incomplete datasets: A novel ... · Implicit surface reconstruction is the process of finding a function that best fits the input data. However, the implicit

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Surface reconstruction of incomplete datasets: A novel ... · Implicit surface reconstruction is the process of finding a function that best fits the input data. However, the implicit

Computers & Graphics 74 (2018) 44–55

Contents lists available at ScienceDirect

Computers & Graphics

journal homepage: www.elsevier.com/locate/cag

Special Section on SMI 2018

Surface reconstruction of incomplete datasets: A novel Poisson surface

approach based on CSRBF

Jules Morel a , b , ∗, Alexandra Bac

b , Cédric Véga

c

a French Institute of Pondicherry, 11 Saint Louis Street, Pondicherry 605001, India b Laboratoire des Sciences de l’Information et des Systèmes, 163 Avenue de Luminy, Marseille 13288, France c Laboratoire dInventaire Forestier, Institut National de LInformation Géographique et Forestière, 14 rue Girardet, Nancy 540 0 0, France

a r t i c l e i n f o

Article history:

Received 27 April 2018

Revised 11 May 2018

Accepted 14 May 2018

Available online 17 May 2018

Keywords:

Surface reconstruction

Approximation

Radial basis functions

Poisson surface

Terrestrial LiDAR scanning

a b s t r a c t

This paper introduces a novel surface reconstruction method based on unorganized point clouds, which

focuses on offering complete and closed mesh models of partially sampled object surfaces. To accomplish

this task, our approach builds upon a known a priori model that coarsely describes the scanned object to

guide the modeling of the shape based on heavily occluded point clouds. In the region of space visible

to the scanner, we retrieve the surface by following the resolution of a Poisson problem: the surface is

modeled as the zero level-set of an implicit function whose gradient is the closest to the vector field

induced by the 3D sample normals. In the occluded region of space, we consider the a priori model as

a sufficiently accurate descriptor of the shape. Both models, which are expressed in the same basis of

compactly supported radial functions to ensure computation and memory efficiency, are then blended to

obtain a closed model of the scanned object. Our method is finally tested on traditional testing datasets

to assess its accuracy and on simulated terrestrial LiDAR scanning (TLS) point clouds of trees to assess its

ability to handle complex shapes with occlusions.

© 2018 Elsevier Ltd. All rights reserved.

l

f

(

s

i

c

o

n

f

f

f

s

n

l

e

t

T

t

T

1. Introduction

The reconstruction of 3D surfaces from scattered data has re-

ceived increasing attention with the emergence of new close-range

3D acquisition technologies, such as laser scanning devices (Li-

DAR), close-range photogrammetry and time-of-flight cameras. The

dense 3D point clouds thus acquired accurately describe object sur-

faces (e.g., millimeter resolution for laser scanning). Such scanning

processes have a wide range of applications: urban reconstruc-

tion and modeling, architecture, artifacts modeling, quality control

for production, and medical imaging. However, despite their accu-

racy, the data acquired by these sensing technologies share com-

mon constraints, such as non-homogeneous sampling, occlusion

and noise. In view of their characteristics and complexity, dedi-

cated algorithms are required to segment, model and reconstruct

objects of interest from raw point clouds. Terrestrial laser scan-

ning (TLS) technology is broadly used in forest studies. TLS en-

ables 3D forest structures to be acquired as point clouds in record

time [1] , with applications ranging from ecology (allometric re-

∗ Corresponding author at: French Institute of Pondicherry, 11 Saint Louis Street,

Pondicherry 605001, India.

E-mail address: [email protected] (J. Morel).

o

f

s

https://doi.org/10.1016/j.cag.2018.05.004

0097-8493/© 2018 Elsevier Ltd. All rights reserved.

ationships, 1 and growth modeling carbon storage assessment) to

orestry (forest monitoring, sustainable development) and industry

harvest planning, sawmill optimization). However, the features of

uch data are even more challenging with respect to reconstruct-

ng models and extracting information (e.g., more challenging than

lassic applicative data, such as urban environments or isolated

bjects, because the clouds are extremely dense, inhomogeneous,

oisy and present large occlusions). These constraints arise both

rom the remote sensing technology and from the complexity of

orest environments. The TLS point cloud sampling rate may vary

rom one scanner to another, and the spherical geometry of the

ensor results in irregular sampling density. Moreover, the combi-

ation of TLS geometry and the vegetation itself (branches, leaves,

ow vegetation) results in large and numerous occluded areas that

xpand both in size and number far from the sensor. Noise con-

ributes additional confusion at surface extremities and in foliage.

herefore, data obtained from a given tree have different charac-

eristics from the base up to the crown. Forest measurements from

LS data also suffer from object-specific limitations. Stems bark can

1 Allometry consists of a set of general relations derived from a large compilation

f forest measurements. It provides an estimate of the tree structure according to a

ew given parameters, such as the diameter at breast height (DBH, diameter of the

tem 1.30 m above the ground) and the tree height.

Page 2: Surface reconstruction of incomplete datasets: A novel ... · Implicit surface reconstruction is the process of finding a function that best fits the input data. However, the implicit

J. Morel et al. / Computers & Graphics 74 (2018) 44–55 45

b

t

p

p

b

s

g

r

T

p

t

a

s

t

a

t

p

a

p

T

a

t

a

s

f

2

c

p

c

m

c

[

o

p

c

t

e

d

i

a

p

c

a

D

a

n

t

m

b

l

s

m

m

e

p

I

t

o

c

s

s

i

m

[

e

(

p

i

h

g

T

t

t

f

s

h

i

f

t

b

p

t

c

M

R

fi

t

a

p

q

T

f

b

i

d

a

c

p

i

f

s

t

b

e

n

T

a

t

t

D

t

s

i

l

T

t

c

e

s

S

t

t

c

a

s

t

e rough and therefore produce highly uneven surfaces. Moreover,

he non-trivial topology of branches and the intricate occlusions

roduced by these branches are highly challenging for point cloud

rocessing. Finally, let us note that LiDAR scanning of trees may

e affected by wind and thus create multiple scan alignment is-

ues. All these artifacts induce specific point cloud distortions and

enerate crooked objects. Therefore, in the context of LiDAR data,

econstruction is necessary to handle partially described objects.

o overcome the data distribution characteristics inherent to TLS

oint clouds, especially for data acquired in forests, our idea was

o rely on a priori knowledge about the forest elements expressed

s geometrical models. This paper presents a novel surface recon-

truction method that is specifically designed for the reconstruc-

ion of partially described objects based on 3D point clouds. We

ddress this challenge by introducing a novel surface reconstruc-

ion method based on a Poisson scheme, building upon sturdy ap-

roximating basis functions. On the basis of this innovation, our

lgorithm lets us integrate a priori models of occluded areas, ex-

ressed using basis functions, to describe partially tubular objects.

his approach provides good estimates of missing data and en-

bles complete reconstruction of forest objects. This algorithm was

ested and validated against “classic” datasets and on occluded

lmost-tubular shapes and tree sections. In Section 2 , we present a

hort literature review of surface reconstruction and tree modeling

rom TLS samples.

. State of the art

Pioneering works on surface reconstruction from raw point

louds date to the late nineties and are usually classified as ex-

licit or implicit according to the underlying model (see [2–4] for

omplete surveys). There are two types of explicit surfaces, para-

etric and meshes, both of which have been investigated in this

ontext. Parametric surfaces, such as B-splines [5,6] and NURBS

7] , entail determining a 2D parameter space together with a set

f associated control points. Such surfaces are controlled by these

oints but not as an approximation or interpolation. Therefore,

omplex surfaces are not easily representable, and parameteriza-

ion is a complex issue for scattered data, especially in the pres-

nce of noise, inhomogeneity and occlusions. In [8] , the authors

efine polynomial splines over locally refined parameter spaces

n any dimension and thus successfully reconstruct sharp features

nd details from point clouds. However, although the approach

erforms well on terrain data, its parametric nature, as well as its

omplexity, limit its application to data from complex scenes. Tri-

ngular mesh reconstruction received substantial attention through

elaunay triangulation, alpha shape reconstruction and Voronoi di-

grams [9–12] . However, scanning devices, such as LiDAR scan-

ers, produce dense, noisy and potentially occluded point clouds

hat cannot be accurately modeled by meshes. The successive re-

eshing required to obtain an adequate model multiplies the cum-

ersome computations. Moreover, the inhomogeneity of sampling

eads to unbalanced meshes, with larger polygons far from the sen-

or, tiny polygons close to it (where the point density can reach 1

illion points / m

2 ) and stretched polygons in occluded areas.

Therefore, the unstructured, nonplanar nature of point clouds

akes implicit surfaces a key modeling tool. Moreover, such mod-

ls structurally smooth the noise by approximating the input

oints and are tolerant to inhomogeneity and limited occlusion.

mplicit surface reconstruction is the process of finding a function

hat best fits the input data. However, the implicit representation

f a surface needs to be post-processed to be visualized. Marching

ube [13,14] is the best-known method to generate a triangulated

urface from the implicit representation of the surface. Because the

urface is extracted as a level set of an implicit function, the result-

ng mesh is guaranteed to be a watertight manifold.

Computing implicit functions from point clouds as an approxi-

ate of the signed distance function has been extensively studied

15] . However, such approaches prove to be unstable in the pres-

nce of nonuniform sampling. The moving least-squares method

introduced in [16] , see [17] for a complete survey) addresses this

roblem but struggles in the presence of missing data, as noted

n [2] : the large spatial support of basis functions required near

oles spoils the reconstruction. Another class of methods, namely,

lobal reconstruction methods, was proposed by Carr et al. [18] .

hese approaches are based on radial basis functions (RBFs) and

ake advantage of their approximating properties. RBFs are posi-

ive definite basis of functions and hence guarantee approximation

easibility (see [19,20] for more details). The benefits of modeling

urfaces with RBFs are broadly recognized [21–24] . However, poly-

armonic RBFs have global support; hence, reconstruction entails

nverting dense ill-conditioned matrices. To mitigate this problem,

urther works focused on compactly supported radial basis func-

ions (CSRBFs) (either used directly [25] or as blending functions

etween local reconstructions [26–28] or both [29] ). The finite sup-

ort of such functions enables faster filling of the interpolation ma-

rix [30] , which simultaneously becomes sparse. Matrix inversion

an thus be accelerated by using a direct sparse matrix solver (see

orse [31] for a summary of the advantages of CSRBF over classic

BF). A different approach takes advantage of both global and local

tting schemes by approximating the field of estimated normals

hrough Poisson reconstruction [32] . Owing to the representation

s a Poisson problem, this method is robust to nonuniform sam-

ling, noise, outliers and to a certain extent, missing data. These

ualities make it a choice method for surface reconstruction from

LS point clouds. However, for computational reasons, implicit sur-

aces are computed and expressed in a basis of functions obtained

y convolution of a box-filter with itself. Unfortunately, this basis

s not positive definite (unlike radial basis functions) and thus it

oes not have sufficient approximation properties to express any

priori information about occluded areas. While these surface re-

onstruction methods have proven to produce sharp models from

oint clouds, none is able to fill the large gaps created by occlusion

n LiDAR point clouds acquired in forests.

To solve this problem and extract the information needed in

orestry, scientists rely on a common assumption: a woody tree

tructure is assumed to be a network of quasi cylinders. Thus,

he tree structure, branching organization and branch size distri-

ution are modeled through so-called quantitative structure mod-

ls that summarize this information by describing the tree compo-

ents in hierarchical order as a stack of elementary building blocks.

his approach has been widely explored. Côté et al. [33] proposed

n architectural model combined with a skeletal curve approach

o retrieve the tree structure and allometric relationship to build

he branching structure and further assess the amount of foliage.

assot et al. [1] introduced a semi-automatic approach to model

ree architecture using cylinders and to estimate tree parameters,

uch as tree volume. Raumonen et al. [34] introduced a method

nvolving clusterization and segmentation of the point cloud, fol-

owed by reconstruction of the tree architecture using cylinders.

hey combined this geometric and hierarchical information into

he concept of quantitative structure modeling (QSM). A similar

ylinder-based tree-reconstruction method was proposed by Hack-

nberg et al. [35] using a sphere-following approach to progres-

ively reconstruct the tree structure from the ground to the apex.

witching from tree-level reconstruction to plot-level reconstruc-

ion is a challenging task. Intermingling crowns and occlusions due

o branches and leaves in the signal path makes it difficult to ac-

urately segment trees. Raumonen et al. [36] used a clusterization

pproach to detect tree bases, followed by a distance-based expan-

ion procedure to allocate the remaining clusters to the detected

rees. Tao et al. [37] used clustering and shortest-path algorithms

Page 3: Surface reconstruction of incomplete datasets: A novel ... · Implicit surface reconstruction is the process of finding a function that best fits the input data. However, the implicit

46 J. Morel et al. / Computers & Graphics 74 (2018) 44–55

3

n

p

m

p

t

o

F

c

p

3

t

t

d

m

l

d

q

σ

σ

a

m

T

w

a

o

4

k

s

t

4

S

t

t

c

a

t

t

w

to detect trees and segment associated crowns. Combining Hough

transform and active contours, Ravaglia et al. [38,39] introduced a

method to automatically detect and reconstruct largely occluded

tubular shapes. This approach bears some similarities with skele-

ton extraction methods such as [40] . However, it mitigates the ef-

fects of noise and longitudinal occlusions which are both highly

present in LiDAR point clouds. While these methods are effective

for extracting structural parameters, they propose discontinuous

models and rely on local cylindrical (and thus purely tubular) ap-

proximations, which has proven to be the best local approxima-

tion but can lead to substantial error. Indeed, the assumption that

a tree is composed of cylinders can be far from reality, especially

when we consider tropical trees. Chave et al. [41] found an error of

50% in the computation of the volume from field measurements at

the tree level by such approximations in tropical forests. Therefore,

even if QSM approaches are well suited to reconstruct the struc-

ture of trees from LiDAR data, they provide only a rough estimate

of the structure. Hence, sharper 3D modeling is required to more

accurately describe the shape and improve the geometric model to

precisely assess tree properties.

In spite of this specific initial context, our approach is actually

general: in order to reconstruct largely occluded, roughly tubular

data, we assumed that a detailed reconstruction can be achieved

only in reasonably sampled areas, but the reconstructed model

should be resilient enough to integrate an a priori model of oc-

cluded (tubular) areas. Such “roughly tubular” shapes, locally well

sampled and partly occluded are quite common in LiDAR data

(such as archeological, urban or natural data for instance). The aim

of our work is to build a model which proves both locally accurate

(in properly sampled areas) and globally coherent (according to a

priori information).

Using a priori models to guide the reconstruction is not new.

Previous works are based on priors on the surface using Bayesian

approaches (works on medical data), global matching of the shape

using priors stored in a database (see [42] for instance) or local

shape priors (see [43] ). However such approaches are based on

the assumption that the shape is globally or locally known a priori ,

and thus focus on matching data and priors. However in our con-

text, we intend to reconstruct the shape as accurately as possible

in visible areas (and the shape is unknown there) and priors are

used only to reconstruct occluded areas in a coherent way.

3. Overview of the approach

Our work introduces two significant innovations. We propose

a new 3D reconstruction method based on a Poisson scheme de-

veloped over CSRBF, whose approximating properties have already

been mentioned and provide the “resilient” setting for further in-

tegration of a priori knowledge. In addition to the reconstruction

efficiency demonstrated in our validation, this choice of basis func-

tion enables the expression and integration of a priori knowledge

in occluded areas.

Our method hence focuses on accurately approximating data

points while managing occlusions to produce a closed surface. To

do so in our application context, the method identifies and sep-

arately processes visible and occluded areas. For the visible por-

tions of the object, a novel Poisson surface algorithm finely re-

constructs the surface. In occluded areas, the tree surface is rep-

resented using a a priori model characterized by a tubular profile

that is adapted to approximate the shape of the tree. The smooth-

ing characteristic of the CSRBF then guarantees the continuity of

shape between models. The following two sections describe both

pre-processing steps, upon which our method builds: the compu-

tation of the point normals, which are required by the Poisson sur-

face solver, and the computation of the tubular shape (or QSM) to

guide reconstruction in occluded areas.

.1. Point normals computation

Let P = { p i } i =1 ... N ⊂ R

3 be the input point cloud. As a prelimi-

ary processing step, Poisson surface reconstruction requires com-

utation of a consistent normal field for each sample. We use the

ethod introduced by Hoppe [15] to compute a normal n i at each

oint p i . Actually, more accurate algorithms exist (local triangula-

ion, quadric fitting...), however, LiDAR point clouds can be made

f billions of points, making the computation time a critical issue.

ollowing [15] , we first study the neighborhood of each point p i to

ompute a normal n i , then we direct consistently the normals by

ropagating their orientation on a minimum spanning tree.

.2. Tubular guide estimation

In our next preliminary processing step, we compute a QSM of

he tree (in the context of our application, we used the Hough

ransform approach introduced by Ravaglia et al. [38] ). From this

iscontinuous stack of cylinders, the global outline of the tree is

odeled by a continuous tubular shape, as introduced in [44] . Fol-

owing this approach, in each slice along the Oz axis, the cylin-

er (centered in c i ) is used as an initialization to fit a cylindrical

uadratic function g i , whose influence lies in the sphere of radiusi . Each radius σ i is thus computed so that the set of spheres S( c i ,i ) covers the whole tree. The tubular model is then expressed as

n implicit function obtained by blending the quadratic approxi-

ations g i together with a CSRBF, namely, Wenland’s CSRBF [30] .

herefore, the a priori model of the tree is expressed as:

f ( q ) =

i

g i ( q ) · �σ i (‖ q − c i ‖ ) , (1)

here i ranges over the indices of slices {Z i } along the Oz axis, g i is

quadratic function and �σ i is the Wendland φ3, 1 CSRBF centered

n c i and of support radius σ i .

. CSRBF Poisson surface reconstruction guided by a model

nown a priori

As illustrated in Fig. 1 , following the previous pre-processing

teps, our method is based on five steps.

• We divide the space into two parts, namely, occluded and visi-

ble areas, by analyzing the angular distribution of points. • We define a space of functions based on a CSRBF with high

resolution near the points and near the surface of the tubular

model and coarser resolution away from them. • In visible areas, we set up and solve the Poisson equation. • In occluded areas, taking advantage of the approximating prop-

erties of the CSRBF, we express the tubular shape in our space

of functions and insert it into the solution. • Finally, we extract an isosurface of the resulting implicit func-

tion.

The details of each steps are provided in the following subsec-

ions.

.1. Mark off the occluded areas

As illustrated in Fig. 1 , the QSM computation described in

ection 3.2 provides a division of space into several slices Z i along

he stem axis. In each subset, an analysis of the angular distribu-

ion of points enables the detection of holes: among the points

ontained in Z i , if two points are separated by an angle larger than

given user-defined threshold, then the portion of space between

hem is considered to be occluded. In this way, we eventually ob-

ain a boundary between the visible and occluded areas for the

hole set of slices.

Page 4: Surface reconstruction of incomplete datasets: A novel ... · Implicit surface reconstruction is the process of finding a function that best fits the input data. However, the implicit

J. Morel et al. / Computers & Graphics 74 (2018) 44–55 47

Fig. 1. Overview of the method: For preliminary processing, we compute a QSM and the normal of the points. Then, we consider each building block of the QSM indepen-

dently. (left) Data points are distributed over the part of the trunk exposed to the LiDAR beam, dividing the space into occluded and visible areas. (Top) Based on a QSM,

we estimate the tree shape as a tubular model expressed as an implicit surface. (Bottom) In the visible area, we compute a Poisson surface reconstruction based on CSRBF.

(Right) The algorithm approximates the surface of the tree as a Poisson surface in the visible area and closes the surface using the tubular model in the occluded area. The

tree surface is retrieved by blending the models computed for each QSM building block.

Fig. 2. Overview of the discretization in 2D: (a) the first division of the octree is driven by the points distribution: every points should fall into a leaf, then (b) leaves are

divided close to the tubular shape (represented as a grey circle) and finally (c) the octree is refined by allowing a maximum difference of levels equal to one between a leaf

and its neighbors.

4

r

f

a

b

c

o

t

b

a

d

F

l

s

.2. Problem discretization

To efficiently solve the Poisson scheme, our model needs to be

efined close to the points and the tubular model surface. We per-

orm this adaptive subdivision using an octree, which allows us to

djust the resolution locally while providing rapid access to neigh-

orhoods and a low memory footprint. The octree subdivision pro-

ess is illustrated in Fig. 2 . We define the octree as the minimal

ctree so that every point falls into a leaf of a resolution fixed by

he user. Then, we force octree division close to the tubular shape

y analyzing the eight corners of each leaf falling in the occluded

rea; the sign of the implicit function is given in Section 3.2 . Sub-

ivision occurs if at least one corner of a leaf has a different sign.

inally, we refine this octree by allowing a maximum difference of

evels equal to one between a leaf and its neighbors to guarantee

mooth variation in resolution. We denote by O and O

v isible occluded
Page 5: Surface reconstruction of incomplete datasets: A novel ... · Implicit surface reconstruction is the process of finding a function that best fits the input data. However, the implicit

48 J. Morel et al. / Computers & Graphics 74 (2018) 44–55

i

s

W

l

W

w

V

4

t

χ

w

w

t

p

i

s

t

p

r

c

I

r

e

t

4

⎡⎢⎣

R

c

K

w

v

s

r

d

o

h

o

the leaves falling, respectively, in visible areas and occluded areas,

as defined in Section 4.1 . The resulting set of leaves O form a par-

tition of space.

4.3. Definition of the function space

Let P denote the input point cloud (set of points of R

3 ). Given

{O 1 , . . . , O N } , a partition of P (in our case, the previously defined

octree subdivision of space), for each subset O i (or cell) we denote

by o c i the center of O i . To build our implicit model, we define a

space of functions as the span of translates of Wendland’s CSRBF:

for every node o ∈ O, we thus set �σo to be the CSRBF centered on

o c i with radius σ o , defined hereafter to ensure a sufficient coverage

of space:

�σo (‖ q − o c ‖ ) = φ

(‖ q − o c ‖

σo .

)(2)

More precisely, we use φ(r) = (1 − r) 4 + (1 + 4 r) , where + represents

(x ) + = x if x > 0 and (x ) + = 0 otherwise. The radii σ o are adjusted

to recover the details of smaller cells while limiting the overlap-

ping of supports for larger cells. With this in mind, we compute

σ o as:

σo = a × Size min +

3 / 2 × Size o , (3)

with Size min the size of the smallest octree leaf, Size o the size of

leaf o and a a parameter tuned by the user. Span { �σo } , the set of

independent basis functions �σo is used as a basis to express the

implicit functions computed in the following sections.

4.4. Setup of the Poisson problem

Poisson surface reconstruction methods are motivated by the

computation of the characteristic function χ of a solid M with

surface boundary ∂M . In [32] , the authors highlighted an integral

relation between the gradient ∇χ (where χ has been smoothed to

become at least C 2 ) and the field of oriented point normals. Hence,

χ can be computed as an implicit function χ whose gradient ap-

proximates a vector field V induced by the normals of the sample

points. Given p ∈ ∂M :

∇(χ ∗ F )( q ) =

∫ ∂M

F( q − p ) · n · dp, (4)

where F is a smoothing filter. Because V is rarely integrable, this

variational problem is transformed into a standard Poisson prob-

lem by applying the divergence operator:

�χ = ∇ . V (5)

The definition of the discrete approximation of V is a critical

step. The main point is to discretize and approximate Eq. (5) . First,

following [32] , Eq. (5) is discretized as a sum over data points by

assuming that any point p of normal n describes an elementary

patch of surface A p , which leads to the following formula:

V( q ) =

p ∈P A p · F( q − p ) · n . (6)

Then, for computational efficiency, in order to avoid this integral

over data points, the influence of each sample point and its normal

are distributed in the surrounding octree cells. Given a point p ∈P, a coefficient αo, p is introduced to account for the share of p

attributed to cell o . We define these coefficients using the basis

functions themselves. Let N ( p ) be the neighborhood of a sample

point p , that is, N ( p ) = { o ∈ O v isible , ‖ p − o c ‖ < σo } . We define αo, p

as:

αo, p =

�σo (‖ p − o c ‖ ) ∑

o ′ ∈N ( p ) �σ ′ o (‖ p − o

′ c ‖ )

. (7)

t

Now, before defining the vector field V, let us consider the data

nhomogeneity. As mentioned in [32] , local variations in point den-

ity should be considered to adjust the contribution of data points.

e follow a kernel density estimation approach and estimate the

ocal density as:

( q ) =

p ∈P

o∈N ( p )

αo, p . �1 σo

(‖ q − o c ‖ ) , (8)

ith �1 (r) = 1 − r being a Wendland’s CSRBF of first order.

We can now approximate the vector field defined by Eq. (6) as:

( q ) =

p ∈P

1

W( p )

o∈N ( p )

αo, p �σo (‖ q − o c ‖ ) · n . (9)

.5. Resolution of the Poisson equation

We express χ in the space Span { �σo } as the linear combina-

ion:

( q ) =

o∈O v isible

x o · �σo (‖ q − o c ‖ ) . (10)

By projecting the Poisson equation onto this space of functions,

e obtain:

o ′ ∈ O v isible , 〈 �χ, �σo ′ 〉 = 〈 ∇ · V, �σo ′ 〉 , (11)

here �χ( q ) =

o∈O v isible x o · ��σo (‖ q − o c ‖ ) .

Denote by L the matrix of elements 〈 ��σo , �σo ′ 〉 , v the vec-

or of 〈∇ · V, �σo ′ 〉 elements and x the unknown vector com-

osed of the linear coefficient of χ . Because our basis function

s not orthonormal, we solve the Poisson problem by minimizing

L · x − v ‖ 2 in the least-squares sense. In our case, the matrix L is

elf-adjoint and positive definite owing to the properties of func-

ions �σo and ��σo . Moreover, it is sparse because of the com-

act support of the basis functions; thus, solving this problem di-

ectly is not expensive. Therefore, we use the LDL T Cholesky de-

omposition for sparse matrices implemented in the Eigen library.

n the next section, we provide further details about the efficient

esolution of this Poisson problem with CSRBF. In fact, we make

xplicit the system of equations and deduce the symmetry proper-

ies that enable us to optimize its resolution.

.6. Optimization

The Poisson Eq. (5) can be expressed in its matrix form as:

. . .

〈 ��σo , �σo ′ 〉

. . .

⎥ ⎦

⎢ ⎣

. . . x o . . .

⎥ ⎦

=

⎢ ⎣

. . . 〈∇ · V, �σo ′ 〉

. . .

⎥ ⎦

. (12)

The dot product is that of L 2 (R ) : given f : R

3 → R and g : R

3 → , two compactly supported functions, and , the union of their

ompact supports, the dot product can be expressed as follows:

f , g〉 =

∫ R 3

f ( q ) · g( q ) · d q =

f ( q ) · g( q ) d q . (13)

eeping with the definitions introduced earlier in this document,

e denote by L = 〈 ��σo , �σo ′ 〉 the Laplacian matrix and by V the

ector (〈∇ · V, �σo 〉 ) o∈O . A study of the symmetries of this system, presented in detail in

ection Appendix A , allows to reduce the number of computations

equired to solve the system. Table 1 , in particular, illustrates the

rastic reduction in the number of computations for reconstruction

f the Stanford bunny. For each explored radii value, among the

undreds of thousands of matrix entries that need to be estimated,

nly a few dozen are actually computed thanks to the symmetry;

he remaining are retrieved by a simple search in the hash table.

Page 6: Surface reconstruction of incomplete datasets: A novel ... · Implicit surface reconstruction is the process of finding a function that best fits the input data. However, the implicit

J. Morel et al. / Computers & Graphics 74 (2018) 44–55 49

Table 1

Evolution of the number of integral computations L o,o ′ and D t,o,o ′ to reconstruct

the Stanford bunny model according to the radii σ o of the basis functions (pa-

rameter a in Eq. (3) for an octree resolution of 1 mm).

a Non-zero entries in L Entries actually computed for

〈 ��σo , �σo ′ 〉 〈∇ · V, �σo

〉 1.5 4773,131 14 31

1.6 4781,877 16 38

1.7 4785,120 18 44

1.8 4785,766 19 47

1.9 4786,511 21 52

2.0 4786,627 22 54

4

f

t

a

s⎡⎢⎣

w

t

v

t

a

4

d

i

t

t

fi

t

s

(

t

k

w

b

t

χ

4

a

u

i

o

i

Fig. 3. Smoothing of the final surface in the overlap area by linearly combining the

implicit function solution of the Poisson equation χ and the implicit function of the

tubular model f .

Fig. 4. Reconstruction of the Stanford bunny surface with different methods: (Cen-

ter, white) the reference surface reconstructed by the “zipper” program and pro-

vided by Stanford University. (Right, green) The Poisson surface reconstructed by

Kazhdan’s algorithm implemented in Meshlab for an octree depth of 7. (Left, blue)

The Poisson surface reconstructed by our method for an octree depth of 7. (For in-

terpretation of the references to color in this figure legend, the reader is referred to

the web version of this article.)

a

m

5

p

i

T

N

.7. Injection of the tubular shape

To include the tubular shape defined in Section 3.2 , the implicit

unction f describing the tubular shape must be approximated in

he space Span { �σo } . We compute the function by interpolating f

t collocations { o c , o ∈ O} . To accomplish this task, we consider the

ystem:

. . .

A o,o ′

. . .

⎥ ⎦

⎢ ⎣

. . . y o . . .

⎥ ⎦

=

⎢ ⎣

. . . f ( o

′ c )

. . .

⎥ ⎦

(14)

here A o,o ′ = 〈 �σo , �σo ′ 〉 .

According to the properties of Wendland’s CSRBF �σo , this ma-

rix is self-adjoint and positive definite. Thus, the system is in-

erted by using the LDL T Cholesky decomposition implemented in

he Eigen library.

Finally, we obtain the linear decomposition of f in Span { �σo }s:

f ( q ) =

o∈O occluded

y o · �σo (‖ q − o c ‖ ) . (15)

.8. Smoothing between visible and occluded areas

In most cases, the transition between χ , the implicit function

efined in the visible areas, and f , the implicit function defined

n the occluded areas, is handled by the smoothing characteris-

ic of Wendland’s CSRBF. Nevertheless, for complex tree shapes,

he transition might be too rough. To overcome this issue, we de-

ne an overlap portion of space, whose size Θmax is defined by

he user, in which we linearly mix the implicit functions. In this

ub-part of O v isible , called O ov erlap , we have Poisson reconstruction

o x o · �σo ) and a priori model ( ∑

o y o · �σo ). Thus, we consider

he implicit function k defined as:

( q ) =

o∈O ov erlap

[ αo · x o + (1 − αo ) · y o ] · �σo (‖ q − o c ‖ ) , (16)

here αo = 1 − Θo Θmax

is the coefficient of the linear interpolation

etween x o and y o according to the angular position Θo of the cen-

er of o in O ov erlap .

Finally, our resulting implicit function h is expressed as: h =+ k + f, as illustrated in Fig. 3 .

.9. Surface extraction

Following from our modeling choices (namely, Wendland’s RBF

nd quadrics), the implicit function f is C 2 . Hence, it is possible to

se a polygonization algorithm to represent the zero-level set of

mplicit function h . In the space defined by the union of spheres

f radius σ o , h is discretized into a scalar field, whose resolution

s set by the user. From this scalar field, the polygonizer computes

set of triangles approximating the implicit surface h by using a

arching-cube-like algorithm [45] .

. Complexity

In the visible areas, the scheme transforms the integral on the

oints into an integral on octree cells by distributing each point

nfluence in the neighboring cells through the αo, p coefficients.

he complexity thus mainly arises from construction of the sparse

× N matrix, where N is the octree size and the resolution of the

Page 7: Surface reconstruction of incomplete datasets: A novel ... · Implicit surface reconstruction is the process of finding a function that best fits the input data. However, the implicit

50 J. Morel et al. / Computers & Graphics 74 (2018) 44–55

Fig. 5. Mean Hausdorff distance between the computed mesh and the reference for

the three objects considered.

Fig. 6. Insight of the results obtained on Quasimoto.

Fig. 7. Insight of the results obtained on the gargoyle.

Fig. 8. Insight of the results obtained on the anchor.

e

s

6

i

a

t

d

m

i

associated linear system. Owing to the symmetries presented in

Appendix A , the matrix construction involves at most one hundred

integrals.

In the occluded areas, the complexity originates from the ex-

pression of the a priori model in the CSRBF basis. The main op-

ration is also the inversion of a symmetric and positive definite

parse matrix.

. Results and validation

The quality of our algorithm is assessed based on three exper-

ments: in Section 6.1 , we compare the surface generated by our

pproach to the Poisson surface reconstruction found in the litera-

ure, namely, the un-screened version of the Poisson reconstruction

eveloped in [32] . Then, in Section 6.2 , we compare how the two

ethods address occlusions. Finally, in Section 6.3 , we analyze the

mprovement to tree modeling.

Page 8: Surface reconstruction of incomplete datasets: A novel ... · Implicit surface reconstruction is the process of finding a function that best fits the input data. However, the implicit

J. Morel et al. / Computers & Graphics 74 (2018) 44–55 51

Fig. 9. Result of classic Poisson surface reconstruction (green mesh) and our approach (blue mesh) on a simulated point cloud (red points) that features an angular occlusion

of 10 °, 15 °, 20 °, 90 ° and 180 °. (For interpretation of the references to color in this figure legend, the reader is referred to the web version of this article.)

6

s

b

s

d

m

t

F

s

q

m

d

t

m

s

e

F

c

d

a

m

i

6

a

l

e

t

n

o

a

1

Fig. 10. Mean Hausdorff distance between the computed mesh and the input point

cloud for the two methods on the four trees.

a

t

p

c

p

l

s

a

6

e

.1. Comparison without occlusion

To test the robustness of our version of Poisson surface recon-

truction, we compare the surface we generate to the one created

y Kazhdan, which acts as a reference in this field of research. We

olved the Poisson problem on a non-occluded well-known stan-

ard model (the Stanford bunny) and directly produced a surface

odel without injecting any shape in the solution, i.e. , we ran only

he part of the algorithm described in Section 4.4, 4.5 and 4.9 .

ig. 4 presents the reconstructed surfaces of the bunny.

Then, we estimated the distances to the reference for the un-

creened Poisson surface reconstruction and for our method. This

uality assessment was performed by comparing the reference

esh model with the outputs of the algorithms using the Haus-

orff distance implementation available in Meshlab. As an addi-

ional validation step, we evaluate the reconstruction force of our

ethod on the data set provided by Berger et al. [4] . Among the

imulated point clouds available in this benchmark, we consid-

red the ones describing the anchor, the gargoyle, and Quasimoto.

or each of these objects, surfaces were reconstructed on 16 point

louds, for an octree resolution of 0.5 cm. Fig. 5 presents the Haus-

orff distances computed between the surfaces produced by our

lgorithm and the reference, which is also provided in the bench-

ark. Figs. 6–8 gives an insight of the reconstructed surfaces qual-

ty.

.2. Occlusion management

The development of our method ensues from the need to man-

ge holes in surface reconstruction from 3D point samples col-

ected in forests. Indeed, the state-of-the-art approaches in the lit-

rature struggle to address holes. In particular, when considering

rees described by single TLS scans, only the bark facing the scan-

er is described by the point samples: the entire back side remains

ccluded. To compare our approach to traditional PSR in this situ-

tion, we generated point clouds distributed on a cylinder with a

meter radius and a decreasing angular distribution to simulate

widening occlusion. Visual assessment of the surface reconstruc-

ion on the occluded cylinders ( Fig. 9 ) demonstrated how our ap-

roach can handle data gaps over 50% of the surface owing to the

ompletion of the shape by the a priori model. In this case, the

oint samples are distributed only on half of the cylinder, simi-

ar to the conditions of a single scan in a forest. On the opposite

ide, traditional PSR shows shape inconsistencies starting at 15 °nd fails to close the shape when the occluded areas exceed 20 °.

.3. Modeling of trees

The following step of our validation focuses on testing the

fficiency of our reconstruction approach with respect to the

Page 9: Surface reconstruction of incomplete datasets: A novel ... · Implicit surface reconstruction is the process of finding a function that best fits the input data. However, the implicit

52 J. Morel et al. / Computers & Graphics 74 (2018) 44–55

Fig. 11. Normalized difference in volume between the estimate and the reference

for the two methods tested on the four trees.

Table 2

Hausdorff distance statistics (mm) for the reconstruc-

tion of the Stanford bunny.

Min Max Mean RMS

Un-screened PSR 0.00 2.17 0.21 0.32

CSRBF PSR 0.00 1.74 0.22 0.30

Fig. 12. Illustration of the reconstructed surface recovered from the point cloud de-

scribing the tree without leaves for a Terminalia superba (in blue). The complete

point cloud is plotted as an overlay on the scene. (For interpretation of the refer-

ences to color in this figure legend, the reader is referred to the web version of this

article.)

m

m

s

t

s

o

o

s

g

Q

3

t

n

t

l

c

t

s

g

d

f

b

t

t

a

v

u

t

S

Q

p

a

i

o

b

a

cylindroid fitting method proposed in [44] . To that end, portions of

real trees were used to generate a reference model and associated

volume. The efficiency of the method was assessed by estimating

the volumes and computing the distances between the input point

cloud and the reconstructed surface mesh. We chose four portions

of real trees, whose surfaces and volumes were previously esti-

mated, to serve as a reference. On these four datasets, we ran a TLS

simulator to generate several single-view scans from varying points

of view. To artificially increase the size of our testing sample, we

generated a set of single-point-of-view scans by setting up virtual

scan positions that were evenly distributed around the reference

mesh. The simulated point clouds were used to compute the tree

volume following two approaches: (1) a method based on cylin-

drical quadrics and RBF and (2) our Poisson surface reconstruction

method based on CSRBF. Sixteen simulated point clouds were pro-

duced for each tree, resulting in a validation set of a total of 64

computations of volume for the two methods.

Fig. 12 gives an insight of the level of details restored by our

reconstruction, especially in the branches and on the butressesses.

It highlights the improvement on tree modeling induced by the use

of continuous surface.

7. Discussion

First, in order to demonstrate the generality of our Poisson re-

construction scheme, we compared our method, used without any

a priori information, to the un-screened Poisson surface recon-

struction that is well-known in the computer graphics field of sur-

face reconstruction. Despite the longer computation time required

to compute the matrix terms due to the Monte Carlo integration,

our method proved to be slightly more efficient to rebuild the sur-

face mesh of the Stanford bunny, with less noise, higher accuracy

and no holes. Indeed, the distance between the input point cloud

and the reconstructed surface presented in Table 2 has the same

agnitude for both methods (slightly lower for our approach). Our

ethod produces a slightly more detailed surface owing to the

maller radius of the kernels. The un-screened Poisson reconstruc-

ion surface produces a smoother and less-detailed surface for the

ame octree refinement. As a second validation step without pri-

rs, we estimated the difference in between our reconstructions

n the simulated scans proposed in the benchmark [4] and the

upplied references. At a 5 mm resolution, our method showed

ood results on the rounded objects that are the gragoyle and

uasimoto, with errors close to 2 mm. Errors increased to almost

mm on the more angular object, the anchor, presenting some-

imes artifacts on the sharp edges. Those unstabilities, where the

ormal direction tends to change abruptly, will be tackle by a bet-

er discretization induced by the multiscale approach discussed

ater on.

The next step of the validation was to evaluate the effect of oc-

lusion for simple tubular shapes on both methods. The results of

he experiment presented in Fig. 9 clearly show the limit of un-

creened Poisson surface reconstruction: for an angular occlusion

reater than 20 °, which corresponds to a hole of 35 cm on a cylin-

er of points with a 1 m radius, the method diverges (the sur-

ace represented in Fig. 9 is the extraction of the isosurface in the

ounding box of the cylinder, thus divergence appears as a hole in

he reconstructed surface). On the other hand, our approach solves

his occlusion issue up to 180 ° by guiding the reconstruction using

n a priori shape.

In the last part of the validation, we “measured” the added

alue of our method for modeling trees and computing their vol-

me. The model that our method produces was compared to

he tubular shape based on quadrics and CSRBF described in

ection 3.2 (which was itself 50% more accurate than standard

SM approaches). Overall, the proposed Poisson CSRBF based ap-

roach provided an improved approximation of the object shape

nd volume. The method is particularly well suited to reconstruct

rregular shapes and is thus more flexible to handle the diversity

f shapes found in natural environments.

The method is particularly useful for reconstructing crown

ranches whose shapes can be distorted due to gravity, as well

s tree buttresses, which remain difficult to model and could

Page 10: Surface reconstruction of incomplete datasets: A novel ... · Implicit surface reconstruction is the process of finding a function that best fits the input data. However, the implicit

J. Morel et al. / Computers & Graphics 74 (2018) 44–55 53

Fig. 13. Close-up of the reconstructed surfaces of a slice of points distributed on the lower part of a tree presenting buttresses from two points of view: in the upper part,

the input point cloud with deleted points in blue, which artificially create occlusion, and the remaining points in green; in the middle part, the surface reconstructed with

the quadrics and CSRBF method; in the lower part, the surface reconstructed with our Poisson reconstruction method based on CSRBF. (For interpretation of the references

to color in this figure legend, the reader is referred to the web version of this article.)

c

F

f

b

o

p

l

o

s

m

d

t

f

a

o

c

l

t

t

T

i

d

w

r

l

t

b

t

l

8

p

c

s

c

c

v

a

q

i

s

e

p

a

p

i

e

A

ontain a significant portion of the tree volume and biomass.

ig. 13 presents an example of surface reconstruction in an un-

avorable case of a point cloud distributed on the buttress at the

ase of a tree. While the tubular shape struggles to fit the points,

ur method correctly approximates the shape of the buttress while

reserving the tubular shape in the occlusion. Figs. 10–11 high-

ights the improvement in tree modeling from the tubular shape to

ur Poisson surface reconstruction based on CSRBF. For the whole

et of trees used in the validation, the tubular shape model re-

ains greater than 1.5 cm on average. Our method reduces this

istance to an average of 6 mm. The remaining distance between

he model and the points is due to the smoothing of the implicit

unction described in Section 4.8 , where we set aside input points

nd the surface to handle complex tree shapes. Moreover, because

f the point-density differences, our results are slightly less ac-

urate on thinner trees, for instance, tree 4. These issues high-

ight several ways to improve the method. First, we will improve

he occlusion detection to more accurately merge the surface from

he resolution of the Poisson equation to the shape known a priori .

hen, we plan to improve the combination of the models produced

n the visible and occluded areas by defining a feedback loop to

eform the a priori model by checking the local curvature. Finally,

e intend to implement a multiscale approach to Poisson surface

econstruction to better handle variations in points density. By fol-

owing the framework defined in [46] where the matrices are par-

ially recomputed at each refinement iteration, we also intend to

uild an adaptive solver for our Poisson equation by taking advan-

f

age of the refinability of the function space. This process will also

ead to better memory management and faster computation.

. Conclusion

Our original Poisson surface reconstruction based on CSRBF

roved to be efficient to reconstruct surfaces from dense point

louds. ,Moreover, using this function basis, we can model any

mooth prior. Hence, for tubular shapes, the method addresses oc-

lusion by integrating an a priori model of the shape to reconstruct

losed surface models. For scanned trees,we thus improve both

olume (ie. biomass) and shape estimation but the method actu-

lly applies to any quasi tubular shape (such data actually arise fre-

uently in archeological, urban of natural data). In future work, we

ntend to enhance the method to handle even higher point-density

hifts by following a multiscale approach, which will also accel-

rate the resolution of the Poisson equation. We also plan to im-

rove the control of transitions between the visible and occluded

reas by adding feedback from the Poisson reconstruction to the a

riori model. Moreover, as any smooth prior can be expressed us-

ng proper collocations for CSRBF, we are currently working on the

fficient integration of general priors for occluded areas.

cknowledgments

The authors would like to express their thanks to the Stan-

ord Scanning Repository for their generosity in distributing their

Page 11: Surface reconstruction of incomplete datasets: A novel ... · Implicit surface reconstruction is the process of finding a function that best fits the input data. However, the implicit

54 J. Morel et al. / Computers & Graphics 74 (2018) 44–55

w

A

(

o

b

L

I

fi

q

v

L

t

t

o

mt

f

p

t

L

L

A

p

L

a

(

∀A

t

o

3D models. The authors would also like to thank the French In-

stitute of Pondicherry for supporting the fellowship of Jules Morel,

Alexandre Piboule at ONF (Office National des Forêts, France) to as-

sist in the development of the Computree plugin and Nicolas Bar-

bier at UMR AMAP (Botanique et Modélisation de l’architecture des

plantes et des végétations, France) for providing test data. Those

unpublished data from Cameroon were collected in collaboration

with Alpicam company within the IRD project PPR FTH-AC Change-

ment globaux, biodiversité et santé en zone forestière dAfrique Cen-

trale . Cédric Véga was supported by the Laboratory of Excellence

for Advanced Research on the Biology of Tree and Forest Ecosys-

tems (ARBRE) and the European Unions Horizon 2020 research and

innovation programme under grant agreement No 633464 (DIA-

BOLO).

Appendix A. Optimization

A1. Evaluation of the integral terms

Let us first compute the coefficients of the matrix L , that is,

〈 ��σo , �σo ′ 〉 . Our basis functions have been chosen to be C 2 ;

therefore, by integrating the compactly supported functions byparts, we obtain

∫ f ′′ . g = − ∫

f ′ . g ′ . Thus, we can express the

terms of the matrix as:

〈 ��σo , �σo 〉 = −⟨∂�σo

∂x , ∂�σo

∂x

⟩−

⟨∂�σo

∂y , ∂�σo

∂y

⟩−

⟨∂�σo

∂z , ∂�σo

∂z

⟩. (A.1)

As noted in Section 4.3 , we use Wendland’s CSRBF to

define our basis, that is, for q (x, y, z) ∈ R

3 , �σo ( q ) =(1 − ‖ q −o c ‖

σo

)4

+

(1 + 4 ‖ q −o c ‖

σo

). The derivative along the first coordi-

nate thus gives:

∂�σo

∂x = − 20

σ 2 o

(1 − ‖ q − o c ‖

σo

)3

+ ( q − o c ) x , (A.2)

where ( v ) w

denotes the coordinate of a vector v along the w axis

(with w, x , y and z ). Let us set q o = q − o c and q o ′ = q − o

′ c . The combination of Eqs

(A.1) and (A.2) gives:

〈 ��σo , �σo ′ 〉 = −

(400

σ 2 o .σ

2 o ′

)∫

(1 − ‖ q o ‖

σo

)3

+

(1 − ‖ q o ′ ‖

σ ′ o

)3

+ 〈 q o , q o ′ 〉 d q .

(A.3)

We then simplify Eq. (A.3) as:

〈 ��σo , �σo ′ 〉 = −

(400

σ 2 o .σ

2 o ′

)L o,o ′ , (A.4)

where

L o,o ′ =

(1 − ‖ q o ‖

σo

)3

+

(1 − ‖ q o ′ ‖

σ ′ o

)3

+ 〈 q o , q o ′ 〉 . d q . (A.5)

Following the same process, we express the projection of the

divergence of V on our base of functions by:

〈∇ · V(q ) , �σo ′ 〉 =

p i ∈P

o∈O αo, p i

∇ · [�σo (‖ q o ‖ ) · n i ]�σo ′ (‖ q o ′ ‖ ) . d q , (A.6)

where

∇ . [�σo (‖ q o ‖ ) · n i ] = 〈∇�σo

(‖ q o ‖ ) , n i 〉

= −(

20

σ 2 o

)(1 − ‖ q o ‖

σo

)3

+ 〈 q o , n i 〉 . (A.7)

Finally, we rewrite Eq. (A.6) as:

∇ · V(q ) , �σo 〉 =

p i ∈P

o∈O αo, p i

(−20

σ 2 o

) ∑

t∈{ x,y,z} D t,o,o ( n i ) t d,

(A.8)

here

t ∈ { x, y, z} , D t,o,o ′ =

(1 − ‖ q o ‖

σo

)3

+ �σo ′ (‖ q o ′ ‖ ) ( q o ) t d q .

(A.9)

2. Study of symmetries

To accelerate and simplify the computation of the terms of Eq.

12) , we study the symmetries of L o,o ′ and D t,o,o ′ and show that

nly a few of these terms need to be computed.

Symmetries for the computation of L o,o ′ . Let us define the function f as f ( x ) = (1 − x ) 3 + . Eq. (A.4) then

ecomes:

o,o ′ =

f

(‖ q − o c ‖

σo

)f

(‖ q − o

′ c ‖

σo ′

)〈 q − o c , q − o

′ c 〉 d q . (A.10)

n this section, we assume σ o and σo ′ are given and fixed. Let usrst show that L o,o ′ depends only on vector o c − o

′ c . We set p =

− o c (and let t be the corresponding translation); by change ofariables in Eq. (A.10) , we obtain:

o,o ′ =

f

(‖ p ‖ σo

)f

(‖ p + o c − o ′ c ‖ σo ′

)〈 p , p + o c − o ′ c 〉 | det (J t ) | d p , (A.11)

where det (J t ) is the determinant of the Jacobian of the transla-

ion t , whose value is 1. As a consequence, L o,o ′ depends only on

he vector o c − o

′ c and radii σ o and σo ′ .

Let us now proceed a step further and show that L o,o ′ depends

n only ‖ o c − o

′ c ‖ . Let us consider the rotation r : q → R q , whose

atrix in the canonic basis is R , and send the vector ‖ o c − o

′ c ‖ e 1

o o c − o

′ c along the x axis, with e 1 = (1 , 0 , 0) . As f is a radial basis

unction, for any vector u , f ( u ) = f (‖R u ‖ ) . Moreover, the scalarroduct of two vectors is clearly invariant under simultaneous ro-ation. Hence, Eq. (A.11) becomes:

o,o ′ =

f

(‖R p ‖ σo

)f

×(‖R p + ‖ o c − o ′ c ‖ e 1 ‖

σo ′

)〈R p , R p + ‖ o c − o ′ c ‖ e 1 〉 d p . (A.12)

Now, under the change of variables u = R p , we obtain:

o,o ′ =

f

(‖ u ‖

σo

)f

(‖ u + ‖ o c − o

′ c ‖ e 1 ‖

σo ′

)

×〈 u , u + ‖ o c − o

′ c ‖ e 1 〉 | det (J r ) | d p . (A.13)

s the rotation R is isometric, it maintains the norms and dotroducts. Therefore, by using | det (J r ) | = 1 , Eq. (A.13) becomes:

o,o ′ =

f

(‖ u ‖ σo

)f

(‖ u + ‖ o c − o ′ c ‖ e 1 ‖ σo ′

)〈 u , u + ‖ o c − o ′ c ‖ e 1 〉 d p . (A.14)

Therefore, Eq. (A.14) proves that L o,o ′ depends only on σ o , σo ′ nd ‖ o c − o

′ c ‖ .

Symmetries for the computation of D t,o,o ′ , t ∈ { x, y, z} The same principle can be used to study the symmetries of Eq.

A.9) :

t ∈ { x, y, z} , D t,o,o ′ =

f

(‖ q ‖

σo

)�σo ′ (‖ q + o c − o

′ c ‖ ) ( q ) t d p .

lthough the results are not shown here, it can be demonstrated

hat D t,o,o ′ depends only on σ o , σo ′ , ‖ o c − o

′ c ‖ and the t -coordinate

f o c − o

′ c .

Page 12: Surface reconstruction of incomplete datasets: A novel ... · Implicit surface reconstruction is the process of finding a function that best fits the input data. However, the implicit

J. Morel et al. / Computers & Graphics 74 (2018) 44–55 55

A

g

C

t

d

s

o

o

w

o

k

p

i

t

R

[

[

[

[

[

[

[

[

[

[

[

[

[

[

[

[

[

[

[

3. Resolution

The integrals L o,o ′ and D t,o,o ′ are computed with the MISER al-

orithm of Press and Farrar [47] implemented in GSL. This Monte

arlo technique reduces the overall integration error by concen-

rating the integration points in the regions of highest variance.

Moreover, the use of the invariance properties we just proved

rastically reduces the number of integrals to compute. Indeed, we

howed that the integrals in L o,o ′ depend on only σ o , σo ′ and ‖ o c −

′ c ‖ and that the integrals in D t,o,o ′ depend on only σ o , σo ′ , ‖ o c −

′ c ‖ and ( o c − o

′ c ) t .

In practice, we stored the values of the integrals in hash tables

hose hashes were computed from the variables σ o , σo ′ , ‖ o c −

′ c ‖ and the extra ( o c − o

′ c ) t for the integrals in D t,o,o ′ . Those hash

eys can be converted into integer values to avoid floating point

recision problems. For each couple o , o ′ , we thus compute the

ntegrals L o,o ′ and D t,o,o ′ only if the value is absent in the hash

able.

eferences

[1] Dassot M , Constant T , Fournier M . The use of terrestrial LiDAR technologyin forest science: application fields, benefits and challenges. Annal Forest Sci

2011:959–74 . [2] Berger M , Tagliasacchi A , Seversky L , Alliez P , Levine J , Sharf A , et al. State of

the art in surface reconstruction from point clouds 2014;1(1):161–85 . [3] Khatamian A , Arabnia HR . Survey on 3d surface reconstruction. J Inf Process

Syst 2016;12(3):338–57 . [4] Berger M, Levine JA, Nonato LG, Taubin G, Silva CT. A benchmark for surface

reconstruction. ACM Trans Graph 2013;32(2):20:1–20:17. doi: 10.1145/2451236.

2451246 . http://doi.acm.org/10.1145/2451236.2451246 . [5] Cox MG . The numerical evaluation of b-splines. IMA J Appl Math

1972;10(2):134–49 . [6] De Boor C . On calculating with b-splines. J Approx Theory 1972;6(1):50–62 .

[7] Versprille KJ . Computer-aided design applications of the rational b-spline ap-proximation form.. Electric Eng Comput Sci Dissert 1975:1993–2002 .

[8] Dokken T , Lyche T , Pettersen KF . Polynomial splines over locally refined box–

partitions. Comput Aided Geom Des 2013;30(3):331–56 . [9] Bernardini F , Mittleman HRJ , Rushmeier H . The ball-pivoting algorithm for sur-

face reconstruction.. Trans Vis Comput Graph 1999:349–59 . [10] Boissonnat J-D . Geometric structures for three-dimensional shape representa-

tion. ACM Trans Graph 1984;3(4):266–86 . [11] Edelsbrunner H , Mücke EP . Three-dimensional alpha shapes. ACM Trans Graph

1994;13(1):43–72 .

[12] Amenta N , Choi S , Kolluri RK . The power crust. In: Proceedings of the sixthACM symposium on Solid modeling and applications; 2001. p. 249–66 .

[13] Lorensen WE , Cline HE . Marching cubes: a high resolution 3d surface construc-tion algorithm. In: Proceedings of the ACM SIGGRAPH computer graphics, vol.

21. ACM; 1987. p. 163–9 . [14] Newman TS , Yi H . A survey of the marching cubes algorithm. Comput Graph

2006;30(5):854–79 .

[15] Hoppe H , DeRose T , Duchamp T , McDonald J , Stuetzle W . Surface reconstruc-tion from unorganized points. In: Proceedings of the ACM SIGGRAPH 1992;

1992. p. 71–8 . [16] Lancaster P , Salkauskas K . Surfaces generated by moving least squares meth-

ods,. Math Comput 1981:141–58 . [17] Cheng Z-Q , Wang Y-Z , Li B , Xu K , Dang G , Jin S-Y . A survey of methods for

moving least squares surfaces.. In: Proceedings of the volume graphics; 2008.

p. 9–23 . [18] Carr JC , Beatson RK , Cherrie JB , Mitchell TJ , Fright WR , McCallum BC , et al. Re-

construction and representation of 3d objects with radial basis functions. In:Pocock L, editor. Proceedings of the SIGGRAPH. ACM; 2001. p. 67–76 .

[19] Buhmann MD . Radial basis functions: theory and implementations. Cambridgemonographs on applied and computational mathematics. Cambridge Univer-

sity Press; 2003. p. 307–18 .

20] Fasshauer G . Meshfree methods. Handbook of theoretical and computationalnanotechnology, 27. American Scientific Publishers; 2006. p. 33–97 .

[21] Carr JC , Fright WR , Beatson RK . Surface interpolation with radial basis func-tions for medical imaging. IEEE Trans Med Imag 1997;16(1):96–107 .

22] Savchenko VV , Pasko AA , Okunev OG , Kunii TL . Function representation ofsolids reconstructed from scattered surface points and contours. In: Proceed-

ings of the computer graphics forum, vol. 14. Wiley Online Library; 1995.p. 181–8 .

23] Turk G , O’brien JF . Variational implicit surfaces. Tech. Rep.. Georgia Institute ofTechnology; 1999 .

[24] Turk G , O’brien JF . Shape transformation using variational implicit functions.In: Proceedings of the ACM SIGGRAPH 2005 Courses. ACM; 2005. p. 13 .

25] Wendland H . Piecewise polynomial, positive definite and compactly supportedradial basis functions of minimal degree. Adv Comput Math 1995;4(1):389–96 .

26] Wendland H . Fast evaluation of radial basis functions: methods based on par-tition of unity. Approximation theory X: Wavelets, splines, and applications.

Citeseer; 2002. p. 473–83 .

[27] Ohtake Y , Belyaev A , Alexa M , Turk G , Seidel H-P . Multi-level partition of unityimplicits. ACM Trans Graph 2003a:463–70 .

28] Ohtake Y, Belyaev A, Seidel H-P. A multi-scale approach to 3d scattered datainterpolation with compactly supported basis functions. In: Proceedings of the

shape modeling international 2003, SMI ’03. Washington, DC, USA: IEEE Com-puter Society; 2003b. p. 292. ISBN 0-7695-1909-1 . http://dl.acm.org/citation.

cfm?id=829510.830307 .

29] Tobor I , Reuter P , Schlick C . Multiresolution reconstruction of implicit surfaceswith attributes from large unorganized point sets. In: Proceedings of the Shape

modeling international. Italy; 2004. p. 193 . 30] Wendland H . Computational aspects of radial basis function approximation.

Topics in multivariate approximation and interpolation. Studies in Computa-tional Mathematics, vol 12. Elsevier; 2006. p. 231–56 .

[31] Morse B , Yoo TS , Rheigans P , Chen DT , Subramanian KR . Interpolating implicit

surfaces from scattered surface data using compactly supported radial basisfunctions. In: Proceedings of the international conference on shape modeling

and applications; 2001. p. 89–98 . 32] Kazhdan M , Bolitho M , Hoppe H . Poisson surface reconstruction. In: Proceed-

ings of the symposium on geometry processing; 2006. p. 61–70 . [33] Côté J-F , Widlowski J-L , Fournier RA , Verstraete MM . The structural and ra-

diative consistency of three-dimensional tree reconstructions from terrestrial

lidar.. Remote Sens Environ 2009:1067–81 . 34] Raumonen P , Kaasalainen M , Akerblom M , Kaasalainen S , Kaartinen H , Vas-

taranta M , et al. Fast automatic precision tree models from terrestrial laserscanner data. Remote Sens 2013;5:491–520 .

[35] Hackenberg J , Spiecker H , Calders K , Disney M , Raumonen P . Simpletreeanefficient open source tool to build tree models from TLS clouds. Forests

2015;6(11):4245–94 .

36] Raumonen P , Casella E , Calders K , Murphy S , Akerblom M , Kaasalainen M . Mas-sive-scale tree modelling from TLS data. ISPRS Annal Photogram Remote Sens

Spat Inf Sci 2015;2(3):189 . [37] Tao S , Wu F , Guo Q , Wang Y , Li W , Xue B , et al. Segmenting tree crowns from

terrestrial and mobile LiDAR data by exploring ecological theories. ISPRS J Pho-togram Remote Sens 2015;110:66–76 .

38] Ravaglia J , Bac A , R F . Tree stem reconstruction from terrestrial laser scanner

point cloud using hough transform and open active contours.. In: Proceedingsof SilviLaser; 2015. p. 1067–81 .

39] Ravaglia J , Bac A , Fournier RA . Extraction of tubular shapes from dense pointclouds and application to tree reconstruction from laser scanned data. Comput

Graph 2017;66:23–33 . 40] Tagliasacchi A, Zhang H, Cohen-Or D. Curve skeleton extraction from in-

complete point cloud. ACM Trans Graph 2009;28(3):71:1–71:9. doi: 10.1145/1531326.1531377 . http://doi.acm.org/10.1145/1531326.1531377 .

[41] Chave J , Réjou-Méchain M , Búrquez A , Chidumayo E , Colgan MS , Delitti WB ,

et al. Improved allometric models to estimate the aboveground biomass oftropical trees. Global Change Biol 2014;20:3177–90 .

42] Pauly M, Mitra NJ, Giesen J, Gross M, Guibas LJ. Example-based 3d scan com-pletion. In: Proceedings of the third Eurographics symposium on geometry

processing SGP’05. Aire-la-Ville, Switzerland, Switzerland: Eurographics Asso-ciation; 2005. ISBN 3-905673-24-X . http://dl.acm.org/citation.cfm?id=1281920.

1281925 .

43] Gal R, Shamir A, Hassner T, Pauly M, Cohen-Or D. Surface reconstruction us-ing local shape priors. In: Proceedings of the fifth Eurographics symposium

on geometry processing SGP’07. Aire-la-Ville, Switzerland, Switzerland: Euro-graphics Association; 2007. p. 253–62. ISBN 978-3-905673-46-3 . http://dl.acm.

org/citation.cfm?id=1281991.1282025 . 44] Morel J , Bac A , Véga C . Computation of tree volume from terrestrial LiDAR data.

In: The ninth symposium on mobile mapping technology, MMT 2015. Sydney,

Australia: UNSW; 2015 . 45] Bloomenthal J . An implicit surface polygonizer. Graph Gems IV 1994;4:324 .

46] Grinspun E , Krysl P , Schröder P . Charms: a simple framework for adaptive sim-ulation. ACM Trans Graph 2002;21(3):281–90 .

[47] Press WH , Farrar GR . Recursive stratified sampling for multidimensional montecarlo integration. Comput Phys 1990;4(2):190–5 .