Lecture 25: Geodesic Paths COMPSCI/MATH 290-04 Chris Tralie, Duke - - PowerPoint PPT Presentation

lecture 25 geodesic paths
SMART_READER_LITE
LIVE PREVIEW

Lecture 25: Geodesic Paths COMPSCI/MATH 290-04 Chris Tralie, Duke - - PowerPoint PPT Presentation

Lecture 25: Geodesic Paths COMPSCI/MATH 290-04 Chris Tralie, Duke University 4/14/2016 COMPSCI/MATH 290-04 Lecture 25: Geodesic Paths Announcements Group Assignment 3 Out: First Deadline Monday 4/18. Final Deadline Tuesday 4/26 Final


slide-1
SLIDE 1

Lecture 25: Geodesic Paths

COMPSCI/MATH 290-04

Chris Tralie, Duke University

4/14/2016

COMPSCI/MATH 290-04 Lecture 25: Geodesic Paths

slide-2
SLIDE 2

Announcements

⊲ Group Assignment 3 Out: First Deadline Monday 4/18. Final Deadline Tuesday 4/26 ⊲ Final Project Final Deadline 5/3 5:00 PM

COMPSCI/MATH 290-04 Lecture 25: Geodesic Paths

slide-3
SLIDE 3

Table of Contents

◮ Geodesics ⊲ Dijkstra’s / Fast Marching ⊲ G2 Geodesic Histograms

COMPSCI/MATH 290-04 Lecture 25: Geodesic Paths

slide-4
SLIDE 4

Geodesic Paths

Euclidean Path (shortest path of flying fly)

COMPSCI/MATH 290-04 Lecture 25: Geodesic Paths

slide-5
SLIDE 5

Geodesic Paths

Euclidean Path (shortest path of flying fly) Geodesic Path (shortest path of crawling ant)

COMPSCI/MATH 290-04 Lecture 25: Geodesic Paths

slide-6
SLIDE 6

Geodesic Paths on Spheres

COMPSCI/MATH 290-04 Lecture 25: Geodesic Paths

slide-7
SLIDE 7

Geodesic Paths on Spheres P Q

⊲ Geodesic paths on spheres lie along great circles

COMPSCI/MATH 290-04 Lecture 25: Geodesic Paths

slide-8
SLIDE 8

Geodesic Paths on Spheres P Q

⊲ Geodesic paths on spheres lie along great circles ⊲ Geodesic distance is the shortest geodesic path

COMPSCI/MATH 290-04 Lecture 25: Geodesic Paths

slide-9
SLIDE 9

Geodesic Paths on Spheres P Q

⊲ Geodesic paths on spheres lie along great circles ⊲ Geodesic distance is the shortest geodesic path ⊲ What is the geodesic distance between two points P and Q

  • n a sphere centered at the origin with radius R?

COMPSCI/MATH 290-04 Lecture 25: Geodesic Paths

slide-10
SLIDE 10

Geodesic Paths on Spheres

What is the geodesic distance between two points P and Q on a sphere centered at the origin with radius R? R cos−1

  • P ·

Q || P|||| Q||

  • = R cos−1

P · Q R2

  • Remember SLERP??

COMPSCI/MATH 290-04 Lecture 25: Geodesic Paths

slide-11
SLIDE 11

Another Geodesic Mesh Example

COMPSCI/MATH 290-04 Lecture 25: Geodesic Paths

slide-12
SLIDE 12

Table of Contents

⊲ Geodesics ◮ Dijkstra’s / Fast Marching ⊲ G2 Geodesic Histograms

COMPSCI/MATH 290-04 Lecture 25: Geodesic Paths

slide-13
SLIDE 13

Dijkstra’s Algorithm Review

def Dijsktra(Graph, source): list dists list prev dist[source] = 0 Queue Q for vertex v in Graph: if v not source: dists[v] = Infinity prev[v] = Undefined Q.add(v, dists[v]) while len(Q) > 0: u = Q.getMin() for v in neighbors(u): d = dists[u] + length(u, v) if d < dists[v]: dists[v] = d prev[v] = u Q.decreasePriority(v, d) return (dist, prev)

COMPSCI/MATH 290-04 Lecture 25: Geodesic Paths

slide-14
SLIDE 14

Dijkstra’s Algorithm Review

def Dijsktra(Graph, source): list dists list prev dist[source] = 0 Queue Q for vertex v in Graph: if v not source: dists[v] = Infinity prev[v] = Undefined Q.add(v, dists[v]) while len(Q) > 0: u = Q.getMin() for v in neighbors(u): d = dists[u] + length(u, v) if d < dists[v]: dists[v] = d prev[v] = u Q.decreasePriority(v, d) return (dist, prev)

What is the worst case behavior for ⊲ V ver- tices ⊲ E edges for a bal- anced min heap Q?

COMPSCI/MATH 290-04 Lecture 25: Geodesic Paths

slide-15
SLIDE 15

Dijkstra’s Algorithm Review

def Dijsktra(Graph, source): list dists list prev dist[source] = 0 Queue Q for vertex v in Graph: if v not source: dists[v] = Infinity prev[v] = Undefined Q.add(v, dists[v]) while len(Q) > 0: u = Q.getMin() for v in neighbors(u): d = dists[u] + length(u, v) if d < dists[v]: dists[v] = d prev[v] = u Q.decreasePriority(v, d) return (dist, prev)

What is the worst case behavior for ⊲ V ver- tices ⊲ E edges for a bal- anced min heap Q? O((E+V) log(V))

COMPSCI/MATH 290-04 Lecture 25: Geodesic Paths

slide-16
SLIDE 16

Dijkstra’s Directly on Mesh Edges

COMPSCI/MATH 290-04 Lecture 25: Geodesic Paths

slide-17
SLIDE 17

Dijkstra’s Directly on Mesh Edges

8x8 Cartesian Grid: Side Length 1 Shortest path along mesh is length 7 √ 2

COMPSCI/MATH 290-04 Lecture 25: Geodesic Paths

slide-18
SLIDE 18

Dijkstra’s Directly on Mesh Edges

8x8 Cartesian Grid: Side Length 1

COMPSCI/MATH 290-04 Lecture 25: Geodesic Paths

slide-19
SLIDE 19

Dijkstra’s Directly on Mesh Edges

8x8 Cartesian Grid: Side Length 1 Shortest path along mesh is 14

COMPSCI/MATH 290-04 Lecture 25: Geodesic Paths

slide-20
SLIDE 20

Dijkstra’s Directly on Mesh Edges

Does refining the grid help? 15x15 Cartesian Grid: Side Length 0.5

COMPSCI/MATH 290-04 Lecture 25: Geodesic Paths

slide-21
SLIDE 21

Dijkstra’s Directly on Mesh Edges

Does refining the grid help? 15x15 Cartesian Grid: Side Length 0.5 Nope!

COMPSCI/MATH 290-04 Lecture 25: Geodesic Paths

slide-22
SLIDE 22

Dijkstra’s Directly on Mesh Edges

In general, mesh biases the solution!

COMPSCI/MATH 290-04 Lecture 25: Geodesic Paths

slide-23
SLIDE 23

Fast Marching

A modification of Dijkstra’s algorithm to cut through triangles

COMPSCI/MATH 290-04 Lecture 25: Geodesic Paths

slide-24
SLIDE 24

Fast Marching

A modification of Dijkstra’s algorithm to cut through triangles

COMPSCI/MATH 290-04 Lecture 25: Geodesic Paths

slide-25
SLIDE 25

Table of Contents

⊲ Geodesics ⊲ Dijkstra’s / Fast Marching ◮ G2 Geodesic Histograms

COMPSCI/MATH 290-04 Lecture 25: Geodesic Paths

slide-26
SLIDE 26

Mesh Isomorphisms

An isomorphism preserves all pairwise geodesic distances

COMPSCI/MATH 290-04 Lecture 25: Geodesic Paths

slide-27
SLIDE 27

Mesh Isomorphisms

Contrast with Euclidean

COMPSCI/MATH 290-04 Lecture 25: Geodesic Paths