/LeuvenMapMatching

Leuven.MapMatching toolbox for aligning GPS measurements to locations on a map.

Primary LanguagePythonOtherNOASSERTION

Leuven.MapMatching

Align a trace of GPS measurements to a map or road segments.

The matching is based on a Hidden Markov Model (HMM) with non-emitting states. The model can deal with missing data and you can plug in custom transition and emission probability distributions.

example

Main reference:

Meert Wannes, Mathias Verbeke, "HMM with Non-Emitting States for Map Matching", European Conference on Data Analysis (ECDA), Paderborn, Germany, 2018.

Other references:

Devos Laurens, Vandebril Raf (supervisor), Meert Wannes (supervisor), "Traffic patterns revealed through matrix functions and map matching", Master thesis, Faculty of Engineering Science, KU Leuven, 2018

Installation and usage

$ pip install leuvenmapmatching

More information and examples:

leuvenmapmatching.readthedocs.io

Dependencies

Required:

Optional (only loaded when methods are called to rely on these packages):

  • matplotlib: For visualisation
  • smopy: For visualisation
  • nvector: For latitude-longitude computations
  • gpxpy: To import GPX files
  • pykalman: So smooth paths using a Kalman filter
  • pyproj: To project latitude-longitude coordinates to an XY-plane
  • rtree: To quickly search locations

Contact

Wannes Meert, DTAI, KU Leuven
wannes.meert@cs.kuleuven.be
https://dtai.cs.kuleuven.be

Mathias Verbeke, Sirris
mathias.verbeke@sirris.be
http://www.sirris.be/expertise/data-innovation

Developed with the support of Elucidata.be.

License

Copyright 2015-2018, KU Leuven - DTAI Research Group, Sirris - Elucidata Group
Apache License, Version 2.0.