The discrete way Alexander amp Michael Bronstein 20062009 Michael Bronstein 2010 toscacstechnionacilbook 048921 Advanced topics in vision Processing and Analysis of Geometric Shapes ID: 617342
Download Presentation The PPT/PDF document "Shortest path problems" is the property of its rightful owner. Permission is granted to download and print the materials on this web site for personal, non-commercial use only, and to display it on your personal computer provided you do not modify the materials and that you retain all copyright notices contained in the materials. By downloading content from our website, you accept the terms of this agreement.
Slide1
Shortest path problems
The discrete way
© Alexander & Michael Bronstein, 2006-2009
©
Michael Bronstein, 2010tosca.cs.technion.ac.il/book
048921 Advanced topics in vision
Processing
and Analysis of Geometric Shapes
EE
Technion
,
Spring 2010Slide2
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 .Slide3
Shortest path problem
Paris
Brussels
Bern
Munich
Prague
Vienna
346
183
566
194
285
504
407
271
943
1146
1542
902Slide4
Shapes as graphs
Sample
the shape at vertices .
Represent shape as an
undirected graph set of edges
representing
adjacent
vertices.Define
length functionmeasuring local distances as
Euclidean ones,Slide5
Shapes as graphs
Path
between is an ordered set of connected edges
where and .
Path length = sum of edge lengthsSlide6
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 .Slide7
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)Slide8
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
.Slide9
Edsger Wybe Dijkstra
(1930–2002)[‘ɛtsxər ‘wibə ‘dɛɪkstra]Slide10
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 .Slide11
Dijkstra’s algorithm
Paris
Brussels
Bern
Munich
Prague
Vienna
346
183
566
194
285
504
407
271
0
0
183
346
183
346
0
679
749
679
749
183
183
617
346
346
346
617
617
904
904
617
749
749
904
904
904Slide12
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:
.Slide13
Troubles with the metric
Grid with
4-neighbor
connectivity.
True
Euclidean distance
Shortest path in
graph
(
not unique
)
Increasing
sampling density
does
not help.Slide14
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
.Slide15
Connectivity solves the problem!
Inconsistent
Consistent
Geodesic approximation consistency
depends on the graphSlide16
Sufficient conditions for consistency
Theorem
(Bernstein et al. 2000)
Let , and . Suppose
Connectivity is a -covering
The length of edges is bounded
ThenSlide17
Why both conditions are important?
Insufficient density
Too long edgesSlide18
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