1 Yago Diez, J. Antoni Sellarès and Universitat de Girona Noisy Road Network Matching Mario A....

Post on 01-Apr-2015

213 views 0 download

Tags:

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:

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