Reconstructing 3D models of piecewise planar objects from sampled points has been a major problem in both computer vision and computer graphics. Although it has been extensively researched in the past few decades, obtaining faithful reconstructions of real-world objects from unavoidably noisy and possibly incomplete point clouds remains an open problem. CGAL already offers a few surface reconstruction methods, such as Poisson Surface Reconstruction, Advancing Front Surface Reconstruction, and Scale-Space Surface Reconstruction.
These methods are particularly suitable for point sets representing objects described by smooth surfaces. However, for man-made objects such as buildings, the results might not be satisfactory due to the imperfections and complexity of the reconstructed models (for example, gigantic meshes, missing regions, noises, and undesired structures). This is mainly because these methods tend to closely follow the surface details.
Polygonal Surface Reconstruction
This package implements a hypothesis-and-selection based method for piecewise planar object reconstruction from point clouds, originally described in Nan and Wonka 2017 in the International Conference on Computer Vision (ICCV). The method takes as input an unordered point set sampled from a piecewise planar object and outputs a simplified and watertight surface mesh interpolating the input point set.
Polygonal surface reconstruction: (a) Input point set; (b) Extracted planar segments; (c) Candidate faces are generated by pairwise intersection; (d) Faces selected through optimization; (e) Reconstructed model.
The method assumes that all necessary major planes are provided or that they can be extracted from the input point set (for example using the new tools available in the Shape detection package). It can recover sharp features of the objects, and it can handle a large amount of noise and outliers, complementing the existing surface reconstruction methods.
This package is already available in CGAL's master branch on the CGAL GitHub repository, and will be officially released in the upcoming version of CGAL, 5.0, scheduled for Autumn 2019.