Date post: | 20-Dec-2015 |
Category: |
Documents |
View: | 215 times |
Download: | 1 times |
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