summaries: This work introduces a differentiable points (+normals) to mesh layer based on a differentiable formulation of Poisson surface reconstruction. First, the proposed method is validated in point cloud optimisation tasks where the objective function is expressed w.r.t surface meshes. Then, the method is proposed as a way to represent 3D shapes with oriented point cloud in a learning setting. Crucially, this results in a shape parameterization, dubbed Shape As Points (SAP), that is more lightweight and faster than neural implicit fields, while still yielding watertight shapes and being able to handle arbitrary topology.   This paper proposes a differentiable adaptation of the Poisson Surface Reconstruction algorithm for oriented point sets. It discretizes the Poisson equation over a 3D grid and use spectral methods to find the solution for indicator function values over this 3D grid. The final grid is fed to marching cubes algorithm to obtain the final mesh. The differentiability of the approach allows to use the proposed method in various optimization-based applications from which the authors consider optimization-based and learning-based 3D reconstruction tasks. Proposed models are evaluated on datasets with different level of details and noise present in the inputs and compared to both classical and more recent learning-based methods. This work proposes a novel shape representation using point clouds. This is enabled by unique differentiable poisson solver layer that enables to convert the oriented point clouds to full volume representing the shape. I think the main contribution of this work is the spectral technique that solves poisson surface reconstruction problem, which can be efficiently integrated into neural workflows. While this work mostly focuses on surface reconstruction, I believe this representation can become broadly applicable to various problem domains. The paper formulates a differentiable Poisson Surface Reconstruction layer, which maps an oriented point cloud to an indicator function over the interior of the object. The Poisson solver is done in the spectral domain on the GPU for computational efficiency. It shares many of its advantages with other neural implicit representations, but because it produces an indicator function over the whole space, there is no need to query a network over an entire voxel grid.   The layer is incorporated into two tasks: an optimization-based 3D shape reconstruction that fits a spherical point cloud initialization to a target point cloud, and a learning-based 3D reconstruction task that matches noisy point cloud input to a ground truth mesh. The non-differentiable step of Marching Cubes in these pipelines has its gradient approximated with the inverse surface normal, which is quite natural. The experimental results seem good, and beat out the existing state-of-the-art, and an ablation study is performed as well on the learning-based task to investigate the form of the feature extraction network there.
abstractText: In recent years, neural implicit representations gained popularity in 3D reconstruction due to their expressiveness and flexibility. However, the implicit nature of neural implicit representations results in slow inference time and requires careful initialization. In this paper, we revisit the classic yet ubiquitous point cloud representation and introduce a differentiable point-to-mesh layer using a differentiable formulation of Poisson Surface Reconstruction (PSR) that allows for a GPUaccelerated fast solution of the indicator function given an oriented point cloud. The differentiable PSR layer allows us to efficiently and differentiably bridge the explicit 3D point representation with the 3D mesh via the implicit indicator field, enabling end-to-end optimization of surface reconstruction metrics such as Chamfer distance. This duality between points and meshes hence allows us to represent shapes as oriented point clouds, which are explicit, lightweight and expressive. Compared to neural implicit representations, our Shape-As-Points (SAP) model is more interpretable, lightweight, and accelerates inference time by one order of magnitude. Compared to other explicit representations such as points, patches, and meshes, SAP produces topology-agnostic, watertight manifold surfaces. We demonstrate the effectiveness of SAP on the task of surface reconstruction from unoriented point clouds and learning-based reconstruction.
authors.name: Songyou Peng
authors.name: Chiyu “Max” Jiang
authors.name: Yiyi Liao
authors.name: Michael Niemeyer
authors.name: Marc Pollefeys
authors.name: Andreas Geiger
references.authors: M. Atzmon Y. Lipman
references.title: Sal: Sign agnostic learning of shapes from raw data
references.venue: In Proc. IEEE Conf. on Computer Vision and Pattern Recognition (CVPR),
references.authors: A. Badki O. Gallo J. Kautz P. Sen
references.title: Meshlet priors for 3d mesh reconstruction
references.venue: In Proc. IEEE Conf. on Computer Vision and Pattern Recognition (CVPR),
references.authors: Y. Ben-Shabat S. Gould
references.title: Deepfit: 3d surface fitting via neural network weighted least squares
references.venue: In Proc. of the European Conf. on Computer Vision (ECCV),
references.authors: Y. Ben-Shabat M. Lindenbaum A. Fischer
references.title: Nesti-net: Normal estimation for unstructured 3d point clouds using convolutional neural networks
references.venue: In Proc. IEEE Conf. on Computer Vision and Pattern Recognition (CVPR),
references.authors: F. Bernardini J. Mittleman H. Rushmeier C. Silva G. Taubin
references.title: The ball-pivoting algorithm for surface reconstruction
references.venue: IEEE Trans. on Visualization and Computer Graphics (VCG),
references.authors: F. Bogo J. Romero G. Pons-Moll M.J. Black
references.title: Dynamic FAUST: registering human bodies in motion
references.venue: In Proc. IEEE Conf. on Computer Vision and Pattern Recognition (CVPR),
references.authors: C. Canuto M.Y. Hussaini A. Quarteroni T.A. Zang
references.title: Spectral methods: fundamentals in single domains
references.venue: Springer Science & Business Media,
references.authors: R. Chabra J.E. Lenssen E. Ilg T. Schmidt J. Straub S. Lovegrove R. Newcombe
references.title: Deep local shapes: Learning local sdf priors for detailed 3d reconstruction
references.venue: In Proc. of the European Conf. on Computer Vision (ECCV),
references.authors: A.X. Chang T.A. Funkhouser L.J. Guibas P. Hanrahan Q. Huang Z. Li S. Savarese M. Savva S. Song H. Su J. Xiao L. Yi F. Yu
references.title: Shapenet: An information-rich 3d model repository
references.authors: Z. Chen H. Zhang
references.title: Learning implicit fields for generative shape modeling
references.venue: In Proc. IEEE Conf. on Computer Vision and Pattern Recognition (CVPR),
references.authors: C.B. Choy D. Xu J. Gwak K. Chen S. Savarese
references.title: 3d-r2n2: A unified approach for single and multi-view 3d object reconstruction
references.venue: In Proc. of the European Conf. on Computer Vision (ECCV),
references.authors: A. Dai C. Diller M. Nießner
references.title: SG-NN: sparse generative neural networks for self-supervised scene completion of RGB-D scans
references.venue: In Proc. IEEE Conf. on Computer Vision and Pattern Recognition (CVPR),
references.authors: A. Dai C. Diller M. Nießner
references.title: Sg-nn: Sparse generative neural networks for self-supervised scene completion of rgb-d scans
references.venue: In Proc. IEEE Conf. on Computer Vision and Pattern Recognition (CVPR),
references.authors: A. Dai D. Ritchie M. Bokeloh S. Reed J. Sturm M. Nießner
references.title: Scancomplete: Large-scale scene completion and semantic segmentation for 3d scans
references.venue: In Proc. IEEE Conf. on Computer Vision and Pattern Recognition (CVPR),
references.authors: H. Edelsbrunner E.P. Mücke
references.title: Three-dimensional alpha shapes
references.venue: ACM Trans. on Graphics,
references.authors: P. Erler P. Guerrero S. Ohrhallinger M. Wimmer N.J. Mitra
references.title: Points2surf: Learning implicit surfaces from point cloud patches
references.venue: In Proc. of the European Conf. on Computer Vision (ECCV),
references.authors: H. Fan H. Su L.J. Guibas
references.title: A point set generation network for 3d object reconstruction from a single image
references.venue: Proc. IEEE Conf. on Computer Vision and Pattern Recognition (CVPR),
references.authors: K. Genova F. Cole A. Sud A. Sarna T.A. Funkhouser
references.title: Local deep implicit functions for 3d shape
references.venue: In Proc. IEEE Conf. on Computer Vision and Pattern Recognition (CVPR),
references.authors: A. Gropp L. Yariv N. Haim M. Atzmon Y. Lipman
references.title: Implicit geometric regularization for learning shapes
references.venue: In Proc. of the International Conf. on Machine learning (ICML),
references.authors: T. Groueix M. Fisher V.G. Kim B.C. Russell M. Aubry
references.title: AtlasNet: A papier-mâché approach to learning 3d surface generation
references.venue: In Proc. IEEE Conf. on Computer Vision and Pattern Recognition (CVPR),
references.authors: P. Guerrero Y. Kleiman M. Ovsjanikov N.J. Mitra
references.title: Pcpnet learning local shape properties from raw point clouds
references.venue: In Computer Graphics Forum,
references.authors: K. Gupta M. Chandraker
references.title: Neural mesh flow: 3d manifold mesh generation via diffeomorphic flows
references.venue: In Advances in Neural Information Processing Systems (NeurIPS),
references.authors: R. Hanocka G. Metzer R. Giryes D. Cohen-Or
references.title: Point2mesh: a self-prior for deformable meshes
references.venue: In ACM Trans. on Graphics,
references.authors: C. Jiang J. Huang A. Tagliasacchi L.J. Guibas
references.title: Shapeflow: Learnable deformation flows among 3d shapes
references.venue: In Advances in Neural Information Processing Systems (NeurIPS),
references.authors: C. Jiang P. Marcus
references.title: Hierarchical detail enhancing mesh-based shape generation with 3d generative adversarial network
references.venue: arXiv preprint arXiv:1709.07581,
references.authors: C. Jiang A. Sud A. Makadia J. Huang M. Nießner T. Funkhouser
references.title: Local implicit grid representations for 3d scenes
references.venue: In Proc. IEEE Conf. on Computer Vision and Pattern Recognition (CVPR),
references.authors: C.M. Jiang J. Huang K. Kashinath Prabhat P. Marcus M. Nießner
references.title: Spherical cnns on unstructured grids
references.venue: In Proc. of the International Conf. on Learning Representations (ICLR),
references.authors: M.M. Kazhdan M. Bolitho H. Hoppe
references.title: Poisson surface reconstruction
references.venue: In Proceedings of the Fourth Eurographics Symposium on Geometry Processing,
references.authors: M.M. Kazhdan H. Hoppe
references.title: Screened poisson surface reconstruction
references.venue: ACM Trans. on Graphics,
references.authors: D.P. Kingma J. Ba
references.title: Adam: A method for stochastic optimization
references.venue: In Proc. of the International Conf. on Machine learning (ICML),
references.authors: J.E. Lenssen C. Osendorfer J. Masci
references.title: Deep iterative surface normal estimation
references.venue: In Proc. IEEE Conf. on Computer Vision and Pattern Recognition (CVPR),
references.authors: J. Li A.O. Hero
references.title: A spectral method for solving elliptic equations for surface reconstruction and 3d active contours
references.venue: In Proc. IEEE International Conf. on Image Processing (ICIP),
references.authors: Y. Liao S. Donne A. Geiger
references.title: Deep marching cubes: Learning explicit surface representations
references.venue: In Proc. IEEE Conf. on Computer Vision and Pattern Recognition (CVPR),
references.authors: S. Lionar D. Emtsev D. Svilarkovic S. Peng
references.title: Dynamic plane convolutional occupancy networks
references.venue: In Proc. of the IEEE Winter Conference on Applications of Computer Vision (WACV),
references.authors: S. Liu Y. Zhang S. Peng B. Shi M. Pollefeys Z. Cui
references.title: Dist: Rendering deep implicit signed distance function with differentiable sphere tracing
references.venue: In Proc. IEEE Conf. on Computer Vision and Pattern Recognition (CVPR),
references.authors: W.E. Lorensen H.E. Cline
references.title: Marching cubes: A high resolution 3d surface construction algorithm
references.venue: In ACM Trans. on Graphics,
references.authors: Q. Ma S. Saito J. Yang S. Tang M.J. Black
references.title: Scale: Modeling clothed humans with a surface codec of articulated local elements
references.venue: In Proc. IEEE Conf. on Computer Vision and Pattern Recognition (CVPR),
references.authors: Q. Ma J. Yang S. Tang M.J. Black
references.title: The power of points for modeling humans in clothing
references.venue: In Proc. of the IEEE International Conf. on Computer Vision (ICCV),
references.authors: R. Martin-Brualla N. Radwan M.S.M. Sajjadi J.T. Barron A. Dosovitskiy D. Duckworth
references.title: NeRF in the Wild: Neural Radiance Fields for Unconstrained Photo Collections
references.venue: In Proc. IEEE Conf. on Computer Vision and Pattern Recognition (CVPR),
references.authors: L. Mescheder M. Oechsle M. Niemeyer S. Nowozin A. Geiger
references.title: Occupancy networks: Learning 3d reconstruction in function space
references.venue: In Proc. IEEE Conf. on Computer Vision and Pattern Recognition (CVPR),
references.authors: M. Meshry D.B. Goldman S. Khamis H. Hoppe R. Pandey N. Snavely R. Martin- Brualla
references.title: Neural rerendering in the wild
references.venue: In Proc. IEEE Conf. on Computer Vision and Pattern Recognition (CVPR),
references.authors: G. Metzer R. Hanocka D. Zorin R. Giryes D. Panozzo D. Cohen-Or
references.title: Orienting point clouds with dipole propagation
references.venue: ACM Trans. on Graphics,
references.authors: M. Mihajlovic S. Weder M. Pollefeys M.R. Oswald
references.title: Deepsurfels: Learning online appearance fusion
references.venue: In Proc. IEEE Conf. on Computer Vision and Pattern Recognition (CVPR),
references.authors: M. Mihajlovic Y. Zhang M.J. Black S. Tang
references.title: LEAP: Learning articulated occupancy of people
references.venue: In Proc. IEEE Conf. on Computer Vision and Pattern Recognition (CVPR),
references.authors: B. Mildenhall P.P. Srinivasan M. Tancik J.T. Barron R. Ramamoorthi R. Ng
references.title: NeRF: Representing scenes as neural radiance fields for view synthesis
references.venue: In Proc. of the European Conf. on Computer Vision (ECCV),
references.authors: M. Niemeyer A. Geiger
references.title: Giraffe: Representing scenes as compositional generative neural feature fields
references.venue: In Proc. IEEE Conf. on Computer Vision and Pattern Recognition (CVPR),
references.authors: M. Niemeyer L. Mescheder M. Oechsle A. Geiger
references.title: Differentiable volumetric rendering: Learning implicit 3d representations without 3d supervision
references.venue: In Proc. IEEE Conf. on Computer Vision and Pattern Recognition (CVPR),
references.authors: M. Oechsle L. Mescheder M. Niemeyer T. Strauss A. Geiger
references.title: Texture fields: Learning texture representations in function space
references.venue: In Proc. of the IEEE International Conf. on Computer Vision (ICCV),
references.authors: M. Oechsle S. Peng A. Geiger
references.title: Unisurf: Unifying neural implicit surfaces and radiance fields for multi-view reconstruction
references.venue: In Proc. of the IEEE International Conf. on Computer Vision (ICCV),
references.authors: J.J. Park P. Florence J. Straub R.A. Newcombe S. Lovegrove
references.title: Deepsdf: Learning continuous signed distance functions for shape representation
references.venue: In Proc. IEEE Conf. on Computer Vision and Pattern Recognition (CVPR),
references.authors: A. Paszke S. Gross F. Massa A. Lerer J. Bradbury G. Chanan T. Killeen Z. Lin N. Gimelshein L. Antiga A. Desmaison A. Kopf E. Yang Z. DeVito M. Raison A. Tejani S. Chilamkurthy B. Steiner L. Fang J. Bai S. Chintala
references.title: Pytorch: An imperative style, high-performance deep learning library
references.venue: In Advances in Neural Information Processing Systems (NeurIPS),
references.authors: S. Peng M. Niemeyer L. Mescheder M. Pollefeys A. Geiger
references.title: Convolutional occupancy networks
references.venue: In Proc. of the European Conf. on Computer Vision (ECCV),
references.authors: C.R. Qi H. Su K. Mo L.J. Guibas
references.title: Pointnet: Deep learning on point sets for 3d classification and segmentation
references.venue: In Proc. IEEE Conf. on Computer Vision and Pattern Recognition (CVPR),
references.authors: C.R. Qi L. Yi H. Su L.J. Guibas
references.title: Pointnet++: Deep hierarchical feature learning on point sets in a metric space
references.venue: In Advances in Neural Information Processing Systems (NeurIPS),
references.authors: C. Reiser S. Peng Y. Liao A. Geiger
references.title: Kilonerf: Speeding up neural radiance fields with thousands of tiny mlps
references.venue: In Proc. of the IEEE International Conf. on Computer Vision (ICCV),
references.authors: E. Remelli A. Lukoianov S.R. Richter B. Guillard T. Bagautdinov P. Baque P. Fua
references.title: Meshsdf: Differentiable iso-surface extraction
references.venue: In Advances in Neural Information Processing Systems (NeurIPS),
references.authors: V. Sitzmann J.N. Martel A.W. Bergman D.B. Lindell G. Wetzstein
references.title: Implicit neural representations with periodic activation functions
references.venue: In Advances in Neural Information Processing Systems (NeurIPS),
references.authors: V. Sitzmann J. Thies F. Heide M. Nießner G. Wetzstein M. Zollhöfer
references.title: Deepvoxels: Learning persistent 3d feature embeddings
references.venue: In Proc. IEEE Conf. on Computer Vision and Pattern Recognition (CVPR),
references.authors: M. Tancik P. Srinivasan B. Mildenhall S. Fridovich-Keil N. Raghavan U. Singhal R. Ramamoorthi J. Barron R. Ng
references.title: Fourier features let networks learn high frequency functions in low dimensional domains
references.venue: In Advances in Neural Information Processing Systems (NeurIPS),
references.authors: S. Van der Walt J.L. Schönberger J. Nunez-Iglesias F. Boulogne J.D. Warner N. Yager E. Gouillart T. Yu
references.title: scikit-image: image processing in python
references.venue: PeerJ,
references.authors: N. Wang Y. Zhang Z. Li Y. Fu W. Liu Y.-G. Jiang
references.title: Pixel2mesh: Generating 3d mesh models from single rgb images
references.venue: In Proc. of the European Conf. on Computer Vision (ECCV),
references.authors: S. Wang M. Mihajlovic Q. Ma A. Geiger S. Tang
references.title: Metaavatar: Learning animatable clothed human models from few depth images
references.venue: In Advances in Neural Information Processing Systems (NeurIPS),
references.authors: W. Wang Q. Xu D. Ceylan R. Mech U. Neumann
references.title: Disn: Deep implicit surface network for high-quality single-view 3d reconstruction
references.venue: In Advances in Neural Information Processing Systems (NeurIPS),
references.authors: Y. Wang Y. Sun Z. Liu S.E. Sarma M.M. Bronstein J.M. Solomon
references.title: Dynamic graph cnn for learning on point clouds
references.venue: ACM Trans. on Graphics,
references.authors: F. Williams T. Schneider C. Silva D. Zorin J. Bruna D. Panozzo
references.title: Deep geometric prior for surface reconstruction
references.venue: In Proc. IEEE Conf. on Computer Vision and Pattern Recognition (CVPR),
references.authors: J. Wu C. Zhang T. Xue B. Freeman J. Tenenbaum
references.title: Learning a probabilistic latent space of object shapes via 3d generative-adversarial modeling
references.venue: In Advances in Neural Information Processing Systems (NeurIPS),
references.authors: G. Yang X. Huang Z. Hao M. Liu S.J. Belongie B. Hariharan
references.title: Pointflow: 3d point cloud generation with continuous normalizing flows
references.venue: In Proc. of the IEEE International Conf. on Computer Vision (ICCV),
references.authors: Y. Yang C. Feng Y. Shen D. Tian
references.title: Foldingnet: Point cloud auto-encoder via deep grid deformation
references.venue: In Proc. IEEE Conf. on Computer Vision and Pattern Recognition (CVPR),
references.authors: Z. Yang Y. Chai D. Anguelov Y. Zhou P. Sun D. Erhan S. Rafferty H. Kretzschmar
references.title: Surfelgan: Synthesizing realistic sensor data for autonomous driving
references.venue: In Proc. IEEE Conf. on Computer Vision and Pattern Recognition (CVPR),
references.authors: L. Yariv Y. Kasten D. Moran M. Galun M. Atzmon B. Ronen Y. Lipman
references.title: Multiview neural surface reconstruction by disentangling geometry and appearance
references.venue: In Advances in Neural Information Processing Systems (NeurIPS),
references.authors: Q. Zhou A. Jacobson
references.title: Thingi10k: A dataset of 10,000 3d-printing models
references.venue: arXiv preprint arXiv:1605.04797,
references.authors: Q.-Y. Zhou J. Park V. Koltun
references.title: Open3D: A modern library for 3D data processing
references.venue: arXiv:1801.09847, 2018
sections.heading: 1 Introduction
sections.text: Shape representations are central to many of the recent advancements in 3D computer vision and computer graphics, ranging from neural rendering [41,45,48,55,58] to shape reconstruction [10,26,40, 47, 50, 52, 70]. While conventional representations such as point clouds and meshes are efficient and well-studied, they also suffer from several limitations: Point clouds are lightweight and easy to obtain, but do not directly encode surface information. Meshes, on the other hand, are usually restricted to fixed topologies. More recently, neural implicit representations [10, 40, 50] have shown promising results for representing geometry due to their flexibility in encoding varied topologies, and their easy integration with differentiable frameworks. However, as such representations implicitly encode surface information, extracting the underlying surface is typically slow as they require numerous network evaluations in 3D space for extracting complete surfaces using marching cubes [10, 40, 50], or along rays for intersection detection in the context of volumetric rendering [45, 47, 49, 70].
  In this work, we introduce a novel Poisson solver which performs fast GPU-accelerated Differentiable Poisson Surface Reconstruction (DPSR) and solves for an indicator function from an oriented point cloud in a few milliseconds. Thanks to the differentiablility of our Poisson solver, gradients from a loss on the output mesh or a loss on the intermediate indicator grid can be efficiently backpropagated to update the oriented point cloud representation. This differential bridge between points, indicator ∗Work done while at UC Berkeley. †Corresponding authors.
  35th Conference on Neural Information Processing Systems (NeurIPS 2021).
  functions, and meshes allows us to represent shapes as oriented point clouds. We therefore call this shape representation Shape-As-Points (SAP). Compared to existing shape representations, Shape-AsPoints has the following advantages (see also Table 1):
  Efficiency: SAP has a low memory footprint as it only requires storing a collection of oriented point samples at the surface, rather than volumetric quantities (voxels) or a large number of network parameters for neural implicit representations. Using spectral methods, the indicator field can be computed efficiently (12 ms at 1283 resolution3), compared to the typical rather slow query time of neural implicit networks (330 ms using [40] at the same resolution). Accuracy: The resulting mesh can be generated at high resolutions, is guaranteed to be watertight, free from self-intersections and also topology-agnostic. Initialization: It is easy to initialize SAP with a given geometry such as template shapes or noisy observations. In contrast, neural implicit representations are harder to initialize, except for few simple primitives like spheres [1]. See supplementary for more discussions.
  To investigate the aforementioned properties, we perform a set of controlled experiments. Moreover, we demonstrate state-of-the-art performance in reconstructing surface geometry from unoriented point clouds in two settings: an optimization-based setting that does not require training and is applicable to a wide range of shapes, and a learning-based setting for conditional shape reconstruction that is robust to noisy point clouds and outliers. In summary, the main contributions of this work are:
  • We present Shape-As-Points, a novel shape representation that is interpretable, lightweight, and yields high-quality watertight meshes at low inference times.
  • The core of the Shape-As-Points representation is a versatile, differentiable and generalizable Poisson solver that can be used for a range of applications.
  • We study various properties inherent to the Shape-As-Points representation, including inference time, sensitivity to initialization and topology-agnostic representation capacity.
  • We demonstrate state-of-the-art reconstruction results from noisy unoriented point clouds at a significantly reduced computational budget compared to existing methods.
  Code is available at https://github.com/autonomousvision/shape_as_points.
sections.heading: 2 Related Work
sections.heading: 2.1 3D Shape Representations
sections.text: 3D shape representations are central to 3D computer vision and graphics. Shape representations can be generally categorized as being either explicit or implicit. Explicit shape representations and learning algorithms depending on such representations directly parameterize the surface of the geometry, either as a point cloud [17, 38, 53, 54, 64, 67], parameterized mesh [22, 24, 27, 61] or surface patches [2, 20, 37, 43, 65, 68, 69]. Explicit representations are usually lightweight and require few parameters to represent the geometry, but suffer from discretization, the difficulty to represent
  3On average, our method requires 12 ms for computing a 1283 indicator grid from 15K points on a single NVIDIA GTX 1080Ti GPU. Computing a 2563 indicator grid requires 140 ms.
  watertight surfaces (point clouds, surface patches), or are restricted to a pre-defined topology (mesh). Implicit representations, in contrast, represent the shape as a level set of a continuous function over a discretized voxel grid [14, 25, 33, 66] or more recently parameterized as a neural network, typically referred to as neural implicit functions [10, 40, 50]. Neural implicit representations have been successfully used to represent geometries of objects [10, 16, 18, 35, 40, 44, 47, 50, 57, 59, 62, 63] and scenes [8, 26, 34, 46, 52, 57]. Additionally, neural implicit functions are able to represent radiance fields which allow for high-fidelity appearance and novel view synthesis [39,45]. However, extracting surface geometry from implicit representations typically requires dense evaluation of multi-layer perceptrons, either on a volumetric grid or along rays, resulting in slow inference time. In contrast, SAP efficiently solves the Poisson Equation during inference by representing the shape as an oriented point cloud.
sections.heading: 2.2 Optimization-based 3D Reconstruction from Point Clouds
sections.text: Several works have addressed the problem of inferring continuous surfaces from a point cloud. They tackle this task by utilizing basis functions, set properties of the points, or neural networks. Early works in shape reconstruction from point clouds utilize the convex hull or alpha shapes for reconstruction [15]. The ball pivoting algorithm [5] leverages the continuity property of spherical balls of a given radius. One of the most popular techniques, Poisson Surface Reconstruction (PSR) [28,29], solves the Poisson Equation and inherits smoothness properties from the basis functions used in the Poisson Equation. However, PSR is sensitive to the normals of the input points which must be inferred using a separate preprocessing step. In contrast, our method does not require any normal estimation and is thus more robust to noise. More recent works take advantage of the continuous nature of neural networks as function approximators to fit surfaces to point sets [19, 23, 42, 65]. However, these methods tend to be memory and computationally intensive, while our method yields high-quality watertight meshes in a few milliseconds.
sections.heading: 2.3 Learning-based 3D Reconstruction from Point Clouds
sections.text: Learning-based approaches exploit a training set of 3D shapes to infer the parameters of a reconstruction model. Some approaches focus on local data priors [2, 26] which typically result in better generalization, but suffer when large surfaces must be completed. Other approaches learn objectlevel [33, 40, 50] or scene-level priors [12, 13, 26, 52]. Most reconstruction approaches directly reconstruct a meshed surface geometry, though some works [3, 4, 21, 31] first predict point set normals to subsequently reconstruct the geometry via PSR [28, 29]. However, such methods fail to handle large levels of noise, since they are unable to move points or selectively ignore outliers. In contrast, our end-to-end approach is able to address this issue by either moving outlier points to the actual surface or by selectively muting outliers either by forming paired point clusters that self-cancel or reducing the magnitude of the predicted normals which controls their influence on the reconstruction.
sections.heading: 3 Method
sections.text: At the core of the Shape-As-Points representation is a differentiable Poisson solver, which can be used for both optimization-based and learning-based surface estimation. We first introduce the Poisson solver in Section 3.1. Next, we investigate two applications using our solver: optimization-based 3D reconstruction (Section 3.2) and learning-based 3D reconstruction (Section 3.3).
sections.heading: 3.1 Differentiable Poisson Solver
sections.text: The key step in Poisson Surface Reconstruction [28, 29] involves solving the Poisson Equation. Let x ∈ R3 denote a spatial coordinate and n ∈ R3 denote its corresponding normal. The Poisson Equation arises from the insight that a set consisting of point coordinates and normals {p = (c,n)} can be viewed as samples of the gradient of the underlying implicit indicator function χ(x) that describes the solid geometry. We define the normal vector field as a superposition of pulse functions v(x) = ∑ (ci,ni)∈{p} δ(x − ci,ni), where δ(x,n) = {n if x = 0 and 0 otherwise}. By applying the divergence operator, the variational problem transforms into the standard Poisson equation:
  ∇2χ := ∇ · ∇χ = ∇ · v (1)
  In order to solve this set of linear Partial Differential Equations (PDEs), we discretize the function values and differential operators. Without loss of generality, we assume that the normal vector field v and the indicator function χ are sampled at r uniformly spaced locations along each dimension. Denote the spatial dimensionality of the problem to be d. Without loss of generality, we consider
  the three dimensional case where n := r × r × r for d = 3. We have the indicator function χ ∈ Rn, the point normal field v ∈ Rn×d, the gradient operator ∇ : Rn 7→ Rn×d, the divergence operator (∇·) : Rn×d 7→ Rn, and the derived laplacian operator ∇2 := ∇ · ∇ : Rn 7→ Rn. Under such a discretization scheme, solving for the indicator function amounts to solving the linear system by inverting the divergence operator subject to boundary conditions of surface points having zero level set. Following [28], we fix the overall scale to m = 0.5 at x = 0:
  χ = (∇2)−1∇ · v s.t. χ|x∈{c} = 0 and abs(χ|x=0) = m (2)
  Point Rasterization: We obtain the uniformly discretized point normal field v by rasterizing the point normals onto a uniformly sampled voxel grid. We can differentiably perform point rasterization via inverse trilinear interpolation, similar to the approach in [28, 29]. We scatter the point normal values to the voxel grid vertices, weighted by the trilinear interpolation weights. The point rasterization process has O(n) space complexity, linear with respect to the number of grid cells, and O(N) time complexity, linear with respect to the number of points. See supplementary for details.
  Spectral Methods for Solving PSR: In contrast to the finite-element approach taken in [28,29], we solve the PDEs using spectral methods [7]. While spectral methods are commonly used in scientific computing for solving PDEs and in some cases applied to computer vision problems [32], we are the first to apply them in the context of Poisson Surface Reconstruction. Unlike finite-element approaches that depend on irregular data structures such as octrees or tetrahedral meshes for discritizing space, spectral methods can be efficently solved over a uniform grid as they leverage highly optimized Fast Fourier Transform (FFT) operations that are well supported for GPUs, TPUs, and mainstream deep learning frameworks. Spectral methods decompose the original signal into a linear sum of functions represented using the sine / cosine basis functions whose derivatives can be computed analytically. This allows us to easily approximate differential operators in spectral space. We denote the spectral domain signals with a tilde symbol, i.e., ṽ = FFT(v). We first solve for the unnormalized indicator function χ′, not accounting for boundary conditions
  χ′ = IFFT(χ̃) χ̃ = g̃σ,r(u) iu · ṽ −2π‖u‖2
  g̃σ,r(u) = exp ( − 2σ 2‖u‖2
  r2
  ) (3)
  where the spectral frequencies are denoted as u := (u, v, w) ∈ Rn×d corresponding to the x, y, z spatial dimensions, and IFFT(χ̃) represents the inverse fast Fourier transform of χ̃. g̃σ,r(u) is a Gaussian smoothing kernel of bandwidth σ at grid resolution r in the spectral domain. The Gaussian kernel is used to mitigate ringing effects as a result of the Gibbs phenomenon from rasterizing the point normals. We denote the element-wise product as : Rn × Rn 7→ Rn, the L2-norm as ‖ · ‖2 : Rn×d 7→ Rn, and the dot product as (·) : Rn×d × Rn×d 7→ Rn. Finally, we subtract by the mean of the indicator function at the point set and scale the indicator function to obtain the solution to the PSR problem in Eqn. 2:
  χ = m
  abs(χ′|x=0)︸ ︷︷ ︸ scale
  ( χ′ − 1 |{c}| ∑
  c∈{c}
  χ′|x=c )
  ︸ ︷︷ ︸ subtract by mean
  (4)
  A detailed derivation of our differentiable PSR solver is provided in the supplementary material.
sections.heading: 3.2 SAP for Optimization-based 3D Reconstruction
sections.text: We can use the proposed differentiable Poisson solver for various applications. First, we consider the classical task of surface reconstruction from unoriented point clouds. The overall pipeline for this setting is illustrated in Fig. 1 (top). We now provide details about each component.
  Forward pass: It is natural to initialize the oriented 3D point cloud serving as 3D shape representation using the noisy 3D input points and corresponding (estimated) normals. However, to demonstrate the flexibility and robustness of our model, we purposefully initialize our model using a generic 3D sphere with radius r in our experiments. Given the orientated point cloud, we apply our Poisson solver to obtain an indicator function grid, which can be converted to a mesh using Marching Cubes [36].
  Backward pass: For every point pmesh sampled from the meshM, we calculate a bi-directional L2 Chamfer Distance LCD with respect to the input point cloud. To backpropagate the loss LCD through
  pmesh to point p in our source oriented point cloud, we decompose the gradient using the chain rule:
  ∂LCD ∂p = ∂LCD ∂pmesh ∂pmesh ∂χ ∂χ ∂p (5)
  All terms in (5) are differentialable except for the middle one ∂pmesh∂χ which involves Marching Cubes. However, this gradient can be effectively approximated by the inverse surface normal [56]:
  ∂pmesh ∂χ = −nmesh (6)
  where nmesh is the normal of the point pmesh. Different from MeshSDF [56] that uses the gradients to update the latent code of a pretrained implicit shape representation, our method updates the source point cloud using the proposed differentiable Poisson solver.
  Resampling: To increase the robustness of the optimization process, we uniformly resample points and normals from the largest mesh component every 200 iterations, and replace all points in the original point clouds with the resampled ones. This resampling strategy eliminates outlier points that drift away during the optimization, and enforces a more uniform distribution of points. We provide an ablation study in supplementary.
  Coarse-to-fine: To further decrease run-time, we consider a coarse-to-fine strategy during optimization. More specifically, we start optimizing at an indicator grid resolution of 323 for 1000 iterations, from which we obtain a coarse shape. Next, we sample from this coarse mesh and continue optimization at a resolution of 643 for 1000 iterations. We repeat this process until we reach the target resolution (2563) at which we acquire the final output mesh. See also supplementary.
sections.heading: 3.3 SAP for Learning-based 3D Reconstruction
sections.text: We now consider the learning-based 3D reconstruction setting in which we train a conditional model that takes a noisy, unoriented point cloud as input and outputs a 3D shape. More specifically, we train the model to predict a clean oriented point cloud, from which we obtain a watertight mesh using our Poisson solver and Marching Cubes. We leverage the differentiability of our Poisson solver to learn the parameters of this conditional model. Following common practice, we assume watertight meshes as ground truth and consequently supervise directly with the ground truth indicator grid obtained
  from these meshes. Fig. 1 (bottom) illustrates the pipeline of our architecture for the learning-based surface reconstruction task.
  Architecture: We first encode the unoriented input point cloud coordinates {c} into a feature φ. The resulting feature should encapsulate both local and global information about the input point cloud. We utilize the convolutional point encoder proposed in [52] for this purpose. Note that in the following, we will use φθ(c) to denote the features at point c, dropping the dependency of φ on the remaining points {c} for clarity. Also, we use θ to refer to network parameters in general. Given their features, we aim to estimate both offsets and normals for every input point c in the point cloud {c}. We use a shallow Multi-Layer Perceptron (MLP) fθ to predict the offset for c:
  ∆c = fθ(c, φθ(c)) (7)
  where φ(c) is obtained from the feature volume using trilinear interpolation. We predict k offsets per input point, where k ≥ 1. We add the offsets ∆c to the input point position c and call the updated point position ĉ. Additional offsets allow us to densify the point cloud, leading to enhanced reconstruction quality. We choose k = 7 for all learning-based reconstruction experiments (see ablation study in Table 4). For each updated point ĉ, we use a second MLP gθ to predict its normal:
  n̂ = gθ(ĉ, φθ(ĉ)) (8)
  We use the same decoder architecture as in [52] for both fθ and gθ. The network comprises 5 layers of ResNet blocks with a hidden dimension of 32. These two networks fθ and gθ do not share weights.
  Training and Inference: During training, we obtain the estimated indicator grid χ̂ from the predicted point clouds (ĉ, n̂) using our differentiable Poisson solver. Since we assume watertight and noise-free meshes for supervision, we acquire the ground truth indicator grid by running PSR on a densely sampled point clouds of the ground truth meshes with the corresponding ground truth normals. This avoids running Marching Cubes at every iteration and accelerates training. We use the Mean Square Error (MSE) loss on the predicted and ground truth indicator grid:
  LDPSR = ‖χ̂− χ‖2 (9)
  We implement all models in PyTorch [51] and use the Adam optimizer [30] with a learning rate of 5e-4. During inference, we use our trained model to predict normals and offsets, use DPSR to solve for the indicator grid, and run Marching Cubes [36] to extract meshes.
sections.heading: 4 Experiments
sections.text: Following the exposition in the previous section, we conduct two types of experiments to evaluate our method. First, we perform single object reconstruction from unoriented point clouds. Next, we apply our method to learning-based surface reconstruction on ShapeNet [9], using noisy point clouds with or without outliers as inputs.
  Datasets: We use the following datasets for optimization-based reconstruction: 1) Thingi10K [71], 2) Surface reconstruction benchmark (SRB) [65] and 3) D-FAUST [6]. Similar to prior works, we use 5 objects per dataset [19, 23, 65]. For learning-based object-level reconstruction, we consider all 13 classes of the ShapeNet [9] subset, using the train/val/test split from [11].
  Baselines: In the optimization-based reconstruction setting, we compare to network-based methods IGR [19] and Point2Mesh [23], as well as Screened Poisson Surface Reconstruction4 (SPSR) [29] on plane-fitted normals. To ensure that the predicted normals are consistently oriented for SPSR, we propagate the normal orientation using the minimum spanning tree [72]. For learning-based surface reconstruction, we compare against point-based Point Set Generation Networks (PSGN) [17], patchbased AtlasNet [20], voxel-based 3D-R2N2 [11], and ConvONet [52], which has recently reported state-of-the-art results on this task. We use ConvOnet in their best-performing setting (3-plane encoders). SPSR is also used as a baseline. In addition, to evaluate the importance of our differentiable PSR optimization, we design another point-based baseline. This baseline uses the same network architecture to predict points and normals. However, instead of passing them to our Poisson solver and
  4We use the official implementation https://github.com/mkazhdan/PoissonRecon.
  calculate LDPSR on the indicator grid, we directly supervise the point positions with a bi-directional Chamfer distance, and an L1 Loss on the normals as done in [37]. During inference, we also feed the predicted points and normals to our PSR solver and run Marching Cubes to obtain meshes.
  Metrics: We consider Chamfer Distance, Normal Consistency and F-Score with the default threshold of 1% for evaluation, and also report optimization & inference time.
sections.heading: 4.1 Optimization-based 3D Reconstruction
sections.text: In this part, we investigate whether our method can be used for the single-object surface reconstruction task from unoriented point clouds or scans. We consider three different types of 3D inputs: point clouds sampled from synthetic meshes [71] with Gaussian noise, real-world scans [65], and highresolution raw scans of humans with comparably little noise [6].
  Fig. 2 and Table 2 show that our method achieves superior performance compared to both classical methods and network-based approaches. Note that the objects considered in this task are challenging
  due to their complex geometry, thin structures, noisy and incomplete observations. While some of the baseline methods fail completely on these challenging objects, our method achieves robust performance across all datasets.
  In particular, Fig. 2 shows that IGR occasionally creates meshes in free space, as this is not penalized by its optimization objective when point clouds are unoriented. Both, Point2Mesh and our method alleviate this problem by optimizing for the Chamfer distance between the estimated mesh and the input point clouds. However, Point2Mesh requires an initial mesh as input of which the topology cannot be changed during optimization. Thus, it relies on SPSR to provide an initial mesh for objects with genus larger than 0 and suffers from inaccurate initialization [23]. Furthermore, compared to both IGR and Point2Mesh, our method converges faster.
  While SPSR is even more efficient, it suffers from incorrect normal estimation on noisy input point clouds, which is a non-trivial task on its own. In contrast, our method demonstrates more robust behavior as we optimize points and normals guided by the Chamfer distance. Note that in this single object reconstruction task, our method is not able to complete large unobserved regions (e.g., the bottom of the person’s feet in Fig. 2 is unobserved and hence not completed). This limitation can be addressed using learning-based object-level reconstruction as discussed next.
  To analyze whether our proposed differentiable Poisson solver is also beneficial for learning-based reconstruction, we evaluate our method on the single object reconstruction task using noise and outlieraugmented point clouds from ShapeNet as input to our method. We investigate the performance for three different noise levels: (a) Gaussian noise with zero mean and standard deviation 0.005, (b) Gaussian noise with zero mean and standard deviation 0.025, (c) 50% points have the same noise as in a) and the other 50% points are outliers uniformly sampled inside the unit cube.
sections.heading: 4.2 Learning-based Reconstruction on ShapeNet
sections.text: Fig. 3 and Table 3 show our results. Compared to the baselines, our method achieves similar or better results on all three metrics. The results show that, in comparison to directly using Chamfer loss on point positions and L1 loss on point normals, our DPSR loss can produce better reconstructions in all settings as it directly supervises the indicator grid which implicitly determines the surface through the Poisson equation. SPSR fails when the noise level is high or when there are outliers in the input point cloud. We achieve significantly better performances than other representations such as point clouds, meshes, voxel grids and patches. Moreover, we find that our method is robust to strong outliers. We refer to the supplementary for more detailed visualizations on how SAP handles outliers.
  Table 3 also reports the runtime for setting (a) for all GPU-accelerated methods using a single NVIDIA GTX 1080Ti GPU, averaged over all objects of the ShapeNet test set. The baselines [11, 17, 20] demonstrate fast inference time but suffer in terms of reconstruction quality while the neural implicit model [52] attains high quality reconstructions but suffers from slow inference. In contrast, our method is able to produce competitive reconstruction results at reasonably fast inference time. In addition, since ConvONet and our method share a similar reconstruction pipeline, we provide a more detailed breakdown of the runtime at a resolution of 1283 and 2563 voxels in Table 4. We use the default setup from ConvONet5. As we can see from Table 4, the difference in terms of point encoding and Marching Cubes is marginal, but we gain more than 20× speed-up over ConvONet in evaluating the indicator grid. In total, we are roughly 5× and 8× faster regarding the total inference time at a resolution of 1283 and 2563 voxels, respectively.
sections.heading: 4.3 Ablation Study
sections.text: In this section, we investigate different architecture choices in the context of learning-based reconstruction. We conduct our ablation experiments on ShapeNet for the third setup (most challenging).
  Number of Offsets: From Table 4 we notice that predicting more offsets per input point leads to better performance. This can be explained by the fact that with more points near the object surface, geometric details can be better preserved.
  Point Cloud Encoder: Here we compare two different point encoder architectures proposed in [52]: a 2D encoder using 3 canonical planes at a resolution of 642 pixels and a 3D encoder using a feature volume with a resolution of 323 voxels. We find that the 3D encoder works best in this setting and hypothesize that this is due to the representational alignment with the 3D indicator grid.
sections.heading: 5 Conclusion
sections.text: We introduce Shape-As-Points, a novel shape representation which is lightweight, interpretable and produces watertight meshes efficiently. We demonstrate its effectiveness for the task of surface reconstruction from unoriented point clouds in both optimization-based and learning-based settings. Our method is currently limited to small scenes due to the cubic memory requirements with respect to the indicator grid resolution. We believe that processing scenes in a sliding-window manner and space-adaptive data structures (e.g., octrees) will enable extending our method to larger scenes. Point cloud-based methods are broadly used in real-world applications ranging from household robots to self-driving cars, and hence share the same societal opportunities and risks as other learning-based 3D reconstruction techniques.
  5To be consistent, we use the Marching Cubes implementation from [60] for both ConvONet and ours.
  Acknowledgement: Andreas Geiger was supported by the ERC Starting Grant LEGO-3D (850533) and the DFG EXC number 2064/1 - project number 390727645. The authors thank the Max Planck ETH Center for Learning Systems (CLS) for supporting Songyou Peng and the International Max Planck Research School for Intelligent Systems (IMPRS-IS) for supporting Michael Niemeyer. This work was supported by an NVIDIA research gift. We thank Matthias Niessner, Thomas Funkhouser, Hugues Hopp, Yue Wang for helpful discussions in early stages of this project. We also thank Xu Chen, Christian Reiser, Rémi Pautrat for proofreading.
title: Shape As Points: A Differentiable Poisson Solver