Title: Computing Inner and Outer Shape Approximations
1Computing Inner and Outer Shape Approximations
Joseph S.B. Mitchell Stony Brook University
2Talk Outline
- Two classes of optimization problems in shape
approximation - Finding largest subset of a body B of specified
type - Best inner approximation
- Finding smallest (tightest fitting) pair of
bounding boxes - Best outer approximation
3Part I Inner Approximations
- Motivation and summary of results
- 2D Approximation algorithms
- Longest stick (line segment)
- Max-area convex bodies (potatoes)
- Max-area rectangles (French fries), triangles
- Max-area ellipses within well sampled curves
- 3D Heuristics
- Joint work with O. Hall-Holt, M. Katz, P. Kumar,
A. Sityon (SODA06)
4Motivation
- Natural Optimization Problems
- Shape Approximation
- Visibility Culling for Computer Graphics
5Max-Area Convex Potato
6Max-Area Ellipse Inside Smooth Closed Curves
7Biggest French Fry
8Longest Stick
9Related Work Largest Inscribed Bodies
10Convex Polygons on Point Sets
11Related Work Longest Stick
12Our Results
13Approximating the Longest Stick
- Divide and conquer
- Use balanced cuts (Chazelle)
14(No Transcript)
15(No Transcript)
16(No Transcript)
17Approximating the Longest Stick
- Compute weak visibility region from anchor edge
(diagonal) e. - p has combinatorial type (u,v)
- Optimize for each of the O(n) elementary
intervals.
- Algorithm
- At each level of the recursive decomposition of
P, compute longest anchored sticks from each
diagonal cut O(n) per level. - Longest Anchored stick is at least ½ the length
of the longest stick.
- Theorem
- One can compute a ½-approximation for longest
stick in a simple polygon in O(nlogn) time.
- Open Problem
- Can we get O(1)-approx in O(n) time?
18Improved Approximation
- Algorithm
- Bootstrap from the O(1)-approx, discretize search
space more finely, reduce to a visibility
problem, and apply efficient data structures
19Pixels and the visibility problem
20Pixels and the visibility problem
21Visibility between pixels
22Visibility between pixels
23Visibility between pixels (cont)
24Approximating the Longest Stick
25Big Potatoes
26Big FAT Potatoes
27Approx Biggest Convex Potato
28Approx Biggest Convex Potato
29Approx Biggest Convex Potato
- Goal Find max-area e-anchored triangle
30Approx Biggest Triangular Potato
31Big FAT Triangles PTAS
32Big FAT Triangular Potatos
33Big FAT Triangles PTAS
34Sampling Approach
35Max-Area Triangle Using Sampling
36Max-Area Triangle Sampling Difficulty
37Max-Area Ellipse Inside Sampled Curves
38The Set of Maximal Empty Ellipses
393D Hueristics
- Grow k-dops from selected seed points
collision detection (QuickCD), response
40Summary
41Open Problems
42Part II Outer Approximation
- Joint work with E. Arkin, G. Barequet (SoCG06)
43Bounding Volume Hierarchy
BV-tree Level 0
k-dops
44BV-tree Level 1
14-dops
6-dops
26-dops
18-dops
45BV-tree Level 2
46BV-tree Level 5
47BV-tree Level 8
48QuickCD Collision Detection
49The 2-Box Cover Problem
- Given set S of n points/polygons
- Compute 2 boxes, B1 and B2, to minimize the
combined measure, f(B1,B2) - Measures volume, surface area, diameter, width,
girth, etc - Choice of f
- Min-Sum, Min-Max, Min-Union
50Related Work
- Min-max 2-box cover in d-D in time O(n log n
nd-1) Bespamyatnik Segal - Clustering k-center (min-max radius), k-median
(min-sum of dist), k-clustering, min-size
k-clustering, core sets for approx - Rectilinear 2-center cover with 2 cubes of
min-max size O(n) LP-type - Min-size k-clustering min sum of radii
Bilo05,Lev-TovPeleg05,Alt05 - k2, 2D exact in O(n2/log log n) Hershberger
51Lower Bound
52Simple Exact Algorithm
53Simple Grid-Based Solution
- Look at N occupied voxels
- Solve 2-box cover exactly on them, exploiting
special structure
54Bad Case for Grid-Based Solution
55Minimizing Surface Area
- For surface area, grids do well
- If OPT is separable, solve easily
- Otherwise, use following Lemma
56Cases
Separable
Piercing
Crossing
Edge In
Vertex In
57Separable Case
- Sweep in each of d directions, O(n log n)
- Swap each hit point from one box to the other
- Update O(log n)/pt
58Nonseparable Case
- Key idea one of the boxes is large (at least
½) in at least half of its extents
59(x,y)-Projection Cases
60Discretizing in (x,y)
- B1 is large in (x,y)
- Can afford to round it out to grid
- How to determine its z-extent?
61Varying the z-Extent
62Improvement for the Min-Max Case
63Higher Dimensions
64Min-Union
65Covering Polygons/Polyhedra
66Cardinaltiy Constraints Balancing the Partition
- For building hierarchies, we want to control the
cardinalities of how many objects are covered by
each of the 2 boxes
OPEN Can we do the volume measure in
near-linear time?
67Bounding Volume Hierarchies
68Open Problems