Skip to main content

tracklib library provides a variety of tools, operators and functions to manipulate GPS trajectories

Project description

Tracklib

Tracklib library provide a variety of tools, operators and functions to manipulate GPS trajectories

Project Status: Active – The project has reached a stable, usable state and is being actively developed. Tracklib build & test codecov Documentation Status Software License

Supported Python Versions PyPI Version PyPI Downloads DOI

More and more datasets of GPS trajectories are now available and they are studied very frequently in many scientific domains. Currently available Python libraries for trajectories can separately load, simplify, interpolate, summarize or visualize them. But, as far as we know, there is no Python library that would contain all these basic functionalities. This is what tracklib is modestly trying to do. The library provides some conventions, capabilities and techniques to manipulate GPS trajectories.

In tracklib, the core model supports a wide range of trajectory applications:

1/ trajectory can be seen as a concept of (geo)located timestamps sequence to study for example an athlete's performance,

2/ trajectory can be seen as a concept of a curve which makes it possible to study trajectory shapes,

3/ a full trajectory dataset can be reduced into a regular grid of summarized features,

4/ with map matching process, trajectories can be seen as a network of routes.

Furthermore, adding analytical features (e.g. speed, curvilinear abscissa, inflection point, heading, acceleration, speed change, etc.) on a observation or on all observations of a trajectory (function of coordinates or timestamp) is, in general, a complex and a boring task. So, to make it easier, Tracklib module offers a multitude of operators and predicates to simplify the creation of analytical features on a GPS tracks.

Documentation

The official online documentation is available at ReadTheDocs

In particular, the docs include practical guides and some Use cases

Installation

from pypi (i.e. via pip)

pip install tracklib

Citation

If you use tracklib, please cite the following references:

Yann Méneroux, Marie-Dominique van Damme. Tracklib: a python library with a variety of tools, operators and functions to manipulate GPS trajectories. 2022, [HAL Id](https://hal.science/hal-04356178v1)
@softwareversion{meneroux:hal-04356178v3,
  TITLE = {{Tracklib: a python library  with a variety of tools, operators and functions to manipulate GPS trajectories}},
  AUTHOR = {M{\'e}neroux, Yann and van Damme, Marie-Dominique},
  URL = {https://hal.science/hal-04356178},
  NOTE = {},
  INSTITUTION = {{Laboratoire sciences et technologies de l'information g{\'e}ographique}},
  YEAR = {2024},
  MONTH = Dec,
  DOI = {10.5281/zenodo.19556814},
  SWHID = {swh:1:dir:315fb3ee21367d92767906fbdea7c380d5fa5ea0;origin=https://hal.archives-ouvertes.fr/hal-04356178;visit=swh:1:snp:3a6cbb574ce276c4bd97a74e6a21f2fc77ae9149;anchor=swh:1:rel:d3d2d6a6b0411f01dc2063280e2ad916eeed17a7;path=/},
  VERSION = {v0.8.2},
  REPOSITORY = {https://github.com/umrlastig/tracklib},
  LICENSE = {CeCILL-C Free Software License Agreement},
  KEYWORDS = {Open Source ; Segmenting GPS tracks ; Synthetic trajectory ; Trajectory aggregation ; Map-matching ; Python library ; GPS track},
  FILE = {https://hal.science/hal-04356178v3/file/tracklib-0.8.2.zip},
  HAL_ID = {hal-04356178},
  HAL_VERSION = {v3},
}

Scientific papers whose experiments use the Tracklib library

  • Dawson, J., Peralta, V., Olteanu-Raimond, A.-M., Devogele, T., and Garel, M.: A Method for Spatializing Disturbance by Detecting Human-Wildlife Encounters from GNSS Trajectories, AGILE GIScience Ser., 7, 2, https://doi.org/10.5194/agile-giss-7-2-2026, 2026.
  • Méneroux, Y., Muller, J.M., Seba, A., Bouquet, P., Ruaud, A., & Pierrot-Deseilligny, M.. 2025. Vers un couplage fort des approches topométrique et photogrammétrique pour le contrôle de trajectoire d’un véhicule autonome. XYZ : revue de l'Association française de topographie (n°183), 33-40.
  • Marie-Dominique Van Damme, Yann Méneroux, and Ana-Maria Olteanu-Raimond. 2024. A metrological analysis of a modular and iterative aggregation algorithm of GNSS trajectories. In Proceedings of the 32nd ACM International Conference on Advances in Geographic Information Systems (SIGSPATIAL '24). Association for Computing Machinery, New York, NY, USA, 633–636. https://doi.org/10.1145/3678717.3691325
  • Méneroux, Y., Maidaneh Abdi, I., Le Guilcher, A., & Olteanu-Raimond, A. M. (2022). Is the radial distance really a distance? An analysis of its properties and interest for the matching of polygon features. International Journal of Geographical Information Science, 37(2), 438–475. https://doi.org/10.1080/13658816.2022.2123487

Projects using Tracklib

footprint2graph

Automatic mobility graph reconstruction from GPS trajectories.

The project relies on Tracklib for trajectory processing, map matching, track aggregation, and geometric operations (e.g., interpolation and smoothing).

About

version See pypi
status Active since 2020 November 1st, 2020
license Cecill C

Development

Institute: LASTIG, Univ Gustave Eiffel, ENSG, IGN

Authors

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

tracklib-0.8.4.1.tar.gz (37.1 MB view details)

Uploaded Source

File details

Details for the file tracklib-0.8.4.1.tar.gz.

File metadata

  • Download URL: tracklib-0.8.4.1.tar.gz
  • Upload date:
  • Size: 37.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.10.12

File hashes

Hashes for tracklib-0.8.4.1.tar.gz
Algorithm Hash digest
SHA256 8b99070a4c78c816af638b1bb02e19c90f6333be9394fe0ab42bcec9c3040868
MD5 2693ac8d86ae3f21e66597a81b29c17a
BLAKE2b-256 b0918b9495c9c44e5bebcb90d590167e49a47a682cdebf88b607fcfa0b2baf75

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page