Top Banner
Spectral Surface Reconstruction from Noisy Point Clouds Ravi Kolluri Jonathan Shewchuk James O’Brien Computer Science Division University of California Berkeley, California
53

Spectral Surface Reconstruction from Noisy Point Cloudsgraphics.berkeley.edu/papers/Kolluri-SSR-2004-07/eigentalk.pdf · Spectral Surface Reconstruction from Noisy Point Clouds Ravi

Feb 29, 2020

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Spectral Surface Reconstruction from Noisy Point Cloudsgraphics.berkeley.edu/papers/Kolluri-SSR-2004-07/eigentalk.pdf · Spectral Surface Reconstruction from Noisy Point Clouds Ravi

Spectral Surface Reconstructionfrom NoisyPoint Clouds

Ravi KolluriJonathan ShewchukJames O’Brien

Computer Science DivisionUniversity of CaliforniaBerkeley, California

Page 2: Spectral Surface Reconstruction from Noisy Point Cloudsgraphics.berkeley.edu/papers/Kolluri-SSR-2004-07/eigentalk.pdf · Spectral Surface Reconstruction from Noisy Point Clouds Ravi

This way please.

Page 3: Spectral Surface Reconstruction from Noisy Point Cloudsgraphics.berkeley.edu/papers/Kolluri-SSR-2004-07/eigentalk.pdf · Spectral Surface Reconstruction from Noisy Point Clouds Ravi

Surface Reconstruction from 3D Point Clouds

Input: Point cloud Output: Surface triangulation

Page 4: Spectral Surface Reconstruction from Noisy Point Cloudsgraphics.berkeley.edu/papers/Kolluri-SSR-2004-07/eigentalk.pdf · Spectral Surface Reconstruction from Noisy Point Clouds Ravi

Previous Work

Delaunay:

Pioneers:Boissonnat (1984)

Hoppe−DeRose−Duchamp−McDonald−Stuetzle (1992)

Ohtake−Belyaev−Alexa−Turk−Seidel (2003)Carr−Beatson−Cherrie−Mitchell−Fright−et al. (2001)Bittar−Tsingos−Gascuel (1995)

Implicit Surfaces:

Amenta−Choi−Dey−Leekha ‘‘Cocone’’ (2002)Amenta−Choi−Kolluri ‘‘Powercrust’’ (2001)

Dey−Goswami ‘‘Tight Cocone’’ (2003)

Amenta−Bern−Kamvysselis ‘‘Crust’’ (1998/1999)

Curless−Levoy (1996)

Page 5: Spectral Surface Reconstruction from Noisy Point Cloudsgraphics.berkeley.edu/papers/Kolluri-SSR-2004-07/eigentalk.pdf · Spectral Surface Reconstruction from Noisy Point Clouds Ravi

Noise, Outliers, and Undersampling

Powercrust

hand with outliers.reconstruction of

Tight Cocone reconstruction ofStanford Bunny with random

noise in point coordinates.

Page 6: Spectral Surface Reconstruction from Noisy Point Cloudsgraphics.berkeley.edu/papers/Kolluri-SSR-2004-07/eigentalk.pdf · Spectral Surface Reconstruction from Noisy Point Clouds Ravi

Our Approach Add bounding box

Page 7: Spectral Surface Reconstruction from Noisy Point Cloudsgraphics.berkeley.edu/papers/Kolluri-SSR-2004-07/eigentalk.pdf · Spectral Surface Reconstruction from Noisy Point Clouds Ravi

Our Approach Form Delaunay triangulation

Page 8: Spectral Surface Reconstruction from Noisy Point Cloudsgraphics.berkeley.edu/papers/Kolluri-SSR-2004-07/eigentalk.pdf · Spectral Surface Reconstruction from Noisy Point Clouds Ravi

Our Approach : Inside : Outside

Page 9: Spectral Surface Reconstruction from Noisy Point Cloudsgraphics.berkeley.edu/papers/Kolluri-SSR-2004-07/eigentalk.pdf · Spectral Surface Reconstruction from Noisy Point Clouds Ravi

Our Approach(Boissonnat 1984)

Output surface(Always watertight!)

Page 10: Spectral Surface Reconstruction from Noisy Point Cloudsgraphics.berkeley.edu/papers/Kolluri-SSR-2004-07/eigentalk.pdf · Spectral Surface Reconstruction from Noisy Point Clouds Ravi

Why Use Delaunay?

Page 11: Spectral Surface Reconstruction from Noisy Point Cloudsgraphics.berkeley.edu/papers/Kolluri-SSR-2004-07/eigentalk.pdf · Spectral Surface Reconstruction from Noisy Point Clouds Ravi

Why Use Delaunay?

Effortless watertightness & outlier removal.

Page 12: Spectral Surface Reconstruction from Noisy Point Cloudsgraphics.berkeley.edu/papers/Kolluri-SSR-2004-07/eigentalk.pdf · Spectral Surface Reconstruction from Noisy Point Clouds Ravi

Why Use Delaunay?

Many Delaunay algorithms are provably

Effortless watertightness & outlier removal.

correct.

Page 13: Spectral Surface Reconstruction from Noisy Point Cloudsgraphics.berkeley.edu/papers/Kolluri-SSR-2004-07/eigentalk.pdf · Spectral Surface Reconstruction from Noisy Point Clouds Ravi

Why Use Delaunay?

Many Delaunay algorithms are provably

undersampling.correct...in the absence of noise, outliers,

Effortless watertightness & outlier removal.

Page 14: Spectral Surface Reconstruction from Noisy Point Cloudsgraphics.berkeley.edu/papers/Kolluri-SSR-2004-07/eigentalk.pdf · Spectral Surface Reconstruction from Noisy Point Clouds Ravi

Why Use Delaunay?

Many Delaunay algorithms are provably

undersampling.correct...in the absence of noise, outliers,

Achieve same results (in practice) asCocone algorithm on ‘‘clean’’ pointclouds; better results otherwise.

Effortless watertightness & outlier removal.

Our Goal

Page 15: Spectral Surface Reconstruction from Noisy Point Cloudsgraphics.berkeley.edu/papers/Kolluri-SSR-2004-07/eigentalk.pdf · Spectral Surface Reconstruction from Noisy Point Clouds Ravi

Why Use Delaunay?

Because we can make it robust againstnoise, outliers, and undersampling.

Page 16: Spectral Surface Reconstruction from Noisy Point Cloudsgraphics.berkeley.edu/papers/Kolluri-SSR-2004-07/eigentalk.pdf · Spectral Surface Reconstruction from Noisy Point Clouds Ravi

Usedecide which Delaunay tetrahedra are

spectral graph partitioning to

inside/outside the object.

Central Idea

Page 17: Spectral Surface Reconstruction from Noisy Point Cloudsgraphics.berkeley.edu/papers/Kolluri-SSR-2004-07/eigentalk.pdf · Spectral Surface Reconstruction from Noisy Point Clouds Ravi

Usedecide which Delaunay tetrahedra are

spectral graph partitioning to

Use negative edge weightsthe partitioner robust and fast.

to make

And One Little Idea

inside/outside the object.

Central Idea

Page 18: Spectral Surface Reconstruction from Noisy Point Cloudsgraphics.berkeley.edu/papers/Kolluri-SSR-2004-07/eigentalk.pdf · Spectral Surface Reconstruction from Noisy Point Clouds Ravi

The Partitioner Has a Global View

Inside or outside?

Page 19: Spectral Surface Reconstruction from Noisy Point Cloudsgraphics.berkeley.edu/papers/Kolluri-SSR-2004-07/eigentalk.pdf · Spectral Surface Reconstruction from Noisy Point Clouds Ravi

The Partitioner Has a Global View

Eigencrust reconstruction of undersampled hand.

Page 20: Spectral Surface Reconstruction from Noisy Point Cloudsgraphics.berkeley.edu/papers/Kolluri-SSR-2004-07/eigentalk.pdf · Spectral Surface Reconstruction from Noisy Point Clouds Ravi

The Partitioner Has a Global View

Eigencrust

Powercrust

and can make bettersense of outliers.

Page 21: Spectral Surface Reconstruction from Noisy Point Cloudsgraphics.berkeley.edu/papers/Kolluri-SSR-2004-07/eigentalk.pdf · Spectral Surface Reconstruction from Noisy Point Clouds Ravi

Tight Cocone

Eigencrust

The Partitioner Has a Global View

Page 22: Spectral Surface Reconstruction from Noisy Point Cloudsgraphics.berkeley.edu/papers/Kolluri-SSR-2004-07/eigentalk.pdf · Spectral Surface Reconstruction from Noisy Point Clouds Ravi

Eigencrust

Page 23: Spectral Surface Reconstruction from Noisy Point Cloudsgraphics.berkeley.edu/papers/Kolluri-SSR-2004-07/eigentalk.pdf · Spectral Surface Reconstruction from Noisy Point Clouds Ravi

Some tetrahedra are easy to classify.

Some are ambiguous.

or outside.labeled inside

Obviouslyinside.

Could be

surface

Page 24: Spectral Surface Reconstruction from Noisy Point Cloudsgraphics.berkeley.edu/papers/Kolluri-SSR-2004-07/eigentalk.pdf · Spectral Surface Reconstruction from Noisy Point Clouds Ravi

Identify non−ambiguous tetrahedra called ‘‘poles’’.Form a graph whose vertices are the poles.Assign edge weights based on geometry.

Stage 1:

Eigencrust Algorithm

Page 25: Spectral Surface Reconstruction from Noisy Point Cloudsgraphics.berkeley.edu/papers/Kolluri-SSR-2004-07/eigentalk.pdf · Spectral Surface Reconstruction from Noisy Point Clouds Ravi

Identify non−ambiguous tetrahedra called ‘‘poles’’.Form a graph whose vertices are the poles.Assign edge weights based on geometry.

Stage 1:

Eigencrust Algorithm

Partition graph.

Page 26: Spectral Surface Reconstruction from Noisy Point Cloudsgraphics.berkeley.edu/papers/Kolluri-SSR-2004-07/eigentalk.pdf · Spectral Surface Reconstruction from Noisy Point Clouds Ravi

Identify non−ambiguous tetrahedra called ‘‘poles’’.Form a graph whose vertices are the poles.Assign edge weights based on geometry.

Stage 1:

Stage 2:

Eigencrust Algorithm

vertices are the

(non−poles).ambiguous tetrahedra

Form a graph whose

Form graph, partition.

Partition graph.

Page 27: Spectral Surface Reconstruction from Noisy Point Cloudsgraphics.berkeley.edu/papers/Kolluri-SSR-2004-07/eigentalk.pdf · Spectral Surface Reconstruction from Noisy Point Clouds Ravi

Voronoi Diagram

Page 28: Spectral Surface Reconstruction from Noisy Point Cloudsgraphics.berkeley.edu/papers/Kolluri-SSR-2004-07/eigentalk.pdf · Spectral Surface Reconstruction from Noisy Point Clouds Ravi

Voronoi Cell

Page 29: Spectral Surface Reconstruction from Noisy Point Cloudsgraphics.berkeley.edu/papers/Kolluri-SSR-2004-07/eigentalk.pdf · Spectral Surface Reconstruction from Noisy Point Clouds Ravi

Originalsurface

Poles

sVoronoi cell

of

Poles

s

v

u

to be on opposite sides of surface.Poles of a sample point are likely

(Amenta−Bern 1999.)

Page 30: Spectral Surface Reconstruction from Noisy Point Cloudsgraphics.berkeley.edu/papers/Kolluri-SSR-2004-07/eigentalk.pdf · Spectral Surface Reconstruction from Noisy Point Clouds Ravi

Originalsurface

Poles

sVoronoi cell

of

Poles

s

v

u

s

v

u

to be on opposite sides of surface.Poles of a sample point are likely

Page 31: Spectral Surface Reconstruction from Noisy Point Cloudsgraphics.berkeley.edu/papers/Kolluri-SSR-2004-07/eigentalk.pdf · Spectral Surface Reconstruction from Noisy Point Clouds Ravi

Poles

s

v

u

to be on opposite sides of surface.Poles of a sample point are likely

Connect themthem with anegative−weightedge.

Page 32: Spectral Surface Reconstruction from Noisy Point Cloudsgraphics.berkeley.edu/papers/Kolluri-SSR-2004-07/eigentalk.pdf · Spectral Surface Reconstruction from Noisy Point Clouds Ravi

4+4 cose φWeight of edge is

Poles

s

v

u

φ

Page 33: Spectral Surface Reconstruction from Noisy Point Cloudsgraphics.berkeley.edu/papers/Kolluri-SSR-2004-07/eigentalk.pdf · Spectral Surface Reconstruction from Noisy Point Clouds Ravi

Negative weight edges

Page 34: Spectral Surface Reconstruction from Noisy Point Cloudsgraphics.berkeley.edu/papers/Kolluri-SSR-2004-07/eigentalk.pdf · Spectral Surface Reconstruction from Noisy Point Clouds Ravi

Positive weight edges

Page 35: Spectral Surface Reconstruction from Noisy Point Cloudsgraphics.berkeley.edu/papers/Kolluri-SSR-2004-07/eigentalk.pdf · Spectral Surface Reconstruction from Noisy Point Clouds Ravi

PositiveWeightEdges

If two samples are connected byDelaunay edge, hook their polestogether with positive weights.

v u

Page 36: Spectral Surface Reconstruction from Noisy Point Cloudsgraphics.berkeley.edu/papers/Kolluri-SSR-2004-07/eigentalk.pdf · Spectral Surface Reconstruction from Noisy Point Clouds Ravi

e φ4−4 cos

PositiveWeightEdges

uv

v u

φ

Weight of edge is

Weight is large if the circumscribingspheres intersect deeply.

Page 37: Spectral Surface Reconstruction from Noisy Point Cloudsgraphics.berkeley.edu/papers/Kolluri-SSR-2004-07/eigentalk.pdf · Spectral Surface Reconstruction from Noisy Point Clouds Ravi

Pole graph

Page 38: Spectral Surface Reconstruction from Noisy Point Cloudsgraphics.berkeley.edu/papers/Kolluri-SSR-2004-07/eigentalk.pdf · Spectral Surface Reconstruction from Noisy Point Clouds Ravi

Supernode

Page 39: Spectral Surface Reconstruction from Noisy Point Cloudsgraphics.berkeley.edu/papers/Kolluri-SSR-2004-07/eigentalk.pdf · Spectral Surface Reconstruction from Noisy Point Clouds Ravi

Balances two criteria:Minimizing sum of weights of cut edges.Cutting graph into roughly ‘‘equal’’ pieces.

(Modified) Normalized CutsGraph Partitioning with

Page 40: Spectral Surface Reconstruction from Noisy Point Cloudsgraphics.berkeley.edu/papers/Kolluri-SSR-2004-07/eigentalk.pdf · Spectral Surface Reconstruction from Noisy Point Clouds Ravi

Balances two criteria:Minimizing sum of weights of cut edges.Cutting graph into roughly ‘‘equal’’ pieces.

Pole Matrix is weighted adjacency matrixL

(Modified) Normalized CutsGraph Partitioning with

−6

5cb

c

ab

a

b

c

a0−5

66L =

0−5

of pole graph.

Page 41: Spectral Surface Reconstruction from Noisy Point Cloudsgraphics.berkeley.edu/papers/Kolluri-SSR-2004-07/eigentalk.pdf · Spectral Surface Reconstruction from Noisy Point Clouds Ravi

Balances two criteria:Minimizing sum of weights of cut edges.Cutting graph into roughly ‘‘equal’’ pieces.

Pole Matrix is weighted adjacency matrixLof pole graph. Diagonal D of

(Modified) Normalized CutsGraph Partitioning with

L is therow sums of absolute off−diagonals.

−6

5cb

c

ab

a

b

c

a

110

6

−5

66L =

5

0−5

Page 42: Spectral Surface Reconstruction from Noisy Point Cloudsgraphics.berkeley.edu/papers/Kolluri-SSR-2004-07/eigentalk.pdf · Spectral Surface Reconstruction from Noisy Point Clouds Ravi

5

0−5L =

Balances two criteria:Minimizing sum of weights of cut edges.Cutting graph into roughly ‘‘equal’’ pieces.

Pole Matrix is weighted adjacency matrixLof pole graph. Diagonal D of

Compute eigenvector

(Modified) Normalized CutsGraph Partitioning with

L is therow sums of absolute off−diagonals.

x of Lx =λ Dx withsmallest eigenvalue (Lanczos iterations).

−6

5

−411

0

623

x =−5

66

Page 43: Spectral Surface Reconstruction from Noisy Point Cloudsgraphics.berkeley.edu/papers/Kolluri-SSR-2004-07/eigentalk.pdf · Spectral Surface Reconstruction from Noisy Point Clouds Ravi

Balances two criteria:Minimizing sum of weights of cut edges.Cutting graph into roughly ‘‘equal’’ pieces.

Pole Matrix is weighted adjacency matrixLof pole graph. Diagonal D of

Compute eigenvector

Each component of x

negative = outside.

(Modified) Normalized CutsGraph Partitioning with

L is therow sums of absolute off−diagonals.

x of Lx =λ Dx

corresponds toa pole/tetrahedron. Positive = inside;

withsmallest eigenvalue (Lanczos iterations).

3

2

−4

Page 44: Spectral Surface Reconstruction from Noisy Point Cloudsgraphics.berkeley.edu/papers/Kolluri-SSR-2004-07/eigentalk.pdf · Spectral Surface Reconstruction from Noisy Point Clouds Ravi

: Not pole

: Inside : OutsideEnd of Stage 1

Page 45: Spectral Surface Reconstruction from Noisy Point Cloudsgraphics.berkeley.edu/papers/Kolluri-SSR-2004-07/eigentalk.pdf · Spectral Surface Reconstruction from Noisy Point Clouds Ravi

Results

Page 46: Spectral Surface Reconstruction from Noisy Point Cloudsgraphics.berkeley.edu/papers/Kolluri-SSR-2004-07/eigentalk.pdf · Spectral Surface Reconstruction from Noisy Point Clouds Ravi

Outside

+

−327,323 input points.654,496 output triangles.2.8 minutes triangulation.9.3 minutes eigenvectors.

Poles (tetrahedra)

Inside

A Clean Point Cloud

Page 47: Spectral Surface Reconstruction from Noisy Point Cloudsgraphics.berkeley.edu/papers/Kolluri-SSR-2004-07/eigentalk.pdf · Spectral Surface Reconstruction from Noisy Point Clouds Ravi

362,272 input points.679,360 output triangles.

17.5 minutes eigenvectors.1.5 minutes triangulation.

+

Poles (tetrahedra)

Inside

Outside

A Noisy Point Cloud

Page 48: Spectral Surface Reconstruction from Noisy Point Cloudsgraphics.berkeley.edu/papers/Kolluri-SSR-2004-07/eigentalk.pdf · Spectral Surface Reconstruction from Noisy Point Clouds Ravi

+

Poles (tetrahedra)

1,769,513 input points.2,599,114 output triangles.197 minutes.

Outside

Inside

Stanford Dragon

Page 49: Spectral Surface Reconstruction from Noisy Point Cloudsgraphics.berkeley.edu/papers/Kolluri-SSR-2004-07/eigentalk.pdf · Spectral Surface Reconstruction from Noisy Point Clouds Ravi

outliers

200outliers

1800

Tight CoconePowercrust

EigencrustOutlier Test

Artificial

outliers1200

Page 50: Spectral Surface Reconstruction from Noisy Point Cloudsgraphics.berkeley.edu/papers/Kolluri-SSR-2004-07/eigentalk.pdf · Spectral Surface Reconstruction from Noisy Point Clouds Ravi

Artificial Noise Test

Powercrust

Tight Cocone

Eigencrust

Page 51: Spectral Surface Reconstruction from Noisy Point Cloudsgraphics.berkeley.edu/papers/Kolluri-SSR-2004-07/eigentalk.pdf · Spectral Surface Reconstruction from Noisy Point Clouds Ravi

Undersampled Goblet

+

− 2,714 input points.36,538 output triangles.1.63 seconds.

Inside

Outside

Page 52: Spectral Surface Reconstruction from Noisy Point Cloudsgraphics.berkeley.edu/papers/Kolluri-SSR-2004-07/eigentalk.pdf · Spectral Surface Reconstruction from Noisy Point Clouds Ravi

Thanks

Chen Shen for rendering help.Stanford data repository.

Nina Amenta & Tamal Dey for theirsurface reconstruction programs.

Spectral partitioning is robust against noise,outliers, and undersampling.Handles raw data of real range finders.

Conclusion

Page 53: Spectral Surface Reconstruction from Noisy Point Cloudsgraphics.berkeley.edu/papers/Kolluri-SSR-2004-07/eigentalk.pdf · Spectral Surface Reconstruction from Noisy Point Clouds Ravi

This way please.