Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

VIPP

VIPP — Visual Image Processing Platform

Visual workflows for reproducible bioimage analysis.

CI PyPI Python License

napari-vipp is the napari-native implementation of VIPP, the Visual Image Processing Platform. Build typed node graphs, inspect intermediate images and tables, tune parameters, save workflows, and repeat the same operations without hiding axis or physical-scale metadata.

Alpha software: expect breaking workflow and parameter changes. Validate outputs on representative data before scientific interpretation or publication.

Install And Open

VIPP requires Python 3.12 or newer. If napari is not already installed, install it with a Qt backend at the same time:

python -m pip install "napari[pyqt6]"
python -m pip install --pre napari-vipp
napari

The --pre flag is required while VIPP is published as an alpha release. It is kept on the VIPP command so napari itself can continue to resolve to a stable release.

In napari, open:

Plugins > VIPP Workflow (napari-vipp)

Use Open example... for a runnable workflow with synthetic data. A good first choice is Red-Channel Label Cleanup; select nodes from left to right to review their parameters, thumbnails, metadata, and outputs.

VIPP example workflow chooser

What It Supports

Area Current alpha capabilities
Graph authoring Searchable node palette, typed ports, dynamic outputs, cycle prevention, undo/redo, graph notes, named tunnels, auto-layout, and saved positions.
Images and metadata Semantic T/C/Z/Y/X axes, scale/units/origin, channel and acquisition metadata, source identity, and operation history.
Image processing Intensity transforms, filters, background correction, thresholding, watershed, binary/label morphology, channels, axes, masks, and composites.
Measurements Object and intensity tables, calibrated morphology, 3D mesh morphology, skeleton/network analysis, colocalization, object association, and table composition.
Restoration Born-Wolf PSF generation, measured-PSF preparation, and manual/cached 2D or 3D Richardson-Lucy and RL-TV deconvolution.
Reuse and automation Workflow JSON, generated headless Python, explicit batch outputs, local collection batch runs, dry-run previews, and workflow/script artifacts.
I/O OME-TIFF, ImageJ TIFF, TIFF, local OME-Zarr 0.4/0.5, NPY/NPZ, common 2D raster formats, and optional microscope readers.

Most graph operations are still eager. Large z-stacks and OME-Zarr datasets therefore need deliberate cache, preview, and output choices; see the cache and memory guide.

Optional Microscope Readers

Install only the reader family you need, then restart napari:

Format family Install command
Nikon ND2 python -m pip install --pre "napari-vipp[nd2]"
Zeiss CZI python -m pip install --pre "napari-vipp[czi]"
Mixed microscope formats python -m pip install --pre "napari-vipp[microscope]"
BioIO/Bio-Formats fallback python -m pip install --pre "napari-vipp[bioformats]"

These routes are an experimental foundation: axes and common metadata are normalized where the source reader exposes them, but format-specific coverage still needs validation against a broader corpus of real acquisition files.

Workflow Basics

  1. Add or select an Image Source for a napari layer, file, or bundled sample.
  2. Add nodes from the palette and connect compatible output and input ports.
  3. Select a node to tune parameters and inspect its output metadata.
  4. Click Calculate for manual/cached nodes such as measurements and deconvolution.
  5. Pin important image outputs into napari for full-resolution comparison.
  6. Save the graph with Save workflow....
  7. Add Batch Output nodes before Run batch... when exact saved outputs matter.

Workflow JSON stores the graph and optional VIPP UI state, not cached pixels or tables. Export Python... emits direct calls to the headless operation and I/O functions; it does not reproduce interactive caches or full runtime metadata propagation. See the user guide for details and caveats.

Documentation

Development

Create a local environment and install the development dependencies:

python -m venv .venv
.venv\Scripts\Activate.ps1
python -m pip install -e ".[dev]"

Run the required checks:

python -m npe2 validate src/napari_vipp/napari.yaml
python -m ruff check .
python -m pytest

Launch a development instance with python scripts/launch_vipp_sample.py. The architecture reference explains the graph, metadata, execution, persistence, and UI boundaries.

Contributions are welcome. Read CONTRIBUTING.md before opening a pull request, use SUPPORT.md for help and issue-reporting guidance, and report suspected vulnerabilities privately through SECURITY.md. All project interactions follow the Code of Conduct.

Roadmap

The current public alpha is 0.11.0a3. This patch alpha makes large-image analysis exact and responsive, preserves native threshold and cutoff semantics, introduces explicit workflow schema version 2 parameters, and improves histogram and colocalization inspection. The next planned milestone focuses on saved batch configuration and per-item provenance, followed by scalable OME-Zarr previews and broader scientific validation. See planning.md for the maintained release order and evidence gates.

Citation, Acknowledgement, And License

If VIPP contributes to your work, acknowledge napari-vipp and link to the project repository. Citation metadata is available in CITATION.cff; a DOI or manuscript citation can be added when available.

napari-vipp is distributed under the BSD 3-Clause License. See LICENSE for the full terms.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

napari_vipp-0.11.0a3.tar.gz (783.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

napari_vipp-0.11.0a3-py3-none-any.whl (341.2 kB view details)

Uploaded Python 3

File details

Details for the file napari_vipp-0.11.0a3.tar.gz.

File metadata

  • Download URL: napari_vipp-0.11.0a3.tar.gz
  • Upload date:
  • Size: 783.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.7

File hashes

Hashes for napari_vipp-0.11.0a3.tar.gz
Algorithm Hash digest
SHA256 4446090a941af222754afd7a131a64de3c4a5be4eae3abefaae0a4d12c8a82c8
MD5 22d971c3a370a444d08c2bfbfc0e7ac5
BLAKE2b-256 8fcf109c467ef4dd7b535a6ade1d8972bfacda017eeba658fe6fcf9230aa59a1

See more details on using hashes here.

File details

Details for the file napari_vipp-0.11.0a3-py3-none-any.whl.

File metadata

  • Download URL: napari_vipp-0.11.0a3-py3-none-any.whl
  • Upload date:
  • Size: 341.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.7

File hashes

Hashes for napari_vipp-0.11.0a3-py3-none-any.whl
Algorithm Hash digest
SHA256 08f3b98b667b522c784bea2462568a1762c757f3d08725b5778df0f92bfcbbf2
MD5 5078783ff6811cf525ab60e44a6cfe51
BLAKE2b-256 3c4842d0241a547721e0347813e8a5ed9f47a841c2440a8d469c8a8d26df20dd

See more details on using hashes here.

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