Noise2VST

A plugin for denoising microscopy images using Noise2VST

  • Ibrahima Alain Gueye

License MIT PyPI Python Version tests codecov napari hub npe2 Copier

A plugin for denoising microscopy images using Noise2VST
Developed by Ibrahima Alain GUEYE


This napari plugin was generated with copier using the napari-plugin-template.

Dependencies

This plugin relies on the Noise2VST framework [S. Herbreteau and M. Unser, ICCV'25]. The source code is available at: https://github.com/sherbret/Noise2VST

  • ✅ No manual installation is required — this version is installed automatically when you install the plugin.

Installation

To install in an environment using conda:

conda create --name napari-env
conda activate napari-env
conda install pip

You can install napari-noise2vst via pip:

pip install napari-noise2vst

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

pip install "napari-noise2vst[all]"

If you prefer installing napari separately:

pip install "napari[all]"

To install latest development version:

pip install git+https://github.com/IbrahimaAlain/napari-noise2vst.git

Usage

After installation, you can launch the Noise2VST Denoising plugin directly from the napari interface. In the napari top menu, go to:

Plugins > Noise2VST Denoising (Denoising Noise2VST)

image_0.png

Open your image by clicking: File → Open File(s)... Select the noisy image (e.g., .tif, .png, etc.) that you want to denoise. The image will appear in the napari viewer.

image_1.png

Once the image is loaded, scroll to the plugin panel on the right. Set the number of training iterations using the slider (e.g., 2000). Then click the Fit button to train the denoising model on the image.

The region shown here highlights the relevant settings and the training button.

image_2.png image_3.png

A progress bar appears, indicating the training status in real time. You can follow the advancement of model fitting visually.

image_4.png

Once training is complete, the plugin automatically stores the model weights. Click the Run Denoising button to generate the denoised version of the input image.

image_5.png

The denoised image appears as a new layer in the napari viewer, alongside the original one. You can toggle visibility, adjust contrast, and compare both layers interactively.

image_6.png

Click the Visualize VST button to display the spline transformation (VST) learned during training. A matplotlib window pops up with a plot showing the input-output relationship.

image_7.png

To save the spline transformation values, click the Save Spline Knots button. A dialog window opens to let you choose where to store the CSV file containing the knots.

image_8.png

Citation

@article{herbreteau2024noise2vst,
  title={Self-Calibrated Variance-Stabilizing Transformations for Real-World Image Denoising},
  author={Herbreteau, S{\'e}bastien and Unser, Michael},
  journal={arXiv preprint arXiv:2407.17399},
  year={2024}
}

Issues

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

Version:

  • 0.1.1

Last updated:

  • 2025-08-04

First released:

  • 2025-08-03

License:

  • MIT

Supported data:

  • Information not submitted

Plugin type:

Open extension:

Save extension:

Python versions supported:

Operating system:

  • Information not submitted

Requirements:

  • numpy
  • matplotlib
  • torch
  • magicgui
  • qtpy
  • scikit-image
  • napari
  • torchvision
  • Noise2VST
  • napari[all]; extra == "all"
  • tox; extra == "testing"
  • pytest; extra == "testing"
  • pytest-cov; extra == "testing"
  • pytest-qt; extra == "testing"
  • napari[qt]; extra == "testing"
Website by the napari team, original design by CZI. Go to napari main website.