Investigating the Hausdorff Distance

Slides:



Advertisements
Similar presentations
TEL-AVIV UNIVERSITY FACULTY OF EXACT SCIENCES SCHOOL OF MATHEMATICAL SCIENCES An Algorithm for the Computation of the Metric Average of Two Simple Polygons.
Advertisements

Comments We consider in this topic a large class of related problems that deal with proximity of points in the plane. We will: 1.Define some proximity.
電腦視覺 Computer and Robot Vision I
Approximations of points and polygonal chains
Advanced Topics in Algorithms and Data Structures Lecture 7.2, page 1 Merging two upper hulls Suppose, UH ( S 2 ) has s points given in an array according.
ESSENTIAL CALCULUS CH11 Partial derivatives
 Distance Problems: › Post Office Problem › Nearest Neighbors and Closest Pair › Largest Empty and Smallest Enclosing Circle  Sub graphs of Delaunay.
Computational Geometry II Brian Chen Rice University Computer Science.
C o m p u t i n g C O N V E X H U L L S by Kok Lim Low 10 Nov 1998 COMP Presentation.
The Divide-and-Conquer Strategy
Convex Hulls in Two Dimensions Definitions Basic algorithms Gift Wrapping (algorithm of Jarvis ) Graham scan Divide and conquer Convex Hull for line intersections.
Ruslana Mys Delaunay Triangulation Delaunay Triangulation (DT)  Introduction  Delaunay-Voronoi based method  Algorithms to compute the convex hull 
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.
Convex Hull Problem Presented By Erion Lin. Outline Convex Hull Problem Voronoi Diagram Fermat Point.
Chapter 5 Raster –based algorithms in CAC. 5.1 area filling algorithm 5.2 distance transformation graph and skeleton graph generation algorithm 5.3 convolution.
1 An Efficiently Computable Metric for Comparing Polygonal Shapes Esther M. Arkin, L. Paul Chew, Daniel P. Huttenlocher, Klara Kedem, Joseph S.B. Mitchell.
3. Delaunay triangulation
Comparing Images Using the Hausdorff Distance Mark Bouts 6th April 2006.
Contents Description of the big picture Theoretical background on this work The Algorithm Examples.
Chamfer Matching & Hausdorff Distance Presented by Ankur Datta Slides Courtesy Mark Bouts Arasanathan Thayananthan.
UNC Chapel Hill M. C. Lin Point Location Chapter 6 of the Textbook –Review –Algorithm Analysis –Dealing with Degeneracies.
Convex Hull. What is the Convex Hull? Imagine a set of points on a board with a nail hammered into each point. Now stretch a rubber band over all the.
Triangle Scan Conversion. 2 Angel: Interactive Computer Graphics 5E © Addison-Wesley 2009 Rasterization Rasterization (scan conversion) –Determine which.
5 -1 Chapter 5 The Divide-and-Conquer Strategy A simple example finding the maximum of a set S of n numbers.
C o m p u t i n g C O N V E X H U L L S. Presentation Outline 2D Convex Hulls –Definitions and Properties –Approaches: Brute Force Gift Wrapping QuickHull.
4/28/15CMPS 3130/6130 Computational Geometry1 CMPS 3130/6130 Computational Geometry Spring 2015 Shape Matching Carola Wenk A B   (B,A)
Nearest Neighbor (NN) Rule & k-Nearest Neighbor (k-NN) Rule Non-parametric : Can be used with arbitrary distributions, No need to assume that the form.
Center for Graphics and Geometric Computing, Technion 1 Computational Geometry Chapter 8 Arrangements and Duality.
Vectors Addition is commutative (vi) If vector u is multiplied by a scalar k, then the product ku is a vector in the same direction as u but k times the.
Introduction Image geometry studies rotation, translation, scaling, distortion, etc. Image topology studies, e.g., (i) the number of occurrences.
Center for Graphics and Geometric Computing, Technion 1 Computational Geometry Chapter 8 Arrangements and Duality.
A survey of different shape analysis techniques 1 A Survey of Different Shape Analysis Techniques -- Huang Nan.
In the diagram above, corresponding points on the two figures are related. Suppose P is any point on the original figure and P’ is the corresponding point.
Presenter : Kuang-Jui Hsu Date : 2011/3/24(Thur.).
Convex Hull. University of Manchester biologists used lasers to measure the minimum amount of skin required to wrap around the skeletons of modern-day.
METU Informatics Institute Min720 Pattern Classification with Bio-Medical Applications Part 6: Nearest and k-nearest Neighbor Classification.
1/29/15CMPS 3130/6130 Computational Geometry1 CMPS 3130/6130 Computational Geometry Spring 2015 Triangulations and Guarding Art Galleries Carola Wenk.
Computer Graphics Filling. Filling Polygons So we can figure out how to draw lines and circles How do we go about drawing polygons? We use an incremental.
Measures and metrics Pattern Recognition 2015/2016 Marc van Kreveld.
Lecture 15: Raster Graphics and Scan Conversion
Network Partition –Finding modules of the network. Graph Clustering –Partition graphs according to the connectivity. –Nodes within a cluster is highly.
Image matching using the Hausdorff Distance with CUDA
Course 3 Binary Image Binary Images have only two gray levels: “1” and “0”, i.e., black / white. —— save memory —— fast processing —— many features of.
An Introduction to Computational Geometry: Arrangements and Duality Joseph S. B. Mitchell Stony Brook University Some images from [O’Rourke, Computational.
Computer Graphics CC416 Week 14 Filling Algorithms.
Visible-Surface Detection Methods. To identify those parts of a scene that are visible from a chosen viewing position. Surfaces which are obscured by.
Geo A 11.1 Reflections Assignment 1 1. Graph the reflection of the polygon in the given line.
Slide 1 Copyright © 2004 Pearson Education, Inc.  Descriptive Statistics summarize or describe the important characteristics of a known set of population.
ROTATIONS LESSON 30.
CMPS 3130/6130 Computational Geometry Spring 2017
How do I get there? Roadmap Methods Visibility Graph Voronoid Diagram.
Geometry (4102).
Image Representation and Description – Representation Schemes
Introduction to Spatial Computing CSE 555
Computer Graphics Filling.
Bitmap Image Vectorization using Potrace Algorithm
Transformations and Symmetry
Introduction to Polygons
MA/CSSE 473 Day 16 Answers to your questions Divide and Conquer
Convex Hull.
Haim Kaplan and Uri Zwick
Investigating the Hausdorff Distance – Project Update
Day 9 – Pre-image and Image under transformation
Localizing the Delaunay Triangulation and its Parallel Implementation
Convex Sets & Concave Sets
Cyclic string-to-string correction
Comparing Images Using Hausdorff Distance
Computational Geometry
Math 132 Day 2 (2/1/18) CCBC Dundalk.
Investigating the Hausdorff Distance
Presentation transcript:

Investigating the Hausdorff Distance CSC/Math 870 Yelena Gartsman 9/17/2018

Agenda Recap Intro to Other Distances Implementations Future Work Demo 9/17/2018

Hausdorff Distance Definition Hausdorff distance is the maximum distance of a set to the nearest point in the other set 9/17/2018

Hausdorff Distance between Point Sets -- Algorithm double HausdorffDistance (Set A, Set B) : hDistance = 0 2 for every Point ai of A 3 shortestDistance = infinity 4 for every Point bj of B 5 dij = d(ai, bj) 6 if(dij < shortestDistance) then 7 shortestDistance = dij 8 if shortestDistance > hDistance then 9 hDistance = shortestDistance 10 return hDistance 9/17/2018

Hausdorff Distance between Convex Polygons -- Algorithm (1/2) Point CheckForClosePoint (Point a, Point b1 , Point b2) : 1 Find point z where line b1b2 crosses its perpendicular through a 2 If (z is between b1 and b2) 3 return z 4 Else 5 Find line P that is perpendicular to line ab2 at b2 6 if P is a supporting line of B 7 return b2 8        else 9 return NULL 9/17/2018

Hausdorff Distance between Convex Polygons -- Algorithm (2/2) double HausdorffDistance (Polygon A, Polygon B) : 1 From a1, find the closest point b1 and compute d1 = d (a1, b1) 2 h(A, B) = d1 3 for each vertex ai of A 4 if ai+1 is to the left of aibi 5            find bi+1, scanning B counterclockwise with 6 CheckForClosePoint from bi 7              if ai+1 is to the right of aibi 8           find bi+1, scanning B clockwise with 9 CheckForClosePoint from bi              10 if ai+1 is anywhere on aibi 11                     bi+1 = bi 12     di+1 = d(ai+1, bi+1) 13      h (A, B) = max(h(A,B), di+1) 14 return h(A,B) 9/17/2018

Complexity Hausdorff Distance between Point Sets O(nm) -- brute force O((n+m)log(n+m)) – using Voronoi diagrams where n and m are the number of points in each set Hausdorff Distance between Convex Polygons O(n+m) where n and m are the number of vertices in each polygon 9/17/2018

Issues with Hausdorff Distance Sensitive to noise Only takes into account the sets of points on both curves and does not reflect the course of the curve 9/17/2018

Partial Hausdorff Distance – (1/2) PHD between two sets is the k-th ranked distance between a point and its nearest neighbor in the other set where distances are ranked in increasing order 9/17/2018

Partial Hausdorff Distance – (2/2) Pros: Not sensitive to noise Easy to compute Cons: Not a metric Figuring out the k-th value 9/17/2018

Metric To be a metric our distance must satisfy the following properties: Non-negativity d(x, y) ≥ 0 Identity d(x, y) = 0 iff x = y Symmetry d(x, y) = d(y, x) Triangle Inequality d(x, z) ≤ d(x, y) + d(y, z) 9/17/2018

Area of Symmetric Difference Distance – (1/2) The area of the symmetric difference distance is the area of the regions lying within one of the two polygons but not both of them or Also, known as Template Metric 9/17/2018

Area of Symmetric Difference Distance – (2/2) Pros: Not sensitive to noise Easy to compute Metric Cons: Captures only a crude notion of shape Difficult to find the right overlay of two objects Usage: Perfect for applications such as: OCR since characters are aligned with the page Bit-Map image comparison -- just sum the differences of the corresponding pixels 9/17/2018

Fréchet Distance – (1/2) Fréchet distance is the minimum leash distance that can keep the person and the dog walking on their own tracks from the beginning to the end (without retracting) Note: A polygonal curve A:[0,N] is a continuous and piecewise linear curve made of N connected segments 9/17/2018

Fréchet Distance – (2/2) Pros: Sensitive to order along two curves Metric For convex contours, equals to Hausdorff distance Cons: Semi-computable for 2-D surfaces – no approximation algorithms exist Usage: Perfect for pattern recognition 9/17/2018

Implementations -- (1/4) In addition to Hausdorff Distance algorithms for Point Sets and Convex Polygons, implemented: Convex Hull Sort points by increasing (x,y) Let L be the leftmost point and R be the rightmost point Partition the point set into two lists. The upper list begins with L and ends with R; the lower list begins with R and ends with L Traverse the point lists, eliminating all but the extreme points Eliminate L from lower and R from upper, if necessary Join the point lists 9/17/2018

Implementations -- (2/4) Area of convex polygon 9/17/2018

Implementations -- (3/4) Intersection of two lines Cramer’s Rule 9/17/2018

Implementations -- (4/4) Intersection of two polygon Find intersection points of set A and set B Find vertices of set A that are inside set B Find vertices of set B that are inside set A Combine all unique points 9/17/2018

Possibilities in Shape Matching Align objects by overlapping centroids Assign score to pairs of objects using Area of Symmetric Difference The larger the overlap of two objects  the higher the score Hasdorff Distance The lower the distance between two objects  9/17/2018

Future Work Test Calculator with real-world data, especially data with outliers Modify Hausdorff Distance between Convex Polygons algorithm to work for non-convex and overlapping polygons Modify Calculator to enable user enter data by drawing points sets/polygons Implement Hausdorff Distance between Point Sets algorithm using Voronoi diagrams Improve graphs 9/17/2018

Related Documents Point Pattern Matching http://www3.sympatico.ca/vpaquin/tutorial1/tutorial.htm Hausdorff Distance between Convex Polygons http://cgm.cs.mcgill.ca/~godfried/teaching/cg-projects/98/normand/main.html A New Similarity Measure Using Hausdorff Distance Map (Baudrier, Millon, Nicolier, Ruan) A Multi-Resolution Technique for Comparing Images Using the Hausdorff Distance (Huttenlocher, Rucklidge) Comparing Images Using Hausdorff the Hausdorff Distance http://www.cs.cornell.edu/~dph/papers%5CHKR-TPAMI-93.pdf The Hausdorff Metric http://www.diss.fu-berlin.de/1999/1/kap2.pdf Computing the Fréchet distance between two polygonal curves http://www.cim.mcgill.ca/~stephane/cs507/Project.html Matching Convex Shapes with Respect to the Symmetric Difference http://citeseer.ist.psu.edu/cache/papers/cs/12224/http:zSzzSzwww.inf.fu- berlin.dezSz~rotezSzPaperszSzpostscript- gzippedzSzMatchingzPzconvexzPzshapeszPzwithzPzrespectzPztozPzthezPzsymmetriczPzdifference.p df/alt97matching.pdf Shape Similarity Measures, Properties, and Constructions http://citeseer.ist.psu.edu/cache/papers/cs/17282/ftp:zSzzSzftp.cs.uu.nlzSzpubzSzRUUzSzCSzSztechrepszSzCS- 2000zSz2000-37.pdf/shape-similarity-measures-properties.pdf 9/17/2018