Upload
ivan-michaelson
View
214
Download
0
Tags:
Embed Size (px)
Citation preview
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:
db(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:
db (τ(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.
2s (size s)
2. Calculate associated geometric information.
Lossless Filtering Algorithm
16
Calculate quadtree of B with geometric parameters.
.
.
.
.
.
.
Lossless Filtering Algorithm
17
...
...
Points = 550
Points = 173Points = 113 Points = 131 Points = 133
23 5756
3720 6 53 34
54 12 1451 49 46 34 4
0 6 1 16
1 3 22 313 11 1 22
20 19 6 11
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 = 173points = 113 points = 131 points = 133
23 5756
3720 6 53 34
54 12 1451 49 46 34 4
0 6 1 16
1 3 22 313 11 1 22
20 19 6 11
-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 = 173points = 113 points = 131 points = 133
23 5756
3720 6 53 34
54 12 1451 49 46 34 4
0 6 1 16
1 3 22 313 11 1 22
20 19 6 11
-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 = 173points = 113 points = 131 points = 133
23 5756
3719 5 54 35
54 12 1451 49 46 34 4
0 6 1 16
1 3 22 313 11 1 22
20 19 6 11
-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
23
Lossless Filtering Algorithm
24
Algorithm complexity:
O(m2)
Lossless Filtering Algorithm
25
Matching Algorithm
Efrat, Itai, Katz:
O( n4 m3 log m )
Our approach :
ΣCand.Zon O( n4 n’ 3 log n’ )
Computational Cost
26
Implementation and Results
Data used, Tiger/lines file from Arapahoe, Adams and Denver Counties:
27
Experiments
Experiment 1: Does the lossless filtering step help?
28
Experiments
Experiment 2: Filtering parameters comparison.
29
Experiments
Experiment 3: Computational Performance
30
Experiments
Experiment 3: Computational Performance
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