State of the Art in Surface Reconstruction from Point Clouds Matthew Berger, Andrea Tagliasacchi, Lee Seversky, Pierre Alliez, Joshua Levine, Andrei Sharf, Claudio Silva To cite this version: Matthew Berger, Andrea Tagliasacchi, Lee Seversky, Pierre Alliez, Joshua Levine, et al.. State of the Art in Surface Reconstruction from Point Clouds. Eurographics 2014 - State of the Art Reports, Apr 2014, Strasbourg, France. 1 (1), pp.161-185, 2014, EUROGRAPHICS star report. <http://diglib.eg.org/EG/DL/conf/EG2014/stars/161-185.pdf>. <10.2312/egst.20141040>. <hal-01017700> HAL Id: hal-01017700 https://hal.inria.fr/hal-01017700 Submitted on 3 Jul 2014 HAL is a multi-disciplinary open access archive for the deposit and dissemination of scientific research documents, whether they are published or not. The documents may come from teaching and research institutions in France or abroad, or from public or private research centers. L’archive ouverte pluridisciplinaire HAL, est destinée au dépôt et à la diffusion de documents scientifiques de niveau recherche, publiés ou non, émanant des établissements d’enseignement et de recherche français ou étrangers, des laboratoires publics ou privés. Author version 2014/ STAR – State of The Art Report State of the Art in Surface Reconstruction from Point Clouds Matthew Berger1 Pierre Alliez3 3 Inria Andrea Tagliasacchi2 Joshua A. Levine4 Lee M. Seversky1 Andrei Sharf5 Claudio T. Silva6 1 Air Force Research Laboratory, Information Directorate 2 École Polytechnique Fédérale de Lausanne (EPFL) Sophia-Antipolis - Mediterranée 4 Clemson University 5 Ben-Gurion University 6 New York University, School of Engineering Abstract The area of surface reconstruction has seen substantial progress in the past two decades. The traditional problem addressed by surface reconstruction is to recover the digital representation of a physical shape that has been scanned, where the scanned data contains a wide variety of defects. While much of the earlier work has been focused on reconstructing a piece-wise smooth representation of the original shape, recent work has taken on more specialized priors to address significantly challenging data imperfections, where the reconstruction can take on different representations – not necessarily the explicit geometry. This state-of-the-art report surveys the field of surface reconstruction, providing a categorization with respect to priors, data imperfections, and reconstruction output. By considering a holistic view of surface reconstruction, this report provides a detailed characterization of the field, highlights similarities between diverse reconstruction techniques, and provides directions for future work in surface reconstruction. 1. Introduction The modeling, recognition, and analysis of the world around us is a longstanding goal in the field of Computer Graphics. Central to these objectives is a means of obtaining a digital representation of objects in the real world. Surface reconstruction is concerned with recovering such information, where the basic problem is to capture a 3D point cloud that samples the real world, and reconstruct as much information as possible concerning the scanned objects. Surface reconstruction came to importance primarily as a result of the ability to acquire 3D point clouds and hence there are very close ties between how the data is acquired and the method used to reconstruct it. Early on, these techniques ranged from active methods such as optical laser-based range scanners, structured light scanners, and LiDAR scanners, as well as passive methods such as multi-view stereo. A recent trend has seen the massive proliferation of point clouds from commodity real-time scanners such as the Microsoft Kinect. As the diversity, ease of use, and popularity of 3D acquisition methods continues to increase, so does the need for the development of new surface reconstruction techniques. Acquisition methods tend to produce point clouds containing a variety of properties and imperfections that pose signifc Author version icant challenges for surface reconstruction methods. These properties, in conjunction with the nature of the scanned shape, effectively distinguish the class of reconstruction methods that exist today. This diverse set of techniques ranges from methods that assume a well-sampled point cloud, generalize to arbitrary shapes, and produce a watertight surface mesh, to methods that make very loose assumptions on the quality of the point cloud, operate on specific classes of shapes, and output a non-mesh based shape representation. It is with this rich space of algorithms in mind that we survey the field of surface reconstruction and provide a detailed taxonomy of existing methods. This categorization is timely, as we see the field of surface reconstruction diverging from its more traditional class of methods in an effort to handle more challenging data imperfections. Our survey presents surface reconstruction algorithms from the perspective of priors: assumptions made by algorithms in order to combat imperfections in the point cloud and recover as much information about the shape as possible. Without prior assumptions, the reconstruction problem is illposed; an infinite number of surfaces pass through or near the data points. Assumptions are usually imposed on the point cloud itself, such as sampling density, level of noise, and mis- Berger et al. / State of the Art in Surface Reconstruction from Point Clouds understanding how to process future types of acquired point clouds. Organization. Our STAR is organized as follows. In Section 2 we characterize the problem of surface reconstruction by examining common input and output characteristics, namely: • Point Cloud Artifacts: the imperfections of the point cloud that the method is able to effectively handle. • Input Requirements: the types of inputs associated with a point cloud required by the algorithm. • Shape Class: the class of shapes that the method is capable of reconstructing. • Reconstruction Output: the representation and level of detail of the reconstruction output. Figure 1: Surface reconstruction has grown in diversity in recent years, with a wide variety of techniques taking on specialized priors. ROSA [TZCO09], shown on the left, uses volumetric smoothness to aid in reconstruction. Nonlocal consolidation [ZSW∗ 10], shown in the middle, uses global regularity in the form of structural repetition. Part composition [SFCH12], shown on the right, uses data-driven techniques to perform reconstruction. alignment. But just as importantly they are also imposed on the scanned shape, such as local surface smoothness, volumetric smoothness, absence of boundaries, symmetries, shape primitives, global regularity, and data-driven assumptions. In some instances, requirements are made on knowledge of the acquisition, such as scanner head position, as well as RGB images of the object. In other cases, the user is involved in prescribing high-level cues for reconstruction. All of these factors permit the regularization of the otherwise ill-posed problem of surface reconstruction, particularly when processing a point cloud containing severe imperfections. Figure 1 depicts several different priors used to reconstruct surfaces from challenging point clouds. Historically, priors have evolved according to the types of point clouds being processed. For instance, local surface smoothness priors were developed primarily to handle small objects acquired from desktop scanners. Mobile, real-time scanners have enabled the dynamic acquisition of more general scenes, rather than single objects, prompting more specialized structural and data-driven priors. Since priors tend to be coupled with the type of acquisition, we argue that this perspective of surface reconstruction is beneficial for We use these factors as a way of examining surface reconstruction methods by prior, starting with traditional surface smoothness priors in Section 3, and delving into specialized priors in Sections 4–9. In Table 1.1 we provide a summary of surface reconstruction methods by prior, characterizing their input and output, as well as their level of robustness to various artifacts. We discuss methods for evaluating surface reconstruction in Section 10, and conclude in Section 11 with a discussion on future trends in surface reconstruction. 1.1. Survey Scope and Related Works There are many facets to surface reconstruction. This survey focuses on those relating to the reconstruction from point clouds of static objects and scenes acquired through 3D scanners, wherein the point cloud contains a considerable level of imperfection. Furthermore, we concentrate on methods that approximate the input point cloud. Urban reconstruction. Our survey covers a wide variety of reconstruction methods, with urban reconstruction from point clouds among them. We note that [MWA∗ 13] surveys urban reconstruction more broadly: 3D reconstruction from images, image-based facade reconstruction, as well as reconstruction from 3D point clouds. Although there exists some overlap between the surveys, we cover these methods in a different context, namely the priors that underly the reconstruction methods and how they address challenges in point cloud reconstruction. Surface completion. Given a surface with boundaries, there exists many methods for inpainting and surface completion for handling missing data. Though one may use such approaches for reconstruction by first reconstructing a surface with boundary from a point cloud, this can be quite challenging given other imperfections in the data. These methods are not covered in this survey and we refer the reader to the recent survey of [ACK13] on surface completion. Interpolatory reconstruction. An important field of surface reconstruction methods are those that interpolate a point cloud without any additional information, such as normals c Author version Berger et al. / State of the Art in Surface Reconstruction from Point Clouds Surface Smoothness Tangent Planes [HDD∗ 92] RBF [CBC∗ 01] MLS [ABCO∗ 03] MPU [OBA∗ 03a] Poisson [KBH06] Graph Cut [HK06] Unoriented Indicator [ACSTD07] LOP [LCOLTE07] Visibility VRIP [CL96] TVL1-VRIP [ZPB07] Signing the Unsigned [MDGD∗ 10] Cone Carving [SSZCO10] Multi-Scale Scan Merge [FG11] Volumetric smoothness ROSA [TZCO09] Arterial Snakes [LLZM10] VASE [TOZ∗ 11] l1 Skeleton [HWCO∗ 13] Geometric Primitives Primitive Completion [SDK09] Volume Primitives [XF12] Point Restructuring [LA13] CCDT [vKvLV13] Global Regularity Symmetry [PMW∗ 08] Nonlocal Consolidation [ZSW∗ 10] 2D-3D Facades [LZS∗ 11] Globfit [LWC∗ 11] Data-driven Completion by Example [PMG∗ 05] Semantic Modeling [SXZ∗ 12] Shape Variability [KMYG12] Part Composition [SFCH12] Interactive Topological Scribble [SLS∗ 07] Smartboxes [NSZ∗ 10] O-Snap [ASF∗ 13] # # # # # # # # # # # ✓ # ✓ # # # # # # # # # # # # # ✓ ✓ # # # # ✓ # # # ✓ ✓ ✓ ✓ # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # ✓ ✓ ✓ ✓ ✓ # # # # ✓ # # # # # ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ # # ✓ ✓ Shape Class Reconstruction Output general general general general general general general general implicit field implicit field point set implicit field implicit field volumetric segmentation implicit field point set general general general general general implicit field implicit field implicit field implicit field implicit field organic man-made general organic skeleton curve skeleton curve implicit field skeleton curve CAD indoor environment general urban environment volumetric segmentation interior volume volumetric segmentation volumetric segmentation architectural architectural architectural man-made point set point set point set primitive relations general indoor scene objects indoor scene objects man-made point set deformed model deformed model deformed model parts general architectural architectural implicit field primitive shapes primitive shapes RGB image # # # scanner information oriented normals unoriented normals Input Requirements missing data misalignment outliers noise Point Cloud Artifacts nonuniform sampling Method Table 1: A categorization of surface reconstruction in terms of the type of priors used, the ability to handle point cloud artifacts, input requirements, shape class, and the form of the reconstruction output. Here # indicates that the method is moderately robust to a particular artifact and indicates that the method is very robust. ✓indicates an input requirement and ✓indicates optional input. or scanner information. Delaunay-based methods are quite common in this area. The basic idea behind these methods is that the reconstructed triangulated surface is formed by a subcomplex of the Delaunay triangulation. A comprehensive survey of these methods is presented in [CG06], as well as the monograph of [Dey07]. A very attractive aspect of such methods is that they come with provable guarantees in the geometric and sometimes topological quality of the reconstruction if a sufficiently dense sampling of the input surface is provided. These methods place rather strong requirements on the point cloud and are impractical for scanned real-world scenes containing significant imperfections. Hence we do not cover these methods, since we focus on reconstruction techniques capable of dealing with challenging artifacts. 2. Characterizing Surface Reconstruction Surface reconstruction methods typically have to handle various types of imperfections, make certain requirements on c Author version input associated with the point cloud, contain restrictions on the class of shapes that they can reconstruct, and may produce reconstructions of different forms. Here we summarize each of these properties in order to provide a detailed characterization of surface reconstruction. 2.1. Point Cloud Artifacts The properties of the input point cloud are an important factor in understanding the behavior of reconstruction methods. Here we provide a characterization of point clouds according to properties that have the most impact on reconstruction algorithms: sampling density, noise, outliers, misalignment, and missing data. See Figure 2 for a 2D illustration of these artifacts. Sampling density. The distribution of the points sampling the surface is referred to as sampling density. 3D scans typically produce a nonuniform sampling on the surface, which can be due to the distance from the shape to the scanner posi- Berger et al. / State of the Art in Surface Reconstruction from Point Clouds ther explicitly through detection [LCOLTE07], or implicitly through robust methods [MDGD∗ 10]. (a) Original shape (b) Nonuniform sampling (c) Noisy data (d) Outliers (e) Misaligned scans (f) Missing data Figure 2: Different forms of point cloud artifacts, shown here in the case of a curve in 2D. tion, the scanner orientation, as well as the shape’s geometric features. See Figure 2(b) for an illustration of nonuniform sampling on a curve. Many surface reconstruction algorithms must be able to estimate a notion of sampling density at every point, see e.g. [LCOL06, WSS09], and hence the level of nonuniformity in the sampling can have a great impact on estimation accuracy. Noise. Points that are randomly distributed near the surface are traditionally considered to be noise – see Figure 2(c). The specific distribution is commonly a function of scanning artifacts such as sensor noise, depth quantization, and distance or orientation of the surface in relation to the scanner. For some popular scanners, noise is introduced along the line of sight, and can be impacted by surface properties, including scattering characteristics of materials. In the presence of such noise, the typical goal of surface reconstruction algorithms is to produce a surface that passes near the points without overfitting to the noise. Robust algorithms that impose smoothness on the output [KBH06], as well as methods that employ robust statistics [OGG09], are common ways of handling noise. We note that spatially varying noise poses a significant challenge [GCSA13], where for many scanners, the noise level is correlated with the depth measurement – see [KE12] for such an error study done on the Kinect. Outliers. Points that are far from the true surface are classified as outliers. Outliers are commonly due to structural artifacts in the acquisition process. In some instances, outliers are randomly distributed in the volume, where their density is smaller than the density of the points that sample the surface. Outliers can also be more structured, however, where high density clusters of points may exist far from the surface, see Figure 2(d). This can occur in multi-view stereo acquition, where view-dependent specularities can result in false correspondences; see Figure 10. Unlike noise, outliers are points that should not be used to infer the surface, ei- Misalignment. The imperfect registration of range scans results in misalignment. Misalignment tends to occur for a registration algorithm when the initial configuration of a set of range scans is far from the optimal alignment – see [vKZHCO11] for a survey on registration techniques. Misalignment is a significant challenge for surface reconstruction, as it introduces structured noise via scans that are slightly offset from the surface; see Figure 5(a). For instance, it may be inappropriate to simply find the surface that passes near the scans since this may result in sharp discontinuities between different scans. Figure 2(e) illustrates such a case, where there can exist discontinuities when the red and orange samples stop overlapping. Missing data. A motivating factor behind many reconstruction methods is dealing with missing data. Missing data is due to such factors as limited sensor range, high light absorption, and occlusions in the scanning process where large portions of the shape are not sampled. Although some of these artifacts may be reduced as scanning technology advances with higher precision, denser sampling, and lower noise levels, occlusion remains a persistent problem due to the physical constraints of the device. We note that missing data differs from nonuniform sampling, as the sampling density is zero in such regions – see Figure 2(f). Many methods deal with missing data by assuming that the scanned shape is watertight [CBC∗ 01, Kaz05, KBH06, HK06, ACSTD07]. Within this setting, the goal of some methods is to handle the aforementioned challenges where data exists, and infer geometry in parts of the surface that have not been sampled. Other methods are focused on handling missing data by trying to infer topological structures in the original surface at the possible expense of retaining geometric fidelity, for instance, finding a surface that is homeomorphic to the original shape [SLS∗ 07]. If the level of missing data is significant, for instance a single scan, then trying to infer the entire shape can be too ambiguous. Some methods focus on performing reconstruction only on the available information, effectively preserving the boundaries from the scan [DGQ∗ 12]. Other approaches make prior knowledge and assumptions on the missing region, permitting the reconstruction of higher-level information. This can range from inferring a skeleton [TZCO09], shape primitives [SDK09], symmetry relationships [PMW∗ 08], and canonical regularities [LWC∗ 11]. 2.2. Point Cloud Input Reconstruction methods have different types of input requirements associated with a point cloud. The bare minimum requirement of all algorithms is a set of 3D points that sample the surface. Working with the points alone, however, may fail to sufficiently regularize the problem of reconstruction c Author version Berger et al. / State of the Art in Surface Reconstruction from Point Clouds for certain types of point clouds. Other types of input can be extremely beneficial in reconstruction from challenging point clouds. We consider the following basic forms of inputs commonly associated with point clouds: surface normals, scanner information, and RGB imagery. 2.2.1. Surface Normals Surface normals are an extremely useful input for reconstruction methods. For smooth surfaces the normal, uniquely defined at every point, is the direction perpendicular to the point’s tangent space. The tangent space intuitively represents a localized surface approximation at a given point. Surface normals may be oriented, where each normal is consistently pointing inside or outside of the surface, or may lack such a direction. Normals that are oriented provide extremely useful cues for reconstruction algorithms. However, we note that if certain information associated with the point cloud is not present, obtaining an orientation can be challenging. Unoriented normals. Normals that do not possess direction – the input normal at every point can be expected to be pointing either in the inside or the outside of the surface – are considered to be unoriented normals. This information can be used in a number of ways: determining planar regions in a point cloud [SWK07], the projection of a point onto an approximation of the surface [ABCO∗ 03], the construction of an unsigned distance field [AK04], or computing covariance matrices [ACSTD07]. Unoriented normals are typically computed directly from the point cloud. This is because additional scanner-specific information can be used to provide a means to infer normal orientation. A popular and simple method for computing the normal at a given point p is to perform principal component analysis (PCA) in a local neighborhood of p, see e.g. [HDD∗ 92]. More specifically, if we denote a local neighborhood of p by N p , then the basic way to apply PCA is to compute the spectral decomposition of the covariance matrix: Cp = ∑ (p − q)(p − q)⊺ (1) q∈Np The eigenvector of C p associated with the smallest eigenvalue defines the unoriented normal – assuming eigenvalues have a multiplicity of 1, the eigenvectors are unique up to a sign. Note that if the smallest eigenvalue is 0, then the region defined by p and N p is planar, since the eigenvectors associated with the 2 largest eigenvalues capture all of the variance in the data. PCA defines a least-squares estimation of a tangent plane and there are many other methods for computing unoriented normals: using a weighted covariance matrix [PMG04], higher-order approximations via osculating jets [CP05], or robust methods that employ l1 norm minimization [ASGCO10]. Common to all methods is the need to define a local neighborhood of points, where the neighborhood should be small enough to accurately represent a point’s tangent space. The c Author version scale of the neighborhood should be proportional to the sampling density at the point, where estimation of sampling density is itself a challenging problem, particularly when faced with nonuniform sampling; see [LCOL06, WSS09]. Furthermore, noise and misalignment may necessitate larger neighborhood sizes in order to combat such imperfections, yet the size should not be so large as to no longer reflect the point’s tangent space [GG07]. All of these difficulties often result in imperfect normal estimation and surface reconstruction algorithms must be robust to inaccuracies in unoriented normals. Oriented normals. Normals that have consistent directions, either pointing in the inside or the outside of the surface are referred to as being oriented. Knowledge of the exterior and interior of the surface has proven extremely useful in surface reconstruction. It can be used to construct a signed distance field over the ambient space, where up to a sign, the field takes on positive values in the exterior and negative values in the interior. The surface is then represented by the zero crossing of the signed distance field. Other methods generalize this to implicit fields and indicator functions, but the basic idea of trying to construct the exterior and interior remains the same, see [CBC∗ 01, OBA∗ 03a, KBH06] to name a few. There are numerous ways to compute oriented normals. If the original 2D range scans are known, then the 2D lattice structure provides a way of performing consistent orientation since one always knows how to turn clockwise around a given vertex. For instance, if we denote the point in a range scan at pixel (x, y) as px,y , then one can take the normal at px,y simply as the cross product between (px+1,y − px,y ) and (px,y+1 − px,y ). If the point cloud is noisy, then this method can produce rather noisy normals, since it does not use nearby points in overlapping scans. If the view direction is known, then one can first estimate unoriented normals as previously discussed to better handle noise and then use the view direction to determine the orientation. This can be done by choosing the orientation that results in the normal vector having the largest angle with the view direction. If scanner information is absent altogether, then one must orient the points exclusively from the unoriented normals. A very common method for achieving this is to start from a single point containing an initial orientation and propagate the orientation to nearby points whose unoriented normals are facing a similar direction [HDD∗ 92]. While there exist multiple extensions to this method [HLZ∗ 09, LW10], they face difficulty in the presence of nonuniform sampling, noise, and misalignment and as a result can leave some normals unoriented or pointing in the wrong direction – see Figure 3. The impact on surface reconstruction largely depends on the distribution of incorrect orientations: if randomly distributed, then methods may treat this as spurious noise, but if incorrect orientations are clustered together over large regions, then this form of structured noise can be difficult to handle – see Figure 3 for an illustration. Berger et al. / State of the Art in Surface Reconstruction from Point Clouds complete data – for instance, line of sight can be used to infer that there exists a large concavity in the shape [TOZ∗ 11]. 2.2.3. RGB Imagery Figure 3: The impact of incorrect normal orientation. On the left we show the result of normal orientation via [HDD∗ 92], where red splats indicate incorrect orientation. The results of running Poisson surface reconstruction [KBH06] on this point cloud are shown in mid-left, where we indicate unwanted surface components due to the clustered normal flips. Similarly, on the right we show the orientation results of [LW10], and the corresponding results of [KBH06]. 2.2.2. Scanner Information The scanner from which the point cloud was acquired can provide useful information for surface reconstruction. As discussed, the 2D lattice structure of a scan can be used to determine normal orientation. It can also be used to estimate the sampling density for a given scan and as a result it can be used to detect certain forms of outliers in the scan – points whose scan lattice neighbors are at a far greater distance than the sampling density are likely outliers. However, caution must be taken in distinguishing outliers from sharp features. Scanner information may also be used to define the confidence of a point, which is useful in handling noise. For instance, the approach of [CL96] demonstrates how to use confidence measures to suppress noise when integrating range scans into a reconstructed surface. Certain scanners (e.g. LiDAR) can provide confidence measures in the form of the reflectivity measured at each point. One can also derive confidence through line of sight information. Line of sight is defined as a collection of line segments between each point in the point cloud and the scanner head position from which that point was acquired. In particular, we can use the grazing angle formed by line of sight at each point to derive a notion of confidence. The grazing angle is the incident angle between the point’s surface normal and its line of sight. In active scanning systems such as optical laser-based scanners, the cause of inaccuracy stems from the large area formed by the projection (i.e., the laser stripe) onto the surface at a large grazing angle. Hence we can assign a confidence measure as being inversely proportional to the grazing angle. Note that line of sight also defines a region of space that may be marked as lying outside of the shape. Combining line of sight from multiple scans refines the bounding volume in which the surface lies – this volume is known as the visual hull. This information is particularly useful when handling in- Different acquisition modalities that complement depth acquisition can be of great assistance. RGB image acquisition is a very common modality that accompanies numerous sensors, such as the Microsoft Kinect. In the case of the Kinect, the RGB camera is co-located with the IR camera, hence assuming the two are calibrated, it is straightforward to identify corresponding depth and RGB values at a pixel level. RGB images are most useful for reconstruction when they are able to complement depth information that was not measured by the data. By fusing features present in the depth scan with image-based features, one can then employ this for inferring depth from images [LZS∗ 11]. Contours in an image can also be used by considering their corresponding unsigned distance field, and how it relates to the point cloud’s unsigned distance field [SFCH12]. 2.3. Shape Class Surface reconstruction algorithms can be further distinguished by the class of shapes they support. Although earlier reconstruction methods tended not to focus on specific types of shapes [HDD∗ 92, CL96], by restricting to a shape class, specialized assumptions can be made on what the reconstructed surface should be. These shape specific assumptions greatly help regularize the problem especially in the presence of point cloud artifacts. Quite often, a reconstruction prior is in part driven by a shape class, so understanding the characteristics of a shape class is an essential component to gaining insight into surface reconstruction. Here we cover the following predominant shape classes: CAD models, manmade shapes, organic shapes, architectural models, urban environments, and indoor environments. CAD models. These models are typically composed of a collection of simpler geometric primitives such as planes, cylinders, and spheres. The detection of such instances in the point cloud can be used for denoising and in the presence of missing data the assembly of all detected primitives can be used to infer missing regions by extending and intersecting primitives [SDK09] – see Figure 12. Man-made (synthetic) shapes. These shapes often contain certain canonical geometric properties such as coplanar faces, orthogonal faces, as well as faces that form equal angles that often repeatedly appear and relate different parts of the shape. This form of global regularity is often due to aesthetic considerations and a variety of practical constraints, such as cost considerations, functional requirements, and fabrication constraints. For man-made shapes, this derived form of regularity can greatly help the problem [LWC∗ 11] – see Figure 14. Organic shapes. These shapes tend to contain a more freeform structure and are often composed of curvilinear elements. For instance, trees [LYO∗ 10] possess a strong skeletal c Author version Berger et al. / State of the Art in Surface Reconstruction from Point Clouds structure, where imposing certain 1D priors [TZCO09] on the reconstruction can be used to handle significant missing data in the scanning process – see Figure 11. Architectural models. A subset of man-made shapes, these shapes contain similar global regularities in addition to many other constraints such as upright orientation and various functional constraints. By assuming that the shape is an architectural model, the problem can be greatly regularized by making assumptions on facade structures [ZSW∗ 10], manhattan-world geometry [VAB12], and structural regularity [PMW∗ 08] – see Figure 16. Urban environments. Often composed of a limited number of object types, urban environments are well-suited for datadriven methods for reconstruction. For instance one can make assumptions on the presence of ground, buildings, vegetation, and other urban objects to aid in reconstruction [MWA∗ 13]. Indoor environments. The types of shapes within this environment tend to be a mixture of man-made and organic. A distinguishing factor behind indoor environments is that similar to urban environments, there exist a small number of object types. For instance, in a typical office setting there exists a variety of chairs, desks, and tables. Furthermore, each type of object can often be defined through a low-dimensional shape space, permitting data-driven methods [NXS12] and methods that utilize a deformable model for each object [KMYG12] – see Figure 15. 2.4. Reconstruction Output It is desirable for a reconstruction algorithm to produce a faithful and detailed representation of the scanned shape’s surface. For challenging point clouds containing significant imperfections, it may be unrealistic to expect such highly detailed information as the output. However for certain methods it is still possible to obtain a less informative yet valuable shape representation. Methods targeting detailed reconstruction generally produce as output either a discrete surface or an implicit function. The implicit function can either be in the form of a signed distance field [HDD∗ 92] or an indicator function [Kaz05]. Implicit functions are usually sampled on an underlying grid, where the reconstructed surface is found via isocontouring for an appropriate isovalue. For a regular grid, the well-known Marching Cubes [LC87] is commonly used to extract the surface [HDD∗ 92, CL96, CBC∗ 01, Kaz05]. Other methods use grids such as octrees [KBH06, MPS08] or adaptive 3D triangulations [ACSTD07, MDGD∗ 10] to adapt grid resolution to the point sampling density. Contouring an octree presents several difficulties in ensuring watertight, manifold surface meshes – see [JLSW02, KKDH07, MS10] for several approaches. Contouring a triangulation can be done via marching tetrahedra, but if a mesh with a lower number of triangles and well-conditioned (i.e. good aspect ratio) trianc Author version gles is desired, then Delaunay refinement techniques may be used [BO05]. Some techniques may not produce a surface representation, but rather a resampled point set that addresses imperfections present in the original point cloud [ABCO∗ 03, FCOS05b, LCOLTE07, HLZ∗ 09]. For severe levels of imperfections, some reconstruction methods may be unable to provide such detailed representations, but still recover an informative representation such as a collection of shape primitives [JKS08, SDK09, RKMP13], a curve skeleton [TZCO09, CTO∗ 10, LLZM10, HWCO∗ 13], a deformed model that best matches the point cloud [SXZ∗ 12, NXS12, KMYG12], or segmented parts from multiple models [SFCH12]. 3. Surface Smoothness Priors Early surface reconstruction techniques were developed to handle broad assumptions on the type of shape being reconstructed. These methods were developed to handle sampling and noise artifacts, while also supporting small amounts of missing data. A commonality shared across all of these techniques is the use of a surface smoothness prior to constrain the output surface, while also ensuring that the reconstructed surface remains close to the input data. Methods in this category vary based on the smoothness constraints and how they are prescribed in practice. More specifically, this category of methods can roughly be divided into local smoothness, global smoothness, and piecewise smoothness. Methods that prescribe local smoothness ensure that the output surface is smooth where the input point cloud exists [ABCO∗ 03, OBA∗ 03a]. In regions away from the point cloud, however, these methods can behave poorly, failing to reconstruct the correct global geometry and topology. In contrast, global smoothness methods prescribe that the entirety of the output surface is smooth [CBC∗ 01, KBH06]. Hence, these methods are better suited for handling missing data, as they are all targeted at producing a watertight surface. These methods are further distinguished by often solving an optimization problem that leads to the use of a global solver of some kind – typically a linear system, an eigenvalue problem, or a graph cut optimization. Piecewise smooth methods are focused on explicitly recovering sharp features or boundary components, while ensuring smoothness away from these features, where smoothness may be prescribed locally [DHOS07] or globally [ASGCO10]. Notation. We first fix the notation for this section and all subsequent sections. We assume that we are given a point cloud P which is a sampling of a shape S. Individual points in P are indexed as pi ∈ P for the i’th point. Many methods also require normals associated with the point cloud, where we define the normal field N as a set of normal vectors such that for each pi ∈ P there is an accompanying normal ni ∈ N. The distinction between oriented and unoriented normals is made explicit for each method. Berger et al. / State of the Art in Surface Reconstruction from Point Clouds (a) (b) (c) Figure 4: When sampling density is insufficient to resolve local curvature (a), the plane fitting operation employed by moving least squares [ABCO∗ 03] becomes highly unstable (b). APSS [GG07] addresses this problem by locally fitting spheres instead of planes. Employing spheres tackles the aforementioned problem while remaining computationally inexpensive. 3.1. Local Surface Smoothness Priors The pioneering method of [HDD∗ 92] was hugely influential on the class of methods that impose local smoothness priors. This method approximates a signed distance field f : R3 → R by assigning, for each point in the ambient space x ∈ R3 , its signed projection onto the tangent plane of its closest point to P, denoted pi : f (q) = (q − pi ) · ni . (2) Note that the normal field N must be oriented in order to obtain an estimate of the signed distance field. The surface is then defined by the zero level set of f . Although straightforward to implement, this approach suffers from several issues. The method is very sensitive to the estimated normals – noisy normals, or worse inverted normal orientations, can give rise to very inaccurate signed distance estimates. Furthermore, in the presence of nonuniform sampling, choosing the closest tangent plane to define a signed projection can produce a rather noisy output – see Figure 6, mid-left. Subsequent methods based on local surface smoothness have focused on addressing such issues. Moving least squares (MLS). These methods approach reconstruction by approximating the surface as a spatiallyvarying low-degree polynomial – see [CWL∗ 08] for a survey on MLS methods. More specifically, in the traditional MLS formulation [ABCO∗ 03], points are first locally parameterized by their projection on the local tangent space. Then, in this parameterized space, a weighted fitting estimates a lowdegree bivariate polynomial approximating the input cloud. MLS then defines the evaluating point’s projection onto the reconstructed surface as the closest point to the bivariate polynomial [ABCO∗ 03]. We note that this projection process only requires unoriented normals and can also be used to define an unsigned distance function [AK04]. Such a projection process allows for resampling the point cloud, producing a so called point set surface – the surface is implicitly defined as the fixed point of the projection operator. However, it is nontrivial to explicitly construct a continuous representation, for instance an implicit function or a triangle mesh, when the user wants to know the precise geometry and topology of the MLS surface for geometry processing tasks that require a continuous surface representation. Advancing front methods [SFS05, SSFS06] produce a triangle mesh by incrementally laying out triangles to compose fronts, where vertex positions are determined through the MLS definition. Care must be taken, however, when fronts merge and split. If normals are oriented, then one can simplify the MLS definition to arrive at an implicit function representation for the surface. Namely, the method of [AA04] constructs an implicit function at a point as the signed distance to a weighted average of nearby tangent planes. The method of [SOS04] uses a weighted average of distances to nearby tangent planes. Both methods assume that it is possible to construct a well-defined tangent plane at each evaluation point, which may not exist for sparsely sampled data. In this case, a higher-order approximation such as algebraic point set surfaces [GG07], which uses an MLS definition with spheres for shape approximation, can be more robust – see Figure 4. A key property of MLS is the use of a weighting function, used to give larger influence to points near the evaluating point in both estimating the tangent space as well as constructing the polynomial. This can be used to combat moderate levels of noise by allowing the weight function to have a larger spatial influence. For nonuniform sampling, it is necessary to define a weight function whose spatial support varies as a function of the sampling density. This may be done via a user-defined scale proportional to an estimation of the density [GG07], as well as methods whose support is derived from a data-dependent error bound on the MLS approximation [LCOL06]. However, MLS methods are in general unable to provide a good surface approximation in the presence of missing data, since it is necessary to use a rather large spatial support size in such regions for which a tangent plane (or sphere) may provide a poor fit. Multi-level partition of unity (MPU). For this set of techniques, the reconstruction problem is approached as a hierarchical fitting problem [OBA∗ 03a]. At a certain scale, a local shape fit is determined adequate if its error residual is sufficiently small, otherwise the occupied space is refined and the overall procedure is repeated. Once all shape fits have been performed, an implicit function over the entire volume is formed by smoothly blending nearby fits. Note that the definition of an implicit function requires the shape fits to be signed fits, hence requiring oriented normals. Compared to MLS methods, MPU is more robust to nonuniform sampling since it does not require an estimate of the sampling density: a shape fit is only accepted if it is below a certain error residual. The level of smoothness and hence robustness to noise can be adjusted by the error residual tolerance. Missing c Author version Berger et al. / State of the Art in Surface Reconstruction from Point Clouds (a) Figure 5: The scan on the left contains outliers and scan misalignment, particularly near its boundaries. The output of [LCOLTE07], shown on the right, is able to robustly deal with such challenging data through the use of multivariate median data fitting, and a point attraction term in the output. data can be addressed by allowing for the extrapolation and subsequent blending of spatially adjacent shape fits. However, such an extrapolation may produce erroneous surface sheets, depending on the form of missing data. To resolve such poor fits, a diffusion operator can be defined on the collection of shape fits, in order to perform smoothing directly on the MPU representation [NOS09]. Parameterization-free projection. These methods project the point cloud, without normals, onto the multivariate median, where a point balancing term ensures samples are asuniformly-as-possible distributed in the output [LCOLTE07]. This method is limited to outputting a resampled point cloud, where the resampled points are restricted to where the input data lies, retaining boundary components. However, by using a multivariate median, parameterization-free projection does not need to estimate a local tangent plane or perform shape fitting as in MLS and MPU methods, respectively. Hence for strong noise, outliers, and even misalignment, this type of approach is quite robust – see Figure 5. This approach was extended by [HLZ∗ 09] to handle highly nonuniform sampling by incorporating an estimation of sampling density into the balancing term. 3.2. Global Surface Smoothness Priors Global smoothness priors typically involve higher order smoothness, large-scale smoothness, or both. High order smoothness relates to the variation of differential properties of the surface: area, tangent plane, curvature, etc. Large-scale herein relates to the spatial scale where smoothness is enforced. Radial basis functions (RBFs). RBFs are a well-known method for scattered data interpolation. Given a set of points with prescribed function values, RBFs reproduce functions containing a high degree of smoothness through a linear combination of radially symmetric basis functions. For surface reconstruction, the method of [CBC∗ 01] constructs the surface c Author version (b) (c) (d) Figure 6: A point cloud sampling a sphere consisting of 150 points (a) is reconstructed by [HDD∗ 92] resulting in a C0 surface (b). A locally supported RBF [Wen95] reconstruct a C1 surface, while the global triharmonic RBF (∆3 f = 0, φ(x) = x3 ) outperforms the previous methods, although incurring a high computational cost. by finding an implicit function defined via RBFs whose zero level set represents the surface. More specifically they use globally-supported basis functions of the form φ(x) = kxk2 . The implicit function f may then be expressed as: n f (x) = p(x) + ∑ λi φ(x − pi ), (3) i=1 where p denotes a low-degree polynomial and the basis functions are shifted by the evaluation point x. The coefficients λi are found by prescribing, as interpolation constraints, a function value of 0 for pi ∈ P. Offsurface constraints are necessary to avoid the trivial solution of f (x) = 0 for x ∈ R3 . Positively (resp. negative) valued constraints are set for points displaced at pi along ni in the positive (resp. negative) direction. The displaced points are selected such that each one’s closest point in P is pi . The coefficients λi are found via a dense linear system in n, where by exploiting the structure of φ, fast multipole methods are used to reduce the complexity from O(n3 ) to O(n log n) [CBC∗ 01]. An advantage to using globally-supported basis functions for surface reconstruction is that the resulting implicit function is globally smooth; see Figure 6(d) for triharmonic RBFs, compared to compactly-supported basis functions [Wen95] shown in Figure 6(c). Hence RBFs can be effective in producing a watertight surface in the presence of nonuniform sampling and missing data. However, when the input contains moderate noise, determining the proper placement of off-surface points can become challenging. Indicator function. These methods approach surface reconstruction by estimating a soft labeling that discriminates the interior from the exterior of a solid shape. This is accomplished by finding an implicit function χ that best represents the indicator function, taking on the value of 0 in the interior of the shape and 1 otherwise. The key observation in this class of methods is that, assuming a point cloud with oriented normals, χ can be found by ensuring its gradient is as-closeas-possible to the normal field N, in a least-squares sense, via k∇χ − Nk22 . If we apply the divergence operator to this problem, then this amounts to solving the following Poisson Berger et al. / State of the Art in Surface Reconstruction from Point Clouds equation: ∇ · ∇χ = ∆χ = ∇ · N. (4) Once solved, the surface is found via χ with a suitable isovalue, typically the average or median value of χ evaluated at all of the input points. The approach of [Kaz05] solves this by transforming the problem into the frequency domain, where the Fourier transforms of ∆χ and ∇ · N result in a simple algebraic form for obtaining the Fourier representation of χ. By operating in the frequency domain, however, it is necessary to use a regular grid in order to apply the FFT, hence limiting spatial resolution in the output. In order to scale to larger resolutions, the method of [KBH06] directly solves for χ in the spatial domain via a multi-grid approach, hierarchically solving for χ in a coarse-to-fine resolution manner. Indicator function methods are an instance of gradientdomain techniques, which are known to be robust methods for such applications as high dynamic range compression [FLW02] and image blending [PGB03]. For surface reconstruction, such a gradient-domain formulation results in robustness to nonuniform sampling, noise, outliers, and to a certain extent missing data. The implicit function’s gradient being well-constrained at the data points enforces smoothness and a quality fit to the data and since the gradient is assigned zero away from the point cloud, χ is smooth and well-behaved in such regions. Furthermore, for small scan misalignment, normals tend to point in a consistent direction, which yields a well-defined gradient fit for the indicator function. Several extensions have been made to this original formulation, addressing limitations related to streaming reconstruction [MPS08], faithfulness to the input [KH13], and sensitivity to normals [ACSTD07]. The work of [MPS08] solves the Poisson equation in a similar manner to [Kaz05], but rather than using a Fourier basis, it uses wavelets in such a way that computing the wavelet transform of χ may be done in a local manner, where higher resolution wavelet bases contain smaller spatial support. Compact support is particularly advantageous in streaming surface reconstruction, where the reconstruction is done on a subset of the data at a time. A known issue with the approach of [KBH06] is that fitting directly to the gradient of χ can result in over-smoothing of the data [KH13, Fig. 4(a)]. To address this, the method of [KH13] directly uses the point cloud as positional constraints into the optimization, resulting in a screened Poisson problem. Similarly, the method of [CT11] incorporates positional, gradient, as well as Hessian constraints on the implicit function, where the Hessian constraint can improve surface extrapolation in regions of missing data [KH13, Fig. 6(a)]. The main difference between the approaches is that [KH13] solves the problem via a finite-element formulation, whereas [CT11] use finite-differences, due to the complexity in discretizing the Hessian term. In particular, the Figure 7: From the point cloud on the left, we show a slice of the implicit function produced in [ACSTD07] on the right, where only unoriented normals are necessary in producing a signed field. An isotropic surface mesh of the zero isosurface of the signed field is also depicted. screened Poisson formulation [KH13] is up to 2 orders of magnitude faster than [CT11], see [KH13, Table 1]. All of the above approaches rely on oriented normals, where although such methods can tolerate sparsely distributed normal orientation flips, large continuous clusters of improper normal orientation can significantly impact these methods. To address this, the method of [ACSTD07] uses covariance matrices to represent unsigned orientations, rather than using normals. A covariance matrix is formed at a given point by taking a union of neighboring Voronoi cells around the point. The anisotropy of the covariance acts as a notion of normal confidence. The implicit function is found by maximizing its gradient’s alignment with the principal component of the covariance matrix at each point, while ensuring smoothness and a proper signed function by enforcing the function’s biharmonic energy to be small. This amounts to solving a sparse symmetric generalized eigenproblem – Figure 7 depicts a slice of the resulting eigenvector for the kitty point cloud. Volumetric segmentation. These methods perform reconstruction via a hard labeling of a volumetric discretization, where the goal is to label cells as being either interior or exterior to the surface. The method of [KSO04] constructs a graph Laplacian from the Delaunay triangulation of P, where each node represents a tetrahedron of the triangulation and each edge measures the likelihood of the surface passing through the adjacent tetrahedra. The Laplacian eigenvector with smallest nonzero eigenvalue then smoothly segments tetrahedra into interior and exterior, as this eigenvector simultaneously seeks a smooth labeling and a partitioning with low edge weights. This approach has shown to be robust to noise and outliers without the use of normals, thanks to the robustness of spectral partitioning. Since it produces an explicit c Author version Berger et al. / State of the Art in Surface Reconstruction from Point Clouds volume segmentation, it also ensures a watertight surface. However, in regions of missing data, the discretization from the Delaunay triangulation may be too coarse, giving a poor approximation to the surface [KSO04, Fig. 6]. Methods based on graph cuts are also used in finding a volumetric segmentation. The method of [HK06] first defines a small crust on the exterior and interior through a dilation operation on point-occupied voxels. A graph is imposed on the crust where edges reflect the local surface confidence – a function of a smoothed unsigned distance, while nodes on the boundaries of the interior and exterior crust are connected to a source and sink node, respectively. To impose global smoothness, non-terminal edges also include a small regularization constant, which encourages minimal surface area. This method does not use normals, as it only needs to compute an unsigned distance in order to define edge weights in the graph cut solve. This results in robustness to nonuniform sampling, noise, and misalignment. Furthermore, the minimal surface area regularization allows for the method to handle missing data, where we note that such a regularization is absent in the spectral segmentation approach of [KSO04]. However, computing the crust such that the interior and exterior are identifiable can be challenging in certain configurations. 3.3. Piecewise Surface Smoothness Priors Moving from the smooth, closed case to the piecewise smooth case (possibly with boundaries) is substantially harder as the ill-posed nature of the problem applies to each sub-feature of the inferred shape. The features of a piecewise smooth surface range from boundary components, sharp creases, corners, and more specific features such as tips, darts, and cusps. In addition, the inferred surface may be either a stratified manifold or a general surface with non-manifold features. Another difficulty stems from the fact that a feature is a notion that exists at specific scales, such that reconstruction and feature approximation cannot be decoupled. Semi-sharp features. One step toward piecewise smoothness is a class of feature-preserving methods based on implicit representations. Sharp features can be captured through locally adapted anisotropic basis functions [DTS01]. Adamson and Alexa [AA06] rely on an anisotropic moving least squares (MLS) approach, where the anisotropy is based on principal curvatures derived from the points’ positions and normals. Oztireli et al. [OGG09] extend the MLS through kernel regression to allow for sharper features. However, none of these techniques reproduce truly sharp features: the features in a reconstruction contain varying degrees of smoothing. Moreover, the presence of sharpness in the geometry of a point set is detected only locally, which often leads to fragmented creases when defects are present [ASGCO10, Fig. 6]. Locally-sharp features. Another way to detect local sharpness consists in performing a local clustering of estimated c Author version normals [OBA∗ 03b]: the algorithm fits as many quadrics as the number of clusters of normals. Improved robustness is achieved in [FCOS05b] by segmenting neighborhoods through region growing. Lipman et al. [LCOL07] enriches the MLS projection framework with sharp edges driven by the local error of the MLS approximation. However, the locality of the feature detection can generate fragmented sharp edges, much like general feature detection approaches [GWM01, PP09]. Globally-sharp features. To reduce crease fragmentation, some approaches favor the extraction of long sharp features. Pauly et al. [PKG03] use a multi-scale approach to detect feature points and construct a minimum-spanning tree to infer a feature graph. Daniels et al. [DHOS07] uses a robust projection operator onto sharp creases and grow a set of polylines through projected points. Jenke et al. [JWS08] extract feature lines by robustly fitting local surface patches and computing the intersection of close patches with dissimilar normals. Sharp and robust. Only few approaches tackle the combined issue of robustness to defect-laden point clouds and featurepreserving reconstruction [FCOS05a, ASGCO10, HWG∗ 13]. The method of [FCOS05a] uses a least median of squares regression scheme in its region growing approach to handle outliers in the data. The approach of [ASGCO10] first estimates normals that preserve sharp features in the shape via l1 sparse reconstruction, i.e. the vector of all neighboring normal differences should be sparse, where large nonzero differences reflect sharp features. The positions are then found as offsets from the recovered sharp normals. The method of [HWG∗ 13] allows for the preservation of sharp features in a resampled point cloud by first resampling away from detected edges in order to reliably compute normals and then upsampling in a manner that preserves sharp features, determined by the normals. This method employs a similar energy to [LCOLTE07] away from sharp features, hence they are able to handle similar types of defects in the point cloud. 4. Visibility Priors Although methods based on surface smoothness priors can support a large variety of inputs, such a rather general assumption places restrictions on the extent to which they can support substantial artifacts in the point cloud. To handle challenging point clouds, it is useful to consider specific priors for reconstruction. In this section we consider visibility as a prior and how it can help regularize certain reconstruction problems. Visibility has generally been used in three different ways. The first class of methods considers how to use the visibility provided by the scanner that produced the point cloud – this is used primarily to obtain the line of sight associated with each sample; see Section 4.1. The second class of methods uses line of sight that is not provided from the scanner, but rather approximated from the exterior space; see Section 4.2. Berger et al. / State of the Art in Surface Reconstruction from Point Clouds The third class of methods uses visibility to approximate parity – the number of times a ray intersects a surface – in order to approximate the interior and exterior, as discussed in Section 4.3. These types of methods tend to make little assumptions on the shape class, and usually produce an implicit function or a surface mesh in output. 4.1. Scanner Visibility The most common method for using the visibility information provided by a scanner is the merging of individual range scans. This is the approach taken by [CL96], where a signed distance function is incrementally built up over each range scan. More specifically, each scan is first triangulated via its image lattice structure. Then for a given ray originating at the scanner head position, the signed distance field for points along the ray are updated based on their distance to the ray’s intersection point with the scan. Furthermore, as discussed in Section 2.2.2, a confidence can be assigned to each point in the range scan via line of sight information, where [CL96] associates low confidence weights with high grazing angles. This is particularly useful in combating noise in the point cloud, since one can easily over smooth or under smooth if no confidence values are associated with points; see [CL96, Fig. 4]. Furthermore, one can perform space carving through line of sight information, via marking regions of space observed by the scanner as empty. The approach of [CL96] uses this information to extract geometry between regions marked empty and regions that are unseen, where the assumption is that unseen regions are the interior of the shape. This is very useful in resolving ambiguous topology in regions of missing data; see [TOZ∗ 11, Fig.9]. For other forms of missing data, the approach of [CL96] will typically preserve the hole as it does not enforce any type of smoothness prior. It is possible to incorporate a minimal surface area regularization to encourage smoothness in regions of missing data, while using line-of-sight as a datafitting term. Existing approaches solve such a formulation via level-set models [Whi98] and graph cut optimization [LB07]. The method of [LPK09] seeks an interior and exterior labeling of tetrahedra from a Delaunay triangulation of the point cloud, similar to [KSO04], but formulates it as a graph cut problem using line of sight information. At each tetrahedron, the method accumulates evidence for belonging to the exterior through line of sight of all range scans, hence assuming outliers are randomly distributed, this method is robust to such defects; see [LPK09, Fig. 13]. For scans that contain a high level of misalignment and structured outliers, the method of [ZPB07] approaches range scan merging by using the l1 norm for the data term, and the minimization of the signed distance gradient magnitude as the regularization term. This type of regularization, commonly known as total variation denoising, allows the algorithm (a) (b) (c) Figure 8: The point cloud “hidden point removal” operator from [KTB07] applied to an input (a) determines the subset of visible points as viewed from a given viewpoint (b). Given this labeling, a view-dependent on-the-fly reconstruction (c) can be obtained by retaining the topology of well shaped triangles from the convex hull of the spherical inversion. to be robust to structured outliers and scan misalignment; see [ZPB07, Fig. 4]. The method of [FG11] considers the case when range scans have widely varying scales – the range scans have very different sampling densities. In such cases, merging multiple scans of a coarse scale with a single scan at a fine scale can overly smooth out the fine-grained detail. [FG11] extends [CL96] by constructing a hierarchical signed distance field. This permits retaining the high resolution detail of fine-scale scans, while capturing the more general scene present in coarse-scale scans. Scanner visibility was recently used in [UB13] in the reconstruction of thin objects, such as street signs. The method employs a point-based representation for reconstruction, where a particle system is used to satisfy a data-fitting term, an energy that encourages the vector formed by neighboring points to lie on one another’s tangent plane, and a term that penalizes neighboring points if their normals are in different directions. Each input point’s target output point is restricted to be along its line of sight, which helps to constrain point movement in the particle system and greatly simplifies the optimization. 4.2. Exterior Visibility It is possible to exploit visibility even in the absence of explicit information from the scanner. Given a chosen camera position, point set visibility [KTB07] determines the portion of the point cloud that is not self-occluded. First, a spherical inversion of the point cloud with respect to the given query point is computed. Then, visible points are simply identified as those that lie on the convex hull of this set – see Figure 8. While [MTSM10] extended this method to handle moderate levels of noise, the input point cloud must respect strict sampling assumptions to produce satisfactory results. Occlusion culling. The method of [CCLN10] builds upon these ideas and reconstructs a watertight surface by carving c Author version Berger et al. / State of the Art in Surface Reconstruction from Point Clouds Figure 9: The approach of [MDGD∗ 10] first computes a robust unsigned distance function (left), and constructs an interior/exterior labeling (middle), and associated confidence (right) of the labeling. Note that low confidence is associated with regions of missing data, such as the bottom of the scan. the space occluded by the point cloud when observed by a sufficiently large and randomly sampled set of directions. Similarly to [KTB07], the input cloud has to satisfy certain stringent sampling conditions, limiting its effectiveness with undersampling and missing data. Conditions on sampling are relaxed in [CLCL11] where inconsistencies are detected by observing that if one point’s Voronoi pole [AB99] lies in the exterior, the other Voronoi pole should be in the interior. If both are occluded or visible via [KTB07], this indicates an inconsistency. Unfortunately, since the method uses Voronoi poles, which cannot always be robustly estimated in the presence of missing data, its applicability remains limited. Cone carving. The method of [SSZCO10] hypothesizes that each point in the cloud must have been observed from the scanner head. It computes high-likelihood visibility cones originating at each sample and takes the boundary of the union of all cones as an approximation to the surface. This method can be used to infer the geometry in large regions of missing data for challenging scenarios, i.e. two thin, spatially close, and undersampled surface sheets – producing topologically clean surfaces. The main disadvantage with the approach is its lack of scalability, since it takes linear time to construct a cone at each point, resulting in a total quadratic running time. 4.3. Parity An alternative way of using visibility is to define a measure of parity. Assuming a closed surface, the parity for a given ray (point and direction) is defined as the number of times the ray intersects the surface – if an odd number of times, this indicates the point lies in the interior, otherwise the point is in the exterior. This general idea can be extended to a point cloud, giving rise to a notion of uncertainty in whether or not a point belongs in the exterior or interior. The approach of [MDGD∗ 10] constructs parity on the point cloud through the use of a robust unsigned distance function. Namely, they compute a crust, or an offset surface, around the point cloud via the unsigned distance and evaluate parity at a given point by randomly shooting rays in different directions, where the c Author version Figure 10: The point cloud on the left was captured via multi-view stereo – note the substantial structured outliers. The center image is a zoomed-in portion of the point cloud, centered on the object of interest. The method of [GCSA13] (right) is highly robust to outliers, while still preserving the details of the object, due to the use of parity and an unsigned distance function which adapts to the noise. crust is used to determine intersections with the surface. A point will very likely be exterior or interior if the parity estimates are consistent over all directions. This uncertainty estimate is used in constructing an implicit function, consisting of a data-fitting term and a smoothness term, such that high smoothness constraints will be assigned to regions that have high uncertainty (i.e. high disagreement in parity). Figure 9 shows the unsigned distance function for a challenging point cloud, along with its sign estimate and confidence in sign. This approach is highly robust to noise and outliers due to the use of a robust unsigned distance function, which does not require the estimation of normals. It is also robust to missing data, and since its regularization is spatially-varying according to the uncertainty in parity, it will not over smooth the data where it exists. However, since smoothness is enforced via a Laplacian regularization, this could still result in poor behavior in regions of missing data, giving the incorrect topology. The method of [SY12] addresses this by performing space carving, guided by a parity estimate, to only carve out space where there does not exist highly confident interior regions. This can better retain topological features such as tunnels, where smoothness priors may erroneously over smooth and fill these regions in. The method of [GCSA13] extends [MDGD∗ 10] by using a robust unsigned distance function that is adaptive to the noise level in the point cloud. The method produces a sign estimate over a random collection of line segments in the volume. To determine the parity for each line segment, rather than using a crust as in [MDGD∗ 10], they look at all local minima in the unsigned distance along the segment, flip the function according to the local minima, and of all possible flipped minima choose the one that is smoothest. Figure 10 demonstrates the method’s robustness to strong, structured outliers. Berger et al. / State of the Art in Surface Reconstruction from Point Clouds model image input point cloud reconstructed surface user-edited reconstruction Figure 11: The high-level geometric regularizer provided by “arterial snakes” [LLZM10] is effective in reconstructing the delicate geometry of the scanned tubular model affected by noise, outliers, reduced sampling density and missing data. The sparsity of the model does not only allow the correction of these data imperfections, but also enables intuitive data/user-driven reconstruction. 5. Volumetric smoothness In order to handle challenging forms of missing data, a common way to regularize surface reconstruction is to enforce that the local shape thickness of a surface (i.e. a measurement of its local volume) varies smoothly. For watertight shapes, local thickness is measured by the radii of maximally inscribed spheres of its medial axis transform. However, as the medial axis is an alternative full representation of the shape, determining the medial axis over which to perform these measurements is an inherently difficult problem – as difficult as the reconstruction problem itself. Skeletal regularizers. The “rosa” method from [TZCO09] addresses this issue by assuming that the medial axis of a shape can be approximated by curves instead of surfaces, that is, by a curve-skeleton. For organic geometry, a reconstruction of the skeleton can be obtained even in the presence of missing data by exploiting the redundancies of local rotational symmetry. Given a skeletal structure the geometry can be reconstructed in regions of missing data by a three-step process: first, the distance from the cloud to the curve-skeleton is cylindrically parameterized on the curve-skeleton; then, an inpainting of the distance function is performed on this domain; finally, the inpainted point cloud can be processed by one of the algorithms in Section 3. It is important to note that a cylindrical parameterization prior constrains the class of shapes for which a reconstruction is possible to one having a starshaped cross section. While the skeleton extraction method in [TZCO09] suffered the limitation of requiring oriented normals, subsequent research showed how it is possible to extract skeletons directly from unstructured point clouds [CTO∗ 10] and even in the presence of outliers [HWCO∗ 13]. To overcome other limitations, in [CTO∗ 10] a first attempt at removing the necessity for an explicit cylindrical parameterization was made, while also allowing user-input to locally modify the regularizer. Deformable models. Another way to take advantage of volumetric smoothness is to grow a deformable model from within the volume. The approach of [SLS∗ 06] slowly grows mul- tiple surface fronts, guided by a signed distance field, from within the interior volume out to the point cloud. The method takes care to split and merge fronts in order to progressively reconstruct the surface in growing levels of details. Noise and missing data are handled by enforcing a smoothness term on all fronts as they evolve. This conservative approach leads to a better control and interpretation of the reconstructed topology and can be extended to reconstruct a skeletal curve directly from the point cloud [SLSK07]. To handle higher amounts of missing data, the approach of [LLZM10] presents a deformable model for reconstructing skeletal curves of man-made shapes composed of a collection of tubular components such as metal rods and canes. The arterial snakes model geometry is obtained by sweeping a fixed-topology cross section through the input point cloud starting from regions of high data fidelity. Their approach implicitly encodes volumetric regularization by constraining the solution to one exhibiting a smoothly varying cross-section, while also allowing high-level geometric constraints like planarity, contact tangency, and symmetry to further regularize the reconstruction. Organic skeletal geometry. Tubular components exhibiting piecewise smooth radii variations are also suitable to model organic and natural geometry like trees [RFL∗ 05, NFD07, LYO∗ 10] or blood vessels [KQ04]. In tree reconstruction, biological constraints are exploited to simplify the problem and increase resiliency to data imperfections. Noise is introduced by foliage, as this is typically too small to be finely resolved by the scanning process and a substantial amount of self-occlusion is caused by dense branching structures. Therefore, the focus of the reconstruction is tree branches, where their approach is to first reconstruct the skeleton of the captured tree. The skeleton is assumed to be a directed acyclic graph rooted at the ground plane; limbs are typically piecewise smooth and their thickness almost everywhere smoothly varying, where a pipe-model [RFL∗ 05] controlling thickness variations can be used at branching locations. While a pair of orthogonal images have been shown sufficient to c Author version Berger et al. / State of the Art in Surface Reconstruction from Point Clouds hallucinate the 3D information with the help of some user interaction [NFD07], recent research has attempted to model the tree structure directly from 3D point clouds [LYO∗ 10]. Generalized volumetric smoothness. Several methods exist for imposing volumetric smoothness on the medial axis of the shape, supporting a much broader class of shapes. The method of [BS12] approaches reconstruction by segmenting the point cloud into volumetric regions and in each region taking the union of balls to obtain a coarse surface representation. The union of these regions then serves as an initial surface for the method of [SLS∗ 06], to recover fine details. Key to their segmentation is a distance measure defined directly on the point cloud that robustly measures the likelihood of a medial ball being generated by any pair of points. This method is robust to noise and missing data, particularly when there exists nearby surface sheets, but can fail in regions where parts of the surface corresponding to medial sheets are missing. Figure 12: (left) CAD models are often obtained by constructive solid geometry as a composition of simple primitives: planes, spheres, cones, etc. (middle) Randomized search [SWK07] can be used to detect such primitives in the point cloud data even in the presence of noise, outliers and missing data. (right) The primitives can then be extrapolated to obtain a watertight surface from incomplete data [SDK09]. The detection of simpler geometric structures in a point cloud has shown to be particularly beneficial for surface reconstruction. Knowledge of a surface that can be described as the composition of geometric primitives can be extremely helpful for denoising and filling in missing data. Not all shapes adhere to this prior, but typically CAD and architectural models can be described in this manner. Primitive consolidation. The work of [JKS08] takes a set of detected plane primitives and performs reconstruction by aligning and merging the boundaries of adjacent primitives. More specifically, the boundaries of the plane primitives are extracted and an optimal configuration of boundaries is found by imposing a data-fitting term to the original boundary as well as a term that favors the snapping of boundary points and corner points of neighboring planes. Explicitly using corners prevents the boundary from smoothing itself out. The advancing front method of [SFS05] is used to extract a surface mesh. This method can reconstruct CAD and architectural models alike, producing a surface mesh that retains the detected primitive structures. However, the method requires that adjacent primitive boundaries should be geometrically close to each other, which may not be satisfied if primitive detection is noisy, or if missing data is present. The method of [SDK09] resolves this by explicitly extrapolating shape primitives (of all kinds) and forming the resulting output as the intersection of the extrapolated primitives. This extrapolation of primitives is formulated as a graph cut problem, where in addition to a standard minimal surface area term, a data fitting term is used that ensures the surface normal at a given point (the edge in the graph) is aligned with all intersecting primitives at that point. This does not constrain the primitives in a local manner: primitives whose boundaries are far away can eventually meet up and intersect with this method, as illustrated in Figure 12. Detecting primitives. The method of [SWK07] is an effective method for finding geometric primitives in shapes. It uses RANSAC to robustly find planes, spheres, cylinders, cones, and torii, through an efficient means of sampling points for fitting and evaluating scores, both based on locality sensitive methods. Importantly, this method produces primitives that partially match the point cloud – the collection of these shapes can then be used for reconstruction. We note that although this method can detect a small set of easily parameterizable shapes, efficient pose detection methods for arbitrary shapes can also be used [DUNI10]. Augmenting primitive information. Although the method of [SDK09] can robustly handle missing data, it can be sensitive to noisy primitives which may fail to define a coherent model when extrapolated. The work of [CLP10] instead uses line of sight information to help penalize poorly extrapolated primitives. Namely, this work takes the set of primitives as well as an additional set of primitives formed near the boundaries of the input primitives and constructs a cell complex reflecting the extrapolation of the primitives. An energy, similarly solved via graph cuts is then formed, where the data-fitting term uses line of sight information to penalize Among methods employing volumetric regularization [TOZ∗ 11] is the most general. The surface encoding the solution is iteratively evolved by level-sets toward the data considering both visibility and surface smoothness, similarly to [Whi98], while simultaneously enforcing a volumetric prior based on the medial axis of the evolving interface. This technique can prevent the formation of unnecessary holes in thin surfaces due to under-sampling, as the formation of a topological feature would correspond to a quickly vanishing medial radii. Furthermore, since the medial axis encodes local reflectional symmetry, this allows for information to be effectively propagated throughout the surface permitting the reconstruction of challenging data like the geometry of the highly concave areas in a vase – see [TOZ∗ 11, Fig.5]. While highly general, the instability of the medial axis to surface-perturbations and the complexity of its computation limit the applicability of the method. 6. Geometric Primitives c Author version Berger et al. / State of the Art in Surface Reconstruction from Point Clouds facets in the complex lying in regions marked empty via space carving. The method of [RKMP13] uses the point cloud, line of sight, and edge features in corresponding RGB images to infer constraints for finding the boundary of each input shape primitive, consequently producing the reconstructed surface. Volumetric primitives. In the case of indoor scene reconstruction, an alternative to surface primitives is to employ volumetric primitives to model the interior space. In [XF12] the volume is modeled by fitting simple cuboids to the empty space defined by the boundaries of the scan data. A set of 2D constructive solid geometry (CSG) vertical slices are built by incrementally adding and removing candidate rectangles that best model the interior – a function of line of sight information. A similar process is used to stack up these slices to build a set of volumetric primitives, producing a 3D CSG model that composes the interior. The method of [OLA13] starts from a volume decomposition of the space, and labels volumetric cells as interior and exterior through a parity-driven cost function solved via graph cuts, where parity is measured through ray intersections of extracted horizontal and vertical structures. Such volumetric methods guarantee a watertight output, and are highly robust to missing data, since only a partial sampling of the volume boundary is needed for a quality fit. Hybrid methods. A limitation of primitive-based methods is that they do not degrade gracefully if certain portions of the shape are poorly explained by a primitive. The method of [LA13] resolves this by introducing a hybrid approach to reconstruction: shape primitives are used to resample the point cloud and enforce structural constraints in the output, such as sharp features between adjacent primitives and corners, while a visibility-driven prior is employed in regions where a primitive fit is not found. A similar approach was proposed in [vKvLV13], where planar polygons of sufficient fitting quality are extracted and a conforming, constrained Delaunay triangulation is constructed on the polygons and the remaining points so that the polygons are preserved in the triangulation. A visibility-driven graph cut problem is then solved, similarly to [LPK09], such that the extracted polygon primitives are retained, while the rest of the points rely on line of sight information for reconstruction. These types of methods greatly generalize the class of shapes in which primitive-based reconstruction may be performed. 7. Global Regularities Certain classes of shapes, namely CAD, man-made, urban, and architectural shapes, possess a certain level of global regularity. Regularity in a shape can take many forms: a vase described by a surface of revolution, a building composed of facade elements, or a mechanical part consisting of recurring orientation relationships between sub-parts. All of these are examples of the following more general properties: symmetry, repetition, and canonical relationships. Commonly associated with high-level shape analysis [MWZ∗ 13], these priors Figure 13: From the scan on the left, the method of [PMW∗ 08] is able to discover local similarity transformations which relate individual elements. This can be used to resample the point cloud, as well as extrapolate the scan into missing regions, shown on the right. have also shown to be of great use in handling severe defects in a point cloud. 7.1. Symmetry Symmetry is a well-studied problem in shape analysis [MPWC13]. Symmetry detection is focused on finding either global or local transformations on the shape that maps the entire shape, or a subset of the shape, onto itself. Finding such transformations can be extremely useful for surface reconstruction in handling noise and missing data. Global similarity. The method of [LA11] applies this to the case of missing data for single-scan completion by finding small surface patches of the scan that exhibit either bilateral, rotational, or surface-of-revolution symmetry, and then applying the detected transformation to the rest of the scan to infer the missing data. This can produce a complete model from a single view and does not assume a specific type of shape class. However, it assumes that a shape can be well described by the application of a single simple transformation, which does not always hold. Local similarity. Rather than imposing global relationships, in [PMW∗ 08] the authors focus on finding repeating elements (small subsets of the point cloud) that can be mapped onto one another by local similarity transformations. They show that the repetition of elements in a point cloud manifests as a lattice structure in a suitable transformation space. In particular, partial matches become prominent in this transformation space, hence repeating elements of varying levels of missing data can be robustly detected and used to reconstruct incomplete regions, see Figure 13. The method of [LCDF10] finds symmetries in incomplete point clouds by constructing an affinity matrix that measures how symmetric all pairs of points are. The key insight made by [LCDF10] is that this matrix should be block-diagonal for many types of symmetries – i.e. rotational, bilateral, intrinsic. By considering powers of this matrix, the authors demonstrate how incomplete matches become more pronounced, allowing for a wide range of detected symmetries in challenging point clouds containing noise, outliers, and missing data. These simpler forms of symmetry can be generalized to a notion of subspace symmetries [BWM∗ 11], where a symmetry group is defined c Author version Berger et al. / State of the Art in Surface Reconstruction from Point Clouds by a set of local transformations as well as a low-dimensional shape space, in order to handle more general types of shapes. 7.2. Structural Repetition In certain cases it is difficult to find repeating elements in a point cloud through symmetry transformations. Instead, directly seeking repeating elements in a transformation-free manner can provide us with more flexibility in the reconstruction process. The method of [ZSW∗ 10] utilizes this observation for reconstruction of building facades in noisy terrestrial LiDAR scans, where occlusions from vegetation or other objects result in significant missing data. For a given type of facade element, each elements’ planes are detected via [SWK07] and the individual elements are registered at a per-plane level. Once registered, denoising is performed across all elements via the individually registered planes and the consolidated facade element is projected back onto each instance for reconstruction. The mutual use of information across all elements allows one to robustly remove noise and fill in missing data. A drawback to the approach of [ZSW∗ 10] is the strict requirement of user interaction. This limitation was addressed in the work of [SHFH11] by adaptively partitioning facades. The approach of [WS12] takes the consolidated point cloud of [ZSW∗ 10] and segments it into depth layers and uses a grammar definition to individually segment each depth layer into facades via the optimal sequence of grammar derivations. Facades may be appropriately extruded at each depth layer to obtain a polygonal representation of the building, at the possible expense of detail in the geometry due to the lack of expression in the shape grammar. The method of [FS12] tackles occluded facade scans by analyzing vertical scanlines consisting of columns of points along major facade planes to detect periodic features. The Discrete Fourier Transform is computed for each scanline and used to extract the period of repetitive structures. Holes are filled by extending the periodic features into occluded regions. Another means of detecting regularity in incomplete scans is to find regularity in associated RGB imagery, and propagate this information back to the 3D scan to perform reconstruction. The approach of [LZS∗ 11] achieves this by decomposing the RGB image into depth layers via the 3D scan, and upon detecting symmetries with respect to each layer via [WFP10], consolidates all element instances to robustly denoise and fill in missing data across the instances. 7.3. Canonical Relationships Another useful prior on global regularities is the canonical intra-relationship between parts of a scene, or parts of a shape. Such relationships can be parallel or coplanar parts, recurring orthogonality between planes, concentric or co-axial parts, c Author version input scan ransac globfit Figure 14: From a set of misaligned scans shown on the left, the primitives extracted via [SWK07] (middle) retain the misalignment. Globfit [LWC∗ 11] (right) is able to correct misalignment by enforcing consistent canonical relationships across primitives. and regularity in orientation. This often arises in CAD models due to fabrication restrictions and budget considerations, as well as urban environments due to functional constraints. Manhattan constraints. Perhaps the simplest form of a canonical relationship is the Manhattan-world (MW) assumption: all planar primitives in a scene belong to one of three mutually orthogonal planes. This can simplify facade reconstruction, as in the aforementioned methods of [ZSW∗ 10, SHFH11, WS12, LZS∗ 11]. In [VAB12], MW is used for building reconstruction by first classifying points by shape type – wall, edge, convex corner, or concave corner – and clustering points of a similar type. After constructing MW-aligned bounding boxes on all clusters, volume regions are found via parity, analogous to [MDGD∗ 10], where interior regions of consistent parity are considered to belong to the building’s volume. As edges and corners are detected via relationships between walls, this method is robust to missing data, but may be sensitive to noise for adjacent wall configurations. Consolidating relationships. The method of [LWC∗ 11] reconstructs CAD shapes consisting of a much richer variety of canonical relationships compared to MW. Namely, starting from an initial set of detected primitives [SWK07], parallel, orthogonal, angle-equality, and distance-equality relationships are individually detected and carefully selected so as to not cause any relationship conflicts. By enforcing these relationships, structured noise such as scan misalignment can be effectively handled – see Figure 14. Canonical building relationships. The work of [LWC∗ 11] was extended to the case of reconstruction of buildings from 2.5D scans in [ZN12]. The basic observation in this approach is that there exists three fundamental type of relationships in buildings: roof-roof relationships that consist of orientation and placement equalities, roof-roof boundary relationships that consist of parallelism and orthogonality relationships, and boundary-boundary relationships that consist of height and position equality. Upon finding the relationships via clustering (i.e., clustering similar angles, equality, etc..), they are used to inform the primitive fitting method so that the prim- Berger et al. / State of the Art in Surface Reconstruction from Point Clouds Figure 15: From the incomplete and cluttered scan on the left, the approach of [NXS12] first oversegments the point cloud (mid-left), then iteratively merges segments which agree on class labels (mid-right), and finally deforms a set of detected models to best resemble their segmented objects (right). itives simultaneously fit to the data and to the relationships. Analogous to [LWC∗ 11], this allows for robust reconstruction from building scans containing strong structured noise. 8. Data-driven priors The previously discussed priors may not always be appropriate and in practice, certain shapes may simply fail to adhere to these priors. A more flexible method of specifying a prior is through a data-driven means: using a collection of known shapes to help perform reconstruction. This can allow for the reconstruction of individual objects and more generally, the reconstruction of scenes composed of a certain type of environment and multiple types of objects. Fine-grained scene reconstruction is extremely challenging due to the large missing data often associated with scans, such as those derived from the Microsoft Kinect. Hence, if reconstructing the geometry is infeasible, these methods instead seek the most similar object in a database, and if necessary, its deformation in order to fit the input data. Data driven inpainting. An earlier method of reconstructing individual objects from a database was proposed in [PMG∗ 05], where an incomplete input point cloud is matched against a database of complete shapes and the most relevant shape is then rigidly deformed into the point cloud to recover missing data. This allows for a watertight reconstruction, but for the algorithm to be effective, strong similarity between the input data and the best-matching object is necessary. This limitation was addressed by [GSH∗ 07] by using local shape priors, where a collection of overlapping point cloud patches are matched against a local shape prior database and the retrieved priors are used to reconstruct the surface. A major drawback of these approaches is the assumption that the point cloud is sufficiently dense, so that matching the cloud against a set of complete shapes is meaningful. However, for the acquisition of scenes, in particular indoor environments, the scanned objects may be too incomplete to permit this due to occlusion, limited observation directions, or the geometry is too fine-grained with respect to scanner resolution. Furthermore, for these methods to be applicable to scene reconstruction, objects need to be individually segmented. Reconstruction by rigid retrieval. The method of [SXZ∗ 12] approaches this problem by first seman- tically segmenting the point cloud and then finding a complete model to replace each segment. More specifically, given a set of scans and RGB images, a conditional random field class labeling problem is formulated, balancing two objectives: a data fitting term based on a database of class-labeled objects and a smoothness term favoring local consistency in appearance and geometry. A training set of point clouds is built, where for each object scans are constructed via a virtual camera over a range of orientations and distances from the object. This allows the model to be robust with regard to missing data, as the input should map to one of these poses. A random forest classification is built over this training set allowing for the closest complete object to an incomplete scan to be retrieved. Although retrieving a rigid template from a database can effectively handle incomplete data, only rigid transformations with uniform scaling are considered to best align each matched object. Reconstruction by non-rigid retrieval. A natural extension of reconstruction by retrieval is to consider non-rigid transformations of the template geometry to the input data. This is addressed in [NXS12] where upon finding a certain semantic class for a segmented object in the point cloud, every model is non-rigidly deformed via localized scale deformations. The best match is identified as the model with the smallest registration residual. This method approaches classification differently by building a semantically-labeled segmentation through incremental selection of oversegmented surface patches. A patch is chosen if the resulting merged object has high confidence in its label. This is particularly effective in noisy, outlier-ridden highly cluttered environments – see Figure 15. The authors of [KMYG12] extend these ideas by noting that in indoor environments it is common to have the same object in multiple poses. Their technique incorporates a deformation model directly into the segmentation and classification problem, rather than as a post-processing step. A deformation model is learned over multiple incomplete scans for a given object, allowing the object to be identified by incomplete observations of its parts. Given an input scan, it is first over-segmented and then iteratively merged into parts, where parts are matched against learned local deformation modes of a model. Part relationships are then used to verify the global quality of a match. Compared to [NXS12,SXZ∗ 12], such deformation models allow one to reconstruct a broader c Author version Berger et al. / State of the Art in Surface Reconstruction from Point Clouds set of objects, and lessens the need for a potentially large database for recognition. Reconstruction by part composition. A disadvantage of the above approaches is that the granularity of the reconstruction is at the level of a whole model, that is, combining parts from different models is not possible. The approach of [SFCH12] overcomes this by combining individual parts from different objects to best compose the input scan. Namely, starting from a database of segmented models, 3D data is combined with RGB imagery to find candidate parts from the database matching the input. In particular, the use of RGB data can help find parts that are completely missing in the 3D scan. The best combination of candidates that closely match the geometry, while consisting of a small intersection with each other, composes the final model. Model-based SFM. The method of [BCLS13] performs reconstruction at the category level (i.e. car, fruit), by learning a mean shape prior along with corresponding feature points on the shape from a given set of object instances acquired through structure from motion (SFM). Then for a given point cloud and associated imagery, its points are matched to the learned feature points and used to deform the mean shape to the given point cloud. Such an approach allows for the reconstruction of coarse details via the learned mean shape, while preserving fine details present in the point cloud. Such details are likely to be lost by the previously described approaches. 9. User-Driven Methods Incorporating the user in the process of surface reconstruction has shown to be extremely beneficial in dealing with challenging point clouds. The key distinguishing factors between user-driven methods are the level of intuition and ease of use an interface provides and the extent at which the user interaction is coupled with the underlying reconstruction technique. User-driven techniques were first introduced as a means for generating required information as inputs to the reconstruction algorithm, where recent and more encompassing approaches tightly integrate the user interaction with the core reconstruction algorithm. Below we group user-driven techniques by the type of information that is solicited from the user. Feature classification cues. The methods of [FCOS05b] and [GG07] showcase how user input can be used to provide valuable information for reconstruction. In both methods user input is used to augment the point cloud with tags classifying different surface attributes such as regions of surface smoothness [FCOS05b] and sharp features [GG07]. A simple brush tool that acts directly on the point cloud enables the user to identify regions of interest. The tags are incorporated with moving least squares [ABCO∗ 03] to better handle sharp feature regions that are difficult to detect and reconstruct automatically. Another example of user interaction is the method of [LZS∗ 11], which requires the user to correlate 2D photos c Author version (a) (b) (c) Figure 16: Given an input point cloud, simple planar primitives identified by RANSAC (a) may result in coarse and incomplete geometry (b). By exploiting the user’s high-level knowledge while remaining faithful to the input data (b) a constrained optimization allows to recover a high-quality model (c). and LiDAR scans by identifying corresponding 2D rectangle regions in both data sources. Topology cues. The method of [SLS∗ 07] demonstrates how user information can be more tightly integrated to guide reconstruction in an interactive fashion. Specifically, the approach obtains watertight and topologically correct reconstructions through the automatic detection of topologically weak regions in a given reconstruction. These low-confidence regions are then presented to the user to be resolved, via scribbles on a 2D tablet, which translate to interior and exterior constraints, or potentially no constraints if the user deems the region valid. The reconstruction is then updated, and the process repeats through further user edits. Structural repetition cues. The ability to incorporate user input in reconstruction allows one to forego traditional watertight and topological requirements. User interactivity and automatic reconstruction can be tightly coupled in an integrated interactive environment and is especially useful for the reconstruction of large-scale data. These techniques are best suited when the sampled objects exhibit high repetition and can be adequately represented in terms of a collection of simple geometric primitives. In [NSZ∗ 10] the authors present a technique to rapidly reconstruct architectural models, such as those acquired from the scanning of large urban environments. The key idea of the approach is to enable the user to define and manipulate simple geometric building blocks in the form of axis-aligned rectangular cuboids named smartboxes. The user sequentially places the smartboxes into the scene, where contextual regularities and symmetries between boxes are automatically captured and used to expedite the fitting process. The final placement of the user manipulated primitives is determined through an interactive optimization procedure that automatically adjusts the location, orientation, and sizes of the box primitives by considering how the cuboid fits the data and its relationship in context with previously placed boxes. The method also allows for the grouping and Berger et al. / State of the Art in Surface Reconstruction from Point Clouds manipulation of multiple boxes for rapidly copying and fitting recurring structures. Primitive relationship cues. This class of methods approaches the reconstruction of models that can be assembled by simple polygonal primitives. The role of the user is to provide hints in how to improve the connectivity of the reconstructed model. The approach of [CC08] is focused on building reconstruction from incomplete scans. They first estimate planar polygons as well as their boundaries from the scans. Acknowledging that this estimation will be imperfect under missing data, the authors then allow for the user to identify boundary lines that bound an absent polygon, as well as specify multiple polygons that intersect to yield absent edges or corners. This information is used to infer a watertight polygonal model of the building. To support more complicated polygonal relationships the method of [ASF∗ 13] reconstructs a closed polygonal model by snapping each polygon into alignment with neighboring primitives by solving a combined optimization problem involving both local and global spatial constraints – see Figure 16. The interactive component provides the user a set of modeling operations comprised of simple edits restricted to an automatically determined plane, hence fixing the view for the user. A polygon edit mode allows the user to refine existing polygons by editing their boundaries and merging multiple disconnected polygons. A polygon sketching mode allows the user to provide new polygons for regions where automatic planar detection failed due to insufficient points or incorrect estimation due to noise or outliers in the data. For both modes, the user has to only provide coarse edits, as the automatic snapping optimization is used to align polygon boundaries based on both local and global relations between primitives. 10. Evaluation of Surface Reconstruction Given the wide diversity in reconstruction methods, the manner in which one reconstruction is evaluated compared to another may differ. In this section we look at different evaluation criteria used in the surface reconstruction literature. Geometric Accuracy. Perhaps the most common method of evaluation is to directly compare the geometry of the reconstruction output to the ground truth surface from which the scan was obtained. Hausdorff distance, mean distance, as well as measuring error in normals are common geometric error measures in this scenario. However, it is often challenging to obtain the notion of a ground truth surface from a physical shape. Hence, computational representations of shapes are typically used as the ground truth [Kaz05, MPS08], where synthetic scanning of the digital representation can be used in place of an actual scanner [BLN∗ 13]. In some cases, a direct comparison to ground truth data is insufficient when targeting reconstruction under an error tolerance or comprising several levels of details (LODs). This suggests evaluating instead the complexity-distortion tradeoff, or the capability to generate LODs that are both controllable via intuitive parameters and meaningful for the targeted applications. Such evaluation criteria consist of the coherence of LODs across the scene, the ability to incrementally refine the geometry, and the level of abstraction provided by the LODs, analogous to [MZL∗ 09]. Topological Accuracy. Another important evaluation criteria is the recovery of higher-level information of the shape and in particular, its topology. Certain methods are concerned with reconstructing a shape with the correct genus [SLS∗ 07], while other methods that focus on recovering a skeletal representation of the shape are more concerned with the topology of the underlying skeletal structure – recovering important branches and junctions in the skeleton. Such a topological structure is of particular importance for structural shape editing applications [LLZM10] and nonrigid registration [ZST∗ 10]. However, we note that most skeleton-based methods are often concerned with qualitative evaluation, hence it can be difficult to compare different skeleton extraction methods. Structure Recovery. Beyond geometry and topology it is also sometimes desirable to recover the structure during reconstruction. Beyond the simple notion of scene decomposition, the term structure has a broad meaning, ranging from the dimension of geometric entities (manifolds, stratified manifolds, non-manifold configurations) to adjacency relationships through canonical geometric relationships (parallelism, co-planarity, orthogonality, concentricity, co-axiality) and regularities (repetitions, symmetries). In addition, controlling the structure encompasses recovery, preservation, and reinforcement. Structure is especially relevant when dealing with large-scale scenes, not just individual objects, where scenes are composed of a collection of objects which may have structural interrelationships. Structure as well as global regularities are also a means to improve robustness and resilience to missing data and go beyond reconstruction to consolidation and abstraction. Shape Recognition. For data-driven methods that deal with substantial missing data, recovering precise geometry is often impractical. Instead, recognizing whole shape classes [SXZ∗ 12] or parts of shapes [SFCH12] from an incomplete scan are common methods of evaluating reconstruction quality. Similar types of recognition methods can be used in evaluating the detection of geometric primitives. Ease of Use An important evaluation criterion is the ease of use of a surface reconstruction algorithm. For methods that are automatic, this can amount to how sensitive a method is to its set of parameters across a large range of inputs. For user-driven methods, this translates to the practicality of the user interface. This can be evaluated through user studies [ASF∗ 13] that measure the time it takes to reconstruct a model. The studies perform these evaluations on both users who are familiar with computer graphics and 3D modeling as well as those that are novices. Reproducibility An important consideration in evaluating the quality of a reconstruction method is its level of reproducibility. Perhaps the simplest means of determining reproc Author version Berger et al. / State of the Art in Surface Reconstruction from Point Clouds ducibility is whether or not certain methods are made publicly available or have been implemented by a third party, as this can be an important indicator of implementation complexity and algorithm robustness. Some surface reconstruction implementations are publicly available, which provides a sense of methods that have a high level of reproducibility. For instance, Poisson surface reconstruction [KBH06] is a widely used surface reconstruction method as the code is highly stable and reliable. The issue of reproducibility and provenance is well studied in other areas, including visualization and scientific workflows [SFC07,FKSS08], and it has been shown to be useful for studying 3D model construction [DKP11]. Given the increasing complexity of reconstruction algorithms, the issue of reproducibility is likely to be of increasing importance. 11. Conclusions The area of surface reconstruction has grown from methods that handle limited defects in point clouds while producing detailed reconstructions, to methods that handle substantial artifacts and produce high-level surface representations. Our survey provides insight into this wide array of methods, highlighting strengths and limitations that currently exist in the field. In doing so, our survey should also point the way towards future work across all of the different priors – making potential connections across input assumptions, point cloud properties, and shape classes that have not been previously considered. Hints and solvers. In our survey of recent work we observed how the surface reconstruction problem is tackled through either increasingly sophisticated solvers or richer reconstruction hints that make the problem easier to solve. For example, the availability of oriented normals requires only a linear solve through the Poisson reconstruction approach [KH13], while unoriented normals require solving for a generalized eigenvalue problem [ACSTD07]. Other hints such as generalized parity requires two linear solves: a first solve to consolidate the local hints as sign guesses, and a second solve to recover a signed implicit function [GCSA13]. Innovations in acquisition. As 3D acquisition methods continue to increase in variety and popularity, surface reconstruction will continue to be an important component in acquiring real-world shapes. To provide some historical context, consider the rise in accessibility of the optical laser-based triangulation scanner: since such a device provides line of sight information, this resulted in a whole category of visibility priors (Section 4) such as VRIP [CL96]. A more recent example is the Microsoft Kinect: the real-time capture of depth and RGB imagery has resulted in a new slate of techniques for reconstructing indoor scenes through data-driven means (Section 8) such as [SXZ∗ 12, NXS12, KMYG12], since objects in indoor environments tend to satisfy such priors. As novel acquisition sensors and modalities are developed, it is likely that surface reconstruction will become even more specialized in order to handle the nuances of the acquisition c Author version type. In this setting our survey should prove useful in the development of novel priors that need to handle such new acquisition methods. Acquisition ubiquity. Beyond the increasing variety of sensors, we are also witnessing a rapid evolution of the acquisition paradigms. The acquisition of our physical world can now be complemented by exploiting the massive data sets shared online, referred to as community data. We also predict a future where geometric data are acquired through disseminated sensors, yielding disseminated data. This evolution translates into a paradox: despite expectations that technological advances should improve quality, these data are hampered with high variability and unprecedented amount and variety of defects. In addition, we are observing a trend brought on by the speed of technological progress: while many practitioners use high-end acquisition systems, an increasing number of them turn to consumer-level acquisition devices, willing to replace an accurate albeit expensive acquisition by a series of low-cost acquisitions – see recent work on 3D acquisition from mobile phones [TKM∗ 13]. These new acquisition paradigms translate into a lower control over the acquisition process, which must be compensated by an increased robustness of the algorithms and structural or physical a priori knowledge. Recent works in hair reconstruction [LLR13] and foliage reconstruction [BNB13] demonstrate the challenges brought on by acquisition in uncontrolled environments. Big data and online algorithms. Last, the scale of acquired data is also quickly growing: we no longer deal exclusively with individual shapes, but with entire scenes, possibly at the scale of entire cities with many objects defined as structured shapes. Recovering the structure of such large scale scenes is a stimulating scientific challenge. We also envision a future where the common on-disk paradigm must be replaced by online algorithms that perform reconstruction during acquisition. Recent works such as Kinect Fusion [NDI∗ 11] and extensions [CBI13, NZIS13] demonstrate the practicality of building such online systems. There are applications such as aero-reconstruction for disaster management where tight timing restrictions make an online reconstruction approach indispensable. In particular, we foresee a need to extend the surveyed priors into the online setting, in order to support such challenging problems in surface reconstruction. Acknowledgments. Pierre Alliez is supported by an ERC Starting Grant “Robust Geometry Processing” (257474). Claudio Silva was partially supported by the National Science Foundation grant MRI-1229185, an IBM Faculty Award, and a grant from the Gordon and Betty Moore and Alfred P. Sloan Foundations. Joshua Levine is supported by the National Science Foundation award IIS-1314757. Author Bios Matthew Berger is a researcher at the Air Force Research Laboratory, Information Directorate. He received his PhD degree in Computing in 2013 from the University of Utah. His Berger et al. / State of the Art in Surface Reconstruction from Point Clouds research interests include various geometry processing topics such as surface reconstruction, meshing, and shape analysis, as well as computer vision topics such as 3D geometry acquisition, motion segmentation, and object recognition. Andrea Tagliasacchi is a postdoctoral scholar in the Computer Graphics and Geometry Laboratory at the Ecole Polytechnique Federale de Lausanne (EPFL). He received his MSc from Politecnico di Milano and a PhD from Simon Fraser University (SFU) under the joint supervision of Prof. Richard (Hao) Zhang and Prof. Daniel Cohen-Or. His research interests include computer graphics, computer vision and machine learning with a focus in geometry processing. Lee M. Seversky is a research scientist at the Air Force Research Laboratory, Information Directorate. He received his PhD degree in Computer Science from Binghamton University where he investigated robust methods for processing and analyzing incomplete point cloud data. He is currently a principal researcher with the Air Force pursuing new problems in the areas of large-scale geometry processing, computer graphics, and computer vision. Pierre Alliez is Senior Researcher and team leader at Inria Sophia-Antipolis - Mediterranée. He has authored many scientific publications and several book chapters on topics commonly referred to as geometry processing: mesh compression, surface reconstruction, mesh generation, surface remeshing and mesh parameterization. He is an associate editor of the Computational Geometry Algorithms Library, ACM Transactions on Graphics, Graphical Models and Computer Aided Geometric Design. He received in 2005 the EUROGRAPHICS young researcher award. He was awarded in 2011 a Starting Grant from the European Research Council on Robust Digital Geometry Processing. Joshua A. Levine is an assistant professor in the Visual Computing division of the School of Computing at Clemson University. He received his PhD from The Ohio State University and completed a postdoc at the University of Utah’s SCI Institute. His research interests include geometric modeling, visualization, mesh generation, topological analysis, surface reconstruction, vector fields, medical imaging, computer graphics, and computational geometry. Andrei Sharf is a faculty at the computer sciene department at Ben-Gurion University, Israel. Previosly, he has been a Visiting Associate Professor at the Shenzhen Institute of Advanced Technology(SIAT) Chinese Academy of Sciences and a Postdoctoral researcher at the School of Computer Science in UC-Davis U.S. His research interests are in computer graphics, including surface reconstruction and interaction techniques, geometry processing, urban modeling and motion analysis. He received his PhD on “Surface Reconstruction Techniques for Imperfect Raw Data” from Tel-Aviv University in 2007 under the supervision of Daniel Cohen-Or and Ariel Shamir. Claudio T. Silva is Professor in the School of Engineering, and Head of Disciplines at the Center for Urban Science and Progress, New York University. He is also affiliated with Courant and the Center for Data Science. Claudio has been active in geometry processing for almost 20 years, with a special emphasis on surface reconstruction and point-set surfaces. He has served on more than 100 program committees, and he is currently on the editorial board of the ACM Transactions on Spatial Algorithms and Systems (TSAS), Computer Graphics Forum, Computing in Science and Engineering, The Visual Computer, and Graphical Models. He received four IBM Faculty Awards and ten best paper awards. He is a Fellow of the IEEE. References [AA04] A LEXA M., A DAMSON A.: On normals and projection operators for surfaces defined by point sets. In Proc. of the EG conf. on Point-Based Graphics (2004). 8 [AA06] A DAMSON A., A LEXA M.: Anisotropic point set surfaces. In Proc. AFRIGRAPH (2006). 11 [AB99] A MENTA N., B ERN M.: Surface reconstruction by voronoi filtering. Discrete & Computational Geometry (1999). 13 [ABCO∗ 03] A LEXA M., B EHR J., C OHEN -O R D., F LEISHMAN S., L EVIN D., S ILVA C.: Computing and rendering point set surfaces. Trans. on Visualization and Computer Graphics (2003). 3, 5, 7, 8, 19 [ACK13] ATTENE M., C AMPEN M., KOBBELT L.: Polygon mesh repairing: An application perspective. ACM Computing Surveys (CSUR) (2013). 2 [ACSTD07] A LLIEZ P., C OHEN -S TEINER D., T ONG Y., D ES BRUN M.: Voronoi-based variational reconstruction of unoriented point sets. In Computer Graphics Forum (Proc. of the Symposium on Geometry Processing) (2007). 3, 4, 5, 7, 10, 21 [AK04] A MENTA N., K IL Y. J.: Defining point-set surfaces. ACM Trans. on Graphics (2004). 5, 8 [ASF∗ 13] A RIKAN M., S CHWÄRZLER M., F LÖRY S., W IMMER M., M AIERHOFER S.: O-snap: Optimization-based snapping for modeling architecture. ACM Trans. Graph. (Proc. SIGGRAPH) (2013). 3, 20 [ASGCO10] AVRON H., S HARF A., G REIF C., C OHEN -O R D.: ℓ1 -sparse reconstruction of sharp point set surfaces. ACM Trans. on Graphics (2010). 5, 7, 11 [BCLS13] BAO S. Y., C HANDRAKER M., L IN Y., S AVARESE S.: Dense object reconstruction with semantic priors. In CVPR (2013). 19 [BLN∗ 13] B ERGER M., L EVINE J. A., N ONATO L. G., TAUBIN G., S ILVA C. T.: A benchmark for surface reconstruction. ACM Trans. on Graphics (2013). 20 [BNB13] B RADLEY D., N OWROUZEZAHRAI D., B EARDSLEY P.: Image-based reconstruction and synthesis of dense foliage. ACM Trans. Graph. (Proc. SIGGRAPH) (2013). 21 [BO05] B OISSONNAT J.-D., O UDOT S.: Provably good sampling and meshing of surfaces. Graphical Models (2005). 7 [BS12] B ERGER M., S ILVA C. T.: Medial kernels. In Computer Graphics Forum (Proc. of Eurographics) (2012). 15 [BWM∗ 11] B ERNER A., WAND M., M ITRA N. J., M EWES D., S EIDEL H.-P.: Shape analysis with subspace symmetries. Computer Graphics Forum (2011). 16 c Author version Berger et al. / State of the Art in Surface Reconstruction from Point Clouds [CBC∗ 01] C ARR J. C., B EATSON R. K., C HERRIE J. B., M ITCHELL T. J., F RIGHT W. R., M C C ALLUM B. C., E VANS T. R.: Reconstruction and representation of 3d objects with radial basis functions. In Proc. of ACM SIGGRAPH (2001). 3, 4, 5, 7, 9 [CBI13] C HEN J., BAUTEMBACH D., I ZADI S.: Scalable realtime volumetric surface reconstruction. ACM Transactions on Graphics (TOG) (2013). 21 [CC08] C HEN J., C HEN B.: Architectural modeling from sparsely scanned range data. International Journal of Computer Vision (2008). 20 [CCLN10] C HEN Y.-L., C HEN B.-Y., L AI S.-H., N ISHITA T.: Binary orientation trees for volume and surface reconstruction from unoriented point clouds. Computer Graphics Forum (2010). 12 [CG06] C AZALS F., G IESEN J.: Delaunay triangulation based surface reconstruction. In Effective Computational Geometry for Curves and Surfaces. Springer, 2006. 3 [CL96] C URLESS B., L EVOY M.: A volumetric method for building complex models from range images. In Proc. of ACM SIGGRAPH (1996). 3, 6, 7, 12, 21 [FG11] F UHRMANN S., G OESELE M.: Fusion of depth maps with multiple scales. In Proc. of ACM SIGGRAPH Asia (2011). 3, 12 [FKSS08] F REIRE J., KOOP D., S ANTOS E., S ILVA C. T.: Provenance for computational tasks: A survey. Comp. in Science & Engineering (2008). 21 [FLW02] FATTAL R., L ISCHINSKI D., W ERMAN M.: Gradient domain high dynamic range compression. In ACM Trans. on Graphics (2002). 10 [FS12] F RIEDMAN S., S TAMOS I.: Online facade reconstruction from dominant frequencies in structured point clouds. In IEEE CVPR Workshops (2012). 17 [GCSA13] G IRAUDOT S., C OHEN -S TEINER D., A LLIEZ P.: Noise-adaptive shape reconstruction from raw point sets. Computer Graphics Forum (Proc. of the Symposium on Geometry Processing) (2013). 4, 13, 21 [GG07] G UENNEBAUD G., G ROSS M.: Algebraic point set surfaces. ACM Trans. Graph. (Proc. SIGGRAPH) (2007). 5, 8, 19 [CLCL11] C HEN Y.-L., L EE T.-Y., C HEN B.-Y., L AI S.-H.: Bipartite polar classification for surface reconstruction. Computer Graphics Forum (2011). 13 [GSH∗ 07] G AL R., S HAMIR A., H ASSNER T., PAULY M., C OHEN -O R D.: Surface reconstruction using local shape priors. In Computer Graphics Forum (Proc. of the Symposium on Geometry Processing) (2007). 18 [CLP10] C HAUVE A.-L., L ABATUT P., P ONS J.-P.: Robust piecewise-planar 3d reconstruction and completion from largescale unstructured point data. In CVPR (2010). 15 [GWM01] G UMHOLD S., WANG X., M AC L EOD R.: Feature extraction from point clouds. In International Meshing Roundtable (2001). 11 [CP05] C AZALS F., P OUGET M.: Estimating differential quantities using polynomial fitting of osculating jets. Computer Aided Geometric Design (2005). 5 [HDD∗ 92] H OPPE H., D E ROSE T., D UCHAMP T., M C D ONALD J., S TUETZLE W.: Surface reconstruction from unorganized points. In Computer Graphics (Proc. SIGGRAPH) (1992). 3, 5, 6, 7, 8, 9 [CT11] C ALAKLI F., TAUBIN G.: Ssd: Smooth signed distance surface reconstruction. Computer Graphics Forum (2011). 10 [CTO∗ 10] C AO J., TAGLIASACCHI A., O LSON M., Z HANG H., S U Z.: Point cloud skeletons via laplacian based contraction. In Proc. of IEEE Shape Modeling International (2010). 7, 14 [CWL∗ 08] C HENG Z.-Q., WANG Y.-Z., L I B., X U K., DANG G., J IN S.-Y.: A survey of methods for moving least squares surfaces. In Proceedings of the Fifth Eurographics/IEEE VGTC conference on Point-Based Graphics (2008), Eurographics Association. 8 [HK06] H ORNUNG A., KOBBELT L.: Robust reconstruction of watertight 3d models from non-uniformly sampled point clouds without normal information. In Computer Graphics Forum (Proc. of the Symposium on Geometry Processing) (2006). 3, 4, 11 [HLZ∗ 09] H UANG H., L I D., Z HANG H., A SCHER U., C OHEN O R D.: Consolidation of unorganized point clouds for surface reconstruction. ACM Trans. on Graphics (2009). 5, 7, 9 [Dey07] D EY T. K.: Curve and surface reconstruction: algorithms with mathematical analysis. Cambridge University Press, 2007. 3 [HWCO∗ 13] H UANG H., W U S., C OHEN -O R D., G ONG M., Z HANG H., L I G., C HEN B.: l1 -medial skeleton of point cloud. ACM Trans. Graph. (Proc. SIGGRAPH) (2013). 3, 7, 14 [DGQ∗ 12] D EY T. K., G E X., Q UE Q., S AFA I., WANG L., WANG Y.: Feature-preserving reconstruction of singular surfaces. In Computer Graphics Forum (2012). 4 [HWG∗ 13] H UANG H., W U S., G ONG M., C OHEN -O R D., A S CHER U., Z HANG H. R.: Edge-aware point set resampling. ACM Trans. on Graphics (2013). 11 [DHOS07] DANIELS J. I., H A L. K., O CHOTTA T., S ILVA C. T.: Robust smooth feature extraction from point clouds. In Proc. of Shape Modeling and Applications (2007). 7, 11 [JKS08] J ENKE P., K RÜCKEBERG B., S TRASSER W.: Surface reconstruction from fitted shape primitives. In Proc. of Vision modeling and Visualization (2008). 7, 15 [DKP11] D ENNING J. D., K ERR W. B., P ELLACINI F.: Meshflow: interactive visualization of mesh construction sequences. In ACM Trans. on Graphics (2011). 21 [JLSW02] J U T., L OSASSO F., S CHAEFER S., WARREN J.: Dual contouring of hermite data. In ACM Trans. on Graphics (2002). 7 [DTS01] D INH H. Q., T URK G., S LABAUGH G.: Reconstructing surfaces using anisotropic basis functions. In International Journal of Computer Vision (2001). 11 [JWS08] J ENKE P., WAND M., S TRASSER W.: Patch-graph reconstruction for piecewise smooth surfaces. Proc. of Vision modeling and Visualization (2008). 11 [DUNI10] D ROST B., U LRICH M., NAVAB N., I LIC S.: Model globally, match locally: Efficient and robust 3d object recognition. In CVPR (2010). 15 [Kaz05] K AZHDAN M.: Reconstruction of solid models from oriented point sets. In Proc. of the EG/SIGGRAPH Symposium on Geometry processing (2005). 4, 7, 10, 20 [FCOS05a] F LEISHMAN S., C OHEN -O R D., S ILVA C.: Robust moving least-squares fitting with sharp features. In ACM Trans. Graph. (Proc. SIGGRAPH) (2005). 11 [KBH06] K AZHDAN M., B OLITHO M., H OPPE H.: Poisson surface reconstruction. In Proc. of the EG/SIGGRAPH Symposium on Geometry processing (2006). 3, 4, 5, 6, 7, 10, 21 [FCOS05b] F LEISHMAN S., C OHEN -O R D., S ILVA C. T.: Robust moving least-squares fitting with sharp features. ACM Trans. Graph. (Proc. SIGGRAPH) (2005). 7, 11, 19 [KE12] K HOSHELHAM K., E LBERINK S. O.: Accuracy and resolution of kinect depth data for indoor mapping applications. Sensors (2012). 4 c Author version Berger et al. / State of the Art in Surface Reconstruction from Point Clouds [KH13] K AZHDAN M., H OPPE H.: Screened poisson surface reconstruction. ACM Trans. on Graphics (2013). 10, 21 [KKDH07] K AZHDAN M., K LEIN A., DALAL K., H OPPE H.: Unconstrained isosurface extraction on arbitrary octrees. In Symposium on Geometry Processing (2007). 7 [KMYG12] K IM Y. M., M ITRA N. J., YAN D.-M., G UIBAS L.: Acquiring 3d indoor environments with variability and repetition. Proc. of ACM SIGGRAPH Asia (2012). 3, 7, 18, 21 [LZS∗ 11] L I Y., Z HENG Q., S HARF A., C OHEN -O R D., C HEN B., M ITRA N. J.: 2d-3d fusion for layer decomposition of urban facades. In ICCV (2011). 3, 6, 17, 19 [MDGD∗ 10] M ULLEN P., D E G OES F., D ESBRUN M., C OHEN S TEINER D., A LLIEZ P.: Signing the unsigned: Robust surface reconstruction from raw pointsets. Computer Graphics Forum (Proc. of the Symposium on Geometry Processing) (2010). 3, 4, 7, 13, 17 [KQ04] K IRBAS C., Q UEK F.: A review of vessel extraction techniques and algorithms. ACM Computing Surveys (2004). 14 [MPS08] M ANSON J., P ETROVA G., S CHAEFER S.: Streaming surface reconstruction using wavelets. Computer Graphics Forum (2008). 7, 10, 20 [KSO04] KOLLURI R., S HEWCHUK J. R., O’B RIEN J. F.: Spectral surface reconstruction from noisy point clouds. In Proc. of the EG/SIGGRAPH Symposium on Geometry processing (2004). 10, 11, 12 [MPWC13] M ITRA N. J., PAULY M., WAND M., C EYLAN D.: Symmetry in 3d geometry: Extraction and applications. In Computer Graphics Forum (STAR Proceedings of Eurographics) (2013). 16 [KTB07] K ATZ S., TAL A., BASRI R.: Direct visibility of point sets. ACM Trans. Graph. (Proc. SIGGRAPH) (2007). 12, 13 [MS10] M ANSON J., S CHAEFER S.: Isosurfaces over simplicial partitions of multiresolution grids. In Computer Graphics Forum (2010). 7 [LA11] L AW A. J., A LIAGA D. G.: Single viewpoint model completion of symmetric objects for digital inspection. Computer Vision Image Understanding (2011). 16 [LA13] L AFARGE F., A LLIEZ P.: Surface reconstruction through point set structuring. Computer Graphics Forum (Proc. of Eurographics) (2013). 3, 16 [MTSM10] M EHRA R., T RIPATHI P., S HEFFER A., M ITRA N. J.: Visibility of noisy point cloud data. Computers & Graphics (2010). 12 [LB07] L EMPITSKY V., B OYKOV Y.: Global optimization for shape fitting. In CVPR (2007). 12 [MWA∗ 13] M USIALSKI P., W ONKA P., A LIAGA D. G., W IM MER M., G OOL L., P URGATHOFER W.: A survey of urban reconstruction. In Computer Graphics Forum (STAR Proceedings of Eurographics) (2013). 2, 7 [LC87] L ORENSEN W. E., C LINE H. E.: Marching cubes: A high resolution 3d surface construction algorithm. In Proc. of ACM SIGGRAPH (1987). 7 [MWZ∗ 13] M ITRA N. J., WAND M., Z HANG H., C OHEN -O R D., B OKELOH M.: Structure-aware shape processing. In Computer Graphics Forum (STAR Proceedings of Eurographics) (2013). 16 [LCDF10] L IPMAN Y., C HEN X., DAUBECHIES I., Symmetry factored embedding and F UNKHOUSER T.: distance. ACM Trans. on Graphics (2010). 16 [MZL∗ 09] M EHRA R., Z HOU Q., L ONG J., S HEFFER A., G OOCH A., M ITRA N. J.: Abstraction of man-made shapes. ACM Transactions on Graphics (TOG) (2009). 20 [LCOL06] L IPMAN Y., C OHEN -O R D., L EVIN D.: Error bounds and optimal neighborhoods for mls approximation. In Computer Graphics Forum (Proc. of the Symposium on Geometry Processing) (2006). 4, 5, 8 [NDI∗ 11] N EWCOMBE R. A., DAVISON A. J., I ZADI S., KOHLI P., H ILLIGES O., S HOTTON J., M OLYNEAUX D., H ODGES S., K IM D., F ITZGIBBON A.: Kinectfusion: Real-time dense surface mapping and tracking. In IEEE international symposium on Mixed and augmented reality (ISMAR) (2011), IEEE. 21 [LCOL07] L IPMAN Y., C OHEN -O R D., L EVIN D.: Datadependent MLS for faithful surface approximation. In Computer Graphics Forum (Proc. of the Symposium on Geometry Processing) (2007). 11 [NFD07] N EUBERT B., F RANKEN T., D EUSSEN O.: Approximate image-based tree-modeling using particle flows. ACM Trans. Graph. (Proc. SIGGRAPH) (2007). 14, 15 [LCOLTE07] L IPMAN Y., C OHEN -O R D., L EVIN D., TAL -E ZER H.: Parameterization-free projection for geometry reconstruction. ACM Trans. Graph. (Proc. SIGGRAPH) (2007). 3, 4, 7, 9, 11 [LLR13] L UO L., L I H., RUSINKIEWICZ S.: Structure-aware hair capture. ACM Trans. Graph. (Proc. SIGGRAPH) (2013). 21 [LLZM10] L I G., L IU L., Z HENG H., M ITRA N. J.: Analysis, reconstruction and manipulation using arterial snakes. Proc. of ACM SIGGRAPH Asia (2010). 3, 7, 14, 20 [LPK09] L ABATUT P., P ONS J.-P., K ERIVEN R.: Robust and efficient surface reconstruction from range data. Computer Graphics Forum (2009). 12, 16 [LW10] L IU S., WANG C. C.: Orienting unorganized points for surface reconstruction. Computers & Graphics (2010). 5, 6 [LWC∗ 11] L I Y., W U X., C HRYSATHOU Y., S HARF A., C OHEN O R D., M ITRA N. J.: Globfit: consistently fitting primitives by discovering global relations. ACM Trans. Graph. (Proc. SIGGRAPH) (2011). 3, 4, 6, 17, 18 [LYO∗ 10] L IVNY Y., YAN F., O LSON M., C HEN B., Z HANG H., E L -S ANA J.: Automatic reconstruction of tree skeletal structures from point clouds. Proc. of ACM SIGGRAPH Asia (2010). 6, 14, 15 [NOS09] NAGAI Y., O HTAKE Y., S UZUKI H.: Smoothing of partition of unity implicit surfaces for noise robust surface reconstruction. Computer Graphics Forum (Proc. of the Symposium on Geometry Processing) (2009). 9 [NSZ∗ 10] NAN L., S HARF A., Z HANG H., C OHEN -O R D., C HEN B.: Smartboxes for interactive urban reconstruction. ACM Trans. Graph. (Proc. SIGGRAPH) (2010). 3, 19 [NXS12] NAN L., X IE K., S HARF A.: A search-classify approach for cluttered indoor scene understanding. Proc. of ACM SIGGRAPH Asia (2012). 7, 18, 21 [NZIS13] N IESSNER M., Z OLLHÖFER M., I ZADI S., S TAM M.: Real-time 3d reconstruction at scale using voxel hashing. ACM Transactions on Graphics (TOG) (2013). 21 MINGER [OBA∗ 03a] O HTAKE Y., B ELYAEV A., A LEXA M., T URK G., S EIDEL H.: Multi-level partition of unity implicits. ACM Trans. Graph. (Proc. SIGGRAPH) (2003). 3, 5, 7, 8 [OBA∗ 03b] O HTAKE Y., B ELYAEV A., A LEXA M., T URK G., S EIDEL H.-P.: Multi-level partition of unity implicits. In ACM Trans. Graph. (Proc. SIGGRAPH) (2003). 11 [OGG09] O ZTIRELI C., G UENNEBAUD G., G ROSS M.: Feature preserving point set surfaces based on non-linear kernel regression. In Computer Graphics Forum (2009). 4, 11 c Author version Berger et al. / State of the Art in Surface Reconstruction from Point Clouds [OLA13] O ESAU S., L AFARGE F., A LLIEZ P.: Indoor scene reconstruction using primitive-driven space partitioning and graphcut. In Proc. of EG workshop on Urban Data Modeling and Vis. (Girona, Spain, 2013). 16 [SSFS06] S CHREINER J., S CHEIDEGGER C. E., F LEISHMAN S., S ILVA C. T.: Direct (re)meshing for efficient surface processing. Computer Graphics Forum (Proc. of Eurographics) (2006). 8 [PGB03] P ÉREZ P., G ANGNET M., B LAKE A.: Poisson image editing. ACM Trans. Graph. (Proc. SIGGRAPH) (2003). 10 [SSZCO10] S HALOM S., S HAMIR A., Z HANG H., C OHEN -O R D.: Cone carving for surface reconstruction. Proc. of ACM SIGGRAPH Asia (2010). 3, 13 [PKG03] PAULY M., K EISER R., G ROSS M.: Multi-scale feature extraction on point-sampled surfaces. Computer Graphics Forum (2003). 11 [SWK07] S CHNABEL R., WAHL R., K LEIN R.: Efficient ransac for point-cloud shape detection. Computer Graphics Forum (2007). 5, 15, 17 [PMG04] PAULY M., M ITRA N. J., G UIBAS L.: Uncertainty and variability in point cloud surface data. In Proc. of the EG conf. on Point-Based Graphics (2004). 5 [SXZ∗ 12] S HAO T., X U W., Z HOU K., WANG J., L I D., G UO B.: An interactive approach to semantic modeling of indoor scenes with an rgbd camera. Proc. of ACM SIGGRAPH Asia (2012). 3, 7, 18, 20, 21 [PMG∗ 05] PAULY M., M ITRA N. J., G IESEN J., G ROSS M. H., G UIBAS L. J.: Example-based 3d scan completion. In Proc. of the EG/SIGGRAPH Symposium on Geometry processing (2005). 3, 18 [PMW∗ 08] PAULY M., M ITRA N. J., WALLNER J., P OTTMANN H., G UIBAS L. J.: Discovering structural regularity in 3d geometry. ACM Trans. Graph. (Proc. SIGGRAPH) (2008). 3, 4, 7, 16 [PP09] PANG X.-F., PANG M.-Y.: An algorithm for extracting geometric features from point cloud. Int. Conf. on Inf. Management, Innovation Management and Ind. Eng. (2009). 11 [RFL∗ 05] RUNIONS A., F UHRER M., L ANE B., F EDERL P., ROLLAND -L AGAN A.-G., P RUSINKIEWICZ P.: Modeling and visualization of leaf venation patterns. ACM Trans. Graph. (Proc. SIGGRAPH) 24, 3 (2005), 702–711. 14 [RKMP13] R EISNER -KOLLMANN I., M AIERHOFER S., P UR W.: Reconstructing shape boundaries with multimodal constraints. Computers & Graphics (2013). 7, 16 GATHOFER [SY12] S EVERSKY L. M., Y IN L.: A global parity measure for incomplete point cloud data. Computer Graphics Forum (2012). 13 [TKM∗ 13] TANSKANEN P., KOLEV K., M EIER L., C AMPOSECO F., S AURER O., P OLLEFEYS M.: Live metric 3d reconstruction on mobile phones. In ICCV (2013). 21 [TOZ∗ 11] TAGLIASACCHI A., O LSON M., Z HANG H., H AMARNEH G., C OHEN -O R D.: Vase: Volume-aware surface evolution for surface reconstruction from incomplete point clouds. Computer Graphics Forum (Proc. of the Symposium on Geometry Processing) (2011). 3, 6, 12, 15 [TZCO09] TAGLIASACCHI A., Z HANG H., C OHEN -O R D.: Curve skeleton extraction from incomplete point cloud. ACM Trans. Graph. (Proc. SIGGRAPH) (2009). 2, 3, 4, 7, 14 [UB13] U MMENHOFER B., B ROX T.: Point-based 3d reconstruction of thin objects. In ICCV (2013). 12 [SDK09] S CHNABEL R., D EGENER P., K LEIN R.: Completion and reconstruction with primitive shapes. Computer Graphics Forum (Proc. of Eurographics) (2009). 3, 4, 6, 7, 15 [VAB12] VANEGAS C. A., A LIAGA D. G., B ENES B.: Automatic extraction of manhattan-world building masses from 3d laser range scans. Trans. on Visualization and Computer Graphics (2012). 7, 17 [SFC07] S ILVA C. T., F REIRE J., C ALLAHAN S. P.: Provenance for visualizations: Reproducibility and beyond. Comp. in Science & Engineering (2007). 21 [vKvLV13] VAN K REVELD M., VAN L ANKVELD T., V ELTKAMP R. C.: Watertight scenes from urban lidar and planar surfaces. Computer Graphics Forum (2013). 3, 16 [SFCH12] S HEN C.-H., F U H., C HEN K., H U S.-M.: Structure recovery by part assembly. Proc. of ACM SIGGRAPH Asia (2012). 2, 3, 6, 7, 19, 20 [vKZHCO11] VAN K AICK O., Z HANG H., H AMARNEH G., C OHEN -O R D.: A survey on shape correspondence. Computer Graphics Forum (STAR Proceedings of Eurographics) (2011). 4 [SFS05] S CHEIDEGGER C. E., F LEISHMAN S., S ILVA C. T.: Triangulating point set surfaces with bounded error. In Proc. of the EG/SIGGRAPH Symposium on Geometry processing (2005). 8, 15 [Wen95] W ENDLAND H.: Piecewise polynomial, positive definite and compactly supported radial functions of minimal degree. Advances in computational Mathematics (1995). 9 [SHFH11] S HEN C.-H., H UANG S.-S., F U H., H U S.-M.: Adaptive partitioning of urban facades. Proc. of ACM SIGGRAPH Asia (2011). 17 [SLS∗ 06] S HARF A., L EWINER T., S HAMIR A., KOBBELT L., C OHEN -O R D.: Competing fronts for coarse–to–fine surface reconstruction. Computer Graphics Forum (Proc. of Eurographics) (2006). 14, 15 [SLS∗ 07] S HARF A., L EWINER T., S HKLARSKI G., T OLEDO S., C OHEN -O R D.: Interactive topology-aware surface reconstruction. ACM Trans. Graph. (Proc. SIGGRAPH) (2007). 3, 4, 19, 20 [SLSK07] S HARF A., L EWINER T., S HAMIR A., KOBBELT L.: On-the-fly curve-skeleton computation for 3d shapes. In Computer Graphics Forum (Proc. of Eurographics) (2007). 14 [SOS04] S HEN C., O’B RIEN J. F., S HEWCHUK J. R.: Interpolating and approximating implicit surfaces from polygon soup. ACM Trans. on Graphics (2004). 8 c Author version [WFP10] W U C., F RAHM J.-M., P OLLEFEYS M.: Detecting large repetitive structures with salient boundaries. In ECCV (2010). 17 [Whi98] W HITAKER R. T.: A level-set approach to 3D reconstruction from range data. International Journal of Computer Vision 29, 3 (1998), 203–231. 12, 15 [WS12] WAN G., S HARF A.: Grammar-based 3d facade segmentation and reconstruction. Computers & Graphics (2012). 17 [WSS09] WANG H., S CHEIDEGGER C. E., S ILVA C. T.: Bandwidth selection and reconstruction quality in point-based surfaces. Trans. on Visualization and Computer Graphics (2009). 4, 5 [XF12] X IAO J., F URUKAWA Y.: Reconstructing the worlds museums. In ECCV (2012). 3, 16 [ZN12] Z HOU Q.-Y., N EUMANN U.: 2.5 d building modeling by discovering global regularities. In CVPR (2012). 17 [ZPB07] Z ACH C., P OCK T., B ISCHOF H.: A globally optimal algorithm for robust tv-l1 range image integration. In ICCV (2007). 3, 12 Berger et al. / State of the Art in Surface Reconstruction from Point Clouds [ZST∗ 10] Z HENG Q., S HARF A., TAGLIASACCHI A., C HEN B., Z HANG H., S HEFFER A., C OHEN -O R D.: Consensus skeleton for non-rigid space-time registration. Computer Graphics Forum (Proc. of Eurographics) (2010). 20 [ZSW∗ 10] Z HENG Q., S HARF A., WAN G., L I Y., M ITRA N. J., C OHEN -O R D., C HEN B.: Non-local scan consolidation for 3d urban scenes. ACM Trans. Graph. (Proc. SIGGRAPH) (2010). 2, 3, 7, 17 c Author version
© Copyright 2026 Paperzz