Trackin

A human-in-the-loop cell tracking tool.

  • Mihaela Mihaylova, Johannes Textor

License GNU GPL v3.0 PyPI Python Version tests codecov napari hub

A human-in-the-loop cell tracking tool.


This napari plugin was generated with Cookiecutter using @napari's cookiecutter-napari-plugin template.

Installation

You can install trackin via pip:

pip install trackin

To install latest development version :

pip install git+https://github.com/mihaela-mihaylova/trackin.git

Getting Started

  1. Launch napari (napari from the command line) and open the plugin via Plugins > trackin > Trackin.
  2. Click Load Images and select a folder of per-frame image files. Files must be named with numeric filenames (e.g. 0.png, 1.png, ...), one per frame, in a supported format: jpg, jpeg, png, tif, tiff, bmp, or gif.
  3. Click Load Detections and select a CSV of detections for those frames. Required columns: tframe, y, x. Optional columns: displ_y, displ_x (default to 0 if omitted), and track_no (include it if the detections already belong to tracks from a prior run).
  4. Step through frames with the arrow keys or the frame slider, and left-click a detection to add it to the current track (this also advances to the next frame). Shift-click on the image to add a detection that's missing; right-click, or D, to delete one.
  5. Use Shift+Q to accept the current track, W to save a segment without ending it, Shift+Z to delete a segment, and X to remove all outgoing connections from the current node. The in-app ? button lists the full set of mouse and keyboard shortcuts.
  6. Optionally, click Add Track File to load a track_session_*.csv from a previous session so newly accepted tracks continue its track numbering instead of restarting from 1. It must have exactly these columns, in this order: tframe, y, x, displ_y, displ_x, track_no.

Accepted tracks are appended to a track_session_*.csv file saved next to the detections CSV; any detections not yet assigned to a track are kept in an upd_*.csv file in the same folder.

Acknowledgements

Thank you to Ankur Ankan for the helpful discussions on the design of the tool.

Contributing

Contributions are very welcome. Tests can be run with tox, please ensure the coverage at least stays the same before you submit a pull request.

License

Distributed under the terms of the GNU GPL v3.0 license, "trackin" is free and open source software

Issues

If you encounter any problems, please file an issue along with a detailed description.

Version:

  • 0.1.3

Last updated:

  • 2026-09-20

First released:

  • 2026-08-28

License:

  • GNU GENERAL PUBLIC LICENSE ...

Supported data:

  • Information not submitted

Plugin type:

Open extension:

Save extension:

Python versions supported:

Operating system:

  • Information not submitted

Requirements:

  • napari[pyqt5]>=0.5.0
  • numpy
  • magicgui
  • qtpy
  • scikit-image
  • tox; extra == "testing"
  • pytest; extra == "testing"
  • pytest-cov; extra == "testing"
  • pytest-qt; extra == "testing"
  • pyqt5; extra == "testing"
Website by the napari team, original design by CZI.