https://github.com/royerlab/tracksdata
A common data structure and basic tools for multi-object tracking.
https://github.com/royerlab/tracksdata
cell-tracking cell-tracking-challenge multi-object-tracking tracking
Last synced: 2 months ago
JSON representation
A common data structure and basic tools for multi-object tracking.
- Host: GitHub
- URL: https://github.com/royerlab/tracksdata
- Owner: royerlab
- License: bsd-3-clause
- Created: 2025-02-24T16:58:11.000Z (7 months ago)
- Default Branch: main
- Last Pushed: 2025-06-25T18:04:25.000Z (3 months ago)
- Last Synced: 2025-06-27T15:32:52.985Z (3 months ago)
- Topics: cell-tracking, cell-tracking-challenge, multi-object-tracking, tracking
- Language: Python
- Homepage: https://royerlab.github.io/tracksdata/
- Size: 457 KB
- Stars: 1
- Watchers: 1
- Forks: 2
- Open Issues: 7
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# TracksData
[](https://github.com/royerlab/tracksdata/raw/main/LICENSE)
[](https://pypi.org/project/tracksdata)
[](https://pypi.org/project/tracksdata)
[](https://github.com/royerlab/tracksdata/actions/workflows/ci.yaml)
[](https://codecov.io/gh/royerlab/tracksdata)A common data structure and basic tools for multi-object tracking.
## Features
- Graph-based representation of tracking problems
- In-memory (RustWorkX) and database-backed (SQL) graph backends
- Nodes and edges can take arbitrary attributes
- Standardize API for node operators (e.g. defining objects and their attributes)
- Standardize API for edge operators (e.g. creating edges between nodes)
- Basic tracking solvers: nearest neighbors and integer linear programming
- Compatible with Cell Tracking Challenge (CTC) format
- Efficient subgraphing based on attributes on any graph backend
- Integration with cell tracking evaluation metrics## Installation
Until rustworkx 0.17.0 is released, you need to have rust installed to compile the latest rustworkx.
```console
conda install -c conda-forge rust
```Then install tracksdata with the following command:
```console
pip install .
```## Why tracksdata?
TracksData provides a common data structure for multi-object tracking problems.
It uses graphs to represent detections (nodes) and their connections (edges), making it easier to work with tracking data across different algorithms.Key benefits:
- Consistent data representation for tracking problems
- Modular components that can be combined as needed
- Support for both small datasets (in-memory) and large datasets (database)## Documentation
- [Full Documentation](https://royerlab.github.io/tracksdata/)
- [Installation](https://royerlab.github.io/tracksdata/installation/)
- [Core Concepts](https://royerlab.github.io/tracksdata/concepts/)
- [Getting Started](https://royerlab.github.io/tracksdata/getting_started/)
- [API Reference](https://royerlab.github.io/tracksdata/reference/tracksdata/)
- [FAQ](https://royerlab.github.io/tracksdata/faq/)