Vizsla

Your friendly tracking assistant. Sniff out and fix broken tracks.

  • Tamas Nagy

License MIT PyPI Python Version tests codecov napari hub npe2 Copier

Your friendly tracking assistant. Sniff out and fix broken tracks.


There are many fantastic tracking libraries out there (e.g. Trackastra, Ultrack, etc) but in my experience they only get ~90% of tracks right from one frame to the next...over a long movie that's a lot of broken tracks!

napari-vizsla's goal is to help you quickly fix these broken tracks. Load your tracks using the Cell-Tracking-Challenge (CTC) format (which many tracking programs can output) and get fixing!

https://github.com/user-attachments/assets/07aa9885-f69d-4f8c-a1e6-9e69f6b1b936

Usage

napari-vizsla mostly consists of a set of shortcuts to quickly modify and update tracks. It will autosave your changes as you go!

Keyboard Shortcut Action
l (l)ink tracks. Select two cells, in two different timepoints, and link them into one track.
b (b)reak track. This breaks the track into two tracklets at the given time point.
h (h)ide overlay. Hides Vizsla overlay.
t hide (t)racks. Hides the track layer.
s hide (s)egmentation layer. Helpful to better see the underlying signal layer.

Installation

You can install napari-vizsla via pip:

pip install napari-vizsla

If napari is not already installed, you can install napari-vizsla with napari and Qt via:

pip install "napari-vizsla[all]"

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 MIT license, "napari-vizsla" is free and open source software

Issues

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

Version:

  • 0.3.0

Last updated:

  • 2026-10-21

First released:

  • 2026-09-05

License:

  • MIT

Supported data:

  • Information not submitted

Plugin type:

Open extension:

Save extension:

Python versions supported:

Operating system:

  • Information not submitted

Requirements:

  • numpy
  • magicgui
  • qtpy
  • scikit-image
  • tracksdata>=0.1.0rc9
  • polars
  • napari[all]; extra == "all"
Website by the napari team, original design by CZI.