Skip to main content

Trajectopy - Trajectory Evaluation in Python

Code style: ruff

Trajectopy is a Python package with an optional graphical user interface for empirical trajectory evaluation.

Trajectopy GUI showing the ATE of a trajectory in the 3D preview
ATE plot over time ATE map plot

Installation

Windows app: download Trajectopy-<version>-setup.exe from the latest release and run it. No Python installation or administrator rights are needed; .traj files can then be opened by double-click, and the app reports new versions (Help → Check for Updates).

Python package (Python 3.10 or newer):

Command Contents
pip install "trajectopy[gui]" Python package and GUI (recommended)
pip install "trajectopy[plot]" Python package with plotting, without the GUI
pip install trajectopy Python package only

Loading large trajectory files (millions of poses) is several times faster with the fast extra, which can be combined with the others: pip install "trajectopy[gui,fast]".

Quick Start

import trajectopy as tpy

reference = tpy.Trajectory.from_file("./example_data/KITTI_gt.traj")
estimate = tpy.Trajectory.from_file("./example_data/KITTI_ORB.traj")

ate_result = tpy.ate(trajectory=estimate, other=reference)  # aligns the estimate first
print(f"Position ATE: {ate_result.pos_ate:.3f} m")

Or start the GUI with trajectopy (or from the Start menu), drop trajectory files onto it, right-click the ground truth → Set as Reference, then right-click another trajectory → Compare with Reference.

Documentation

https://gereon-t.github.io/trajectopy/

Key Features

  • Interactive GUI: Load, plot, align and compare trajectories without writing code. Every action explains itself in the context menus, and trajectories can be aligned interactively if an automatic alignment is not possible.
  • Alignment: A spatio-temporal least squares alignment that can be tailored to the application: similarity transformation, leverarm and time shift, each of them optional.
  • Comparison: Absolute and relative trajectory error (ATE and RPE), computed with various pose-matching methods.
  • Data Import/Export: ASCII files with configurable columns, time formats and coordinate systems (any EPSG code), and ROS bags.
  • Fast, Interactive Visualization: Powered by pyqtgraph, the same plots are available in the GUI and in Python scripts, stay fluid for large trajectories, and can be exported to PNG, JPG or SVG. Georeferenced trajectories and ATE results can be exported to Google Earth, colored by speed, height or deviations, on the terrain or at their own heights, with playback.

Web Application (Docker)

A simple web application is available at gereon-t/trajectopy-web that allows you to use the core functionality of Trajectopy using Docker.

Citation

If you use this library for any academic work, please cite our original paper.

@article{Tombrink2024,
url = {https://doi.org/10.1515/jag-2024-0040},
title = {Spatio-temporal trajectory alignment for trajectory evaluation},
author = {Gereon Tombrink and Ansgar Dreier and Lasse Klingbeil and Heiner Kuhlmann},
journal = {Journal of Applied Geodesy},
doi = {doi:10.1515/jag-2024-0040},
year = {2024},
codeurl = {https://github.com/gereon-t/trajectopy},
}

Metadata

Release files for trajectopy 5.1.4

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for trajectopy 5.1.4
File Size Uploaded Provenance Actions
trajectopy-5.1.4.tar.gz 3.1 MB Without provenance Details for trajectopy-5.1.4.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for trajectopy 5.1.4
File Interpreter ABI Platform Actions
trajectopy-5.1.4-py3-none-any.whl Python 3 none any Details for trajectopy-5.1.4-py3-none-any.whl

Total release size: 3.6 MB

Release files / trajectopy-5.1.4.tar.gz

Download URL trajectopy-5.1.4.tar.gz
Size 3.1 MB
Tags Source
SHA-256 checksum
How to use checksums
f56d7dbe364c6ebac76dba70709bf62e376cbc0a7d8c27a2b642a24e073e2c4b
BLAKE2b-256 checksum
How to use checksums
421b166e8579f1da9456cc168e62c34dd223b28115eec8f88be1735a5333fc75
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.11.6 {"installer":{"name":"uv","version":"0.11.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release files / trajectopy-5.1.4-py3-none-any.whl

Download URL trajectopy-5.1.4-py3-none-any.whl
Size 448.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
6ffb12471d78f024cff0f9a80368bd57dfa110b1dd6a90986328e320545fd974
BLAKE2b-256 checksum
How to use checksums
b2a1d62b4dba96359415da9c4a2dbed77f6b58257647181b786c686d3bfdc11a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.11.6 {"installer":{"name":"uv","version":"0.11.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Security for trajectopy 5.1.4

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

5.1.4 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page