Presentation on theme: "1 Yago Diez, J. Antoni Sellarès and Universitat de Girona Noisy Road Network Matching Mario A. López University of Denver."— Presentation transcript:
1 Yago Diez, J. Antoni Sellarès and Universitat de Girona Noisy Road Network Matching Mario A. López University of Denver
2 “Road Network Matching” Motivation Known scale, unknown reference system (maps may appear rotated). Find R’ In R
3 Problem Formalization -We describe maps using road crossings - Adjacency degrees act as color cathegories.
4 Given two sets of road points A and B, |A| < |B|, find all the subsets B’ of B that can be expressed as rigid motions of A. We want: the points to approximately match (fuzzy nature of real data). the adjacency degrees to coincide. One-to-one matching! (*) Rigid motion: composition of a translation and a rotation. Problem Formalization
5 Let A, B be two road point sets of the same cardinality. An adjacency-degree preserving bijective mapping f : S S’ maps each Road point P(a, r) to a distinct and unique road point f(P(a,r))= P(b,s) so that r = s. Let F be the set of all adjacency-degree preserving bijective mappings between S and S’. The Bottleneck Distance between S and S’ is is defined as: d b (S, S’ ) = min f F max P(a,r) S d(P(a,r), f(P(a,r))). Problem Formalization
6 Given two road points sets A and B, n=|A|, m=|B|, n < m, and a real positive number ε, determine all the rigid motions τ for which there exists a subset B’ of B, |B’|=|A|, such that: d b (τ(A),B’) ε (Bottleneck distance) Problem Formalization “Final Formulation”
7 Example Consider: A B Find:
8 Previous Work On Road Network Matching Previous Work Chen et Al.(STDBM’06): Similar problem with some differences: -Motions considered: - Chen et Al.: Translation + Scaling - Us: Translation + Rotation - Distance used: - Chen et Al.: Hausdorff - Us: Bottleneck
9 Previous Work On Point Set Matching Algorithms Previous Work - Alt / Mehlhorn / Wagener / Welzl (Discrete & Computational Geometry 88) - Efrat / Itai / Katz. (Comput. Geom. Theory Appl. 02) - Eppstein / Goodrich / Sun (SoCG 05) : Skip Quadtrees. - Diez / Sellarés (ICCSA 07)
10 Matching Algorithm - Tackle the problem from the COMPUTATIONAL GEOMETRY point of view. -Adapt the ideas in our paper at ICCSA 07 to the RNM problem. -Matching Algorithm: -Two main parts: Enumeration Testing OUR APPROACH:
11 Matching Algorithm Generate all possible motions τ that may bring set A near some B’. Enumeration We rule out all those pairs of points whose degrees do not coincide.
12 Matching Algorithm For every motion τ representative of an equivalence class, find a matching of cardinality n between τ(A) and S. Testing A set of calls to Neighbor operation corresponds to one range search operation in a skip quadtree Neighbor ( D(T), q ) Delete ( D(T), s ) Corresponds to a deletion operation in a skip quadtree. Amortized cost of Neighbor, Delete: log n (Under adequate assumptions)
13 Improving Running time Our main goal is to transform the problem into a series of smaller instances. We will use a conservative strategy to discard, cheaply and at an early stage, those subsets of B where no match may happen. Our process consists on two main stages: 1. Losless Filtering Algorithm 2. Matching Algorithm (already presented!)
14 Lossless Filtering Algorithm What geometric parameters, do we consider ? (rigid motion invariant ) - number of Road Points, - histogram of degrees, - max. and min. distance between points of the same degree, - CFCC codes. There cannot be any subset B‘ of B that approximately matches A fully contained in the four top-left quadrants, because A contains six points and the squares only five.
15 Initial step 1. Determine an adequate square bounding box of A. 2 s (size s) 2. Calculate associated geometric information. Lossless Filtering Algorithm
16 Calculate quadtree of B with geometric parameters Lossless Filtering Algorithm
Points = 550 Points = 173 Points = 113 Points = 131Points = Example with geometric parameter: number of points Lossless Filtering Algorithm
18 Search Algorithm a b b c Three search functions needed for every type of zone according to the current node: -Search type a zones. -Search type b zones. -Search type c zones. The search begins at the root and continues until nodes of size s are reached. Early discards will rule out of the search bigger subsets of B than later ones. Lossless Filtering Algorithm
19 - Search’s first step: Search Algorithm points = 550 points = 173 points = 113 points = 131 points = Target number of points = 25 - Launch search1? yes (in four sons) - Launch search2? yes (all possible couples) - Launch search3? yes (possible quartet) Lossless Filtering Algorithm
20 Search Algorithm points = 550 points = 173 points = 113 points = 131 points = Target number of points = 25 - Launch search1? yes (in three sons) - Launch search2? yes (all possible couples) - Launch search3? yes (possible quartet) Lossless Filtering Algorithm
21 Lossless Filtering Algorithm
22 Search Algorithm points= 550 points = 173 points = 113 points = 131 points = Target number of points = 25 - Launch search1? yes (in two sons) - Launch search2? yes (three possible couples) - Launch search3? yes (possible quartet) Lossless Filtering Algorithm
31 Conclusions - First formalization of the NRNM problem in terms of the bottleneck distance. - Fast running times in light of the inherent complexity of the problem. - Experiments show how using the lossless filtering algorithm helps reduce the running time. - We have only used information that should be evident to all observers. -We have also provided some examples on how the degree of noise in data influences the performance of the algorithm.
32 Future Work - Other values of ε (for example, those that arise directly from the precision of measuring devices). - Maps with different levels of detail.
33 Yago Diez, J. Antoni Sellarès and Universitat de Girona Noisy Road Network Matching Mario A. López University of Denver