1 / 25

Comparing Images Using the Hausdorff Distance

Comparing Images Using the Hausdorff Distance. Mark Bouts 6th April 2006. Introduction. Hausdorff distance. HD translation. Comparing portions. HD grid points. HD rigid motion. Introduction. examples.

jethro
Download Presentation

Comparing Images Using the Hausdorff Distance

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Comparing Images Using the Hausdorff Distance Mark Bouts6th April 2006

  2. Introduction Hausdorff distance HD translation Comparing portions HD grid points HD rigid motion Introduction examples • Efficiently compute the Hausdorff Distance between all relative positions of a model and an image • Main topic:Computing the Hausdorff Distance under translation • Extension to rigid motion

  3. Introduction Hausdorff distance HD translation Comparing portions HD grid points HD rigid motion Introduction examples • Point sets in the plane • The minimal Hausdorff Distance under translation and how to compute it • Distance measure portion of a model and an image • Raster dataPresent approximation algorithms, which operate on binary rasters making them suited for IP and MV applications • Distance measure for Grid points (and portions) • Examples

  4. Hausdorff distance Hausdorff distance HD translation Comparing portions HD grid points HD rigid motion Introduction examples • Focus on 2D case • Measure the Hausdorff Distance for point sets and not for segments • HD is a metric over the set of all closed and bounded sets • Restriction to finite point sets(all that is necessary for raster sensing devices)

  5. Hausdorff distance Hausdorff distance HD translation Comparing portions HD grid points HD rigid motion Introduction examples • set A = {a1,….,ap} and B = {b1,….,bq} • Hausdorff distance • Directed Hausdorff distance h(A,B) ranks each point of A based on its nearest point of B and uses the most mismatched point

  6. Minimal Hausdorff distance Hausdorff distance HD translation Comparing portions HD grid points HD rigid motion Introduction examples • [Alt, et al. 1991] Can be computed in time O((p+q)log(p+q)) • Considers the mismatch between all possible relative positions of two sets • Minimal Hausdorff Distance MG

  7. How to compute the MT Hausdorff distance HD translation Comparing portions HD grid points HD rigid motion Introduction examples • Again the HD definition • We defineInterested in the graph of d(x)which gives the distance from any point x to the nearest point in a set of source points in B

  8. Voronoi surface Hausdorff distance HD translation Comparing portions HD grid points HD rigid motion Introduction examples • It is a distance transform • It defines the distance from any point x to the nearest of source points of the set A or B Images: Alt H. Discrete Geometric Shapes Huttenlocher D. Comparing images using the Hausdorff distance

  9. Computing the HDT Hausdorff distance HD translation Comparing portions HD grid points HD rigid motion Introduction examples Can be rewritten as: is the maximum of translated copies of d(x) and d’(x)Define:the upper envelope (pointwise maximum) of p copies of the function d(-t), which have been translated to each other by each

  10. Runtime Hausdorff distance HD translation Comparing portions HD grid points HD rigid motion Introduction examples • [Huttenlocher et al., 1991]O(pq(p+q)logpq) • L1,L2 or L∞ norm • [Chew et al.] L1, L∞ O(pqlogpq) • Complicated to implement, less efficient in practice than the rasterized approximations presented later

  11. Comparing Portions of Shapes Hausdorff distance HD translation Comparing portions HD grid points HD rigid motion Introduction examples • Extent the case toFinding the best partial distance between a model set B and an image set A • Ranking based distance measure K=

  12. Comparing Portions of Shapes Hausdorff distance HD translation Comparing portions HD grid points HD rigid motion Introduction examples • Target is to find the K points of the model set which are closest to the points of the image set. • ‘Automatically’ select the K ‘best matching’ points of B • It identifies subsets of the model of size K that minimizes the Hausdorff distance • Don’t need to pre-specify which part of the model is being compared

  13. Comparing Portions of Shapes Hausdorff distance HD translation Comparing portions HD grid points HD rigid motion Introduction examples • Does not obey metric properties! • Identity and symmetry hold • Triangle inequality does not always holdonly under strict conditionsHave to make sure B1 and B2 match the same part of the image. Then we expect both models to be similar

  14. Min HD for Grid Points Hausdorff distance HD translation Comparing portions HD grid points HD rigid motion Introduction examples • Now we consider the sets A and B to be binary arrays A[k,l] and B[k,l] • F[x,y] is small at some translation when every point of the translated model array is near some point of the image array

  15. Min HD for Grid Points Hausdorff distance HD translation Comparing portions HD grid points HD rigid motion Introduction examples • Rasterization introduces a small error compared to the true distance • Claim: F[x,y] differs from f(t) by at most 1 unit of quantization • The translation minimizing F[x,y] is not necessarily close to translation of f(t) • So there may be more translation having the same minimum

  16. Compute VS array D[x,y] Hausdorff distance HD translation Comparing portions HD grid points HD rigid motion Introduction examples • Many distance transform algorithms • Two-pass serial algorithm proposed by Paglieroni [Paglieroni,1992] • Using rendering or z-buffers • Use these to compute the lower envelope of the cone-shapes • Run time O(p) time (p number points in E)(rendering and z-buffering is constant time)

  17. Computing HD array F[x,y] Hausdorff distance HD translation Comparing portions HD grid points HD rigid motion Introduction examples • can be viewed as the maximization of D’[x,y] shifted by each location where B[k,l] takes a nonzero value • Expensive computation! • Constantly computing the new upper envolope

  18. Computing HD array F[x,y] Hausdorff distance HD translation Comparing portions HD grid points HD rigid motion Introduction examples • Probing the Voronoi surface of the image • Looks similar to binary correlation • Due to no proximity notion is binary correlation more sensitive to pixel purturbation

  19. Matching portions of shapes Hausdorff distance HD translation Comparing portions HD grid points HD rigid motion Introduction examples • Matching portions of the image and a model • Partial distance formulation is not ideal! Consider portion of the image to the model More wise to only consider those points of the image that ‘underneath’ the model

  20. HD under Rigid motion Hausdorff distance HD translation Comparing portions HD grid points HD rigid motion Introduction examples • Extent the transformation set with rotation • Minimum value of the HD under rigid (Euclidean) motion • Ensure that each consecutive rotation moves each point by at most 1 pixel • So

  21. HD under Rigid motion Hausdorff distance HD translation Comparing portions HD grid points HD rigid motion Introduction examples • Computation • Limitations • Only from the model B to the image A • Complete shapes • Method • For each translation • Create an array Q in which each element = • For each point in B • For each rotation we probe the distance transform and maximize it with values already in the array

  22. Example translation Hausdorff distance HD translation Comparing portions HD grid points HD rigid motion Introduction examples • Image: 360 x 240 pixels • Model: 115 x 199 pixels • f1 = 0.8 and f2 = 0.5 • Sun-4 (SPARCstation 2) Runtime ± 20 seconds • 2 matches Image model overlaid Images Huttenlocher D. Comparing images using the Hausdorff distance

  23. Example Rigid motion Hausdorff distance HD translation Comparing portions HD grid points HD rigid motion Introduction examples • Image: 360 x 240 pixels • Model: 31 x 31 pixels • f1 = 0.8 and f2 = 0.5 • Sun-4 (SPARCstation 2) Runtime ± 216 seconds • 15 matches Image model overlaid Images Huttenlocher D. Comparing images using the Hausdorff distance

  24. Summary Hausdorff distance HD translation Comparing portions HD grid points HD rigid motion Introduction examples • Hausdorff Distance • Minimal Hausdorff as a function of translation • Computation using Voronoi surfaces • Compared portions of shapes and models • The minimal HD for grid points • Computed the distance transform • The minimal HD as a function of translation • Comparing portions of shapes and models • The Hausdorff distance under rigid (euclidean) motion • Examples

  25. References Hausdorff distance HD translation Comparing portions HD grid points HD rigid motion Introduction examples • References • [Huttenlocher et al., 1991]Huttenlocher Daniel P, Kedem K and M. SharirThe Upper Envelope of Voronoi Surfaces and Its Applications, ACM symposium on Computational Geometry,194-292, 1991 • [Alt et al., 1991]Alt H., Behrends B., Blomer J. Measuring the resemblance of polygonal shapes. In Proc. Seventh ACM Symposium on Computational Geometry • [Paglieroni, 1992]Paglieroni D.W, Distance transforms: Properties and machine vision applications. Computer Vision, Graphics and Image Proc: Graphical Models and Image Processing, 54(1):56-74,1992

More Related