Geographic Information Systems Stack Exchange is a question and answer site for cartographers, geographers and GIS professionals. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I have GPX traces and want to remove outlying observations. There are some route points that are impossible because it would require acceleration that the vehicle can not achieve.

Are there good algorithms for filtering out such extreme noisy observations?

share|improve this question
Related: (calculating speed with GPS data that "jump around");… (eliminating noise in GPS signals);… (averaging multiple noisy GPS tracks); and… (strategic ways to reduce GPS error) – whuber Feb 2 '12 at 16:31
up vote 8 down vote accepted

Here are two references for linking GPS data to street centerlines:

Schussler, N. & Axhausen, K. (2009a), ‘Map-matching of GPS traces on high-resolution navigation networks using the multiple hypothesis technique’, Working paper 568. IVT, ETH Zu ̈rich, Zu ̈rich.

Schussler, N. & Axhausen, K. (2009b), ‘Processing raw data from global positioning systems without additional information’, Transportation Research Record: Journal of the Transportation Research Board 2105, 28–36.

Reference link (for those with access).

I know SF City implemented one of these algorithms to process gps tracks from a smart phone app they are using to track cyclists (cycletracks); and they released all of the code under an open-source license (because they are wonderful!). I think their issue was mainly to do with urban-canyon inaccuracies; I'm not sure if they had a problem with acceleration also.

share|improve this answer

A Kalman filter may be what you want: it takes into account predictions based on a physical model of the system. (E.g. no 10000mph cars!)

Answers to the Stack Overflow question "Smooth gps data" provide links to implementations such as ikalman github repository, as well as other approaches.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.