Trajectory Simplification Marc van Kreveld Dept. of Information and Computing Sciences Utrecht...

Post on 20-Dec-2015

215 views 1 download

Tags:

transcript

Trajectory Simplification

Marc van Kreveld

Dept. of Information and Computing Sciences

Utrecht University

Joint work with Kevin Buchin and Maike Buchin

What is a trajectory?

A trajectory is a model for a motion path of a moving object (animal, car, human, hurricane, …)

A common representation is a polygonal line in the plane where the vertices have a time stamp

(xi,yi,ti)

(x2,y2,t2)

(x1,y1,t1)

(xn,yn,tn)

Assumptions

Due to lack of further information: constant speed on each segment

Assumptions

Due to lack of further information: constant speed on each segment

For this presentation: equal time intervals

t=12

t=14

t=18

t=16

t=20

Assumptions

Speed is a vector constant speed on each segment implies that speed is discontinuous both in magnitude and in direction at vertices

Why trajectory simplification?

Algorithms on trajectories are expensive

A trajectory consists of 100 – 1,000,000 vertices

We may analyze 1, 2, or many 1,000s of trajectories

Trajectory similarity

Sub-trajectory similarity

Trajectory self-similarity

Trajectory flocking

Algorithms on trajectories

Trajectory (shape) similarity based on the Hausdorff distance: O(n log n) time [Alt et al. 1991]

Trajectory (shape) similarity based on the Frechét distance: O(n log n) time [Alt et al. 1995]

Algorithms on trajectories

Sub-trajectory similarity based on average distance:O(n) time [Buchin et al. 2009]

Same start

Duration = T Duration ≥ T

Different start

O(n) O(n)

O(n3 / 2) O(n4 / 2)

trajectory simplification = line simplification?

Line simplification is only about shape preservation

1 2 3 4 5 6

1 6

1 65

Previous research on trajectory simplification

Put trajectories in time-space (3D) and apply 3D line simplification [Cao et al. 2006] [Gudmundsson et al. 2007]

Where-at (t) gives the location at time t ; the locations in the original and simplified trajectories should be close

Where-at (t)

t

Where-at (t)

t

When-at (x,y)

When-at (x,y) gives the time when the object is at (x,y)

We cannot easily requirecloseness in time forWhen-at (x,y) of theoriginal and simplifiedtrajectory

t

(x,y)

Close in time and space ...

Use a Douglas-Peucker type of approach in 3-space,where a vertex is closeenough if a ball with radius centered at the vertexintersects the approximatingline segment

If the approximation isnot close enough, addthe furthest vertex in3-space

t

Alternatives

Use an Imai-Iri type of approach: needs a test to establish whether a shortcut is allowed

Euclidean distance vertices – line segment

Alternatives

Use an Imai-Iri type of approach: needs a test to establish whether a shortcut is allowed

Euclidean distance vertices – line segment

Alternatives

Use an Imai-Iri type of approach: needs a test to establish whether a shortcut is allowed

Euclidean distance vertices – line segment

Alternatives

Use an Imai-Iri type of approach: needs a test to establish whether a shortcut is allowed

Euclidean distance vertices – line segment

Efficiency

The graph can have ~n2 edges; testing one shortcut takes time linear in the number of vertices in between

The Imai-Iri algorithm avoids spending ~n3 time by testing all shortcuts from a single vertex in linear time

Efficiency

The graph can have ~n2 edges; testing one shortcut takes time linear in the number of vertices in between

The Imai-Iri algorithm avoids spending ~n3 time by testing all shortcuts from a single vertex in linear time

Imai-Iri for trajectory simplification

Replace Euclidean distance by time-corresponding distance to test whether a shortcut is allowed

Imai-Iri for trajectory simplification

Replace Euclidean distance by time-corresponding distance to test whether a shortcut is allowed

All good shortcuts can be computed in O(n2 log2 n) time, or approximately in O(n2) time as in the Euclidean case

Not (yet) speed-preserving

Both the Douglas-Peucker approach [Cao et al.] and the Imai-Iri approach do not necessarily preserve speed well

Worse: a short stop can be simplified away, whereas it may be significant

Speed-preserving adaptation

For any shortcut, test if the implied speed is sufficiently similar to the speeds on the edges it replaces

Still O(n2 log2 n) time, or approximately in O(n2) time

Preserve features

Preserving speed as a vector will maintain winding of the simplified trajectory automatically

Conclusions

Line simplifications are not directly suitable for trajectory simplification

Variations can be made that are suitable

Various properties can be preserved

Efficient implementations for optimal simplification exist