Floating Scale Surface Reconstruction
This website provides material for the point-based reconstruction algorithm described in the following paper:
Floating Scale Surface Reconstruction [PDF, 11MB]
Simon Fuhrmann and Michael Goesele
In: ACM Transactions on Graphics (Proceedings of ACM SIGGRAPH 2014), Vancouver, Canada, 2014.
The geometry in the following images has been reconstructed purely from photos using a structure-from-motion and multi-view stereo pipeline (see our MVE software for details), and using Floating Scale Surface Reconstruction as final step. The whole scene has a diameter of about 20 meters. The images show details of the fountain with and without color, and some surface details in the order of millimeters, demonstrating the multi-scale ability of our work.
Abstract and Resources
Any sampled point acquired from a real-world geometric object or scene represents a finite surface area and not just a single surface point. Samples therefore have an inherent scale, very valuable information that has been crucial for high quality reconstructions. We introduce a new method for surface reconstruction from oriented, scale-enabled sample points which operates on large, redundant and potentially noisy point sets. The approach draws upon a simple yet efficient mathematical formulation to construct an implicit function as the sum of compactly supported basis functions. The implicit function has spatially continuous “floating” scale and can be readily evaluated without any preprocessing. The final surface is extracted as the zero-level set of the implicit function. One of the key properties of the approach is that it is virtually parameter-free even for complex, mixed-scale datasets. In addition, our method is easy to implement, scalable and does not require any global operations. We evaluate our method on a wide range of datasets for which it compares favorably to popular classic and current methods.
SIGGRAPH Paper; PDF, 11MB
Supplemental Material; PDF, 4MB
MVE Source Code; ZIP from GitHub
MVE Source Code; View on GitHub
These example datasets can readily be used with the FSSR software and also with Poisson Surface Reconstruction. In the latter case, the confidence and scale values are ignored.
Overlapping Depth Maps
40,804 samples, with color, no confidence
Download [1.1 MB]
This experimental software implements the technique described in the paper. FSSR is part of MVE, the Multi-View Environment, which is available on GitHub. It will automatically be compiled with MVE using make. Take a look at the README.txt for more detailed information. The software is licensed under the BSD 3-Clause license (see licensing information).
Performing the reconstruction involves running the fssrecon app, which reads the input point cloud (only PLY is supported), evaluates the implicit function over an octree hierarchy, and extracts a surface mesh. The resulting mesh has to be cleaned using the meshclean app. An exemplary PLY header is listed below. Note that the value field corresponds to the per-vertex scale values. confidence and red, green, blue are optional.
ply format binary_little_endian 1.0 element vertex 36228 property float x property float y property float z property float nx property float ny property float nz property uchar red property uchar green property uchar blue property float confidence property float value end_header
In this guide both MVE and FSSR are first downloaded and compiled. FSSR is then executed on a dataset and a surface is extracted and cleaned.
# Download and compile MVE git clone https://github.com/simonfuhrmann/mve.git make -j8 -C mve # Run FSSR on a point set mve/apps/fssrecon/fssrecon pointset.ply outmesh.ply mve/apps/meshclean/meshclean -t10 -c10000 outmesh.ply outmesh-clean.ply