How similar are these curves? Jessica Sherette EAPSI Research and - - PowerPoint PPT Presentation

how similar are these curves
SMART_READER_LITE
LIVE PREVIEW

How similar are these curves? Jessica Sherette EAPSI Research and - - PowerPoint PPT Presentation

Summary of Proposal Introduction Summary of Results Fr echet Distance Summary of Experience Computing the Fr echet Distance for Surfaces How similar are these curves? Jessica Sherette EAPSI Research and Experience Summary of Proposal


slide-1
SLIDE 1

Summary of Proposal Summary of Results Summary of Experience Introduction Fr´ echet Distance Computing the Fr´ echet Distance for Surfaces

How similar are these curves?

Jessica Sherette EAPSI Research and Experience

slide-2
SLIDE 2

Summary of Proposal Summary of Results Summary of Experience Introduction Fr´ echet Distance Computing the Fr´ echet Distance for Surfaces

How similar are these curves?

Jessica Sherette EAPSI Research and Experience

slide-3
SLIDE 3

Summary of Proposal Summary of Results Summary of Experience Introduction Fr´ echet Distance Computing the Fr´ echet Distance for Surfaces

How similar are these curves?

Jessica Sherette EAPSI Research and Experience

slide-4
SLIDE 4

Summary of Proposal Summary of Results Summary of Experience Introduction Fr´ echet Distance Computing the Fr´ echet Distance for Surfaces

How similar are these curves?

Jessica Sherette EAPSI Research and Experience

slide-5
SLIDE 5

Summary of Proposal Summary of Results Summary of Experience Introduction Fr´ echet Distance Computing the Fr´ echet Distance for Surfaces

Measuring Similarity of Shapes

There are many different measures of similarity.

Jessica Sherette EAPSI Research and Experience

slide-6
SLIDE 6

Summary of Proposal Summary of Results Summary of Experience Introduction Fr´ echet Distance Computing the Fr´ echet Distance for Surfaces

Measuring Similarity of Shapes

There are many different measures of similarity. The Fr´ echet distance is a natural measure for continuous shapes such as curves and surfaces.

Jessica Sherette EAPSI Research and Experience

slide-7
SLIDE 7

Summary of Proposal Summary of Results Summary of Experience Introduction Fr´ echet Distance Computing the Fr´ echet Distance for Surfaces

Measuring Similarity of Shapes

There are many different measures of similarity. The Fr´ echet distance is a natural measure for continuous shapes such as curves and surfaces. Our prior work has focused on computing the Fr´ echet distance between surfaces.

Jessica Sherette EAPSI Research and Experience

slide-8
SLIDE 8

Summary of Proposal Summary of Results Summary of Experience Introduction Fr´ echet Distance Computing the Fr´ echet Distance for Surfaces

Measuring Similarity of Shapes

There are many different measures of similarity. The Fr´ echet distance is a natural measure for continuous shapes such as curves and surfaces. Our prior work has focused on computing the Fr´ echet distance between surfaces. So what is the Fr´ echet distance?

Jessica Sherette EAPSI Research and Experience

slide-9
SLIDE 9

Summary of Proposal Summary of Results Summary of Experience Introduction Fr´ echet Distance Computing the Fr´ echet Distance for Surfaces

Fr´ echet Distance for Curves Example

A man and a dog walk along their assigned curves.

MAN DOG

Jessica Sherette EAPSI Research and Experience

slide-10
SLIDE 10

Summary of Proposal Summary of Results Summary of Experience Introduction Fr´ echet Distance Computing the Fr´ echet Distance for Surfaces

Fr´ echet Distance for Curves Example

A man and a dog walk along their assigned curves. They are connected by a leash.

MAN DOG

Jessica Sherette EAPSI Research and Experience

slide-11
SLIDE 11

Summary of Proposal Summary of Results Summary of Experience Introduction Fr´ echet Distance Computing the Fr´ echet Distance for Surfaces

Fr´ echet Distance for Curves Example

A man and a dog walk along their assigned curves. They are connected by a leash. They can control their speeds but cannot go backwards.

LEASH MAN DOG

Jessica Sherette EAPSI Research and Experience

slide-12
SLIDE 12

Summary of Proposal Summary of Results Summary of Experience Introduction Fr´ echet Distance Computing the Fr´ echet Distance for Surfaces

Fr´ echet Distance for Curves Example

A man and a dog walk along their assigned curves. They are connected by a leash. They can control their speeds but cannot go backwards. The minimum leash required for any possible walk is the Fr´ echet distance of the curves.

LEASH MAN DOG

Jessica Sherette EAPSI Research and Experience

slide-13
SLIDE 13

Summary of Proposal Summary of Results Summary of Experience Introduction Fr´ echet Distance Computing the Fr´ echet Distance for Surfaces

Fr´ echet Distance for Curves Example

A man and a dog walk along their assigned curves. They are connected by a leash. They can control their speeds but cannot go backwards. The minimum leash required for any possible walk is the Fr´ echet distance of the curves.

MAN DOG

Jessica Sherette EAPSI Research and Experience

slide-14
SLIDE 14

Summary of Proposal Summary of Results Summary of Experience Introduction Fr´ echet Distance Computing the Fr´ echet Distance for Surfaces

Fr´ echet Distance for Curves Example

A man and a dog walk along their assigned curves. They are connected by a leash. They can control their speeds but cannot go backwards. The minimum leash required for any possible walk is the Fr´ echet distance of the curves.

MAN DOG

Jessica Sherette EAPSI Research and Experience

slide-15
SLIDE 15

Summary of Proposal Summary of Results Summary of Experience Introduction Fr´ echet Distance Computing the Fr´ echet Distance for Surfaces

Fr´ echet Distance for Curves Example

A man and a dog walk along their assigned curves. They are connected by a leash. They can control their speeds but cannot go backwards. The minimum leash required for any possible walk is the Fr´ echet distance of the curves.

MAN DOG

Jessica Sherette EAPSI Research and Experience

slide-16
SLIDE 16

Summary of Proposal Summary of Results Summary of Experience Introduction Fr´ echet Distance Computing the Fr´ echet Distance for Surfaces

Fr´ echet Distance for Curves Example

A man and a dog walk along their assigned curves. They are connected by a leash. They can control their speeds but cannot go backwards. The minimum leash required for any possible walk is the Fr´ echet distance of the curves.

MAN DOG

Jessica Sherette EAPSI Research and Experience

slide-17
SLIDE 17

Summary of Proposal Summary of Results Summary of Experience Introduction Fr´ echet Distance Computing the Fr´ echet Distance for Surfaces

Fr´ echet Distance for Curves Example

A man and a dog walk along their assigned curves. They are connected by a leash. They can control their speeds but cannot go backwards. The minimum leash required for any possible walk is the Fr´ echet distance of the curves.

MAN DOG

Jessica Sherette EAPSI Research and Experience

slide-18
SLIDE 18

Summary of Proposal Summary of Results Summary of Experience Introduction Fr´ echet Distance Computing the Fr´ echet Distance for Surfaces

Fr´ echet Distance for Curves Example

A man and a dog walk along their assigned curves. They are connected by a leash. They can control their speeds but cannot go backwards. The minimum leash required for any possible walk is the Fr´ echet distance of the curves.

MAN DOG

Jessica Sherette EAPSI Research and Experience

slide-19
SLIDE 19

Summary of Proposal Summary of Results Summary of Experience Introduction Fr´ echet Distance Computing the Fr´ echet Distance for Surfaces

Fr´ echet Distance for Curves Example

A man and a dog walk along their assigned curves. They are connected by a leash. They can control their speeds but cannot go backwards. The minimum leash required for any possible walk is the Fr´ echet distance of the curves.

MAN DOG

Jessica Sherette EAPSI Research and Experience

slide-20
SLIDE 20

Summary of Proposal Summary of Results Summary of Experience Introduction Fr´ echet Distance Computing the Fr´ echet Distance for Surfaces

Fr´ echet Distance for Curves Example

A man and a dog walk along their assigned curves. They are connected by a leash. They can control their speeds but cannot go backwards. The minimum leash required for any possible walk is the Fr´ echet distance of the curves.

MAN DOG

Jessica Sherette EAPSI Research and Experience

slide-21
SLIDE 21

Summary of Proposal Summary of Results Summary of Experience Introduction Fr´ echet Distance Computing the Fr´ echet Distance for Surfaces

Fr´ echet Distance for Curves Example

A man and a dog walk along their assigned curves. They are connected by a leash. They can control their speeds but cannot go backwards. The minimum leash required for any possible walk is the Fr´ echet distance of the curves.

MAN DOG

Jessica Sherette EAPSI Research and Experience

slide-22
SLIDE 22

Summary of Proposal Summary of Results Summary of Experience Introduction Fr´ echet Distance Computing the Fr´ echet Distance for Surfaces

Fr´ echet Distance for Curves Example

A man and a dog walk along their assigned curves. They are connected by a leash. They can control their speeds but cannot go backwards. The minimum leash required for any possible walk is the Fr´ echet distance of the curves.

MAN DOG

Jessica Sherette EAPSI Research and Experience

slide-23
SLIDE 23

Summary of Proposal Summary of Results Summary of Experience Introduction Fr´ echet Distance Computing the Fr´ echet Distance for Surfaces

Fr´ echet Distance for Curves Example

A man and a dog walk along their assigned curves. They are connected by a leash. They can control their speeds but cannot go backwards. The minimum leash required for any possible walk is the Fr´ echet distance of the curves.

MAN DOG

Jessica Sherette EAPSI Research and Experience

slide-24
SLIDE 24

Summary of Proposal Summary of Results Summary of Experience Introduction Fr´ echet Distance Computing the Fr´ echet Distance for Surfaces

Fr´ echet Distance between Surfaces

This analogy breaks down for surfaces.

MAN? DOG?

Jessica Sherette EAPSI Research and Experience

slide-25
SLIDE 25

Summary of Proposal Summary of Results Summary of Experience Introduction Fr´ echet Distance Computing the Fr´ echet Distance for Surfaces

Fr´ echet Distance Idea

Consider the curves case again.

MAN DOG

Jessica Sherette EAPSI Research and Experience

slide-26
SLIDE 26

Summary of Proposal Summary of Results Summary of Experience Introduction Fr´ echet Distance Computing the Fr´ echet Distance for Surfaces

Fr´ echet Distance Idea

Consider the curves case again. The points connected by leashes for a given walk correspond to a ’morphing’ between the curves.

MAN DOG

Jessica Sherette EAPSI Research and Experience

slide-27
SLIDE 27

Summary of Proposal Summary of Results Summary of Experience Introduction Fr´ echet Distance Computing the Fr´ echet Distance for Surfaces

Fr´ echet Distance Idea

Consider the curves case again. The points connected by leashes for a given walk correspond to a ’morphing’ between the curves. Intuitively we’re trying to find a morphing between the curves which minimizes the maximum distance any point is morphed. This distance is the Fr´ echet distance of the curves.

MAN DOG

Jessica Sherette EAPSI Research and Experience

slide-28
SLIDE 28

Summary of Proposal Summary of Results Summary of Experience Introduction Fr´ echet Distance Computing the Fr´ echet Distance for Surfaces

Fr´ echet Distance between Surfaces Idea

Likewise, in the case of surfaces one can consider a morphing between them.

MAN? DOG?

Jessica Sherette EAPSI Research and Experience

slide-29
SLIDE 29

Summary of Proposal Summary of Results Summary of Experience Introduction Fr´ echet Distance Computing the Fr´ echet Distance for Surfaces

Fr´ echet Distance between Surfaces Idea

Likewise, in the case of surfaces one can consider a morphing between them.

MAN? DOG?

Jessica Sherette EAPSI Research and Experience

slide-30
SLIDE 30

Summary of Proposal Summary of Results Summary of Experience Introduction Fr´ echet Distance Computing the Fr´ echet Distance for Surfaces

Fr´ echet Distance Definition

Fr´ echet Distance Definition δF(P, Q) = infσ : P→Q supp∈P p − σ(p)

Jessica Sherette EAPSI Research and Experience

slide-31
SLIDE 31

Summary of Proposal Summary of Results Summary of Experience Introduction Fr´ echet Distance Computing the Fr´ echet Distance for Surfaces

Fr´ echet Distance Definition

Fr´ echet Distance Definition δF(P, Q) = infσ : P→Q supp∈P p − σ(p) · is the Euclidean norm

Jessica Sherette EAPSI Research and Experience

slide-32
SLIDE 32

Summary of Proposal Summary of Results Summary of Experience Introduction Fr´ echet Distance Computing the Fr´ echet Distance for Surfaces

Fr´ echet Distance Definition

Fr´ echet Distance Definition δF(P, Q) = infσ : P→Q supp∈P p − σ(p) · is the Euclidean norm σ (sigma) ranges over orientation-preserving homeomorphisms (our ’mapping’) that map each point p ∈ P to an image point q = σ(p) ∈ Q

Jessica Sherette EAPSI Research and Experience

slide-33
SLIDE 33

Summary of Proposal Summary of Results Summary of Experience Introduction Fr´ echet Distance Computing the Fr´ echet Distance for Surfaces

Fr´ echet Distance Definition

Fr´ echet Distance Definition δF(P, Q) = infσ : P→Q supp∈P p − σ(p) · is the Euclidean norm σ (sigma) ranges over orientation-preserving homeomorphisms (our ’mapping’) that map each point p ∈ P to an image point q = σ(p) ∈ Q Each σ corresponds to some walk. For each σ, supp∈P p − σ(p) corresponds to the leash length. The Fr´ echet distance is the minimum (infimum) leash length across all possible σ.

Jessica Sherette EAPSI Research and Experience

slide-34
SLIDE 34

Summary of Proposal Summary of Results Summary of Experience Introduction Fr´ echet Distance Computing the Fr´ echet Distance for Surfaces

Many Homeomorphisms

So, now that we know what it is, how do you compute the Fr´ echet distance of a pair of surfaces?

Q P σ

Jessica Sherette EAPSI Research and Experience

slide-35
SLIDE 35

Summary of Proposal Summary of Results Summary of Experience Introduction Fr´ echet Distance Computing the Fr´ echet Distance for Surfaces

Many Homeomorphisms

So, now that we know what it is, how do you compute the Fr´ echet distance of a pair of surfaces? Let us first consider the case where the surfaces are simple polygons (flat).

Q P σ

Jessica Sherette EAPSI Research and Experience

slide-36
SLIDE 36

Summary of Proposal Summary of Results Summary of Experience Introduction Fr´ echet Distance Computing the Fr´ echet Distance for Surfaces

Many Homeomorphisms

So, now that we know what it is, how do you compute the Fr´ echet distance of a pair of surfaces? Let us first consider the case where the surfaces are simple polygons (flat). There are an infinite number of homeomorphisms between a pair

  • f simple polygons.

Q P σ

Jessica Sherette EAPSI Research and Experience

slide-37
SLIDE 37

Summary of Proposal Summary of Results Summary of Experience Introduction Fr´ echet Distance Computing the Fr´ echet Distance for Surfaces

Many Homeomorphisms

So, now that we know what it is, how do you compute the Fr´ echet distance of a pair of surfaces? Let us first consider the case where the surfaces are simple polygons (flat). There are an infinite number of homeomorphisms between a pair

  • f simple polygons.

To efficiently compute their Fr´ echet distance this search space must be reduced.

Q P σ

Jessica Sherette EAPSI Research and Experience

slide-38
SLIDE 38

Summary of Proposal Summary of Results Summary of Experience Introduction Fr´ echet Distance Computing the Fr´ echet Distance for Surfaces

Simple Polygons Example

Consider this pair of polygons.

Q P

Jessica Sherette EAPSI Research and Experience

slide-39
SLIDE 39

Summary of Proposal Summary of Results Summary of Experience Introduction Fr´ echet Distance Computing the Fr´ echet Distance for Surfaces

Simple Polygons Example

Consider this pair of polygons. The idea is that P is subdivided into convex portions and each of these are mapped over to Q.

Q P

Jessica Sherette EAPSI Research and Experience

slide-40
SLIDE 40

Summary of Proposal Summary of Results Summary of Experience Introduction Fr´ echet Distance Computing the Fr´ echet Distance for Surfaces

Simple Polygons Example

Consider this pair of polygons. The idea is that P is subdivided into convex portions and each of these are mapped over to Q. For flat surfaces it suffices to map the edges used to subdivide P over to paths in Q.

Q P

Jessica Sherette EAPSI Research and Experience

slide-41
SLIDE 41

Summary of Proposal Summary of Results Summary of Experience Introduction Fr´ echet Distance Computing the Fr´ echet Distance for Surfaces

Simple Polygons Example

Consider this pair of polygons. The idea is that P is subdivided into convex portions and each of these are mapped over to Q. For flat surfaces it suffices to map the edges used to subdivide P over to paths in Q. These mapped paths subdivide Q into portions which match with those in P.

Q P

Jessica Sherette EAPSI Research and Experience

slide-42
SLIDE 42

Summary of Proposal Summary of Results Summary of Experience Introduction Fr´ echet Distance Computing the Fr´ echet Distance for Surfaces

Simple Polygons Example

Consider this pair of polygons. The idea is that P is subdivided into convex portions and each of these are mapped over to Q. For flat surfaces it suffices to map the edges used to subdivide P over to paths in Q. These mapped paths subdivide Q into portions which match with those in P. This is the rough idea of how the Fr´ echet distance is computed for simple polygons.

Q P

Jessica Sherette EAPSI Research and Experience

slide-43
SLIDE 43

Problem Review

  • For simple polygons the FD is polynomial time

computable.

  • For terrains and polygons with holes the FD is NP-hard to

compute.

  • There is a gap between these known results.
  • Are there more general classes of surfaces for which the

Fréchet distance can be computed in polynomial time?

  • We first review the simple polygons algorithm and then

consider extending it to a more general class of surfaces which we call folded polygons.

slide-44
SLIDE 44

Simple Polygons Algorithm [BBW06]

  • Next, we give a short

summary of the simple polygons algorithm.

slide-45
SLIDE 45

Simple Polygons Algorithm [BBW06]

  • There are an infinite

number of homeomorphisms between a pair of simple polygons.

  • To efficiently compute

their Fréchet distance the this search space must be reduced.

slide-46
SLIDE 46

Simple Polygons Algorithm [BBW06]

 One could first consider

the boundaries of the polygons.

 The Fréchet distance

between closed polygonal curves can be computed in polynomial time.

 The boundaries of two

simple polygons can be compared with this.

slide-47
SLIDE 47

Simple Polygons Algorithm [BBW06]

 The authors prove that

the Fréchet distance between a convex polygon and a simple polygon is the same as that between their boundary curves.

slide-48
SLIDE 48

Simple Polygons Algorithm [BBW06]

 Unfortunately, this is not

always the case between two simple polygons.

slide-49
SLIDE 49

Simple Polygons Algorithm [BBW06]

 Idea: Restrict the class of mappings to consider

− Given two simple polygons P and Q − Divide them up into matched pairs of convex

polygons and simple polygons.

− Then use the closed polygonal curves algorithm

mentioned before to check whether the distance is within some ε .

slide-50
SLIDE 50

Simple Polygons Algorithm [BBW06]

 “diagonals” in P are the line segments in a

convex subdivision of P

 “edges” in Q are the line segments in a convex

subdivision of Q

 Map the diagonals in a convex subdivision of P

to image curves in Q.

− [BBW06] demonstrate that it suffices to map

diagonals to shortest paths in Q. → Only consider a restricted class of mappings

slide-51
SLIDE 51

Simple Polygons Algorithm [BBW06]: Example

slide-52
SLIDE 52

Simple Polygons Algorithm [BBW06]: Example

slide-53
SLIDE 53

Simple Polygons Algorithm [BBW06]: Example

slide-54
SLIDE 54

Simple Polygons Algorithm [BBW06]: Example

slide-55
SLIDE 55

Simple Polygons Algorithm [BBW06]: Example

slide-56
SLIDE 56

Simple Polygons Algorithm [BBW06]

– δ

F(∂P,∂Q) ≤ ε (this

specifies a mapping of the diagonal endpoints)

– For every diagonal in P,

the corresponding shortest path in Q has Fréchet distance distance at most ε to it.

Simple Polygons

  • The authors show that it is sufficient to test the

following two things to find if a homeomorphism exists between the surfaces for distance ε .

slide-57
SLIDE 57

Simple Polygons Algorithm [BBW06]: Run Time

  • n = the complexity of Q
  • m = the complexity of P
  • k = the number of diagonals in P
  • T(N) = the time to multiply two NxN matrices
slide-58
SLIDE 58

Folded Polygons

 We extend the simple

polygons algorithm to non- flat surfaces.

 Specifically, we consider

piecewise linear surfaces with a convex subdivision which has an acyclic dual graph (“folded polygons”)

slide-59
SLIDE 59

Folded Polygons

 We extend this algorithm to

non-flat surfaces.

 Specifically, we consider

piecewise linear surfaces with a convex subdivision which has an acyclic dual graph (“folded polygons”)

 No interior vertices.

slide-60
SLIDE 60

Folded Polygons

  • Features:

– Folds only along line

segments.

– No holes. – No self-intersection.

slide-61
SLIDE 61

Simple Polygons Algorithm?

 Can we just use the simple polygons algorithm?

slide-62
SLIDE 62

Simple Polygons Algorithm?

 Can we just use the simple polygons algorithm?  Unfortunately, no:

− The simple polygons algorithm maps diagonals in P

to image curves which are shortest paths in the Q.

− When P is a folded polygon instead of a simple

polygon, we can find examples where the Fréchet distance between the shortest path and the diagonal is not optimal (i.e., some other path with the same end points has smaller FD with the diagonal).

slide-63
SLIDE 63

Shortest Path Counter Example

 s1 is the shortest path between a and b,

but the diagonal d has smaller Fréchet distance to s2 than to s1.

slide-64
SLIDE 64

Fréchet Shortest Paths

 Fréchet shortest paths =

paths with Fréchet distance ε to a given diagonal

 The shortest path between

two points on the boundary

  • f Q crosses some

sequence of edges.

Q

 We prove that any Fréchet shortest path

between those points crosses the exact same edge sequence.

slide-65
SLIDE 65

Fréchet Shortest Paths

  • We can find a Fréchet

shortest path between two points on the boundary of Q within Fréchet distance ε of a diagonal in time O(n) if one exists. (n = # edges in Q)

  • Same run time as testing

for a shortest path in the simple polygons algorithm.

slide-66
SLIDE 66

Diagonal Monotonicity Test

– δ

F(∂P,∂Q) ≤ ε (this

specifies a mapping of the diagonal endpoints)

– For every diagonal in P,

the corresponding shortest path in Q has Fréchet distance distance at most ε to it.

  • We modify the original simple polygons algorithm to use

this new class of paths.

  • P and Q “pass the diagonal monotonicity test for ε ” iff:

Simple Polygons

slide-67
SLIDE 67

Diagonal Monotonicity Test

– δ

F(∂P,∂Q) ≤ ε (this

specifies a mapping of the diagonal endpoints)

– For every diagonal in P,

the corresponding shortest path in Q has Fréchet distance distance at most ε to it.

  • We modify the original simple polygons algorithm to use

this new class of paths.

  • P and Q “pass the diagonal monotonicity test for ε ” iff:

Simple Polygons Folded Polygons

– δ

F(∂P,∂Q) ≤ ε (this

specifies a mapping of the diagonal endpoints)

– For every diagonal in P, a

corresponding Fréchet shortest path in Q has Fréchet distance at most ε to it.

slide-68
SLIDE 68

Diagonal Monotonicity Test

– δ

F(∂P,∂Q) ≤ ε (this

specifies a mapping of the diagonal endpoints)

– For every diagonal in P,

the corresponding shortest path in Q has Fréchet distance distance at most ε to it.

  • We modify the original simple polygons algorithm to use

this new class of paths.

  • P and Q “pass the diagonal monotonicity test for ε ” iff:

Simple Polygons Folded Polygons

– δ

F(∂P,∂Q) ≤ ε (this

specifies a mapping of the diagonal endpoints)

– For every diagonal in P, a

corresponding Fréchet shortest path in Q has Fréchet distance at most ε to it.

slide-69
SLIDE 69

Problem of Tangled Image Curves

 Because we use Fréchet shortest paths instead

  • f shortest paths we have an additional

problem:

− The image curves may intersect an edge in the

convex decomposition in the wrong order.

 We refer to such image curves as being

tangled.

slide-70
SLIDE 70

Problem of Tangled Image Curves

 The image curves

cross, thus the subdivision of Q is no longer valid.

 Only a toy example.

Can this really happen?

slide-71
SLIDE 71

Problem of Tangled Image Curves

slide-72
SLIDE 72

Problem of Tangled Image Curves

slide-73
SLIDE 73

Results

  • To ensure a homeomorphism exists between the surfaces

we must address such tangles. We consider three approaches:

 Use an approximation algorithm which avoids the tangles

  • altogether. →

poly-time approx. algorithm

 Compute the constraints posed by such tangles directly.→

fixed parameter tractable algorithm

 Consider a special non-trivial class of folded polygons for which

we can use shortest paths instead of Fréchet shortest paths. → poly-time algorithm

 Axis-aligned surfaces using L∞ distance metric.

slide-74
SLIDE 74

Results

  • To ensure a homeomorphism exists between the surfaces

we must address such tangles. We consider three approaches:

 Use an approximation algorithm which avoids the tangles

  • altogether. →

poly-time approx. algorithm

 Compute the constraints posed by such tangles directly.→

fixed parameter tractable algorithm

 Consider a special non-trivial class of folded polygons for which

we can use shortest paths instead of Fréchet shortest paths. → poly-time algorithm

 Axis-aligned surfaces using L∞ distance metric.

The run time for all three approaches is the same as that for the simple polygons algorithm (plus an additional exponential factor for the FPT algorithm).

slide-75
SLIDE 75

1) Approximation Algorithm

  • Key Idea: Approximate away the tangles.
slide-76
SLIDE 76

1) Approximation Algorithm

  • Key Idea: Approximate away the tangles.
  • Suppose P and Q pass the diagonal monotonicity test

for ε . We prove that δ

F(P,Q) ≤ 9ε .

  • We can then optimize this ε in polynomial time using

binary search and the diagonal monotonicity test. Thus, we have a 9 approximation algorithm.

  • So, how do we prove δ

F(P,Q) ≤ 9ε ?

slide-77
SLIDE 77

9-Approximation: Proof Sketch

 Choose a diagonal d in P

which cuts off an ear.

 To have a homeomorphism

between P and Q the image curve of d in Q, call it d', must also cut off an ear.

 If another image curve d1'

crosses d‘ then we no longer have a homeomorphism.

slide-78
SLIDE 78

9-Approximation: Proof Sketch

 Idea: Let's map d to

the “upper envelope”

  • f the image curves,

call it d’’ .

 How much do we

need to increase ε to do this?

slide-79
SLIDE 79

9-Approximation: Proof Sketch

 Consider the pre-

images of the points where d' and d1' cross.

 We can use these to

bound how far d is from the part of d1' that crosses above it.

slide-80
SLIDE 80

9-Approximation: Proof Sketch

slide-81
SLIDE 81

9-Approximation: Proof Sketch

slide-82
SLIDE 82

9-Approximation: Proof Sketch

slide-83
SLIDE 83

9-Approximation: Proof Sketch

slide-84
SLIDE 84

9-Approximation: Proof Sketch

slide-85
SLIDE 85

9-Approximation: Proof Sketch

 From triangle inequality: δ

F(ab,a1b1) ≤ 2ε .

slide-86
SLIDE 86

9-Approximation: Proof Sketch

 From triangle inequality: δ

F(ab,a1b1) ≤ 2ε .

slide-87
SLIDE 87

9-Approximation: Proof Sketch

 Thus, δ

F(ab,a'b') ≤ 3ε .

slide-88
SLIDE 88

9-Approximation: Proof Sketch

 Thus, δ

F(ab,a'b') ≤ 3ε .

slide-89
SLIDE 89
  • More complicated

cases can occur with additional image curves.

  • We show that these

cases can be approximated with an additional 6ε factor for a total of 9ε .

9-Approximation: Proof Sketch

slide-90
SLIDE 90

9-Approximation: Proof Sketch

  • Using the above

approach we can incrementally cut off ears from P and map them to Q, in order to

  • btain an overall

mapping witnessing δ

F(P,Q) ≤ 9ε .

slide-91
SLIDE 91

9-Approximation: Proof Sketch

  • Using the above

approach we can incrementally cut off ears from P and map them to Q, in order to

  • btain an overall

mapping witnessing δ

F(P,Q) ≤ 9ε .

slide-92
SLIDE 92

Folded Polygons Conclusion

 We gave the first results to compute, or

approximate, the Fréchet distance for a class of non-flat surfaces (“folded polygons”)

 Can the approximation factor be improved?  Is there a poly-time algorithm for folded

polygons?

slide-93
SLIDE 93

Outline

  • Degree Plan
  • Problem and Motivation
  • Fréchet Distance
  • Prior Contributions

– Folded Polygons Paper – Partial Matching Paper

  • Future Work

– Constrained Embeddings – Flippy Distance

slide-94
SLIDE 94

Partial Matching between Surfaces Using Fréchet Distance

Submitted to the Symposium on Computational Geometry (SoCG) 2012 Authors: Jessica Sherette, Carola Wenk

slide-95
SLIDE 95

Problem and Motivation

  • This previous algorithm

matches the entirety of the surfaces.

  • An interesting variant to

consider is partial matching.

  • For certain applications we

would like to consider this form of similarity.

slide-96
SLIDE 96

Problem and Motivation

  • Many possible

definitions.

– We examine one

possible definition.

slide-97
SLIDE 97

Partial Matching Problem

  • We consider the following problem:
slide-98
SLIDE 98

Partial Matching Problem

  • We consider the following problem:
  • Notice that this definition is directed. P is matched

to some part of Q.

  • Next we consider several simple cases of this

problem.

slide-99
SLIDE 99

Partial Matching Problem

  • If P overlaps completely

with Q then we can use R = P and epsilon = 0.

slide-100
SLIDE 100

Partial Matching Problem

  • If P does not intersect Q

then it is similar to projection to the boundary of Q.

slide-101
SLIDE 101

Partial Matching Problem

  • This case is a bit harder.

The points which overlap with Q are not always mapped straight down.

  • How we map a point in P

to a point in Q depends

  • n how other points can

be mapped.

slide-102
SLIDE 102

Partial Matching Problem

  • Finally note the following:

– It is NP-hard to decide the partial Fréchet

distance (for this def.) between two polygons with holes or two terrains.

  • This can be shown using the same reductions

as outlined in [BBS10].

slide-103
SLIDE 103

Partial Matching Problem

  • We adapt the algorithm for simple polygons to
  • ne for our problem.
  • This yields a polynomial time algorithm.
  • Ours is the first algorithm for computing the

partial FD between surfaces.

slide-104
SLIDE 104

Partial Matching Problem

  • We adapt the algorithm for simple polygons to
  • ne for our problem.
  • This yields a polynomial time algorithm.
  • Ours is the first algorithm for computing the

partial FD between surfaces.

  • Next we give some additional details about the

simple polygons algorithm.

slide-105
SLIDE 105

Simple Polygons Algorithm [BBW06]

  • As mentioned before we

can compute the FD between the boundaries

  • f two simple polygons in

polynomial time.

  • How do you compute

this?

slide-106
SLIDE 106

Simple Polygons Algorithm [BBW06]

  • The free space diagram (FSD) encodes which

points on the boundary on the polygons may be mapped together with distance epsilon.

slide-107
SLIDE 107

Simple Polygons Algorithm [BBW06]

  • Here is part of a

simple polygon P.

  • First consider the

point p_3 in P.

slide-108
SLIDE 108

Simple Polygons Algorithm [BBW06]

  • Consider the points

within epsilon distance of p_3.

– (Euclidean distance)

slide-109
SLIDE 109

Simple Polygons Algorithm [BBW06]

  • The points on the

boundary Q in this disc are those that p_3 can be mapped to.

slide-110
SLIDE 110

Simple Polygons Algorithm [BBW06]

  • Note the highlighted

parts.

slide-111
SLIDE 111

Simple Polygons Algorithm [BBW06]

  • Below is a small part of the free space diagram

(FSD).

slide-112
SLIDE 112

Simple Polygons Algorithm [BBW06]

  • White points along the line segment are ones

that p_3 can be mapped to.

slide-113
SLIDE 113

Simple Polygons Algorithm [BBW06]

  • Below is an example of an actual FSD between

two simple polygons for some epsilon.

slide-114
SLIDE 114

Simple Polygons Algorithm [BBW06]

  • Decide if a monotone path from the bottom of

the FSD to the top which maps every point in P

  • nce and only once exists. (see blue path)
slide-115
SLIDE 115

Simple Polygons Algorithm [BBW06]

  • If such a path exists (plus the diagonal details

from before) then P and Q are within Fréchet distance epsilon (see green line segment).

slide-116
SLIDE 116

Partial Matching Algorithm: FSD

  • We want to adapt this to our problem.
slide-117
SLIDE 117

Partial Matching Algorithm: FSD

  • We want to adapt this to our problem.
  • The FSD in the simple polygons algorithm pairs points
  • n the boundary of P to points on the boundary of

Q.

  • We want to map points on the boundary of P to any

points in Q.

  • We use a 3d FSD diagram between the boundary of

P and Q.

slide-118
SLIDE 118

Partial Matching Algorithm

  • Below is the 3D FSD diagram associated with

the simple polygons P and Q for some epsilon. We refer to the portion of a FSD associated with a point as a slice of the FSD.

slide-119
SLIDE 119

Partial Matching Algorithm

  • We cut the boundary of P open at the point p_1

so it appears twice in the slices. Naturally, our mapped boundary must start and end at the same point.

slide-120
SLIDE 120

Partial Matching Algorithm

  • We now want to find a monotone path through

the FSD from the first slice to the last slice. This yields a mapping of the boundary of P into Q.

slide-121
SLIDE 121

Partial Matching Algorithm

  • Note also that the path is only required to be

monotone along the boundary of P now. (there are issues with Q as well but we deal with them later)

slide-122
SLIDE 122

Partial Matching Algorithm

  • To find such a path in the FSD we propagate

reachability information in the FSD through the slices.

slide-123
SLIDE 123

Partial Matching Algorithm

  • Consider a pair of adjacent

slices in the FSD.

slide-124
SLIDE 124
  • Consider a pair of adjacent

slices in the FSD.

  • A point a_2 is reachable

from a_1 in the FSD iff the shortest path in Q between a_2 and a_3 is within FD epsilon of the line segment p_4p_3.

  • (it follows from a simple

shortcutting argument that

  • ne can consider only

shortest paths )

Partial Matching Algorithm

slide-125
SLIDE 125

Partial Matching Algorithm

  • Consider a pair of adjacent

slices in the FSD.

  • A point a_2 is reachable

from a_1 in the FSD iff the shortest path in Q between a_2 and a_3 is within FD epsilon of the line segment p_4p_3.

  • (it follows from a simple

shortcutting argument that

  • ne can consider only

shortest paths )

slide-126
SLIDE 126

Partial Matching Algorithm

  • Consider a pair of adjacent

slices in the FSD.

  • A point a_2 is reachable

from a_1 in the FSD iff the shortest path in Q between a_2 and a_3 is within FD epsilon of the line segment p_4p_3.

  • (it follows from a simple

shortcutting argument that

  • ne can consider only

shortest paths )

slide-127
SLIDE 127

Partial Matching Algorithm

  • So a_2 is reachable

from a_1 but a_3 is not.

  • There are many

possible points to map to in the disc. How can this avoided?

slide-128
SLIDE 128

Partial Matching Algorithm: FSD

  • Lets go through this

simple example again but for the 3D FSD.

  • Again consider the

point p_3 in P.

slide-129
SLIDE 129

Partial Matching Algorithm: FSD

  • Again the points

within epsilon distance of p_3.

slide-130
SLIDE 130

Partial Matching Algorithm: FSD

  • Now we are

interested in the points in Q which are in this disc. Those are the points that p_3 can be mapped to.

slide-131
SLIDE 131

Partial Matching Algorithm: FSD

  • Note the highlighted

parts.

slide-132
SLIDE 132

Partial Matching Algorithm: FSD

  • Here is the part of the 3D FSD associated with

the point p_3.

slide-133
SLIDE 133

Partial Matching Algorithm: Neighborhoods

  • We define a

neighborhood of a point is a maximal connected subset (of the intersection of the epsilon disc around p and Q.)

  • In our example there are

two neighborhoods associated with the point p_3.

slide-134
SLIDE 134

Partial Matching Algorithm

  • These neighborhoods

simplify the approach.

  • Let N1 and N2 be a pair
  • f neighborhoods.
  • We prove that if a point

in N1 is reachable from a point in N2 then every point in N1 is reachable from every point in N2

slide-135
SLIDE 135

Partial Matching Algorithm

  • From this we generate a

polynomial time algorithm to find such a path.

  • We actually get a set of

neighborhoods associated with such a path.

  • We refer to this as a

(Q,eps)-valid set of neighborhoods.

slide-136
SLIDE 136

Partial Matching Algorithm

  • So does this give us a simple polygon R in Q

with FD epsilon to P?

slide-137
SLIDE 137

Partial Matching Algorithm

  • So does this give us a simple polygon R in Q

with FD epsilon to P?

– Not quite. The polygon we get in Q may not be

simple.

– Fortunately we can prove that an R which is a

simple polygon can always be found.

slide-138
SLIDE 138

Partial Matching Algorithm: Proof

  • This proof is

somewhat long.

  • We give a short

summary of the algorithm to compute such a polygon R.

slide-139
SLIDE 139

Partial Matching Algorithm: Proof

  • We have a simple

polygon P.

slide-140
SLIDE 140

Partial Matching Algorithm: Proof

  • We have a simple

polygon P.

  • We have a simple

polygon Q.

slide-141
SLIDE 141

Partial Matching Algorithm: Proof

  • We have a simple

polygon P.

  • We have a simple

polygon Q.

  • We have a (Q,eps)-

valid set of neighborhoods for the points in P.

slide-142
SLIDE 142

Partial Matching Algorithm: Proof

  • To find such a R we

iteratively map points

  • f P to Q.
  • At each iteration we

show that the points can be mapped to form a simple polygon in Q.

slide-143
SLIDE 143

Partial Matching Algorithm: Proof

  • To find such a R we

iteratively map points

  • f P to Q.
  • At each iteration we

show that the points can be mapped to form a simple polygon in Q.

slide-144
SLIDE 144

Partial Matching Algorithm: Proof

  • Specifically, we allow

remapping the points within their associated neighborhood in the valid set.

  • By properties of

neighborhoods the FD remains less than epsilon.

slide-145
SLIDE 145

Partial Matching Algorithm: Proof

  • Next we go through a

simple example demonstrating the algorithm.

slide-146
SLIDE 146

Partial Matching Algorithm: Proof

  • So we want to

iteratively map points

  • f P to Q.
slide-147
SLIDE 147

Partial Matching Algorithm: Proof

  • So we want to

iteratively map points

  • f P to Q.
  • In our initial step we

choose three points which form a triangle in P.

slide-148
SLIDE 148

Partial Matching Algorithm: Proof

  • So we want to

iteratively map points

  • f P to Q.
  • In our initial step we

choose three points which form a triangle in P.

  • We want to map each

point a in its associated neighborhood N_a in Q.

slide-149
SLIDE 149

Partial Matching Algorithm: Proof

  • Note that in this case

a is actually in the neighborhood N_a.

slide-150
SLIDE 150

Partial Matching Algorithm: Proof

  • Note that in this case

a is actually in the neighborhood N_a.

  • We can just choose

its mapping a' to be a.

slide-151
SLIDE 151

Partial Matching Algorithm: Proof

  • Note that in this case

a is actually in the neighborhood N_a.

  • We can just choose

its mapping a' to be a.

  • (Similar for the other

points of the triangle)

slide-152
SLIDE 152

Partial Matching Algorithm: Proof

  • In the iterative step, we

add points in P which are connected to the points already mapped.

  • In this case there is only
  • ne possible point to add.
slide-153
SLIDE 153

Partial Matching Algorithm: Proof

  • In the iterative step, we

add points in P which are connected to the points already mapped.

  • In this case there is only
  • ne possible point to add.
slide-154
SLIDE 154

Partial Matching Algorithm: Proof

  • In the iterative step, we

add points in P which are connected to the points already mapped.

  • In this case there is only
  • ne possible point to add.
  • As mentioned earlier we

want to map it inside the neighborhood associated with it in a valid set.

slide-155
SLIDE 155

Partial Matching Algorithm: Proof

  • In the iterative step, we

add points in P which are connected to the points already mapped.

  • In this case there is only
  • ne possible point to add.
  • As mentioned earlier we

want to map it inside the neighborhood associated with it in a valid set.

  • (again we can just map to
  • riginal point)
slide-156
SLIDE 156

Partial Matching Algorithm: Proof

  • The next point is easy

as well.

slide-157
SLIDE 157

Partial Matching Algorithm: Proof

  • This point is a bit

different.

slide-158
SLIDE 158

Partial Matching Algorithm: Proof

  • This point is a bit

different.

  • The neighborhood

does not contain the

  • riginal point.
slide-159
SLIDE 159

Partial Matching Algorithm: Proof

  • This point is a bit

different.

  • The neighborhood

does not contain the

  • riginal point.
  • It has to be mapped

inside Q.

slide-160
SLIDE 160

Partial Matching Algorithm: Proof

  • This point is a bit

different.

  • The neighborhood

does not contain the

  • riginal point.
  • It has to be mapped

inside Q.

  • The previous points

are connected to it via shortest paths in Q.

slide-161
SLIDE 161

Partial Matching Algorithm: Proof

  • Using shortest paths

is okay by properties

  • f a valid set of

neighborhoods.

slide-162
SLIDE 162

Partial Matching Algorithm: Proof

  • Using shortest paths

is okay by properties

  • f a valid set of

neighborhoods.

  • Line segment on the

boundary of P and a shortest path in Q.

slide-163
SLIDE 163

Partial Matching Algorithm: Proof

  • Using shortest paths

is okay by properties

  • f a valid set of

neighborhoods.

  • Line segment on the

boundary of P and a shortest path in Q.

slide-164
SLIDE 164

Partial Matching Algorithm: Proof

  • The next point is

easy.

slide-165
SLIDE 165

Partial Matching Algorithm: Proof

  • The next point is

again easy.

slide-166
SLIDE 166

Partial Matching Algorithm: Proof

  • This point is also a bit

different.

slide-167
SLIDE 167

Partial Matching Algorithm: Proof

  • This point is also a bit

different.

  • Adding the point and its

associated shortest paths yields a self- intersecting polygon R.

slide-168
SLIDE 168

Partial Matching Algorithm: Proof

  • This point is also a bit

different.

  • Adding the point and its

associated shortest paths yields a self- intersecting polygon R.

  • The neighborhood

around the point a is crossed by the added image curves.

slide-169
SLIDE 169

Partial Matching Algorithm: Proof

  • We now need to remap a

to a point below the shortest paths.

slide-170
SLIDE 170

Partial Matching Algorithm: Proof

  • We now need to remap a

to a point below the shortest paths.

slide-171
SLIDE 171

Partial Matching Algorithm: Proof

  • We now need to remap a

to a point below the shortest paths.

  • We prove that the

neighborhood of a point will never be completely covered by R.

slide-172
SLIDE 172

Partial Matching Algorithm: Proof

  • We now need to remap a

to a point below the shortest paths.

  • We prove that the

neighborhood of a point will never be completely covered by R.

  • We also update the point

in a way to avoid cascading chains of updates.

slide-173
SLIDE 173

Partial Matching Algorithm: Constrained Embedding Problem

  • This proof requires solving a variant of the

constrained embedding problem.

  • We give more details about this in the future

work section.

slide-174
SLIDE 174

Partial Matching Algorithm

  • The described algorithm solves the decision

variant.

  • We can optimize epsilon such that there exists

a simple polygon R in Q with FD epsilon to P.

– Similar to the simple polygons algorithm: We

compute the constraints between P and Q. Sort

  • them. And perform a binary search on these using

the decision variant outlined above.

slide-175
SLIDE 175

Partial Matching Algorithm: Conclusion

  • We presented the first algorithm for computing

partial FD between surfaces. This algorithm runs in polynomial time.

  • In the future it would be interesting to consider
  • ther variants of partial FD.
  • It may also be interesting to consider extending

this algorithm other classes of surfaces.