16
Surface Reconstruction Surface Reconstruction Using Using Volumetric Implicit Volumetric Implicit Functions Functions Some figures by Curless et Some figures by Curless et

Surface Reconstruction Using Volumetric Implicit Functions Some figures by Curless et al

  • View
    219

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Surface Reconstruction Using Volumetric Implicit Functions Some figures by Curless et al

Surface Reconstruction UsingSurface Reconstruction UsingVolumetric Implicit FunctionsVolumetric Implicit Functions

Some figures by Curless et al.Some figures by Curless et al.

Page 2: Surface Reconstruction Using Volumetric Implicit Functions Some figures by Curless et al

Problems With ZipperingProblems With Zippering

Drill BitDrill Bit Zippered reconstructionZippered reconstruction

Page 3: Surface Reconstruction Using Volumetric Implicit Functions Some figures by Curless et al

Volumetric ReconstructionVolumetric 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)Can be compressed (e.g., using RLE)

– Another possibility: hierarchical data Another possibility: hierarchical data structuresstructures

• Can extract isosurface (i.e., subset of Can extract isosurface (i.e., subset of space where implicit function = some space where implicit function = some constant)constant)

Page 4: Surface Reconstruction Using Volumetric Implicit Functions Some figures by Curless et al

Volumetric Reconstruction Volumetric Reconstruction OverviewOverview

• Generate signed distance function (or Generate signed distance function (or something close to it) for each scansomething close to it) for each scan

• Compute average (possibly weighted)Compute average (possibly weighted)

• Extract isosurfaceExtract isosurface

Page 5: Surface Reconstruction Using Volumetric Implicit Functions Some figures by Curless et al

Volumetric Reconstruction Volumetric Reconstruction BenefitsBenefits

• Always generates a manifold surfaceAlways generates a manifold surface

• Can control sampling densityCan control sampling density

• Averaging of signed distance functions Averaging of signed distance functions corresponds to averaging the surfacescorresponds to averaging the surfaces

Page 6: Surface Reconstruction Using Volumetric Implicit Functions Some figures by Curless et al

Volumetric Reconstruction Volumetric Reconstruction DrawbacksDrawbacks

• Represent a 3D entity rather than 2DRepresent a 3D entity rather than 2D– Running timeRunning time

– StorageStorage

• Resampling step – bandlimits the Resampling step – bandlimits the functionfunction

• Generates consistent topology, but not Generates consistent topology, but not always the topology you wantedalways the topology you wanted

• Problems with very thin surfacesProblems with very thin surfaces

Page 7: Surface Reconstruction Using Volumetric Implicit Functions Some figures by Curless et al

VRIPVRIP

• Curless & Levoy, 1996Curless & Levoy, 1996

• Implicit functions = ramps along line of Implicit functions = ramps along line of sightsightto scannerto scanner

• Weighting along rampsWeighting along ramps

• Weighting across surface (similar to Zipper)Weighting across surface (similar to Zipper)

FunctionFunction WeightWeight

Page 8: Surface Reconstruction Using Volumetric Implicit Functions Some figures by Curless et al

VRIPVRIP

• Under appropriate assumptions can Under appropriate assumptions can prove that average of ramps is least prove that average of ramps is least squares estimate of surface positionsquares estimate of surface position

• Stores ramps only near surfaceStores ramps only near surface– RLE to compress empty spaceRLE to compress empty space

• Isosurface extraction using marching Isosurface extraction using marching cubescubes

Page 9: Surface Reconstruction Using Volumetric Implicit Functions Some figures by Curless et al

Marching CubesMarching Cubes

• Lorensen & Cline, 1987Lorensen & Cline, 1987

• Consider 2D analogy: “marching Consider 2D analogy: “marching squares”squares”

• Look at signs at corners of squareLook at signs at corners of square++

-- --

++ ++

++ --

++

Page 10: Surface Reconstruction Using Volumetric Implicit Functions Some figures by Curless et al

Marching CubesMarching Cubes

• Signs of corners Signs of corners lookup table lookup table polygonspolygons

• Actual values at corners: locations of Actual values at corners: locations of vertices along edges of square / cubevertices along edges of square / cube

• Sometimes ambiguousSometimes ambiguous++

-- ++

-- ++

-- ++

--

Page 11: Surface Reconstruction Using Volumetric Implicit Functions Some figures by Curless et al

Marching CubesMarching Cubes

• Same idea can be scaled up to 3DSame idea can be scaled up to 3D

Page 12: Surface Reconstruction Using Volumetric Implicit Functions Some figures by Curless et al

DemoDemo

Page 13: Surface Reconstruction Using Volumetric Implicit Functions Some figures by Curless et al

Space Carving in VRIPSpace Carving in VRIP

• Mark all space between surface and Mark all space between surface and scanner as “outside” (with low weight)scanner as “outside” (with low weight)

• Extract additional isosurfaces betweenExtract additional isosurfaces between“outside” and “unseen”“outside” and “unseen”

Page 14: Surface Reconstruction Using Volumetric Implicit Functions Some figures by Curless et al

Space Carving in VRIPSpace Carving in VRIP

Page 15: Surface Reconstruction Using Volumetric Implicit Functions Some figures by Curless et al

Space Carving in VRIPSpace Carving in VRIP

Page 16: Surface Reconstruction Using Volumetric Implicit Functions Some figures by Curless et al

Other Volumetric Reconstruction Other Volumetric Reconstruction MethodsMethods

• Hoppe’s surface reconstructionHoppe’s surface reconstruction– Unorganized points (not range images)Unorganized points (not range images)

– Estimate normal from local neighborhoodsEstimate normal from local neighborhoods

– Propagation to resolve inside/outsidePropagation to resolve inside/outside

– Use normals to generate signed distance Use normals to generate signed distance rampsramps