surface reconstruction - mit csailgroups.csail.mit.edu/graphics/classes/6.838/f01/... · surface...

Post on 29-Feb-2020

7 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

SurfaceReconstructionPower Diagrams, the Medial Axis Transform

and the Power Crust Algorithm

Matthew Seegmiller and Adam Smith

xaco,adsmith�

@mit.edu.

6.838 Geometric Computation

Lecture 19 — 13 November 2001

Surface Reconstruction – p.1/60

Overview

� Introduction

� Weighted distance and powerdiagrams

� Medial Axis Transform

� PowerCrust Algorithm

Surface Reconstruction – p.2/60

Intr oduction

Surface Reconstruction – p.3/60

Intr oduction

� What is Surface Reconstruction?

� Applications

� Difficulties

� Survey of techniques

Surface Reconstruction – p.4/60

SurfaceReconstruction

Given a set of points assumed to lie near anunknown surface , construct a surface model

approximating .

Surface Reconstruction – p.5/60

How it usually works

� Input points sampled from the surface either “by hand”or via a physical process (e.g. 3D scanning).

� Assume:

� Real surface

is “nice” ( = “smooth”)

� Samples

are “dense enough”, especially nearfeatures such as edges, points, bumps, etc.

� Output

in usable format for processing

� Triangulation of�

� Fitted “splines” (i.e. low-dimensional surfaces)

� CSG modelSurface Reconstruction – p.6/60

Applications of 3D Scanning

� Reverse engineering / Industrial design

Performance analysis and simulations(e.g. drag)

Realistic virtual environments

Medical Imaging

...

Surface Reconstruction – p.7/60

Applications of 3D Scanning

� Reverse engineering / Industrial design

� Performance analysis and simulations(e.g. drag)

Realistic virtual environments

Medical Imaging

...

Surface Reconstruction – p.7/60

Applications of 3D Scanning

� Reverse engineering / Industrial design

� Performance analysis and simulations(e.g. drag)

� Realistic virtual environments

Medical Imaging

...

Surface Reconstruction – p.7/60

Applications of 3D Scanning

� Reverse engineering / Industrial design

� Performance analysis and simulations(e.g. drag)

� Realistic virtual environments

� Medical Imaging

...

Surface Reconstruction – p.7/60

Applications of 3D Scanning

� Reverse engineering / Industrial design

� Performance analysis and simulations(e.g. drag)

� Realistic virtual environments

� Medical Imaging

� ...

Surface Reconstruction – p.7/60

Modeling a claw I

Surface Reconstruction – p.8/60

Modeling a Claw II

Surface Reconstruction – p.9/60

Modeling hand-madeparts

Surface Reconstruction – p.10/60

Medical ShapeReconstruction

Surface Reconstruction – p.11/60

Difficulties

� Surface not smooth

� Noisy data

� Lack of orientation data

� Surface not watertight

Surface Reconstruction – p.12/60

Techniques

Surface Reconstruction – p.13/60

Techniquesfor SurfaceReconstruction

Technique Assumptions

Fit parametric surface Data fits model

Piece together parallel contours Data from known device

Fit Gaussian Kernels Given normal at each point

�-shape Triangulation Noise-free

“Mesh” methods Dense Sample

Crust Methods Dense Sample

Surface Reconstruction – p.14/60

Fitting Parametric Surfaces

?

� Assume surface is from some known family(e.g. sphere, cylinder, plane, hyperboloid, etc)

� Find best parameters to fit data

Surface Reconstruction – p.15/60

Fitting Parametric Surfaces

?

� Fast, accurate for good data

� Useless when data is of unknown type

Surface Reconstruction – p.15/60

Techniquesfor SurfaceReconstruction

Technique Assumptions

Fit parametric surface Data fits model

Piece together parallel contours Data from known device

Fit Gaussian Kernels Given normal at each point

�-shape Triangulation Noise-free

“Mesh” methods Dense Sample

Crust Methods Dense Sample

Surface Reconstruction – p.16/60

Techniquesfor SurfaceReconstruction

Technique Assumptions

Fit parametric surface Data fits model

Piece together parallel contours Data from known device

Fit Gaussian Kernels Given normal at each point

�-shape Triangulation Noise-free

“Mesh” methods Dense Sample

Crust Methods Dense Sample

Surface Reconstruction – p.17/60

Contour Data Reconstruction

� Piece together image from parallel slices

� Assumes data is “pre-structured”

� Applications: medical, topographic terrain maps

Surface Reconstruction – p.18/60

Techniquesfor SurfaceReconstruction

Technique Assumptions

Fit parametric surface Data fits model

Piece together parallel contours Data from known device

Fit Gaussian Kernels Given normal at each point

�-shape Triangulation Noise-free

“Mesh” methods Dense Sample

Crust Methods Dense Sample

Surface Reconstruction – p.19/60

Techniquesfor SurfaceReconstruction

Technique Assumptions

Fit parametric surface Data fits model

Piece together parallel contours Data from known device

Fit Gaussian Kernels Given normal at each point

�-shape Triangulation Noise-free

“Mesh” methods Dense Sample

Crust Methods Dense Sample

Surface Reconstruction – p.20/60

Fitting Gaussianballs

� Take linear combination of 3D Gaussians�� � ��� � ������ ���� � ����� ���� ���� � �

� Surface

� �� ! �� � " #

(inside = positive, outside = negative)

Surface Reconstruction – p.21/60

Fitting Gaussianballs

Problems:

� Must know surface normal at each point

� Output always watertight, bubbly-shaped

� Useful for range scanner data

Surface Reconstruction – p.21/60

Techniquesfor SurfaceReconstruction

Technique Assumptions

Fit parametric surface Data fits model

Piece together parallel contours Data from known device

Fit Gaussian Kernels Given normal at each point

�-shape Triangulation Noise-free

“Mesh” methods Dense Sample

Crust Methods Dense Sample

Surface Reconstruction – p.22/60

Techniquesfor SurfaceReconstruction

Technique Assumptions

Fit parametric surface Data fits model

Piece together parallel contours Data from known device

Fit Gaussian Kernels Given normal at each point

�-shape Triangulation Noise-free

“Mesh” methods Dense Sample

Crust Methods Dense Sample

Surface Reconstruction – p.23/60

-shapetriangulation

� Start with Delaunay triangulation

� Take subset of the edges “on” the surface

(In fact, just take shortest edges in graph)

Surface Reconstruction – p.24/60

-shapetriangulation

� Bad when samples unevenly spaced(can be fixed using weights on sample points)

� Works only for noise-free data

Surface Reconstruction – p.24/60

Techniquesfor SurfaceReconstruction

Technique Assumptions

Fit parametric surface Data fits model

Piece together parallel contours Data from known device

Fit Gaussian Kernels Given normal at each point

�-shape Triangulation Noise-free

“Mesh” methods Dense Sample

Crust Methods Dense Sample

Surface Reconstruction – p.25/60

Techniquesfor SurfaceReconstruction

Technique Assumptions

Fit parametric surface Data fits model

Piece together parallel contours Data from known device

Fit Gaussian Kernels Given normal at each point

�-shape Triangulation Noise-free

“Mesh” methods Dense Sample

Crust Methods Dense Sample

Surface Reconstruction – p.26/60

Meshmethods

� Exploit local information to find a mesh

approximating surface

� Simplify mesh afterwards

Surface Reconstruction – p.27/60

Meshmethods

� Handles noisy data

� Assumes only sample dense near features(edges, bumps)

� Methods ad hoc; Rigorous analysis difficult

Surface Reconstruction – p.27/60

Techniquesfor SurfaceReconstruction

Technique Assumptions

Fit parametric surface Data fits model

Piece together parallel contours Data from known device

Fit Gaussian Kernels Given normal at each point

�-shape Triangulation Noise-free

“Mesh” methods Sample Dense near Features

Crust Methods Dense Sample

Surface Reconstruction – p.28/60

Techniquesfor SurfaceReconstruction

Technique Assumptions

Fit parametric surface Data fits model

Piece together parallel contours Data from known device

Fit Gaussian Kernels Given normal at each point

�-shape Triangulation Noise-free

“Mesh” methods Sample Dense near Features

Crust Methods Dense Sample

Surface Reconstruction – p.29/60

Crust methods

� Focus of this lecture

� Assume only dense sampling

� Provide other information on

:Volume, Skeletal Structure

Surface Reconstruction – p.30/60

Techniquesfor SurfaceReconstruction

Technique Assumptions

Fit parametric surface Data fits model

Piece together parallel contours Data from known device

Fit Gaussian Kernels Given normal at each point

�-shape Triangulation Noise-free

“Mesh” methods Sample Dense Near Features

Crust Methods Sample Dense Near Features

Surface Reconstruction – p.31/60

Overview

� Introduction

� Weighted distance and powerdiagrams

� Medial Axis Transform

� PowerCrust Algorithm

Surface Reconstruction – p.32/60

WeightedDistance

and Power Diagrams

Surface Reconstruction – p.33/60

WeightedDistanceand Power Diagrams

� Weighted distance

� Power Diagrams ( = Weighted Voronoi)

� $-shapes

Surface Reconstruction – p.34/60

Unionsof balls

Key concept:

Solids can be roughly approximated (exactin the limit) as a union of balls (discs in2D).

Given a set of points , we can view ascenters of balls. How can we use this?

Try to visualize “shape” of .

Surface Reconstruction – p.35/60

Unionsof balls

Key concept:

Solids can be roughly approximated (exactin the limit) as a union of balls (discs in2D).

Given a set of points , we can view ascenters of balls. How can we use this?

Try to visualize “shape” of .

Surface Reconstruction – p.35/60

Adding weights

Some points are “bigger” than others.

� sampled from a surface points wheresampling is less dense are “bigger”.

� = centers of atoms in a molecule heavier atoms are “bigger”.

� In Power Crust (later), this will be crucial.

Each point % gets a weight &� (its radius).

Surface Reconstruction – p.36/60

WeightedDistance

� Work with weighted distance. Distance from a

point ' to a ball

�(*) &� �

:

&,+ - . -/

0 1/

Surface Reconstruction – p.37/60

Normal Distance: 0 /

distance from x

yx z

In 1D, the (normal) squared distance induced by

each point gives a parabola centered at .

Surface Reconstruction – p.38/60

& - . 0 / 0 1 /yx z

r

Point 2 has radius &43 parabola gets loweredto intersect axis at distance & from 2.

Surface Reconstruction – p.39/60

Power Diagram

� Distance:

5687 � ) ' � 5 � ) ' � 9: &� 9

� Weighted Voronoi cell of

� ) &� �is set of points' that have smaller weighted distance to

than to any other point in :

� � ; ; �( � � ' ! 5687 �(*) ' � 567 < �( =) ' � for all = % #

� When all weights are equal, get the usualVoronoi diagram.

Surface Reconstruction – p.40/60

Power Diagram Demo

Demo

Surface Reconstruction – p.41/60

& - . 0 / 0 1 /yx z

r

Point 2 has radius &43 parabola gets loweredto intersect axis at distance & from 2.

Surface Reconstruction – p.42/60

& - . 0 / 0 1 /yx z

r

Weighted Voronoi cell for > doesn’t necessarily

contain >.Surface Reconstruction – p.43/60

& - . 0 / 0 1 /x y z

Some Voronoi cells may be empty!

Surface Reconstruction – p.44/60

Power Diagram DemoMore Demo

Surface Reconstruction – p.45/60

Intersections

Power diagram edges always go through theintersections of circles

Surface Reconstruction – p.46/60

WeightedDelaunayComplex

Weighted Delaunay Complex= Dual of Power Diagram

� Add an edge

� *) 2 #

if cells of ) 2 interesect

� Add a triangle

� ) 2) > #if cells of *) 2) >

intersect

� Add a tetrahedron...

Surface Reconstruction – p.47/60

WeightedDelaunayComplex

Surface Reconstruction – p.48/60

WeightedDistanceand Power Diagrams

� Weighted distance

� Power Diagrams ( = Weighted Voronoi)

� $-shapes

Surface Reconstruction – p.49/60

Dual Complex

� Subset of weighted Delaunay graph

� Only keep edge

�( ) 2 � if balls at ) 2 intersect:5 �( ) 2 � &� &?3 .

Surface Reconstruction – p.50/60

Changing the radii

� Fix a parameter $ 9 % �: ) �

(i.e. $ % )

� Consider new radii & =� & 9� $ 9

� Power diagram stays the same since56 < �( ) ' � 56 �( ) ' � : $ 9.

� Weighted Delaunay graph stays the same.

� Dual Complex

� grows if $ 9A@ "

� shrinks if $ 9AB "

Surface Reconstruction – p.51/60

-shapes

As $ 9 grows from: to , progress from emptygraph to full weighted Delaunay graph:

Surface Reconstruction – p.52/60

-shapes

As $ 9 grows from: to , progress from emptygraph to full weighted Delaunay graph:

Surface Reconstruction – p.53/60

-shapes

1

23

4

56

7

8

9

10

11

1213 1415

Surface Reconstruction – p.54/60

-shapes

Surface Reconstruction – p.55/60

-shapes

1

23

4

56

Surface Reconstruction – p.56/60

-shapes

1

23

4

56

7

8

9

10

11

12

Surface Reconstruction – p.57/60

Who cares?

This ordering is useful for visualizing structure ofthe point set.Example: Simple surface reconstruction

Other apps: chemical modeling, visualization

Surface Reconstruction – p.58/60

Overview

� Introduction

� Weighted distance and powerdiagrams

� Medial Axis Transform

� PowerCrust Algorithm

Surface Reconstruction – p.59/60

SelectedReferences

Hughes Hoppe. Surface reconstruction from unorganized points. Ph.D. Thesis,University of Washington, June 1994.�

H. Edelsbrunner. “The Union of Balls and Its Dual Shape.” In DiscreteComputational Geometry, 13:415–440 (1995).�

Nina Amenta, Sunghee Choi and Ravi Kolluri. “The power crust.” To appear in thesixth ACM Symposium on Solid Modeling and Applications 2001.�

http://www.alphashapes.org�

http://www.geomagic.com�

http://www.cs.utexas.edu/users/amenta/powercrust/�

http://pages.cpsc.ucalgary.ca/ Claneb/Power/

Surface Reconstruction – p.60/60

top related