Surface Reconstruction: Part II - Computer...

64
Surface Surface Surface Surface Reconstruction: Reconstruction: Part II Part II

Transcript of Surface Reconstruction: Part II - Computer...

Page 1: Surface Reconstruction: Part II - Computer graphicsgraphics.stanford.edu/.../04_Surface_Reconstruction.pdfInput Data • Set of range scans – Each scan is a regular quad‐or tri‐

SurfaceSurfaceSurface Surface Reconstruction:Reconstruction:

Part IIPart II

Page 2: Surface Reconstruction: Part II - Computer graphicsgraphics.stanford.edu/.../04_Surface_Reconstruction.pdfInput Data • Set of range scans – Each scan is a regular quad‐or tri‐

Surface ReconstructionSurface ReconstructionSurface ReconstructionSurface Reconstruction

Today:

Scanning

Today:

Scanning devices

RegistrationImplicit 

reconstruction

physicalmodel

acquiredpoint cloud

reconstructedmodelp

Page 3: Surface Reconstruction: Part II - Computer graphicsgraphics.stanford.edu/.../04_Surface_Reconstruction.pdfInput Data • Set of range scans – Each scan is a regular quad‐or tri‐

Input DataInput Datapp

• Set of range scans– Each scan is a regular quad‐ or tri‐meshNormal vectorsNormal vectors are well defined–– Normal vectors Normal vectors are well defined

– Scans registered in common coordinate system

• Set of irregular sample pointsg p p– Typically without normal vectorswithout normal vectors– More general

Page 4: Surface Reconstruction: Part II - Computer graphicsgraphics.stanford.edu/.../04_Surface_Reconstruction.pdfInput Data • Set of range scans – Each scan is a regular quad‐or tri‐

Shape RepresentationsShape RepresentationsShape RepresentationsShape Representations

• Explicit representationp p– Image of parametrization

• Implicit representation– Zero set of distance function

Page 5: Surface Reconstruction: Part II - Computer graphicsgraphics.stanford.edu/.../04_Surface_Reconstruction.pdfInput Data • Set of range scans – Each scan is a regular quad‐or tri‐

Implicit RepresentationsImplicit RepresentationsImplicit RepresentationsImplicit Representations

• Level set of 2D function defines 1D curveLevel set of 2D function defines 1D curve

Page 6: Surface Reconstruction: Part II - Computer graphicsgraphics.stanford.edu/.../04_Surface_Reconstruction.pdfInput Data • Set of range scans – Each scan is a regular quad‐or tri‐

Explicit / ImplicitExplicit / ImplicitExplicit / ImplicitExplicit / Implicit• Explicit representation

– Image of parameterization– Easy to find points on shapeC d f bl– Can defer problems to paramdomain

• Implicit representation– Zero set of distance functionEasy in/out/distance test– Easy in/out/distance test

–– Easy to handle different topologiesEasy to handle different topologies

Page 7: Surface Reconstruction: Part II - Computer graphicsgraphics.stanford.edu/.../04_Surface_Reconstruction.pdfInput Data • Set of range scans – Each scan is a regular quad‐or tri‐

Implicit RepresentationsImplicit RepresentationsImplicit RepresentationsImplicit Representations

• Easy to handle different topologiesEasy to handle different topologies

Page 8: Surface Reconstruction: Part II - Computer graphicsgraphics.stanford.edu/.../04_Surface_Reconstruction.pdfInput Data • Set of range scans – Each scan is a regular quad‐or tri‐
Page 9: Surface Reconstruction: Part II - Computer graphicsgraphics.stanford.edu/.../04_Surface_Reconstruction.pdfInput Data • Set of range scans – Each scan is a regular quad‐or tri‐

Implicit RepresentationsImplicit RepresentationsImplicit RepresentationsImplicit Representations

• General implicit pfunction:– Interior: F(x,y,z) < 0( ,y, )– Exterior:F(x,y,z) > 0– Surface: F(x,y,z) = 0Surface: F(x,y,z) 0

• Special case– Signed distance function (SDF)

Page 10: Surface Reconstruction: Part II - Computer graphicsgraphics.stanford.edu/.../04_Surface_Reconstruction.pdfInput Data • Set of range scans – Each scan is a regular quad‐or tri‐

Explicit Reconstruction MethodsExplicit Reconstruction Methodspp

• Connect sample points by triangles

• Exact interpolation of sample pointsp p p

• Bad for noisy or misaligned data

• Can lead to holes or non manifold situations• Can lead to holes or non‐manifold situations

Page 11: Surface Reconstruction: Part II - Computer graphicsgraphics.stanford.edu/.../04_Surface_Reconstruction.pdfInput Data • Set of range scans – Each scan is a regular quad‐or tri‐

Implicit Reconstruction MethodsImplicit Reconstruction Methodspp

• Estimate signed distance function (SDF)

• Extract zero iso‐surface

• Approximation of input points

• Watertight manifold results by construction• Watertight manifold results by construction– Can have spurious components

Page 12: Surface Reconstruction: Part II - Computer graphicsgraphics.stanford.edu/.../04_Surface_Reconstruction.pdfInput Data • Set of range scans – Each scan is a regular quad‐or tri‐

Input Implicit Explicit

Page 13: Surface Reconstruction: Part II - Computer graphicsgraphics.stanford.edu/.../04_Surface_Reconstruction.pdfInput Data • Set of range scans – Each scan is a regular quad‐or tri‐

Implicit Function Approach

Page 14: Surface Reconstruction: Part II - Computer graphicsgraphics.stanford.edu/.../04_Surface_Reconstruction.pdfInput Data • Set of range scans – Each scan is a regular quad‐or tri‐

Implicit Function Approach

• Define a function 3:f R R→

with value < 0 outside the shape and > 0

:f R R→

the shape and > 0 inside

< 0 > 00

Page 15: Surface Reconstruction: Part II - Computer graphicsgraphics.stanford.edu/.../04_Surface_Reconstruction.pdfInput Data • Set of range scans – Each scan is a regular quad‐or tri‐

Implicit Function Approach

• Define a function 3:f R R→

with value < 0 outside the shape and > 0 inside

:f R R→

the shape and > 0 inside

• Extract the zero set• Extract the zero‐set 

{ : ( ) 0}x f x =< 0 > 00

{ : ( ) 0}x f x =

Page 16: Surface Reconstruction: Part II - Computer graphicsgraphics.stanford.edu/.../04_Surface_Reconstruction.pdfInput Data • Set of range scans – Each scan is a regular quad‐or tri‐

Signed Distance FunctionSigned Distance FunctionSigned Distance FunctionSigned Distance Function

• Construct SDF from point samplesp p– Distance to points is not enough

– Need inside/outside information/

– Reconstruct normal vectors first

+ ‐+

Page 17: Surface Reconstruction: Part II - Computer graphicsgraphics.stanford.edu/.../04_Surface_Reconstruction.pdfInput Data • Set of range scans – Each scan is a regular quad‐or tri‐

Normal EstimationNormal EstimationNormal EstimationNormal Estimation

• To find normal ni for each sample point pip1. Examine local neighborhood for each point

• Set of k nearest neighborsSet of k nearest neighbors

2. Compute best approximating tangent plane• Covariance analysis• Covariance analysis

3. Determine normal orientation• MST propagation pi• MST propagation pi

Page 18: Surface Reconstruction: Part II - Computer graphicsgraphics.stanford.edu/.../04_Surface_Reconstruction.pdfInput Data • Set of range scans – Each scan is a regular quad‐or tri‐

Normal EstimationNormal EstimationNormal EstimationNormal Estimation

• To find normal ni for each sample point pip1. Examine local neighborhood for each point

• Set of k nearest neighborsSet of k nearest neighbors

2. Compute best approximating tangent plane• Covariance analysis• Covariance analysis

3. Determine normal orientation• MST propagation• MST propagation

Page 19: Surface Reconstruction: Part II - Computer graphicsgraphics.stanford.edu/.../04_Surface_Reconstruction.pdfInput Data • Set of range scans – Each scan is a regular quad‐or tri‐

Local NeighborhoodLocal NeighborhoodLocal NeighborhoodLocal Neighborhood

• Find k nearest neighbors (kNN) of a pointFind k nearest neighbors (kNN) of a point– Brute force: O(n) complexity

• Use BSP tree– Binary space partitioning treey p p g

– Recursively partition 3D space by planes

– Tree should be balanced, put plane at medianTree should be balanced, put plane at median

– log(n) tree levels, complexity O(log n)

Page 20: Surface Reconstruction: Part II - Computer graphicsgraphics.stanford.edu/.../04_Surface_Reconstruction.pdfInput Data • Set of range scans – Each scan is a regular quad‐or tri‐

BSP Closest PointsBSP Closest PointsBSP Closest PointsBSP Closest Points

PA A

DF B C

PA

PBED

PC

F G

E

PC

G

Page 21: Surface Reconstruction: Part II - Computer graphicsgraphics.stanford.edu/.../04_Surface_Reconstruction.pdfInput Data • Set of range scans – Each scan is a regular quad‐or tri‐

BSP Closest PointsBSP Closest PointsBSP Closest PointsBSP Closest Points

APAD

F B C

PA

ED F GPBP

E

PC

G

Page 22: Surface Reconstruction: Part II - Computer graphicsgraphics.stanford.edu/.../04_Surface_Reconstruction.pdfInput Data • Set of range scans – Each scan is a regular quad‐or tri‐

BSP Closest PointsBSP Closest PointsBSP Closest PointsBSP Closest Points

APA

B CD

F

PA

ED F GPBP

E

PC

G

Page 23: Surface Reconstruction: Part II - Computer graphicsgraphics.stanford.edu/.../04_Surface_Reconstruction.pdfInput Data • Set of range scans – Each scan is a regular quad‐or tri‐

BSP Closest PointsBSP Closest PointsBSP Closest PointsBSP Closest Points

APA

B CD

F

PA

ED F GPBP

E

PC

G

Page 24: Surface Reconstruction: Part II - Computer graphicsgraphics.stanford.edu/.../04_Surface_Reconstruction.pdfInput Data • Set of range scans – Each scan is a regular quad‐or tri‐

BSP Closest PointsBSP Closest PointsBSP Closest PointsBSP Closest Points

APA

B CD

F

PA

ED F GPBP

E

PC

G

Page 25: Surface Reconstruction: Part II - Computer graphicsgraphics.stanford.edu/.../04_Surface_Reconstruction.pdfInput Data • Set of range scans – Each scan is a regular quad‐or tri‐

BSP Closest PointsBSP Closest PointsBSP Closest PointsBSP Closest Points

Node::dist(Point x, Scalar& dmin)( ){if (leaf_node())

for each sample point p[i]dmin = min(dmin, dist(x, p[i]));

else{

d = dist_to_plane(x);if (d < 0) {{

left_child->dist(x, dmin);if (|d| < dmin) right_child->dist(x, dmin);

} else {{

right_child->dist(x, dmin);if (|d| < dmin) left_child->dist(x, dmin);

}}

}}

Page 26: Surface Reconstruction: Part II - Computer graphicsgraphics.stanford.edu/.../04_Surface_Reconstruction.pdfInput Data • Set of range scans – Each scan is a regular quad‐or tri‐

Normal EstimationNormal EstimationNormal EstimationNormal Estimation

• Find normal ni for each sample point pip1. Examine local neighborhood for each point

• Set of k nearest neighborsSet of k nearest neighbors

2. Compute best approximating tangent plane• Covariance analysis• Covariance analysis

3. Determine normal orientation• MST propagation• MST propagation

Page 27: Surface Reconstruction: Part II - Computer graphicsgraphics.stanford.edu/.../04_Surface_Reconstruction.pdfInput Data • Set of range scans – Each scan is a regular quad‐or tri‐

Principal Component AnalysisPrincipal Component AnalysisPrincipal Component AnalysisPrincipal Component Analysis

• Fit a plane with center c and normal n to a set of points {p1, ..., pm}

Mi i i l t• Minimize least squares error

• Subject to non‐linear constraintn

Subject to non linear constraintc pi

Page 28: Surface Reconstruction: Part II - Computer graphicsgraphics.stanford.edu/.../04_Surface_Reconstruction.pdfInput Data • Set of range scans – Each scan is a regular quad‐or tri‐

Principal Component AnalysisPrincipal Component AnalysisPrincipal Component AnalysisPrincipal Component Analysis

• Plane center is barycenter of pointsy p

• Normal is eigenvector w.r.t. smallest geigenvalue of point covariance matrix

Page 29: Surface Reconstruction: Part II - Computer graphicsgraphics.stanford.edu/.../04_Surface_Reconstruction.pdfInput Data • Set of range scans – Each scan is a regular quad‐or tri‐

Normal EstimationNormal EstimationNormal EstimationNormal Estimation

• Find normal ni for each sample point pip1. Examine local neighborhood for each point

• Set of k nearest neighborsSet of k nearest neighbors

2. Compute best approximating tangent plane• Covariance analysis• Covariance analysis

3. Determine normal orientation• MST propagation• MST propagation

Page 30: Surface Reconstruction: Part II - Computer graphicsgraphics.stanford.edu/.../04_Surface_Reconstruction.pdfInput Data • Set of range scans – Each scan is a regular quad‐or tri‐

Naïve Orientation PropagationNaïve Orientation PropagationNaïve Orientation PropagationNaïve Orientation Propagation

Page 31: Surface Reconstruction: Part II - Computer graphicsgraphics.stanford.edu/.../04_Surface_Reconstruction.pdfInput Data • Set of range scans – Each scan is a regular quad‐or tri‐

Normal OrientationNormal OrientationNormal OrientationNormal Orientation

• Build graph connecting neighboring pointsu d g ap co ec g e g bo g po s– Edge (ij) exists if pi kNN(pj) or pj kNN(pi)

• Propagate normal orientation through graph• Propagate normal orientation through graph– For neighbors pi,pj: Flip nj if niTnj < 0– Fails at sharp edges/corners

• Propagate along “safe” paths (parallel normals)Minimum spanning tree with angle based edge weights wij = 1– Minimum spanning tree with angle‐based edge weights  wij = 1-| niTnj |

Page 32: Surface Reconstruction: Part II - Computer graphicsgraphics.stanford.edu/.../04_Surface_Reconstruction.pdfInput Data • Set of range scans – Each scan is a regular quad‐or tri‐

SDF from Point & NormalsSDF from Point & NormalsSDF from Point & NormalsSDF from Point & Normals

• Signed distance from tangent planes– Points + normals determine local tangent planes

– Use distance from closest center’s tangent planeg p

– Linear approximation in Voronoi cell

– Simple and efficient, but SDF is only C-1Simple and efficient, but SDF is only Cx( )F x

Page 33: Surface Reconstruction: Part II - Computer graphicsgraphics.stanford.edu/.../04_Surface_Reconstruction.pdfInput Data • Set of range scans – Each scan is a regular quad‐or tri‐

Smooth SDF ApproximationSmooth SDF ApproximationSmooth SDF ApproximationSmooth SDF Approximation

• Scattered data interpolation problemScattered data interpolation problem– On‐surface constraints    dist(pi) = 0 Avoid trivial solution dist ≡ 0– Avoid trivial solution        dist ≡ 0

– Off‐surface constraints    dist(pi + εni) = ε

11

1

0

0

0 01

10

Page 34: Surface Reconstruction: Part II - Computer graphicsgraphics.stanford.edu/.../04_Surface_Reconstruction.pdfInput Data • Set of range scans – Each scan is a regular quad‐or tri‐

Smooth SDF ApproximationSmooth SDF ApproximationSmooth SDF ApproximationSmooth SDF Approximation

• Scattered data interpolation problemScattered data interpolation problem– On‐surface constraints    dist(pi) = 0 Avoid trivial solution dist ≡ 0– Avoid trivial solution        dist ≡ 0

– Off‐surface constraints    dist(pi + εni) = ε

• Radial basis functions– Well suited for smooth interpolationWell suited for smooth interpolation

– Sum of shifted, weighted kernel functions

Page 35: Surface Reconstruction: Part II - Computer graphicsgraphics.stanford.edu/.../04_Surface_Reconstruction.pdfInput Data • Set of range scans – Each scan is a regular quad‐or tri‐

Radial Basis FunctionsRadial Basis Functions InterpolationInterpolationRadial Basis FunctionsRadial Basis Functions InterpolationInterpolation

How do we find the weights?

Page 36: Surface Reconstruction: Part II - Computer graphicsgraphics.stanford.edu/.../04_Surface_Reconstruction.pdfInput Data • Set of range scans – Each scan is a regular quad‐or tri‐

Radial Basis FunctionsRadial Basis FunctionsRadial Basis FunctionsRadial Basis Functions

2n equations2n equations

2n variables

The on‐ and off‐surface points are the centers ci

Page 37: Surface Reconstruction: Part II - Computer graphicsgraphics.stanford.edu/.../04_Surface_Reconstruction.pdfInput Data • Set of range scans – Each scan is a regular quad‐or tri‐

Radial Basis FunctionsRadial Basis FunctionsRadial Basis FunctionsRadial Basis Functions

2n equations( ) ( )( ) 0j i i j i j idist w wϕ ϕ= = − =∑ ∑p p p c 2n equations( ) ( )

( )( )

( ) 0

( )

j i i j i j ii i

j j i j j i

dist w w

dist w

ϕ ϕ

ε ϕ ε ε+ = + − =

∑ ∑

p p p c

p n p n c 2n variables( )i

The on‐ and off‐surface points are the centers ci

0

00εK w dε

Page 38: Surface Reconstruction: Part II - Computer graphicsgraphics.stanford.edu/.../04_Surface_Reconstruction.pdfInput Data • Set of range scans – Each scan is a regular quad‐or tri‐

Radial Basis FunctionsRadial Basis FunctionsRadial Basis FunctionsRadial Basis Functions

• Solve the system Kw = d for w• Implicit function is defined as:

Page 39: Surface Reconstruction: Part II - Computer graphicsgraphics.stanford.edu/.../04_Surface_Reconstruction.pdfInput Data • Set of range scans – Each scan is a regular quad‐or tri‐

RBF Basis FunctionsRBF Basis FunctionsRBF Basis FunctionsRBF Basis Functions

• Tri‐harmonic basis functions

– Globally supported– Leads to dense symmetric linear system– C2 smoothness– Provably smooth

– Works well for highly irregular samplingWorks well for highly irregular sampling

Page 40: Surface Reconstruction: Part II - Computer graphicsgraphics.stanford.edu/.../04_Surface_Reconstruction.pdfInput Data • Set of range scans – Each scan is a regular quad‐or tri‐

Other Radial Basis FunctionsOther Radial Basis FunctionsOther Radial Basis Functions Other Radial Basis Functions • Polyharmonic spline

• Multiquadratic

• Gaussian

• B‐Spline (compact support)

Page 41: Surface Reconstruction: Part II - Computer graphicsgraphics.stanford.edu/.../04_Surface_Reconstruction.pdfInput Data • Set of range scans – Each scan is a regular quad‐or tri‐

How Big isHow Big is εε??How Big is How Big is εε??

Without normal length lid ti

With normal length lid tivalidation validation

Page 42: Surface Reconstruction: Part II - Computer graphicsgraphics.stanford.edu/.../04_Surface_Reconstruction.pdfInput Data • Set of range scans – Each scan is a regular quad‐or tri‐

ExamplesExamplesExamplesExamples

Page 43: Surface Reconstruction: Part II - Computer graphicsgraphics.stanford.edu/.../04_Surface_Reconstruction.pdfInput Data • Set of range scans – Each scan is a regular quad‐or tri‐

ComparisonComparisonComparisonComparison

Distance Compact RBF Global RBFDistanceto plane

Compact RBF Global RBFTriharmonic

Page 44: Surface Reconstruction: Part II - Computer graphicsgraphics.stanford.edu/.../04_Surface_Reconstruction.pdfInput Data • Set of range scans – Each scan is a regular quad‐or tri‐

Complexity IssuesComplexity IssuesComplexity IssuesComplexity Issues

• Solve the linear system for RBF weightsSolve the linear system for RBF weights– Hard to solve for large number of samples

• Compactly supported RBFs– Sparse linear system– Efficient solvers

• Greedy RBF fittingGreedy RBF fitting– Start with a few RBFs only– Add more RBFs in region of large errorAdd more RBFs in region of large error

Page 45: Surface Reconstruction: Part II - Computer graphicsgraphics.stanford.edu/.../04_Surface_Reconstruction.pdfInput Data • Set of range scans – Each scan is a regular quad‐or tri‐

Extracting the SurfaceExtracting the SurfaceExtracting the SurfaceExtracting the Surface

F(x) = 0  surface

ology.com

F(x) < 0  inside

e from

: www.fa

rfieldtechno

F(x) > 0  outside

Image

Page 46: Surface Reconstruction: Part II - Computer graphicsgraphics.stanford.edu/.../04_Surface_Reconstruction.pdfInput Data • Set of range scans – Each scan is a regular quad‐or tri‐

Sample the SDFSample the SDFSample the SDFSample the SDF

Page 47: Surface Reconstruction: Part II - Computer graphicsgraphics.stanford.edu/.../04_Surface_Reconstruction.pdfInput Data • Set of range scans – Each scan is a regular quad‐or tri‐

Sample the SDFSample the SDFSample the SDFSample the SDF

Page 48: Surface Reconstruction: Part II - Computer graphicsgraphics.stanford.edu/.../04_Surface_Reconstruction.pdfInput Data • Set of range scans – Each scan is a regular quad‐or tri‐

2D: Marching Squaresg q

?

Page 49: Surface Reconstruction: Part II - Computer graphicsgraphics.stanford.edu/.../04_Surface_Reconstruction.pdfInput Data • Set of range scans – Each scan is a regular quad‐or tri‐

3D: Marching Cubes3D: Marching Cubes3D: Marching Cubes3D: Marching Cubes

• Classify grid nodes as inside/outsideClassify grid nodes as inside/outside

• Classify cell: 28 configurations

i i l i l d• Linear interpolation along edges

• Look‐up table for patch configuration– Disambiguation more complicated

Page 50: Surface Reconstruction: Part II - Computer graphicsgraphics.stanford.edu/.../04_Surface_Reconstruction.pdfInput Data • Set of range scans – Each scan is a regular quad‐or tri‐

Marching CubesMarching CubesMarching CubesMarching Cubes

• Cell classification:Cell classification:– Inside

Outside– Outside

– Intersecting

Page 51: Surface Reconstruction: Part II - Computer graphicsgraphics.stanford.edu/.../04_Surface_Reconstruction.pdfInput Data • Set of range scans – Each scan is a regular quad‐or tri‐

Marching CubesMarching Cubes256 cases  15 cases

InversionRotationMarching CubesMarching Cubes

Page 52: Surface Reconstruction: Part II - Computer graphicsgraphics.stanford.edu/.../04_Surface_Reconstruction.pdfInput Data • Set of range scans – Each scan is a regular quad‐or tri‐

Marching CubesMarching CubesMarching CubesMarching Cubes

Page 53: Surface Reconstruction: Part II - Computer graphicsgraphics.stanford.edu/.../04_Surface_Reconstruction.pdfInput Data • Set of range scans – Each scan is a regular quad‐or tri‐

Marching Cubes ProblemsMarching Cubes ProblemsMarching Cubes ProblemsMarching Cubes Problems

• AmbiguityH l– Holes

• Generates HUGE meshes– Millions of polygons

Page 54: Surface Reconstruction: Part II - Computer graphicsgraphics.stanford.edu/.../04_Surface_Reconstruction.pdfInput Data • Set of range scans – Each scan is a regular quad‐or tri‐

AmbiguityAmbiguityAmbiguityAmbiguity

Separate pink

Separate blue

Page 55: Surface Reconstruction: Part II - Computer graphicsgraphics.stanford.edu/.../04_Surface_Reconstruction.pdfInput Data • Set of range scans – Each scan is a regular quad‐or tri‐

The Inversion ProblemThe Inversion ProblemThe Inversion ProblemThe Inversion Problem

• Reduction from 256 to 15 cases includesReduction from 256 to 15 cases includes inversion

Page 56: Surface Reconstruction: Part II - Computer graphicsgraphics.stanford.edu/.../04_Surface_Reconstruction.pdfInput Data • Set of range scans – Each scan is a regular quad‐or tri‐

The Inversion ProblemThe Inversion ProblemThe Inversion ProblemThe Inversion Problem

Inversion

InversionMismatch

Page 57: Surface Reconstruction: Part II - Computer graphicsgraphics.stanford.edu/.../04_Surface_Reconstruction.pdfInput Data • Set of range scans – Each scan is a regular quad‐or tri‐

Ambiguity SolutionAmbiguity SolutionAmbiguity SolutionAmbiguity Solution• 256 cases  23 cases

– Rotation only– Rotation only– Always separate same “color”– Ambiguous faces triangulated consistently

• 8 new cases

Page 58: Surface Reconstruction: Part II - Computer graphicsgraphics.stanford.edu/.../04_Surface_Reconstruction.pdfInput Data • Set of range scans – Each scan is a regular quad‐or tri‐

Without InversionWithout InversionWithout InversionWithout Inversion

Match

Page 59: Surface Reconstruction: Part II - Computer graphicsgraphics.stanford.edu/.../04_Surface_Reconstruction.pdfInput Data • Set of range scans – Each scan is a regular quad‐or tri‐

Ambiguity

Nodemo Ambiguity

Page 60: Surface Reconstruction: Part II - Computer graphicsgraphics.stanford.edu/.../04_Surface_Reconstruction.pdfInput Data • Set of range scans – Each scan is a regular quad‐or tri‐

Ambiguity No Ambiguity

Page 61: Surface Reconstruction: Part II - Computer graphicsgraphics.stanford.edu/.../04_Surface_Reconstruction.pdfInput Data • Set of range scans – Each scan is a regular quad‐or tri‐

Marching Cubes IssuesMarching Cubes IssuesMarching Cubes IssuesMarching Cubes Issues

• Grid not adaptiveGrid not adaptive

• Many polygons required to represent small featuresfeatures

Images from: “Dual Marching Cubes: Primal Contouring of Dual Grids” by Schaeffer et al.

Page 62: Surface Reconstruction: Part II - Computer graphicsgraphics.stanford.edu/.../04_Surface_Reconstruction.pdfInput Data • Set of range scans – Each scan is a regular quad‐or tri‐
Page 63: Surface Reconstruction: Part II - Computer graphicsgraphics.stanford.edu/.../04_Surface_Reconstruction.pdfInput Data • Set of range scans – Each scan is a regular quad‐or tri‐

Beyond RBFBeyond RBFBeyond RBFBeyond RBF

• Poisson reconstructionPoisson reconstruction[Kazhdan 06]

Page 64: Surface Reconstruction: Part II - Computer graphicsgraphics.stanford.edu/.../04_Surface_Reconstruction.pdfInput Data • Set of range scans – Each scan is a regular quad‐or tri‐

Beyond RBFBeyond RBFBeyond RBFBeyond RBF

• Interactive approachInteractive approach[Sharf, 2007]