Geodesics and Fast Marching Methods
Gabriel Peyré Laurent Cohen Jean-Marie Mirebeau
É C O L E N O R M A L E S U P É R I E U R E
Geodesic computation on a graph Graph: ( V, E ), V = { 1 , . . . , n - - PowerPoint PPT Presentation
Geodesics and Fast Marching Methods Gabriel Peyr Laurent Cohen Jean-Marie Mirebeau C O L E N O R M A L E S U P R I E U R E Geodesic computation on a graph Graph: ( V, E ), V = { 1 , . . . , n } , E V 2 (symmetric). j y w i,j
Gabriel Peyré Laurent Cohen Jean-Marie Mirebeau
É C O L E N O R M A L E S U P É R I E U R E
2
Graph: (V, E), V = {1, . . . , n}, E ⊂ V 2 (symmetric). Cost: (wi,j)(i,j)∈E, wi,j > 0. Path: γ = (γ1, . . . , γK), (γk, γk+1) ∈ E. x y i j wi,j γ
2
Graph: (V, E), V = {1, . . . , n}, E ⊂ V 2 (symmetric). Cost: (wi,j)(i,j)∈E, wi,j > 0. Path: γ = (γ1, . . . , γK), (γk, γk+1) ∈ E. Length: L(γ)
def.
= PK−1
k=1 wγk,γk+1.
Geodesic distance: d(x, y) = min
γ1=x,γK=y L(γ).
x y i j wi,j γ
2
Graph: (V, E), V = {1, . . . , n}, E ⊂ V 2 (symmetric). Cost: (wi,j)(i,j)∈E, wi,j > 0. Path: γ = (γ1, . . . , γK), (γk, γk+1) ∈ E. Length: L(γ)
def.
= PK−1
k=1 wγk,γk+1.
Geodesic distance: d(x, y) = min
γ1=x,γK=y L(γ).
Difficulty: metrication error. x y i j wi,j γ
3
div(f)i
def.
= P
j⇠i fi,j,
r
def.
= div> Flow on edge: fj,i = −fi,j. i
f
i , j
>
fi,j0 < 0
j0 j
3
x y fi,j 6= 0 d(x, y) = min
f∈RE
nP
(i,j)∈E wi,j|fi,j| ; div(f) = δx − δy
div(f)i
def.
= P
j⇠i fi,j,
r
def.
= div> Flow on edge: fj,i = −fi,j. i
f
i , j
>
fi,j0 < 0
j0 j
3
x y fi,j 6= 0 d(x, y) ui 1 (ru)i,j/wi,j d(x, y) = min
f∈RE
nP
(i,j)∈E wi,j|fi,j| ; div(f) = δx − δy
= max
u∈RN {uy ; |(ru)i,j| 6 wi,j, ux = 0}
→ recast as min-cut. div(f)i
def.
= P
j⇠i fi,j,
r
def.
= div> Flow on edge: fj,i = −fi,j. i
f
i , j
>
fi,j0 < 0
j0 j
4
Parameterized surface: u ⇥ R2 ⇤ ϕ(u) ⇥ M.
u1
u2
ϕ
∂ϕ ∂u1 ∂ϕ ∂u2
4
Parameterized surface: u ⇥ R2 ⇤ ϕ(u) ⇥ M. Curve in parameter domain: t ⇥ [0, 1] ⇤ γ(t) ⇥ D.
u1
u2
ϕ
∂ϕ ∂u1 ∂ϕ ∂u2
γ γ
4
Parameterized surface: u ⇥ R2 ⇤ ϕ(u) ⇥ M. Curve in parameter domain: t ⇥ [0, 1] ⇤ γ(t) ⇥ D. Geometric realization: ¯ γ(t)
def.
= ϕ(γ(t)) ∈ M.
u1
u2
ϕ
∂ϕ ∂u1 ∂ϕ ∂u2
γ ¯ γ γ ¯ γ
4
Parameterized surface: u ⇥ R2 ⇤ ϕ(u) ⇥ M. Curve in parameter domain: t ⇥ [0, 1] ⇤ γ(t) ⇥ D. Geometric realization: ¯ γ(t)
def.
= ϕ(γ(t)) ∈ M.
For an embedded manifold M ⊂ Rn:
First fundamental form: Iϕ =
∂ui , ∂ϕ ∂uj ⇥ ⇥
i,j=1,2
.
u1
u2
ϕ
∂ϕ ∂u1 ∂ϕ ∂u2
L(γ)
def.
= 1 | |¯ γ(t)| |dt = 1 ⇥ γ(t)Iγ(t)γ(t)dt. Length of a curve γ ¯ γ γ ¯ γ
5
Length of a curve γ(t) ∈ M: L(γ)
def.
= 1 ⇥ γ(t)TH(γ(t))γ(t)dt. Riemannian manifold: M ⊂ Rn (locally) Riemannian metric: H(x) ∈ Rn×n, symmetric, positive definite.
5
Length of a curve γ(t) ∈ M: L(γ)
def.
= 1 ⇥ γ(t)TH(γ(t))γ(t)dt.
W(x)
Euclidean space: M = Rn, H(x) = Idn. Riemannian manifold: M ⊂ Rn (locally) Riemannian metric: H(x) ∈ Rn×n, symmetric, positive definite.
5
Length of a curve γ(t) ∈ M: L(γ)
def.
= 1 ⇥ γ(t)TH(γ(t))γ(t)dt.
W(x)
Euclidean space: M = Rn, H(x) = Idn.
2-D shape: M ⊂ R2, H(x) = Id2. Riemannian manifold: M ⊂ Rn (locally) Riemannian metric: H(x) ∈ Rn×n, symmetric, positive definite.
5
Length of a curve γ(t) ∈ M: L(γ)
def.
= 1 ⇥ γ(t)TH(γ(t))γ(t)dt.
W(x)
Euclidean space: M = Rn, H(x) = Idn.
2-D shape: M ⊂ R2, H(x) = Id2. Riemannian manifold: M ⊂ Rn (locally) Riemannian metric: H(x) ∈ Rn×n, symmetric, positive definite. Isotropic metric: H(x) = W(x)2Idn.
5
Length of a curve γ(t) ∈ M: L(γ)
def.
= 1 ⇥ γ(t)TH(γ(t))γ(t)dt.
W(x)
Euclidean space: M = Rn, H(x) = Idn.
2-D shape: M ⊂ R2, H(x) = Id2. Image processing: image I, W(x)2 = (ε + | |I(x)| |)−1. Riemannian manifold: M ⊂ Rn (locally) Riemannian metric: H(x) ∈ Rn×n, symmetric, positive definite. Isotropic metric: H(x) = W(x)2Idn.
5
Length of a curve γ(t) ∈ M: L(γ)
def.
= 1 ⇥ γ(t)TH(γ(t))γ(t)dt.
W(x)
Euclidean space: M = Rn, H(x) = Idn.
2-D shape: M ⊂ R2, H(x) = Id2. Parametric surface: H(x) = Ix (1st fundamental form). Image processing: image I, W(x)2 = (ε + | |I(x)| |)−1. Riemannian manifold: M ⊂ Rn (locally) Riemannian metric: H(x) ∈ Rn×n, symmetric, positive definite. Isotropic metric: H(x) = W(x)2Idn.
5
Length of a curve γ(t) ∈ M: L(γ)
def.
= 1 ⇥ γ(t)TH(γ(t))γ(t)dt.
W(x)
Euclidean space: M = Rn, H(x) = Idn.
2-D shape: M ⊂ R2, H(x) = Id2. Parametric surface: H(x) = Ix (1st fundamental form). Image processing: image I, W(x)2 = (ε + | |I(x)| |)−1. DTI imaging: M = [0, 1]3, H(x)=diffusion tensor. Riemannian manifold: M ⊂ Rn (locally) Riemannian metric: H(x) ∈ Rn×n, symmetric, positive definite. Isotropic metric: H(x) = W(x)2Idn.
Geodesic distance metric over M ⊂ Rn Geodesic curve: γ(t) such that L(γ) = dM(x, y).
Distance map to a starting point x0 ∈ M: Ux0(x)
def.
= dM(x0, x).
dM(x, y) = min
γ(0)=x,γ(1)=y L(γ)
metric
geodesics
Euclidean Shape Isotropic
Anisotropic Surface
Laurent Cohen: Dijkstra and Fast Marching algorithms. Jean-Marie Mirebeau: anisotropy and adaptive stencils.
First Last
v u v u v u v u v u v u v u First Last