Surface Reconstruction Using Volumetric Implicit Functions Some figures by Curless et al.
Problems With Zippering Drill Bit Zippered reconstruction
Volumetric Reconstruction Implicit function defined volumetricallyImplicit function defined volumetrically Usually stored sampled on a 3D gridUsually stored sampled on a 3D grid – Can be compressed (e.g., using RLE) – Another possibility: hierarchical data structures Can extract isosurface (i.e., subset of space where implicit function = some constant)Can extract isosurface (i.e., subset of space where implicit function = some constant)
Volumetric Reconstruction Overview Generate signed distance function (or something close to it) for each scanGenerate signed distance function (or something close to it) for each scan Compute average (possibly weighted)Compute average (possibly weighted) Extract isosurfaceExtract isosurface
Volumetric Reconstruction Benefits Always generates a manifold surfaceAlways generates a manifold surface Can control sampling densityCan control sampling density Averaging of signed distance functions corresponds to averaging the surfacesAveraging of signed distance functions corresponds to averaging the surfaces
Volumetric Reconstruction Drawbacks Represent a 3D entity rather than 2DRepresent a 3D entity rather than 2D – Running time – Storage Resampling step – bandlimits the functionResampling step – bandlimits the function Generates consistent topology, but not always the topology you wantedGenerates consistent topology, but not always the topology you wanted Problems with very thin surfacesProblems with very thin surfaces
VRIP Curless & Levoy, 1996Curless & Levoy, 1996 Implicit functions = ramps along line of sight to scannerImplicit functions = ramps along line of sight to scanner Weighting along rampsWeighting along ramps Weighting across surface (similar to Zipper)Weighting across surface (similar to Zipper) FunctionWeight
VRIP Under appropriate assumptions can prove that average of ramps is least squares estimate of surface positionUnder appropriate assumptions can prove that average of ramps is least squares estimate of surface position Stores ramps only near surfaceStores ramps only near surface – RLE to compress empty space Isosurface extraction using marching cubesIsosurface extraction using marching cubes
Marching Cubes Lorensen & Cline, 1987Lorensen & Cline, 1987 Consider 2D analogy: “marching squares”Consider 2D analogy: “marching squares” Look at signs at corners of squareLook at signs at corners of square
Marching Cubes Signs of corners lookup table polygonsSigns of corners lookup table polygons Actual values at corners: locations of vertices along edges of square / cubeActual values at corners: locations of vertices along edges of square / cube Sometimes ambiguousSometimes ambiguous
Marching Cubes Same idea can be scaled up to 3DSame idea can be scaled up to 3D
Demo
Space Carving in VRIP Mark all space between surface and scanner as “outside” (with low weight)Mark all space between surface and scanner as “outside” (with low weight) Extract additional isosurfaces between “outside” and “unseen”Extract additional isosurfaces between “outside” and “unseen”
Space Carving in VRIP
Other Volumetric Reconstruction Methods Hoppe’s surface reconstructionHoppe’s surface reconstruction – Unorganized points (not range images) – Estimate normal from local neighborhoods – Propagation to resolve inside/outside – Use normals to generate signed distance ramps