Computing Inner and Outer Shape Approximations Joseph S.B. Mitchell Stony Brook University.

Slides:



Advertisements
Similar presentations
Approximation algorithms for geometric intersection graphs.
Advertisements

Approximations of points and polygonal chains
Intersection Testing Chapter 13 Tomas Akenine-Möller Department of Computer Engineering Chalmers University of Technology.
CSE 681 Bounding Volumes. CSE 681 Bounding Volumes Use simple volume enclose object(s) tradeoff for rays where there is extra intersection test for object.
 Distance Problems: › Post Office Problem › Nearest Neighbors and Closest Pair › Largest Empty and Smallest Enclosing Circle  Sub graphs of Delaunay.
Collision Detection CSCE /60 What is Collision Detection?  Given two geometric objects, determine if they overlap.  Typically, at least one of.
Collision Detection and Resolution Zhi Yuan Course: Introduction to Game Development 11/28/
Computer graphics & visualization Collisions. computer graphics & visualization Simulation and Animation – SS07 Jens Krüger – Computer Graphics and Visualization.
ESA On approximating a geometric prize-collecting traveling salesman problem with time windows Reuven Bar-Yehuda – Technion IIT Guy Even – Tel Aviv.
S. J. Shyu Chap. 1 Introduction 1 The Design and Analysis of Algorithms Chapter 1 Introduction S. J. Shyu.
Tools from Computational Geometry Bernard Chazelle Princeton University Bernard Chazelle Princeton University Tutorial FOCS 2005.
A (1+  )-Approximation Algorithm for 2-Line-Center P.K. Agarwal, C.M. Procopiuc, K.R. Varadarajan Computational Geometry 2003.
Classes of Polygons Planar polygons Non-planar polygons Simple
By: Andrew Shatz & Michael Baker Chapter 15. Chapter 15 section 1 Key Terms: Skew Lines, Oblique Two lines are skew iff they are not parallel and do not.
Computational Geometry Piyush Kumar (Lecture 3: Convexity and Convex hulls) Welcome to CIS5930.
Computational Geometry and Spatial Data Mining
Silhouettes in Multiview Stereo Ian Simon. Multiview Stereo Problem Input: – a collection of images of a rigid object (or scene) – camera parameters for.
Bounding Volume Hierarchy “Efficient Distance Computation Between Non-Convex Objects” Sean Quinlan Stanford, 1994 Presented by Mathieu Brédif.
On the Union of Cylinders in Esther Ezra Duke University On the Union of Cylinders in  3 Esther Ezra Duke University.
UNC Chapel Hill M. C. Lin Overview of Last Lecture About Final Course Project –presentation, demo, write-up More geometric data structures –Binary Space.
Fat Curves and Representation of Planar Figures L.M. Mestetskii Department of Information Technologies, Tver’ State University, Tver, Russia Computers.
Almost tight bound for the union of fat tetrahedra in R 3 Esther Ezra Micha Sharir Duke University Tel-Aviv University.
Apex Point Map for Constant-Time Bounding Plane Approximation Samuli Laine Tero Karras NVIDIA.
On Euclidean Vehicle Routing With Allocation Reto Spöhel, ETH Zürich Joint work with Jan Remy and Andreas Weißl TexPoint fonts used in EMF. Read the TexPoint.
Approximation Algorithms: Bristol Summer School 2008 Seffi Naor Computer Science Dept. Technion Haifa, Israel TexPoint fonts used in EMF. Read the TexPoint.
Week 13 - Wednesday CS361.
12/4/2001CS 638, Fall 2001 Today Using separating planes/axes for collision testing Collision detection packages.
Domain decomposition in parallel computing Ashok Srinivasan Florida State University COT 5410 – Spring 2004.
M C S E A You have 5 minutes to answer each problem. Click when ready... Good Luck.
ADA: 14. Intro to CG1 Objective o give a non-technical overview of Computational geometry, concentrating on its main application areas Algorithm.
Finding a Hausdorff Core of a Polygon: On Convex Polygon Containment with Bounded Hausdorff Distance Reza Dorrigiv, Stephane Durocher, Arash Farzan, Robert.
AMS 345/CSE 355 Computational Geometry Lecture 1: Introduction Joe Mitchell.
On the union of cylinders in 3-space Esther Ezra Duke University.
How to reform a terrain into a pyramid Takeshi Tokuyama (Tohoku U) Joint work with Jinhee Chun (Tohoku U) Naoki Katoh (Kyoto U) Danny Chen (U. Notre Dame)
Packing Rectangles into Bins Nikhil Bansal (CMU) Joint with Maxim Sviridenko (IBM)
Multiple Integration Copyright © Cengage Learning. All rights reserved.
12/4/2001CS 638, Fall 2001 Today Managing large numbers of objects Some special cases.
Approximation algorithms for TSP with neighborhoods in the plane R 郭秉鈞 R 林傳健.
CIS 350 – I Game Programming Instructor: Rolf Lakaemper.
Multiple Integration 14 Copyright © Cengage Learning. All rights reserved.
1 Olaf Hall-Holt Matthew J.Katz Piyush KummarJoseph S.B. Mitchell Zhao Zhang Department of Computer Science and Engineering Texas A&M University April.
CSE 589 Part VI. Reading Skiena, Sections 5.5 and 6.8 CLR, chapter 37.
Optimal Rectangular Partition of a Rectilinear Polygonal Region
10/15/02 (c) 2002 University of Wisconsin, CS559 Who Am I? Prof Stephen Chenney These notes will be online after the lecture – in fact they’re online already.
Computational Geometry: Intersection Search Joseph S. B. Mitchell Stony Brook University.
Implicit Hitting Set Problems Richard M. Karp Erick Moreno Centeno DIMACS 20 th Anniversary.
Advanced Computer Graphics Spring 2009
Domain decomposition in parallel computing Ashok Srinivasan Florida State University.
Presented by Paul Phipps
Spectral Partitioning: One way to slice a problem in half C B A.
Learn and apply the formula for the surface area and volume of a pyramid. Learn and apply the formula for the surface area and volume of a cone. Objectives.
Almost tight bound for the union of fat tetrahedra in R3 Esther Ezra Micha Sharir Duke University Tel-Aviv University.
Correlation Clustering
CSE 554 Lecture 1: Binary Pictures
Distance Computation “Efficient Distance Computation Between Non-Convex Objects” Sean Quinlan Stanford, 1994 Presentation by Julie Letchner.
Core-Sets and Geometric Optimization problems.
Copyright © Cengage Learning. All rights reserved.
Haim Kaplan and Uri Zwick
Query Processing in Databases Dr. M. Gavrilova
Parts of these slides are based on
Efficient Distance Computation between Non-Convex Objects
Jianping Fan Dept of CS UNC-Charlotte
Computational Geometry (35/33)
Craig Schroeder October 26, 2004
Copyright © Cengage Learning. All rights reserved.
CSE 554 Lecture 3: Shape Analysis (Part II)
Kinetic Collision Detection for Convex Fat Objects
Collision Detection.
Embedding Metrics into Geometric Spaces
UNIT I –DOUBLE INTEGRALS
Presentation transcript:

Computing Inner and Outer Shape Approximations Joseph S.B. Mitchell Stony Brook University

2 Talk Outline Two classes of optimization problems in shape approximation: 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 Best outer approximation

3 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 Approximations Joint work with O. Hall-Holt, M. Katz, P. Kumar, A. Sityon (SODA’06) Joint work with O. Hall-Holt, M. Katz, P. Kumar, A. Sityon (SODA’06)

4 1.Natural Optimization Problems 2.Shape Approximation 3.Visibility Culling for Computer Graphics Motivation

5 Max-Area Convex “Potato”

6 Max-Area Ellipse Inside Smooth Closed Curves

7 Biggest French Fry

8 Longest Stick

9 Related Work: Largest Inscribed Bodies

10 Convex Polygons on Point Sets

11 Related Work: Longest Stick

12 Our Results

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

14

15

16

17 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 Stick

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

19 Pixels and the visibility problem

20 Pixels and the visibility problem

21 Visibility between pixels

22 Visibility between pixels

23 Visibility between pixels (cont)

24 Approximating the Longest Stick

25 Big Potatoes

26 Big FAT Potatoes

27 Approx Biggest Convex Potato

28 Approx Biggest Convex Potato

29 Approx Biggest Convex Potato Goal: Find max-area e-anchored triangle Goal: Find max-area e-anchored triangle

30 Approx Biggest Triangular Potato

31 Big FAT Triangles: PTAS

32 Big FAT Triangular Potatos

33 Big FAT Triangles: PTAS

34 Sampling Approach

35 Max-Area Triangle Using Sampling

36 Max-Area Triangle: Sampling Difficulty

37 Max-Area Ellipse Inside Sampled Curves

38 The Set of Maximal Empty Ellipses

39 3D Hueristics “Grow” k-dops from selected seed points: collision detection (QuickCD), response “Grow” k-dops from selected seed points: collision detection (QuickCD), response

40 Summary

41 Open Problems

42 Part II: Outer Approximation Joint work with E. Arkin, G. Barequet (SoCG’06) Joint work with E. Arkin, G. Barequet (SoCG’06)

43 Bounding Volume Hierarchy BV-tree: Level 0 k-dops

44 BV-tree: Level 1 26-dops 14-dops 6-dops 18-dops

45 BV-tree: Level 2

46 BV-tree: Level 5

47 BV-tree: Level 8

48 QuickCD: Collision Detection

49 The 2-Box Cover Problem Given set S of n points/polygons Given set S of n points/polygons Compute 2 boxes, B 1 and B 2, to minimize the combined measure, f(B 1,B 2 ) Compute 2 boxes, B 1 and B 2, to minimize the combined measure, f(B 1,B 2 ) Measures: volume, surface area, diameter, width, girth, etcMeasures: volume, surface area, diameter, width, girth, etc Choice of f: Choice of f: Min-Sum, Min-Max, Min-Union Min-Sum, Min-Max, Min-Union

50 Related Work Min-max 2-box cover in d-D in time O(n log n + n d-1 ) [Bespamyatnik & Segal] Min-max 2-box cover in d-D in time O(n log n + n d-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 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] Rectilinear 2-center: cover with 2 cubes of min-max size: O(n) [LP-type] Min-size k-clustering: min sum of radii [Bilo+’05,Lev-Tov&Peleg’05,Alt+’05] Min-size k-clustering: min sum of radii [Bilo+’05,Lev-Tov&Peleg’05,Alt+’05] k=2, 2D exact in O(n 2 /log log n) [Hershberger]k=2, 2D exact in O(n 2 /log log n) [Hershberger]

51 Lower Bound

52 Simple Exact Algorithm

53 Simple Grid-Based Solution Look at N occupied voxels Look at N occupied voxels Solve 2-box cover exactly on them, exploiting special structure Solve 2-box cover exactly on them, exploiting special structure

54 Bad Case for Grid-Based Solution

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

56 Cases Separable Edge In Crossing Vertex In Piercing

57 Separable Case Sweep in each of d directions, O(n log n) Sweep in each of d directions, O(n log n) Swap each hit point from one box to the other Swap each hit point from one box to the other Update: O(log n)/pt Update: O(log n)/pt

58 Nonseparable Case Key idea: one of the boxes is “large” (at least ½) in at least half of its extents: Key idea: one of the boxes is “large” (at least ½) in at least half of its extents:

59 (x,y)-Projection Cases

60 Discretizing in (x,y) B 1 is “large” in (x,y) B 1 is “large” in (x,y) Can afford to round it out to grid Can afford to round it out to grid How to determine its z-extent? How to determine its z-extent?

61 Varying the z-Extent

62 Improvement for the Min-Max Case

63 Higher Dimensions

64 Min-Union

65 Covering Polygons/Polyhedra

66 Cardinaltiy 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: 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?

67 Bounding Volume Hierarchies

68 Open Problems