1 processing & analysis of geometric shapes shortest path problems shortest path problems the...

18
1 sing & Analysis of Geometric Shapes Shortest path problems Shortest path problems The discrete way © Alexander & Michael Bronstein, 2006-2009 © Michael Bronstein, 2010 tosca.cs.technion.ac.il/book 048921 Advanced topics in vision Processing and Analysis of Geometric Shapes EE Technion, Spring 2010

Post on 19-Dec-2015

240 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 1 Processing & Analysis of Geometric Shapes Shortest path problems Shortest path problems The discrete way © Alexander & Michael Bronstein, 2006-2009 ©

1Processing & Analysis of Geometric Shapes Shortest path problems

Shortest path problemsThe discrete way

© Alexander & Michael Bronstein, 2006-2009© Michael Bronstein, 2010tosca.cs.technion.ac.il/book

048921 Advanced topics in visionProcessing and Analysis of Geometric Shapes

EE Technion, Spring 2010

Page 2: 1 Processing & Analysis of Geometric Shapes Shortest path problems Shortest path problems The discrete way © Alexander & Michael Bronstein, 2006-2009 ©

2Processing & Analysis of Geometric Shapes Shortest path problems

How to compute the intrinsic metric?

So far, we represented itself.

Our model of non-rigid shapes as metric spaces involves

the intrinsic metric

Sampling procedure requires as well.

We need a tool to compute geodesic distances on .

Page 3: 1 Processing & Analysis of Geometric Shapes Shortest path problems Shortest path problems The discrete way © Alexander & Michael Bronstein, 2006-2009 ©

3Processing & Analysis of Geometric Shapes Shortest path problems

Shortest path problem

Paris

Brussels

BernMunich

Prague

Vienna346

183 566

194285

504407

271

943

1146

1542902

Page 4: 1 Processing & Analysis of Geometric Shapes Shortest path problems Shortest path problems The discrete way © Alexander & Michael Bronstein, 2006-2009 ©

4Processing & Analysis of Geometric Shapes Shortest path problems

Shapes as graphs

Sample the shape at vertices .

Represent shape as an undirected graph

set of edges

representing adjacent vertices.

Define length function

measuring local distances as

Euclidean ones,

Page 5: 1 Processing & Analysis of Geometric Shapes Shortest path problems Shortest path problems The discrete way © Alexander & Michael Bronstein, 2006-2009 ©

5Processing & Analysis of Geometric Shapes Shortest path problems

Shapes as graphs

Path between is an ordered set of connected edges

where and .

Path length = sum of edge lengths

Page 6: 1 Processing & Analysis of Geometric Shapes Shortest path problems Shortest path problems The discrete way © Alexander & Michael Bronstein, 2006-2009 ©

6Processing & Analysis of Geometric Shapes Shortest path problems

Geodesic distance

Shortest path between

Length metric in graph

Approximates the geodesic distance on the shape.

Shortest path problem: compute and

between any .

Alternatively: given a source point , compute the

distance map .

Page 7: 1 Processing & Analysis of Geometric Shapes Shortest path problems Shortest path problems The discrete way © Alexander & Michael Bronstein, 2006-2009 ©

7Processing & Analysis of Geometric Shapes Shortest path problems

Bellman’s principle of optimality

Let be shortest path between

and a point on the path.

Then, and are

shortest sub-paths between , and .

Suppose there exists a shorter path .

Contradiction to being shortest path.

Richard Bellman(1920-1984)

Page 8: 1 Processing & Analysis of Geometric Shapes Shortest path problems Shortest path problems The discrete way © Alexander & Michael Bronstein, 2006-2009 ©

8Processing & Analysis of Geometric Shapes Shortest path problems

Dynamic programming

How to compute the shortest path between source and on

?

Bellman principle: there exists such that

has to minimize path length

Recursive dynamic programming equation.

Page 9: 1 Processing & Analysis of Geometric Shapes Shortest path problems Shortest path problems The discrete way © Alexander & Michael Bronstein, 2006-2009 ©

9Processing & Analysis of Geometric Shapes Shortest path problems

Edsger Wybe Dijkstra (1930–2002)

[‘ɛtsxər ‘wibə ‘dɛɪkstra]

Page 10: 1 Processing & Analysis of Geometric Shapes Shortest path problems Shortest path problems The discrete way © Alexander & Michael Bronstein, 2006-2009 ©

10Processing & Analysis of Geometric Shapes Shortest path problems

Dijkstra’s algorithm

Initialize and for the rest of the graph;

Initialize queue of unprocessed vertices .

While

Find vertex with smallest value of ,

For each unprocessed adjacent vertex ,

Remove from .

Return distance map .

Page 11: 1 Processing & Analysis of Geometric Shapes Shortest path problems Shortest path problems The discrete way © Alexander & Michael Bronstein, 2006-2009 ©

11Processing & Analysis of Geometric Shapes Shortest path problems

Dijkstra’s algorithm

Paris

Brussels

Bern

Munich

Prague

Vienna

346

183 566

194

285

504407

271

0

0

183

346

183

346

0

679

749

679

749

183183

617

346346346

617617 904904617

749749

904904904

Page 12: 1 Processing & Analysis of Geometric Shapes Shortest path problems Shortest path problems The discrete way © Alexander & Michael Bronstein, 2006-2009 ©

12Processing & Analysis of Geometric Shapes Shortest path problems

Dijkstra’s algorithm – complexity

While there are still unprocessed vertices

Find and remove minimum

For each unprocessed adjacent vertex

Perform update

Every vertex is processed exactly once: outer iterations.

Minimum extraction straightforward complexity:

Can be reduced to using binary or Fibonacci heap.

Updating adjacent vertices is in general .

In our case, graph is sparsely connected, update in .

Total complexity: .

Page 13: 1 Processing & Analysis of Geometric Shapes Shortest path problems Shortest path problems The discrete way © Alexander & Michael Bronstein, 2006-2009 ©

13Processing & Analysis of Geometric Shapes Shortest path problems

Troubles with the metric

Grid with 4-neighbor connectivity.

True Euclidean distance

Shortest path in graph (not

unique)

Increasing sampling density does

not help.

Page 14: 1 Processing & Analysis of Geometric Shapes Shortest path problems Shortest path problems The discrete way © Alexander & Michael Bronstein, 2006-2009 ©

14Processing & Analysis of Geometric Shapes Shortest path problems

Metrication error

4-neighbor topology

Manhattan distance

Continuous

Euclidean distance

8-neighbor topology

Graph representation induces an inconsistent metric.

Increasing sampling size does not make it consistent.

Neither does increasing connectivity.

Page 15: 1 Processing & Analysis of Geometric Shapes Shortest path problems Shortest path problems The discrete way © Alexander & Michael Bronstein, 2006-2009 ©

15Processing & Analysis of Geometric Shapes Shortest path problems

Connectivity solves the problem!

Inconsistent Consistent

Geodesic approximation consistency depends on the graph

Page 16: 1 Processing & Analysis of Geometric Shapes Shortest path problems Shortest path problems The discrete way © Alexander & Michael Bronstein, 2006-2009 ©

16Processing & Analysis of Geometric Shapes Shortest path problems

Sufficient conditions for consistency

Theorem (Bernstein et al. 2000)

Let , and . Suppose

Connectivity

is a -covering

The length of edges is bounded

Then

Page 17: 1 Processing & Analysis of Geometric Shapes Shortest path problems Shortest path problems The discrete way © Alexander & Michael Bronstein, 2006-2009 ©

17Processing & Analysis of Geometric Shapes Shortest path problems

Why both conditions are important?

Insufficient density Too long edges

Page 18: 1 Processing & Analysis of Geometric Shapes Shortest path problems Shortest path problems The discrete way © Alexander & Michael Bronstein, 2006-2009 ©

18Processing & Analysis of Geometric Shapes Shortest path problems

Stick to graph

representation

Change connectivity

Consistency guaranteed

under

certain conditions

Stick to given sampling

Compute distance map

on the surface

New algorithm

Discrete solution Continuous solution