workshop demo


A demo napari plugin incorporating reader, writer and dock widget contributions using the new npe2 plugin architecture.

What is this?

This plugin was created to serve as a semi-meaningful example of a plugin using the new napari npe2 architecture.

It provides a reader, a writer and two dock widgets to support opening, processing and writing out cell tracking challenge data.

We've provided comments and example tests that can be used as a reference when building your own plugin.

Using this plugin

Sample Data

You can download sample data for this plugin from the tracking challenge website. Any 2D+T sequence should work, but this plugin has been tested only with the Human hepatocarcinoma-derived cells expressing the fusion protein YFP-TIA-1 dataset.

Reading Data

This plugin's reader is designed for tracking challenge segmentation gold standard ground truth data conforming to the file format described in the data specification.

Ground truth data is only provided for a subset of the frames of the entire sequence. This reader will attempt to find the number of frames of the associated sequence in a sister directory of the ground truth data directory and open a labels layer with the same number of frames, thus ensuring the labelled data is correctly overlaid onto the original sequence.

Segmenting Data

One of the dock widgets provided by this plugin is "Segment by Threshold". The widget allows you to select a 2D+T image layer in the viewer (e.g. any of the sequences in the Human hepatocarcinoma dataset above) and segment it using a selection of scikit-image thresholding functions.

The segmentation is then returned as a Labels layer into the viewer.

Highlighting Segmentation Differences

The second dock widget provided by this plugin allows you to visually compare your segmentation against the ground truth data by computing the difference between the two and adding this as a layer in the napari viewer.

To use this widget, open it from the Plugins menu and select the two layers you wish to compare.

Writing to Zip

Finally, you can save your segmentation to a zip file whose internal directory structure will closely mimic that of the tracking challenge datasets, so that it may be opened again in the viewer.

To save your layer, choose File -> Save selected layer(s) with one labels layer selected, then select label zipper from the dropdown choices.


  • 0.0.2

Last updated:

  • 10 March 2022

First released:

  • 15 December 2021


Supported data:

  • Information not submitted

Open extension:

  • Information not submitted

Save extension:

Save layers:

GitHub activity:

  • Stars: 1
  • Forks: 1
  • Issues + PRs: 1

Python versions supported:

Operating system:


  • dask[array]
  • imagecodecs
  • napari
  • napari-plugin-engine (>=0.1.4)
  • npe2
  • numpy
  • scikit-image
  • tifffile