Computer Graphics Group Alexander Hornung Alexander Hornung and Leif Kobbelt RWTH Aachen Robust Reconstruction of Watertight 3D Models from Non-uniformly Sampled Point Clouds Without Normal Information
Computer Graphics Group Alexander Hornung Point Cloud Reconstruction
Computer Graphics Group Alexander Hornung Point Cloud Reconstruction Non-uniform sampling Holes Noise Bad scan alignment No (reliable) normals
Computer Graphics Group Alexander Hornung Point Cloud Reconstruction Smooth watertight manifold No topological artifacts (low genus) Detail preservation Robustness to Non-uniform sampling Holes Bad registration and noise From 3D points only
Computer Graphics Group Alexander Hornung Outline Introduction Surface confidence estimation Graph-based surface extraction Hole filling and detail preservation Mesh extraction Results
Computer Graphics Group Alexander Hornung Related Work Wrapping and Voronoi-based Amenta et al., Bernardini et al., Boissonat and Cazals, Dey and Goswami, Mederos et al., Scheidegger et al., … Deformable models Esteve et al., Sharf et al., … Volumetric reconstruction Hoppe et al., Curless and Levoy, Carr et al., Ohtake et al., Fleishman et al., Kazhdan, …
Computer Graphics Group Alexander Hornung Related Work Wrapping and Voronoi-based Amenta et al., Bernardini et al., Boissonat and Cazals, Dey and Goswami, Mederos et al., Scheidegger et al., … Deformable models Esteve et al., Sharf et al., … Volumetric reconstruction Hoppe et al., Curless and Levoy, Carr et al., Ohtake et al., Fleishman et al., Kazhdan, … Graph-based energy minimization and surface reconstruction Boykov and Kolmogorov, Vogiatzis et al., Hornung and Kobbelt
Computer Graphics Group Alexander Hornung Signed vs. Unsigned Distance
Computer Graphics Group Alexander Hornung Signed vs. Unsigned Distance
Computer Graphics Group Alexander Hornung Signed vs. Unsigned Distance
Computer Graphics Group Alexander Hornung Signed vs. Unsigned Distance
Computer Graphics Group Alexander Hornung Overview Point cloud P
Computer Graphics Group Alexander Hornung Overview Point cloud P Surface confidence (unsigned distance)
Computer Graphics Group Alexander Hornung Overview Point cloud P Surface confidence (unsigned distance) Embed weighted graph structure G
Computer Graphics Group Alexander Hornung Overview Point cloud P Surface confidence (unsigned distance) Embed weighted graph structure Min-Cut of G yields unknown surface
Computer Graphics Group Alexander Hornung Outline Introduction Surface confidence estimation Graph-based surface extraction Hole filling and detail preservation Mesh extraction Results
Computer Graphics Group Alexander Hornung Surface Confidence Insert 3D samples into volumetric grid Sparse set of occupied voxels Compute a confidence map “Probability” that surface intersects a voxel v
Computer Graphics Group Alexander Hornung Surface Confidence Insert 3D samples into volumetric grid Sparse set of occupied voxels Compute a confidence map “Probability” that surface intersects a voxel v Compute “crust” containing the surface Morphological dilation Medial axis approximation
Computer Graphics Group Alexander Hornung Surface Confidence Insert 3D samples into volumetric grid Sparse set of occupied voxels Compute a confidence map “Probability” that surface intersects a voxel v Compute “crust” containing the surface Morphological dilation Medial axis approximation Estimate by volumetric diffusion
Computer Graphics Group Alexander Hornung Outline Introduction Surface confidence estimation Graph-based surface extraction Hole filling and detail preservation Mesh extraction Results
Computer Graphics Group Alexander Hornung Find Optimal Surface Minimize energy Min-Cut of an embedded graph Global optimum Highly efficient Graph structure?
Computer Graphics Group Alexander Hornung Dual Graph Embedding : Probability that v is intersected by surface s Intersected voxels are split into 2 components Interior faces Exterior faces
Computer Graphics Group Alexander Hornung Dual Graph Embedding : Probability that v is intersected by surface s Intersected voxels are split into 2 components Interior faces Exterior faces Split along a sequence of edges Octahedral graph structure Voxel split-edges Graph cut-edges
Computer Graphics Group Alexander Hornung Min-Cut Surface Extraction Embed graph into a crust containing the surface
Computer Graphics Group Alexander Hornung Min-Cut Surface Extraction Embed graph into a crust containing the surface Edge weights defined per voxel
Computer Graphics Group Alexander Hornung Embed graph into a crust containing the surface Edge weights defined per voxel Min-cut yields set of intersected surface voxels Min-Cut Surface Extraction
Computer Graphics Group Alexander Hornung Embed graph into a crust containing the surface Edge weights defined per voxel Min-cut yields set of intersected surface voxels Parameter s to emphasize strong/weak maxima Min-Cut Surface Extraction
Computer Graphics Group Alexander Hornung Outline Introduction Surface confidence estimation Graph-based surface extraction Hole filling and detail preservation Mesh extraction Results
Computer Graphics Group Alexander Hornung Hierarchical Approach Single resolution impractical High volumetric resolutions Non-uniform sampling / large holes Hierarchical framework Adaptive volumetric grid (Octree) Proper initial crust at low resolutions Simple narrow-band approach insufficient Loss of fine details not contained within crust
Computer Graphics Group Alexander Hornung Hierarchical Approach Single resolution impractical High volumetric resolutions Non-uniform sampling / large holes Hierarchical framework Adaptive volumetric grid (Octree) Proper initial crust at low resolutions Simple narrow-band approach insufficient Loss of fine details not contained within crust Re-insertion of data samples Merge samples with crust
Computer Graphics Group Alexander Hornung Hierarchical Approach 1)Surface confidence estimation (Re-)Insert point samples Dilate and compute 2)Graph-based surface extraction Generate octahedral graph Compute min-cut 3)Volumetric refinement Narrow band 64 3
Computer Graphics Group Alexander Hornung Hierarchical Approach 1)Surface confidence estimation (Re-)Insert point samples Dilate and compute 2)Graph-based surface extraction Generate octahedral graph Compute min-cut 3)Volumetric refinement Narrow band 128 3
Computer Graphics Group Alexander Hornung Hierarchical Approach 1)Surface confidence estimation (Re-)Insert point samples Dilate and compute 2)Graph-based surface extraction Generate octahedral graph Compute min-cut 3)Volumetric refinement Narrow band 128 3
Computer Graphics Group Alexander Hornung Hierarchical Approach 1)Surface confidence estimation (Re-)Insert point samples Dilate and compute 2)Graph-based surface extraction Generate octahedral graph Compute min-cut 3)Volumetric refinement Narrow band 256 3
Computer Graphics Group Alexander Hornung Hierarchical Approach 1)Surface confidence estimation (Re-)Insert point samples Dilate and compute 2)Graph-based surface extraction Generate octahedral graph Compute min-cut 3)Volumetric refinement Narrow band 256 3
Computer Graphics Group Alexander Hornung Hierarchical Approach 1)Surface confidence estimation (Re-)Insert point samples Dilate and compute 2)Graph-based surface extraction Generate octahedral graph Compute min-cut 3)Volumetric refinement Narrow band 512 3
Computer Graphics Group Alexander Hornung Hierarchical Approach 1)Surface confidence estimation (Re-)Insert point samples Dilate and compute 2)Graph-based surface extraction Generate octahedral graph Compute min-cut 3)Volumetric refinement Narrow band 512 3
Computer Graphics Group Alexander Hornung Outline Introduction Surface confidence estimation Graph-based surface extraction Hole filling and detail preservation Mesh extraction Results
Computer Graphics Group Alexander Hornung Cut Manifold to Triangle Mesh Loop of voxel split-edgesGraph cut-edges
Computer Graphics Group Alexander Hornung Cut Manifold to Triangle Mesh Loops define non-planar polygonal faces Mesh vertices at voxel corners
Computer Graphics Group Alexander Hornung Cut Manifold to Triangle Mesh Loops define non-planar polygonal faces Mesh vertices at voxel corners Cycle along split-edges
Computer Graphics Group Alexander Hornung Cut Manifold to Triangle Mesh Loops define non-planar polygonal faces Mesh vertices at voxel corners Cycle along split-edges
Computer Graphics Group Alexander Hornung Cut Manifold to Triangle Mesh Loops define non-planar polygonal faces Mesh vertices at voxel corners Cycle along split-edges
Computer Graphics Group Alexander Hornung Cut Manifold to Triangle Mesh Loops define non-planar polygonal faces Mesh vertices at voxel corners Cycle along split-edges
Computer Graphics Group Alexander Hornung Cut Manifold to Triangle Mesh Loops define non-planar polygonal faces Mesh vertices at voxel corners Cycle along split-edges
Computer Graphics Group Alexander Hornung Cut Manifold to Triangle Mesh estimated per voxel Mesh vertices at voxel centers
Computer Graphics Group Alexander Hornung Cut Manifold to Triangle Mesh estimated per voxel Mesh vertices at voxel centers
Computer Graphics Group Alexander Hornung Cut Manifold to Triangle Mesh estimated per voxel Mesh vertices at voxel centers Voxel corners correspond to non-planar faces Cycle over shared split-edges
Computer Graphics Group Alexander Hornung Cut Manifold to Triangle Mesh estimated per voxel Mesh vertices at voxel centers Voxel corners correspond to non-planar faces Cycle over shared split-edges
Computer Graphics Group Alexander Hornung Cut Manifold to Triangle Mesh estimated per voxel Mesh vertices at voxel centers Voxel corners correspond to non-planar faces Cycle over shared split-edges
Computer Graphics Group Alexander Hornung Cut Manifold to Triangle Mesh estimated per voxel Mesh vertices at voxel centers Voxel corners correspond to non-planar faces Cycle over shared split-edges
Computer Graphics Group Alexander Hornung Cut Manifold to Triangle Mesh estimated per voxel Mesh vertices at voxel centers Voxel corners correspond to non-planar faces Cycle over shared split-edges
Computer Graphics Group Alexander Hornung Cut Manifold to Triangle Mesh estimated per voxel Mesh vertices at voxel centers Voxel corners correspond to non-planar faces Cycle over shared split-edges
Computer Graphics Group Alexander Hornung Cut Manifold to Triangle Mesh
Computer Graphics Group Alexander Hornung Cut Manifold to Triangle Mesh Elimination of grid artifacts Error controlled Bi-Laplacian smoothing Based on surface confidence Stop smoothing if
Computer Graphics Group Alexander Hornung Outline Introduction Surface confidence estimation Graph-based surface extraction Hole filling and detail preservation Mesh extraction Results
Computer Graphics Group Alexander Hornung Max Planck ResolutionTimeGenusVertices s0320K
Computer Graphics Group Alexander Hornung Statue ResolutionTimeGenusVertices s0448K
Computer Graphics Group Alexander Hornung Rings ResolutionTimeGenusVertices s491K
Computer Graphics Group Alexander Hornung Rings ResolutionTimeGenusVertices s491K
Computer Graphics Group Alexander Hornung Leo ResolutionTimeGenusVertices s147K
Computer Graphics Group Alexander Hornung Monkey ResolutionTimeGenusVertices s072K
Computer Graphics Group Alexander Hornung Dragon ResolutionTimeGenusVertices s1 (>400)318K
Computer Graphics Group Alexander Hornung Conclusions New algorithm for point cloud reconstruction Surface confidence map and graph cuts No normals required Guaranteed watertight surface No topological artifacts Hierarchical approach Handles non-uniform sampling and large gaps Preserves fine details Reduces number of computed voxels Efficiency Conversion of min-cut into triangle mesh
Computer Graphics Group Alexander Hornung Future Work Voxel representative Slow smoothing convergence Subvoxel precision using input samples Performance No explicit graph generation Flow from previous levels Graph structure for thin-plate surfaces Flux for preferred cut directions
Computer Graphics Group Alexander Hornung Thank You