# Computing the shortest path on a polyhedral surface - PowerPoint PPT Presentation

PPT – Computing the shortest path on a polyhedral surface PowerPoint presentation | free to view - id: 4f0351-MjZlN

The Adobe Flash plugin is needed to view this content

Get the plugin now

View by Category
Title:

## Computing the shortest path on a polyhedral surface

Description:

### Computing the shortest path on a polyhedral surface Presented by: Liu Gang 2008.9.25 * * Forest fire Eikonal equation Let be a minimal geodesic between and . – PowerPoint PPT presentation

Number of Views:162
Avg rating:3.0/5.0
Slides: 60
Provided by: Tur48
Category:
Tags:
Transcript and Presenter's Notes

Title: Computing the shortest path on a polyhedral surface

1
Computing the shortest path on a polyhedral
surface
• Presented by Liu Gang
• 2008.9.25

2
(No Transcript)
3
Overview of Presentation
• Introduction
• Related works
• Dijkstras Algorithm
• Fast Marching Method
• Results

4
• Introduction

5
Motivation
• Computing the shortest path between two points s
and t on a polyhedral surface S is a basic and
natural problem
• From the viewpoint of application
• Robotics, geographic information systems and
• Establishing a surface distance metric

6
Related works
• Exact globally shortest path algorithms
• Shair and Schorr (1986) On shortest paths in
polyhedral spaces. O(n3logn)
• Mount (1984) On finding shortest paths on convex
polyhedral. O(n2logn)
• Mitchell, Mount and Papadimitriou (MMP)(1987) The
discrete geodesic problem. O(n2logn)
• Chen and Han(1990) shortest paths on a
polyhedron. O(n2)
• Approximate shortest path algorithms
• Sethian J.A (1996) A Fast Marching Level Set
O(nlogn)
• Kimmel and Sethian(1998) Computing geodesic
paths on manifolds. O(nlogn)
• Xin Shi-Qing and Wang Guo-Jin(2007) Efficiently
determining a locally exact shortest path on
polyhedral surface. O(nlogn)

7
Related works
• Exact globally shortest path algorithms
• Shair and Schorr (1986) On shortest paths in
polyhedral spaces. O(n3logn)
• Mount (1984) On finding shortest paths on convex
polyhedral. O(n2logn)
• Mitchell, Mount and Papadimitriou (MMP)(1987) The
discrete geodesic problem. O(n2logn)
• Chen and Han(1990) shortest paths on a
polyhedron. O(n2)
• Approximate shortest path algorithms
• Sethian J.A (1996) A Fast Marching Level Set
O(nlogn)
• Kimmel and Sethian(1998) Computing geodesic
paths on manifolds. O(nlogn)
• Xin Shi-Qing and Wang Guo-Jin(2007) Efficiently
determining a locally exact shortest path on
polyhedral surface. O(nlogn)

8
• Dijkstra's Algorithm

9
Dijkstra's Shortest Path Algorithm
• Find shortest path from s to t.

3
2
24
9
s
18
14
6
2
6
4
19
30
11
5
15
5
6
16
20
t
7
44
10
Dijkstra's Shortest Path Algorithm
?
?
3
2
24
0
9
s
18
?
14
6
2
6
?
4
?
19
30
11
5
15
5
6
16
20
t
7
44
?
distance label
?
11
Dijkstra's Shortest Path Algorithm
delmin
?
?
3
2
24
0
9
s
18
?
14
6
2
6
?
4
?
19
30
11
5
15
5
6
16
20
t
7
44
?
distance label
?
12
Dijkstra's Shortest Path Algorithm
decrease key
?
?
9
X
3
2
24
0
9
s
18
14
?
14
X
6
2
6
?
4
?
19
30
11
5
15
5
6
16
20
t
7
44
?
distance label
15
?
X
13
Dijkstra's Shortest Path Algorithm
delmin
?
?
(0,9)
X
3
2
24
0
9
s
18
14
?
14
X
6
2
6
?
4
?
19
30
11
5
15
5
6
16
20
t
7
44
?
distance label
15
?
X
14
Dijkstra's Shortest Path Algorithm
?
?
(0,9)
X
3
2
24
0
9
s
18
14
?
14
X
6
2
6
?
4
?
19
30
11
5
15
5
6
16
20
t
7
44
?
15
?
X
15
Dijkstra's Shortest Path Algorithm
decrease key
?
33
X
?
(0,9)
X
3
2
24
0
9
s
18
14
?
14
X
6
2
6
?
4
?
19
30
11
5
15
5
6
16
20
t
7
44
?
15
?
X
16
Dijkstra's Shortest Path Algorithm
?
33
X
?
(0,9)
X
3
2
24
0
9
delmin
s
18
(0,14)
?
14
X
6
2
6
?
4
?
19
30
11
5
15
5
6
16
20
t
7
44
?
15
?
X
17
Dijkstra's Shortest Path Algorithm
32
?
33
X
X
?
(0,9)
X
3
2
24
0
9
s
18
(0,14)
?
14
X
6
2
6
?
44
4
?
19
X
30
11
5
15
5
6
16
20
t
7
44
?
15
?
X
18
Dijkstra's Shortest Path Algorithm
32
?
33
X
X
?
9
X
3
2
24
0
9
s
18
(0,14)
?
14
X
6
2
6
?
44
4
?
19
X
30
11
5
15
5
6
16
20
t
7
44
?
15
?
delmin
X
19
Dijkstra's Shortest Path Algorithm
32
?
33
X
X
?
(0,9)
X
3
2
24
0
9
s
18
(0,14)
?
14
X
6
2
6
?
35
44
X
4
?
19
X
30
11
5
15
5
6
16
20
t
7
44
?
59
(0,15)
?
X
X
20
Dijkstra's Shortest Path Algorithm
delmin
(6,32)
?
33
X
X
?
9
X
3
2
24
0
9
s
18
14
?
14
X
6
2
6
?
35
44
X
4
?
19
X
30
11
5
15
5
6
16
20
t
7
44
?
59
15
?
X
X
21
Dijkstra's Shortest Path Algorithm
(6,32)
?
33
X
X
?
(0,9)
X
3
2
24
0
9
s
18
(0,14)
?
14
X
6
2
6
?
35
44
X
X
4
?
19
X
30
11
5
15
5
(3,34)
6
16
20
t
7
44
?
51
59
(0,15)
?
X
X
X
22
Dijkstra's Shortest Path Algorithm
(6,32)
?
33
X
X
?
(0,9)
X
3
2
24
0
9
s
18
(0,14)
?
14
X
6
(3,34)
2
6
?
35
44
X
X
4
?
19
X
30
11
5
15
5
6
16
delmin
20
t
7
44
?
51
59
(0,15)
?
X
X
X
23
Dijkstra's Shortest Path Algorithm
(6,32)
?
33
X
X
?
(0,9)
X
3
2
24
0
9
s
18
(0,14)
?
14
X
6
2
6
?
45
35
44
X
X
X
4
?
19
X
30
(3,34)
11
5
15
5
6
16
20
t
7
44
?
51
50
59
(0,15)
?
X
X
X
X
24
Dijkstra's Shortest Path Algorithm
(6,32)
?
33
X
X
?
(0,9)
X
3
2
24
0
9
s
18
(0,14)
?
14
X
6
(3,34)
2
6
?
(5, 45)
35
44
X
X
X
4
?
19
X
30
11
5
delmin
15
5
6
16
20
t
7
44
?
51
50
59
(0,15)
?
X
X
X
X
25
Dijkstra's Shortest Path Algorithm
(6,32)
?
33
X
X
?
(0,9)
X
3
2
24
0
9
s
18
(0,14)
?
14
X
6
(6,34)
2
6
?
(5,45)
35
44
X
X
X
4
?
19
X
30
11
5
15
5
6
16
20
t
7
44
?
51
50
59
(0,15)
?
X
X
X
X
26
Dijkstra's Shortest Path Algorithm
(6,32)
?
33
X
X
?
(0,9)
X
3
2
24
0
9
s
18
(0,14)
?
14
X
6
(3,34)
2
6
?
(5,45)
35
44
X
X
X
4
?
19
X
30
11
5
15
5
6
16
20
t
7
44
?
delmin
51
50
59
(0,15)
?
X
X
X
X
27
Dijkstra's Shortest Path Algorithm
(6,32)
?
33
X
X
?
(0,9)
X
3
2
24
0
9
s
18
(0,14)
?
14
X
6
(3,34)
2
6
?
(5, 45)
35
44
X
X
X
4
?
19
X
30
11
5
15
5
6
16
20
(5,50)
t
7
44
?
51
59
X
X
(0,15)
?
X
X
28
Dijkstra's Shortest Path Algorithm
(6,32)
?
33
X
X
?
(0,9)
X
3
2
24
9
s
0
18
(0,14)
?
X
14
6
(3,34)
2
6
?
(5, 45)
35
X
44
X
X
4
?
X
19
30
11
5
15
5
6
16
20
(5,50)
t
7
44
?
59
51
X
X
X
(0,15)
?
X
29
Dijkstra's Shortest Path Algorithm
(6,32)
?
33
X
X
?
(0,9)
X
3
2
24
9
s
0
18
(0,14)
?
X
14
6
(3,34)
2
6
?
(5, 45)
35
X
44
X
X
4
?
X
19
30
11
5
15
5
6
16
20
(5,50)
t
7
44
?
59
51
X
X
X
(0,15)
?
X
30
Dijkstra's Shortest Path Algorithm
(6,32)
?
33
X
X
?
(0,9)
X
3
2
24
9
s
0
18
(0,14)
?
X
14
6
(3,34)
2
6
?
(5, 45)
35
X
44
X
X
4
?
X
19
30
11
5
15
5
6
16
20
(5,50)
t
7
44
?
59
51
X
X
X
(0,15)
?
X
31
Summary
• Dijkstras algorithm is to construct a tree of
shortest paths from a start vertex to all the
other vertices on the graph.
• Characteristics
• 1. Monotone property Every vertex is processed
exactly once
• 2. When reach the destination, trace backward to
find the shortest path.

32
Preliminaries
• Let S be a triangulated polyhedral
• surface in R3, defined by a set of
• faces, edges and vertices. Assume
• that the Surface S has n faces and
• x0, x are two points on the surface.

Face sequence F is defined by a list of adjacent
faces f1, f2,, fm1 such that fi and fi1 share
a common edge ei . Then we call the list of edges
E(e1,e2,,em) an edge sequence.
33
Fast Marching Method(FMM)
• R. Kimmel
• Professor
• Department of Computer Science
• Technion-Israel Institute of Technology
• IEEE Transactions on Image Processing
• J. A. Sethian
• Professor
• Department of Mathematics
• University of California, Berkeley
• Norbert Wiener Prize in Applied Mathematics

34
Forest fire
35
Eikonal equation
• Let be a minimal geodesic between
and .
• The derivative
• is the fire front propagation direction.
• In arclength parametrization
.
• Fermats principle
• Propagation direction direction of steepest
increase of .
• Geodesic is perpendicular to the level sets of
on .

36
Eikonal equation
• Eikonal equation (from Greek e????)
• Hyperbolic PDE with boundary
• condition
• Minimal geodesics are
• characteristics.
• Describes propagation of waves
• in medium.

37
Fast marching algorithm
• Initialize and mark it as
black.
• Initialize for other
vertices and mark them as green.
• Initialize queue of red vertices .
• Repeat
• Mark green neighbors of black vertices as red
• For each red vertex
• For each triangle sharing the vertex
• Update from the triangle.
• Mark with minimum value of as black
(remove from )
• Until there are no more green vertices.
• Return distance map
.

38
Update step difference
• Dijkstras update
• Vertex updated from
• Distance computed
• from
• Path restricted to graph edges
• Fast marching update
• Vertex updated from triangle
• Distance computed
• from and
• Path can pass on mesh faces

39
Fast Marching Method cont.
40
propagation
Using the intrinsic variable of the triangulation
Acute triangulation
The update procedure is given as follows
41
Fast Marching Method cont.
• Acute triangulation guarantee that the
consistent solution approximating the Viscosity
solution of the Eikonal equation has the monotone
property

42
Obtuse triangulation
Inconsistent solution if the mesh contains obtuse
triangles Remeshing is costly
43
Obtuse triangulation cont.
• Solution split obtuse triangles by adding

44
Obtuse triangulation cont.
Done as a pre-processing step in
45
Results (Good)
46
47
Why?
48
More Flags for Keeping Track of an Advancing
Wavefront
From Edge the shortest path to the vertex v goes
across the edge v1v2 p is the access point.
• From Vertex the shortest path to the
• vertex v goes via its adjacent vertex
• v.

49
More Flags for Keeping Track of an Advancing
Wavefront
• From Left Part edge v1v3
• receives wavefront coming from the
• left part of edge v1v2.

(b) From Right Part Edge v3v2 receives wavefront
coming from the right part of edge v1v2.
50
(No Transcript)
51
(No Transcript)
52
(No Transcript)
53
(No Transcript)
54
Backtracing Paths
55
(No Transcript)
56
(No Transcript)
57
(No Transcript)
58
Result
59
Questions will be welcome !