Nina Amenta

advertisement
Voronoi diagrams of “nice” point
sets
Nina Amenta
UC Davis
“The World a Jigsaw”
Why we love the Voronoi
diagram
Interesting,
elegant structure.
Why we love the Voronoi
diagram
It’s useful! for surface reconstruction....
input
output
Point Set Capture
Point Grey Bumblebee
Cyberware
Boom in surface reconstruction research.
Why we love the Voronoi
diagram
...and for mesh generation.
Jonathan Shewchuk, “triangle”
Triangles with no small angles, respect size of
input features.
Why we love the Voronoi
diagram
Shewchuk, ‘98
Three-dimensional tetrahedralization
Why we hate the Voronoi
diagram
Hard to compute because of numerical
instability.
Ten years of research
on computing this
both robustly and
quickly.
Why we hate the Voronoi
diagram
Fundamental problem for moving points.
Many unnecessary
connectivity
adjustments.
Why we hate the Voronoi
diagram
Worst-case size is exponential in the
dimension.
O( n[d/2] )
Why we hate the Voronoi
diagram
Worst-case size is exponential in the
dimension.
Why we hate the Voronoi
diagram
Dual sliver tetrahedra!
Worst-case approach
We have done a great job of designing
programs and algorithms which
robustly handle all inputs.
Consider nice inputs!
Users want to reconstruct surface or mesh
object, they don’t care what the point set is.
Surface reconstruction
Requires 3D Delaunay triangulation.
O(n2)?
Only if you really, really try...these points are
not on a 1D set, they lie on a 2D surface.
Dwyer, 91, uniform random points have O(n)size Delaunay triangulation in any fixed
dimension. But what about points on (near)
lower dimensional manifolds?
Practice suggests O(n)
A & Choi, 01
Adding samples on surfaces in random
order, #Del. tetrahedra grows linearly.
Attali & Boissonnat 03
Complexity of
Delaunay
triangulation is
O(n).
Nicely sampled polygons
Fixed set of
polygons in R3.
Area, boundary
length, number of
polygons constant.
Sampling model
Every point has at
least one and at most
k samples within
distance 1/n2.
Consider behavior as
n->infinity.
Golin & Na have
similar results in
random case.
Interiors
x’ is reflection
of x across
planar bisector.
Voronoi balls
nearly tangent
to face at x are
close to x’.
x’
x
Interiors
Any ball
touching a
point far from
x’ on the
opposite plane
contains too
much area to
be empty.
x’
x
Interiors
All Delaunay
edges from x into
interior of
another polygon
have to end
within (1/n2) ball
around x’, so only
O(1) such.
x’
Edges
Sample near an edge can be connected to
more other samples....but there are only
sqrt(n) of them.
The difficult part of the proof!
Open Questions
• Attali, Boissonnat & Lieuter, 03,
“Generic” smooth surface S,
O(n log n) - best possible?
• Erickson, 01, wickedly chosen
smooth surface can be O(n3/2)
• Noise? Higher dimensions?
Argument we just did applies to
interiors of (d-1)-planes in Rd.
Mesh Generation
All triangles approximately equilateral,
input features (or given density
function) controls maximum size.
Harder in 3D
Have to avoid slivers!
Recent approach: Alliez, Cohen-Steiner, Yvinec
& Desbrun, Siggraph ‘05. Related to....
Llyod’s method, 1982
Compute
Voronoi
diagram.
Move each
sample to
the center
of mass of
its Voronoi
cell.
Repeat.
Centroidal Voronoi Diagram
When density is uniform, converges at a minimum
of:
∫x (x - c(x) )2
c(x) = center of Voronoi cell containing x
2D, uniform distribution
modulo edge effects
bounded domain
2D, non-uniform distribution
Distribution given
by darkness of
photo - stippling
patterns!
Adrian Secord,
NPAR 2002
In 3D, more difficult
No proof that
converges to closest
sphere packing.
Hales, ‘98, showed
closest sphere packing
in 3D is regular.
Cannonball packing is not unique - each layer has
two alternate translations.
Different iteration
Does not seem to work well in practice.
Making Voronoi cells round does not
necessarily make Delaunay tetrahedra
round.
Idea (Chen and Xu): Directly optimize
Delaunay tetrahedra.
Property to dualize?
x -> ( x, ||x||2 )
Convex Hull
projects down to
Delaunay
triangulation
Intersection of
tangent halfspaces
projects down to
Voronoi diagram.
Property to dualize?
local minimum of:
E =∫x (x - c(x) )2
c(x)
E = error of Voronoi polytope as approximation of
paraboloid.
Dualization
xi
Minimize error of Delaunay polytope as
approximation of paraboloid.
Error minimizing iteration
x
New x =
1/area(region) T (area(T) circumcenter(T) )
Centroidal Delaunay
Triangulation
Centroidal Voronoi
diagram
Centrodial Delaunay
triangulation
Good in practice
Many open
questions in
theory...
Open Questions
• CVD and CDT form sphere packings in
3D?
• Can we compute them without
iterating Delaunay triangulation?
• Can we compute the DT of a nice
distribution using only floating-point
arithmetic?
Moving Points
• Show that some iterative process
maintains a distribution that avoids
unnecessary flips (no 5 points near a
sphere).
Thank you.
Download