computing inner and outer shape approximations

Post on 22-Feb-2016

48 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

Computing Inner and Outer Shape Approximations. Joseph S.B. Mitchell Stony Brook University. Talk Outline. Two classes of optimization problems in shape approximation: Finding “largest” subset of a body B of specified type Best inner approximation - PowerPoint PPT Presentation

TRANSCRIPT

Computing Inner and Computing Inner and Outer Shape Outer Shape

ApproximationsApproximations

Joseph S.B. MitchellStony Brook University

22

Talk OutlineTalk Outline Two classes of optimization problems Two classes of optimization problems

in shape approximation: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 approximationBest outer approximation

33

1. Motivation and summary of results

2. 2D Approximation algorithms

1. Longest stick (line segment)

2. Max-area convex bodies (“potatoes”)

3. Max-area rectangles (“French fries),

triangles

4. Max-area ellipses within well sampled

curves

3. 3D Heuristics

Part I: Inner ApproximationsPart I: Inner Approximations

Joint work with O. Hall-Holt, M. Katz, P. Kumar, A. Joint work with O. Hall-Holt, M. Katz, P. Kumar, A. Sityon (SODA’06) Sityon (SODA’06)

44

1. Natural Optimization Problems

2. Shape Approximation

3. Visibility Culling for Computer Graphics

MotivationMotivation

55

Max-Area Convex “Potato”Max-Area Convex “Potato”

66

Max-Area Ellipse Inside Smooth Max-Area Ellipse Inside Smooth Closed CurvesClosed Curves

77

Biggest French FryBiggest French Fry

88

Longest StickLongest Stick

99

Related Work: Largest Inscribed Related Work: Largest Inscribed BodiesBodies

1010

Convex Polygons on Point SetsConvex Polygons on Point Sets

1111

Related Work: Longest StickRelated Work: Longest Stick

1212

Our ResultsOur Results

1313

Approximating the Longest StickApproximating the Longest Stick Divide and conquerDivide and conquer Use balanced cuts (Chazelle)Use balanced cuts (Chazelle)

1414

1515

1616

1717

1. Compute weak visibility region from anchor edge

(diagonal) e.

2. p has combinatorial type (u,v)

3. Optimize for each of the O(n) elementary intervals.

Theorem:

One can compute a ½-approximation for longest stick in a simple polygon in O(nlogn) time.

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.

Open Problem:Can we get O(1)-approx in O(n) time?

Approximating the Longest StickApproximating the Longest Stick

1818

Algorithm:

Bootstrap from the O(1)-approx, discretize search space more finely, reduce to a visibility problem, and apply efficient data structures

Improved ApproximationImproved Approximation

1919

Pixels and the visibility problemPixels and the visibility problem

2020

Pixels and the visibility problemPixels and the visibility problem

2121

Visibility between pixelsVisibility between pixels

2222

Visibility between pixelsVisibility between pixels

2323

Visibility between pixels (cont)Visibility between pixels (cont)

2424

Approximating the Longest StickApproximating the Longest Stick

2525

Big PotatoesBig Potatoes

2626

Big FAT PotatoesBig FAT Potatoes

2727

Approx Biggest Convex PotatoApprox Biggest Convex Potato

2828

Approx Biggest Convex PotatoApprox Biggest Convex Potato

2929

Approx Biggest Convex PotatoApprox Biggest Convex Potato Goal: Find max-area Goal: Find max-area ee-anchored triangle-anchored triangle

3030

Approx Biggest Triangular PotatoApprox Biggest Triangular Potato

3131

Big FAT Triangles: PTASBig FAT Triangles: PTAS

3333

Big FAT Triangles: PTASBig FAT Triangles: PTAS

3434

Sampling ApproachSampling Approach

3535

Max-Area Triangle Using SamplingMax-Area Triangle Using Sampling

3636

Max-Area Triangle: Sampling Max-Area Triangle: Sampling DifficultyDifficulty

3737

Max-Area Ellipse Inside Sampled Max-Area Ellipse Inside Sampled CurvesCurves

3838

The Set of Maximal Empty EllipsesThe Set of Maximal Empty Ellipses

3939

3D Hueristics3D Hueristics ““Grow” k-dops from selected seed Grow” k-dops from selected seed

points: collision detection (QuickCD), points: collision detection (QuickCD), responseresponse

4040

SummarySummary

4141

Open ProblemsOpen Problems

4242

Part II: Outer ApproximationPart II: Outer Approximation

Joint work with E. Arkin, G. Barequet Joint work with E. Arkin, G. Barequet (SoCG’06)(SoCG’06)

4343

Bounding Volume HierarchyBounding Volume Hierarchy

BV-tree: BV-tree: Level 0Level 0 k-dopsk-dops

4444

BV-tree: Level 1BV-tree: Level 1

26-dops26-dops

14-dops14-dops6-dops6-dops

18-dops18-dops

4545

BV-tree: Level 2BV-tree: Level 2

4646

BV-tree: Level 5BV-tree: Level 5

4747

BV-tree: Level 8BV-tree: Level 8

4848

QuickCD: Collision DetectionQuickCD: Collision Detection

4949

The 2-Box Cover ProblemThe 2-Box Cover Problem Given set S of n points/polygonsGiven set S of n points/polygons Compute 2 boxes, Compute 2 boxes, BB11 and and BB22, to , to

minimize the combined measure, minimize the combined measure, f(Bf(B11,B,B22))• Measures: volume, surface area, Measures: volume, surface area,

diameter, width, girth, etcdiameter, width, girth, etc Choice of Choice of ff: :

Min-Sum, Min-Max, Min-UnionMin-Sum, Min-Max, Min-Union

5050

Related WorkRelated Work Min-max 2-box cover in d-D in time Min-max 2-box cover in d-D in time O(n log O(n log

n + nn + nd-1d-1)) [Bespamyatnik & Segal][Bespamyatnik & Segal] Clustering: Clustering: kk-center (min-max radius), -center (min-max radius), kk--

median (min-sum of dist), median (min-sum of dist), kk-clustering, -clustering, min-size min-size kk-clustering, core sets for approx-clustering, core sets for approx

Rectilinear 2-center: cover with 2 cubes of Rectilinear 2-center: cover with 2 cubes of min-max size: O(n) [LP-type]min-max size: O(n) [LP-type]

Min-size Min-size kk-clustering: min sum of radii -clustering: min sum of radii [Bilo+’05,Lev-Tov&Peleg’05,Alt+’05][Bilo+’05,Lev-Tov&Peleg’05,Alt+’05]• kk=2, 2D exact in =2, 2D exact in O(nO(n22/log log n)/log log n) [Hershberger][Hershberger]

5151

Lower BoundLower Bound

5252

Simple Exact AlgorithmSimple Exact Algorithm

5353

Simple Grid-Based SolutionSimple Grid-Based Solution

Look at Look at NN occupied voxels occupied voxels Solve 2-box cover exactly on them, Solve 2-box cover exactly on them,

exploiting special structureexploiting special structure

5454

Bad Case for Grid-Based SolutionBad Case for Grid-Based Solution

5555

Minimizing Surface AreaMinimizing Surface Area For surface area, grids do wellFor surface area, grids do well If OPT is separable, solve easilyIf OPT is separable, solve easily Otherwise, use following Lemma:Otherwise, use following Lemma:

5656

CasesCases

Separable

Edge In

Crossing

Vertex In

Piercing

5757

Separable CaseSeparable Case Sweep in each of d Sweep in each of d

directions, O(n log n)directions, O(n log n) Swap each hit point Swap each hit point

from one box to the from one box to the otherother

Update: O(log n)/ptUpdate: O(log n)/pt

5858

Nonseparable CaseNonseparable Case Key idea: one of the boxes is “large” Key idea: one of the boxes is “large”

(at least ½) in at least half of its (at least ½) in at least half of its extents:extents:

5959

(x,y)-Projection Cases(x,y)-Projection Cases

6060

Discretizing in Discretizing in (x,y)(x,y) BB11 is “large” in (x,y) is “large” in (x,y) Can afford to round it out Can afford to round it out

to gridto grid How to determine its How to determine its zz--

extent?extent?

6161

Varying the Varying the zz-Extent-Extent

6262

Improvement for the Min-Max CaseImprovement for the Min-Max Case

6363

Higher DimensionsHigher Dimensions

6464

Min-UnionMin-Union

6565

Covering Polygons/PolyhedraCovering Polygons/Polyhedra

6666

Cardinaltiy Constraints: Balancing Cardinaltiy Constraints: Balancing the Partitionthe Partition

For building hierarchies, we want to For building hierarchies, we want to control the cardinalities of how many control the cardinalities of how many objects are covered by each of the 2 objects are covered by each of the 2 boxes:boxes:

OPEN: Can we do the volume measure in near-linear time?

6767

Bounding Volume HierarchiesBounding Volume Hierarchies

6868

Open ProblemsOpen Problems

top related