Transcript
Page 1: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

Surface Reconstruction

Gianpaolo Palma

Page 2: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

Surface reconstruction

Page 3: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

Inputβ€’ Point cloud

β€’ With or without normals

β€’ Examples: multi-view stereo, union of range scan vertices

β€’ Range scans

β€’ Each scan is a triangular mesh

β€’ Normal vectors derived by local connectivity

β€’ All the scans in the same coordinate system

Page 4: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

Problem

Page 5: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

Surface Reconstruction

β€’ Explicit approachβ€’ Delaunay Triangulation

β€’ Ball Pivoting

β€’ Zippering

β€’ Implicit approachβ€’ Radial Basis Function

β€’ Signed distance field from range scan

β€’ Moving Least Square

β€’ Smoothed Signed Distance Surface Reconstruction

β€’ Poisson Surface Reconstruction

Page 6: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

Delaunay Algorithm

β€’ General triangulation on n points in d-dimensional space by partition of the covex-hull with d-simplex

β€’ A triangulation such that for each d-simplex the circum-hypersphere doesn’t contains any other points

β€’ The triangulation covers all the covex-hull defined by the input points

Page 7: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

Delaunay Algorithm

β€’ 2D case

Page 8: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

Delaunay Algorithm

β€’ 2D case

Page 9: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

Delaunay Algorithm

β€’ 2D case

VALID DELAUNAY

Page 10: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

Delaunay Algorithm

β€’ 2D case

VALID DELAUNAY NO VALID DELAUNAY

Page 11: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

Delaunay Algorithm

β€’ 3D case (triangle -> tetrahedron, circle->sphere)

Page 12: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

Delaunay Algorithm

β€’ Need a sculpting operation to extract the limit surface

[Boissonnat, TOG 84]

Page 13: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

Delaunay Algorithm

β€’ Problems

β€’ Need clean data

β€’ Slow

β€’ Not always exist for d >= 3

Page 14: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

Ball Pivoting

β€’ Pick a ball radius, roll ball around surface, connect

what it hits

β€’ Pivoting of a ball of fixed radius around an edge of the

current front adds a new triangles to the mesh

[Bernardini et al., TVCG 99]

Page 15: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

Ball Pivoting

Page 16: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

Ball Pivoting

Page 17: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

Ball Pivoting

Page 18: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

Ball Pivoting

Page 19: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

Ball Pivoting

β€’ Problem with different sampling density, but we can

use ball of increasing radius

β€’ Problem with concavities

Page 20: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

Ball Pivoting

Page 21: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

Ball Pivoting

β€’ Iterative approach

β€’ Small Radius, capture high frequencies

β€’ Large Radius, close holes (keeping mesh from

previous pass)

Page 22: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

Zippering

β€’ β€œZipper” several scans to one single model

[Turk et al., SIGGRAPH 94]

Page 23: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

Zippering

β€’ Remove overlap regions (all the vertices of the

triangle have as neighbor a no-border vertex)

Page 24: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

Zippering

β€’ Project and intersect the boundary of B

Page 25: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

Zippering

β€’ Incorporate the new points in the triangulation

Page 26: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

Zippering

β€’ Remove overlap regions of A

Page 27: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

Zippering

β€’ Optimize triangulation

Page 28: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

Zippering

β€’ Preserve regular structure of each scan but problems

with intricate geometry, noise and small misalignment

Page 29: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

Implicit Reconstruction

β€’ Define a distance function

f with value < 0 outside

the shape and > 0 inside

the shape

β€’ Extract the zero‐set

Page 30: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

Implicit Reconstruction

Algorithmβ€’ Input: Point cloud or range map

1. Estimation of the signed distance field

2. Evaluation of the function on an uniform grid

3. Mesh extraction via Marching Cubes

β€’ Output: Triangular Mesh

β€’ The existing algorithms differ on the method used to compute the signed distance filed

Page 31: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

Signed Distance Function

β€’ Construct SDF from point samples

β€’ Distance to points is not enough

β€’ Need inside/outside information

β€’ Requires normal vectors

Page 32: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

Normal Estimation for

Range Map

β€’ Per-face normal

β€’ Per-vertex normal

Page 33: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

Normal Estimation for Point

Cloud

β€’ Estimate the normal vector for each point

1. Extract the k-nearest neighbor point

2. Compute the best approximating tangent plane by

covariance analysis

3. Compute the normal orientation

[Hoppe et al., SIGGRAPH 92]

Page 34: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

Normal Estimation for Point

Cloud

β€’ Estimate the normal vector for each point

1. Extract the k-nearest neighbor point

2. Compute the best approximating tangent plane by

covariance analysis

3. Compute the normal orientation

[Hoppe et al., SIGGRAPH 92]

Page 35: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

Normal Estimation for Point

Cloud

β€’ Estimate the normal vector for each point

1. Extract the k-nearest neighbor point

2. Compute the best approximating tangent plane by

covariance analysis

3. Compute the normal orientation

[Hoppe et al., SIGGRAPH 92]

Page 36: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

Principal Component

Analysis

β€’ Fit a plane with center and normal to a set of

points

β€’ Minimize least squares error

β€’ Subject non‐linear constraint

Page 37: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

Principal Component

Analysis1. Compute barycenter (plane center)

2. Compute covariance matrix

3. Select as normal the eigenvector of the covariance matrix with the smallest eigenvalue

Page 38: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

Normal Estimation for Point

Cloud

β€’ Estimate the normal vector for each point

1. Extract the k-nearest neighbor point

2. Compute the best approximating tangent plane by

covariance analysis

3. Compute a coherent normal orientation

[Hoppe et al., SIGGRAPH 92]

Page 39: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

Normal Orientation

β€’ Build graph connecting neighboring points

β€’ Edge (ij) exists if or

β€’ Propagate normal orientation through graph

β€’ For edge (ij) flip if

β€’ Fails at sharp edges/corners

β€’ Propagate along β€œsafe” paths

β€’ Build a minimum spanning tree with angle‐based edge

weights

Page 40: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

SDF from tangent plane

β€’ Signed distance from

tangent planes

β€’ Points and normals determine

local tangent planes

β€’ Use distance from closest

point’s tangent plane

β€’ Simple and efficient, but SDF

is not continuous

[Hoppe et al., SIGGRAPH 92]

Page 41: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

SDF from tangent plane[Hoppe et al., SIGGRAPH 92]

150 SAMPLESRECONSTRUCTION

WITH A 503 GRID

Page 42: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

Smooth SDF Approximation

β€’ Use radial basis functions

(RBFs) to implicitly

represent surface

β€’ Function such that the

value depends only on

the distance from the

origin or from a center

β€’ Sum of radial basis

functions used to

approximate a function

Page 43: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

Smooth SDF Approximation

β€’ Give the n input points

β€’ Approximate distance field with a shifted weighted

sum of radial basis functions

β€’ Use the input points as centers of the radial functions

β€’ Constrain:

β€’ The approximated SDF must be continuous and

smooth

[Carr et al., SIGGRAPH 01]

Page 44: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

Estimate the RBF weight

β€’ Set a system of n equations

β€’ Solve a linear system

[Carr et al., SIGGRAPH 01]

Page 45: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

Estimate the RBF weight

β€’ For the input point we have

β€’ The RBF system is

β€’ Problem: It gets the trivial solution

β€’ We need additional constrains

β€’ Off-surface point

[Carr et al., SIGGRAPH 01]

Page 46: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

Off-surface Points

β€’ For each point in data add 2

off-surface points on both

sides of surface

β€’ Use normal data to find off-

surface points

[Carr et al., SIGGRAPH 01]

Page 47: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

Off-surface Points

β€’ Select an offset such that off-surface points do not

intersect other parts of the surface

β€’ Adaptive offset: the off-surface point is constructed so

that the closest point is the surface point that

generated it

FIXED OFFSET ADAPTIVE OFFSET

[Carr et al., SIGGRAPH 01]

Page 48: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

Radial Basis Function

β€’ Wendland basis functions

β€’ Compactly supported in

β€’ Leads to sparse, symmetric positive-definite linear

system

β€’ Resulting SDF is smooth

β€’ But surface is not necessarily fair

β€’ Not suited for highly irregular sampling

Page 49: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

Radial Basis Function

β€’ Triharmonic basis functions

β€’ Globally supported function

β€’ Leads to dense linear system

β€’ SDF is smooth

β€’ Provably optimal fairness

β€’ Works well for irregular sampling

Page 50: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

Radial Basis Function

SDF FROM

TANGENT PLANERBF

WENDLAND

RBF

TRIHARMONIC

Page 51: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

RBF Reconstruction

Example [Carr et al., SIGGRAPH 01]

Page 52: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

SDF from Range Scan

β€’ Compute the SDF for each range scan

β€’ Distance along scanner’s line of sight

β€’ Compute a weighting function for each scan

β€’ Use of different weights

β€’ Compute global SDF by weighted average

[Curless et al., SIGGRAPH 96]

Page 53: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

SDF from Range Scan[Curless et al., SIGGRAPH 96]

SDF

WEIGHTS

Page 54: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

SDF from Range Scan

β€’ Weighting functions

β€’ Scanning angle

β€’ Distance from the border

of the scanWITH BORDER WEIGHT

WITHOUT BORDER WEIGHT

Page 55: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

SDF from Range Scan

β€’ Restrict the function near the surface to avoid

interference with other scans

Page 56: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

Moving Least Square

β€’ Approximates a smooth surface from irregularly

sampled points

β€’ Create a local estimate of the surface at every point in

space

β€’ Implicit function is computed by local approximations

β€’ Projection operator that projects points onto the MSL

surface

[Alexa et al., VIS 01]

Page 57: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

β€’ How to project e on the surface defined by the input

points

1. Get Neighborhood of e

Moving Least Square[Alexa et al., VIS 01]

Page 58: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

β€’ How to project e on the surface defined by the input

points

2. Find a local reference plane

minimizing the energy

Moving Least Square

Smooth, positive, and

monotonically decreasing

weight function

[Alexa et al., VIS 01]

Page 59: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

β€’ How to project e on the surface defined by the input

points

3. Find a polynomial approximation

minimizing the energy

Moving Least Square

2D coordinate of

the projection on H

[Alexa et al., VIS 01]

Page 60: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

β€’ How to project e on the surface defined by the input

points

4. Projection of e

5. Iterate if

Moving Least Square[Alexa et al., VIS 01]

Page 61: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

Moving Least Squareβ€’ Simpler projection approach using weighted average

position and normal

[Alexa et al., SPBG 04]

Page 62: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

Moving Least Square

Page 63: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

Poisson Surface

Reconstructionβ€’ Reconstruct the surface of the model by solving for

the indicator function of the shape

( )

=

Mp

MppM

if0

if1

MIndicator function

[Kazhdan et al., SGP 06]

Page 64: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

Indicator Function

β€’ How to compute the indicator function?

MIndicator functionOriented points

[Kazhdan et al., SGP 06]

Page 65: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

Indicator Function

β€’ The gradient of the indicator function is a vector field that is

zero almost everywhere except at points near the surface,

where it is equal to the inward surface normal

Oriented pointsMIndicator gradient

0 0

0

0

0

0

[Kazhdan et al., SGP 06]

Page 66: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

Integration as a Poisson Problem

β€’ Represent the points by a vector field

β€’ Find the function whose gradient best

approximates :

β€’ Applying the divergence operator, we can transform

this into a Poisson problem:

[Kazhdan et al., SGP 06]

Page 67: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

Poisson Surface

Reconstruction

1. Compute the divergence

𝑉 π‘ž

βˆ‡β‹…

[Kazhdan et al., SGP 06]

Page 68: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

Poisson Surface

Reconstruction

1. Compute the divergence

2. Solve the Poisson equation

𝑉 π‘ž

βˆ‡β‹… Ξ”βˆ’1

πœ’ π‘ž

[Kazhdan et al., SGP 06]

Page 69: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

Poisson Surface

ReconstructionSolve the Poisson equation

β–ͺ Discretize over an octree

β–ͺ Update coarse β†’ fine

[Kazhdan et al., SGP 06]

Page 70: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

Poisson Surface

ReconstructionSolve the Poisson equation

β–ͺ Discretize over an octree

β–ͺ Update coarse β†’ fine

[Kazhdan et al., SGP 06]

Page 71: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

Poisson Surface

ReconstructionSolve the Poisson equation

β–ͺ Discretize over an octree

β–ͺ Update coarse β†’ fine

[Kazhdan et al., SGP 06]

Page 72: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

Poisson Surface

ReconstructionSolve the Poisson equation

β–ͺ Discretize over an octree

β–ͺ Update coarse β†’ fine

[Kazhdan et al., SGP 06]

Page 73: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

Poisson Surface

Reconstruction

β€’ Advantages:

β€’ Robust to noise

β€’ Adapt to the sampling

density

β€’ Can handle large models

β€’ Disadvantages

β€’ Over-smoothing

[Kazhdan et al., SGP 06]

Page 74: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

Smooth Signed Distance

Surface Reconstruction

β€’ Oriented point set

β€’ Implicit surface

β€’ Least square energy (data term and regularization

term)

[Calakli et al., PG 11]

Page 75: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

Smooth Signed Distance

Surface Reconstruction

β€’ Near the point data dominates the energy

β€’ Make the function approximate the signed distance

function

β€’ Away from the point data dominates the regularization

energy

β€’ Tend to make the gradient vector field constant

[Calakli et al., PG 11]

Page 76: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

Smooth Signed Distance

Surface Reconstruction

POISSON SSD

[Calakli et al., PG 11]

Page 77: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

Screened Poisson Surface

Reconstruction

β€’ Add discrete interpolation to the energy

β€’ Encourage indicator function to be zero at samples

[Kazhdan et al., TOG 13]

Page 78: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

Screened Poisson Surface

Reconstruction[Kazhdan et al., TOG 13]

π‘₯

𝑧

π‘₯

𝑧

π‘₯

𝑧

POISSON SSD SCREENED POISSON

Page 79: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

Screened Poisson Surface

Reconstruction

β€’ Sharper reconstruction

β€’ Fast method (linear solver)

β€’ But it assumes clean data

[Kazhdan et al., TOG 13]

π‘₯

𝑧

POISSON SCREENED POISSON

Page 80: 3D Scanning Instruments - Banterle...[Kazhdan et al., SGP 06] Poisson Surface Reconstruction 1. Compute the divergence π‘‰π‘ž βˆ‡β‹… [Kazhdan et al., SGP 06] Poisson Surface Reconstruction

Referencesβ€’ Boissonnat, Jean-Daniel. "Geometric structures for three-dimensional shape representation." ACM

Transactions on Graphics (TOG) 3.4 (1984): 266-286.

β€’ Bernardini, Fausto, et al. "The ball-pivoting algorithm for surface reconstruction." IEEE transactions on visualization and computer graphics 5.4 (1999): 349-359.

β€’ Turk, Greg, and Marc Levoy. "Zippered polygon meshes from range images." Proceedings of the 21st annual conference on Computer graphics and interactive techniques. ACM, 1994.

β€’ Hoppe, Hugues, et al. Surface reconstruction from unorganized points. Vol. 26. No. 2. ACM, 1992.

β€’ Carr, Jonathan C., et al. "Reconstruction and representation of 3D objects with radial basis functions." Proceedings of the 28th annual conference on Computer graphics and interactive techniques. ACM, 2001.

β€’ Curless, Brian, and Marc Levoy. "A volumetric method for building complex models from range images." Proceedings of the 23rd annual conference on Computer graphics and interactive techniques. ACM, 1996.

β€’ Alexa, Marc et al. β€œPoint set surfaces”. In: Proc. of IEEE Visualization 01.

β€’ Alexa, Marc, and Anders Adamson. "On Normals and Projection Operators for Surfaces Defined by Point Sets." SPBG 4 (2004): 149-155.

β€’ Kazhdan, Michael, Matthew Bolitho, and Hugues Hoppe. "Poisson surface reconstruction." Proceedings of the fourth Eurographics symposium on Geometry processing. Eurographics Association, 2006.

β€’ Calakli, Fatih, and Gabriel Taubin. "SSD: Smooth signed distance surface reconstruction." Computer Graphics Forum. Vol. 30. No. 7. Blackwell Publishing Ltd, 2011.

β€’ Kazhdan, Michael, and Hugues Hoppe. "Screened poisson surface reconstruction." ACM Transactions on Graphics (TOG) 32.3 (2013): 29.


Recommended