Voronoi diagrams and applications Prof. Ramin Zabih

Slides:



Advertisements
Similar presentations
CSE 4101/5101 Prof. Andy Mirzaian. References: Lecture Note 8 [LN8]LN8 [CLRS] chapter 33 Lecture Note 8 [LN8]LN8 [CLRS] chapter 33 Applications:  Proximity.
Advertisements

Surface Reconstruction From Unorganized Point Sets
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.
Voronoi Diagrams in n· 2 O(√lglg n ) Time Timothy M. ChanMihai Pătraşcu STOC’07.
Proximity graphs: reconstruction of curves and surfaces
KIM TAEHO PARK YOUNGMIN.  Curve Reconstruction problem.
Computational Geometry II Brian Chen Rice University Computer Science.
1 Voronoi Diagrams. 2 Voronoi Diagram Input: A set of points locations (sites) in the plane.Input: A set of points locations (sites) in the plane. Output:
The Divide-and-Conquer Strategy
By Groysman Maxim. Let S be a set of sites in the plane. Each point in the plane is influenced by each point of S. We would like to decompose the plane.
Polygons and the convex hull Prof. Noah Snavely CS1114
3/5/15CMPS 3130/6130 Computational Geometry1 CMPS 3130/6130 Computational Geometry Spring 2015 Delaunay Triangulations II Carola Wenk Based on: Computational.
1st Meeting Industrial Geometry Computational Geometry ---- Some Basic Structures 1st IG-Meeting.
CSE554ContouringSlide 1 CSE 554 Lecture 4: Contouring Fall 2013.
Spatial Information Systems (SIS)
17. Computational Geometry Chapter 7 Voronoi Diagrams.
2. Voronoi Diagram 2.1 Definiton Given a finite set S of points in the plane , each point X of  defines a subset S X of S consisting of the points of.
3. Delaunay triangulation
Computational Geometry and Spatial Data Mining
1cs542g-term Notes. 2 Meshing goals  Robust: doesn’t fail on reasonable geometry  Efficient: as few triangles as possible Easy to refine later.
1 Lecture 8: Voronoi Diagram Computational Geometry Prof. Dr. Th. Ottmann Voronoi Diagrams Definition Characteristics Size and Storage Construction Use.
CS 128/ES Lecture 12b1 Spatial Analysis (3D)
CS 128/ES Lecture 5b1 Vector Based Data. Great Rivalries in History Lincoln vs. Douglas “The first great Presidential Debates” Trekkies vs. Jedis.
CS 128/ES Lecture 12b1 Spatial Analysis (3D)
Interpolation Prof. Noah Snavely CS1114
UMass Lowell Computer Science Advanced Algorithms Computational Geometry Prof. Karen Daniels Spring, 2007 Chapter 5: Voronoi Diagrams Wednesday,
CS 128/ES Lecture 5b1 Vector Based Data. CS 128/ES Lecture 5b2 Spatial data models 1.Raster 2.Vector 3.Object-oriented Spatial data formats:
UMass Lowell Computer Science Advanced Algorithms Computational Geometry Prof. Karen Daniels Spring, 2004 Chapter 5: Voronoi Diagrams Monday, 2/23/04.
Lecture 10 : Delaunay Triangulation Computational Geometry Prof. Dr. Th. Ottmann 1 Overview Motivation. Triangulation of Planar Point Sets. Definition.
CS CS 175 – Week 3 Triangulating Point Clouds VD, DT, MA, MAT, Crust.
UNC Chapel Hill M. C. Lin Overview of Last Lecture About Final Course Project –presentation, demo, write-up More geometric data structures –Binary Space.
Image Morphing : Computational Photography Alexei Efros, CMU, Fall 2005 © Alexey Tikhonov.
Computing the Delaunay Triangulation By Nacha Chavez Math 870 Computational Geometry; Ch.9; de Berg, van Kreveld, Overmars, Schwarzkopf By Nacha Chavez.
Image Morphing, Triangulation CSE399b, Spring 07 Computer Vision.
Clustering and greedy algorithms Prof. Noah Snavely CS1114
UNC Chapel Hill M. C. Lin Point Location Chapter 6 of the Textbook –Review –Algorithm Analysis –Dealing with Degeneracies.
Delaunay Triangulations Presented by Glenn Eguchi Computational Geometry October 11, 2001.
ADA: 14. Intro to CG1 Objective o give a non-technical overview of Computational geometry, concentrating on its main application areas Algorithm.
Algorithms for Triangulations of a 3D Point Set Géza Kós Computer and Automation Research Institute Hungarian Academy of Sciences Budapest, Kende u
5 -1 Chapter 5 The Divide-and-Conquer Strategy A simple example finding the maximum of a set S of n numbers.
Image segmentation Prof. Noah Snavely CS1114
Finding Red Pixels Prof. Ramin Zabih
Medians and blobs Prof. Ramin Zabih
Voronoi Diagram (Supplemental)
Clustering Prof. Ramin Zabih
CS 376b Introduction to Computer Vision 02 / 11 / 2008 Instructor: Michael Eckmann.
A New Voronoi-based Reconstruction Algorithm
Image Morphing Computational Photography Derek Hoiem, University of Illinois 9/29/15 Many slides from Alyosha Efros.
Vector Quantization CAP5015 Fall 2005.
UNC Chapel Hill M. C. Lin Delaunay Triangulations Reading: Chapter 9 of the Textbook Driving Applications –Height Interpolation –Constrained Triangulation.
1/57 CS148: Introduction to Computer Graphics and Imaging Geometric Modeling CS148 Lecture 6.
Multimedia Programming 10: Image Morphing
Digital Image Processing Lecture 17: Segmentation: Canny Edge Detector & Hough Transform Prof. Charlene Tsai.
Bigyan Ankur Mukherjee University of Utah. Given a set of Points P sampled from a surface Σ,  Find a Surface Σ * that “approximates” Σ  Σ * is generally.
VORONOI DIAGRAMS BY KATHARINE TISCHER Coordinating Seminar Spring 2013.
Coverage and Deployment 1. Coverage Problems Coverage: is a measure of the Quality of Service (QoS) of a sensor network How well can the network observe.
Recognizing objects Prof. Noah Snavely CS1114
CMPS 3130/6130 Computational Geometry Spring 2017
Lightstick orientation; line fitting
CSE 554 Lecture 1: Binary Pictures
Image Morphing © Zooface Many slides from Alexei Efros, Berkeley.
Garbage collection; lightstick orientation
Localizing the Delaunay Triangulation and its Parallel Implementation
Craig Schroeder October 26, 2004
Nearest-Neighbor Classifiers
Preprocessing to accelerate 1-NN
Quickselect Prof. Noah Snavely CS1114
CS5112: Algorithms and Data Structures for Applications
Getting to the bottom, fast
Presentation transcript:

Voronoi diagrams and applications Prof. Ramin Zabih

2 Administrivia  Last quiz: Thursday 11/15  Prelim 3: Thursday 11/29 (last lecture)  A6 is due Friday 11/30 (LDOC)  Final projects due Friday 12/7  Course evals! –This will count towards your grade! We get a list of students who didn’t fill it out, and will contact you

3 Final projects  All the proposals were fine  Due Friday, Dec 7, 4-5PM –Pizza will be provided! –A few “I survived CS100R” T-shirts  Other CS faculty will likely come by –There may also be photographers, etc.

4 Image differencing Figure from Tim Morris

5 Applying image differencing  By thresholding the difference image, we can figure out which pixels belong to the new object –I.e., the Coke or Pepsi can  These pixels will have some colors –They are points in color space  More generally, Coke pixels will tend to form a group (“cluster”) that is largely red –Pepsi will be largely blue  We can then compute a few model pixels

6 Voronoi diagrams  Divide our space into regions, where each region reg(P) consists of the points closest to a labeled point P –This is a Voronoi diagram –Long history (Descartes, 1644)

7 Impossible algorithms, redux  There are no O(n) sorting algorithms –More precisely, none based on comparisons  You can use convex hull to sort –By placing the points on a parabola –So, is there an O(n) convex hull algorithm?  You can use Voronoi diagrams to compute a convex hull –So, is there an O(n) Voronoi diagram algorithm? You can also use 3D convex hull to compute a 2D Voronoi diagram

8 Using Voronoi diagrams  Two obvious questions: –How can we efficiently create it? –How can we use it, once we’ve got it?  A Voronoi diagram divides the space into Voronoi cells, reg(P) for some P  If reg(P) is a strange shape, hard to figure out if the query is inside reg(P) –Fortunately, as the picture suggests, Voronoi cells have simple shapes

9 Computing reg(P)  Consider some other labeled point Q  Points might be in reg(P) if they are closer to P than to Q –I.e., they are in a polygon (half-plane)  reg(P) is the intersection of N-1 polygons –There are faster ways to compute it

10 Voronoi cell properties  The polygons whose intersection is reg(P) have another important property –They are convex!  The intersection of two convex shapes is also a convex shape

11 Voronoi query lookup  Given a Voronoi diagram and a query point, how do we tell which cell a query falls into? (I.e., solve the 1-NN problem)  We can project down to the x -axis every point in the Voronoi diagram –This gives us a bunch of “slabs” –We can find which slab our query is in by using binary search –Within a slab, we can find the Voronoi cell using binary search –Unfortunately, this is pretty messy

12 Example of slabs Figure from H. Alt “The Nearest Neighbor”

13 A Voronoi application  Image compression: generate a terse representation of the image by allowing small errors to be introduced  Simple method: vector quantization (VQ) –Video applications: Cinepak, Indeo, etc. Also used for audio (Ogg Vorbis) –In a color image, each pixel has a 24-bit number associated with it (the colors) –We can generate a “code book” with, say, 2^8 entries, and use this instead of the colors

14 Example output (Matlab)

15 Triangulations  Suppose that we want to analyze a curved surface, such as a wing or a vase –We can approximate it by a lot of small low- order polygons, especially triangle –This is tremendously important for, e.g., building planes, bridges, or computer graphics Finite Element Method!  Want to build a triangulation out of fat triangles, not skinny ones –Using the Voronoi diagram, we can generate a high-quality triangulation!

16 Delaunay triangulation  Connect two input points if they share an edge in the Voronoi diagram aunay.html  This maximizes the smallest angle  The circumcircle of a triangle passes through all 3 of its vertices –Not the same as the bounding circle –In the Delaunay triangulation, the circumcircles contain no other points

17 Applications of triangulation