Upload
others
View
6
Download
0
Embed Size (px)
Citation preview
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