Noise2VST denoising microscopy images
Project description
Self-Calibrated Variance-Stabilizing Transformations for Real-World Image Denoising
Sébastien Herbreteau and Michael Unser
News
-
:fire: Accepted at ICCV'25
-
:fire: The Napari plugin is out! 👉 Check it out here. Thanks to Ibrahima Alain Gueye (intern ENSAI)!
Napari plugin
Thanks to Ibrahima Alain Gueye (intern ENSAI) for developing the plugin for Napari. 👉 Check it out here.
Requirements
Here is the list of libraries you need to install to execute the code:
- Python 3.12
- NumPy 1.26.4
- PyTorch 2.2
- Torchvision 0.17
- Matplotlib 3.9
To install in an environment using conda:
conda env create -f environment.yml
conda activate noise2vst
Demo
We provide a Python Jupyter Notebook with example code to reproduce the experiments of the paper: demo.ipynb.
Pre-trained models
We use two popular off-the-shelf neural networks specialized in the removal of Gaussian noise (see folder models):
- FFDNet [K. Zhang et al., IEEE Trans IP 2018]
- DRUNet [K. Zhang et al., IEEE Trans PAMI 2022]
Their pre-trained weights can be downloaded using the file download.py.
Noise2VST
Noise2VST is implemented in Pytorch in the file noise2vst.py. Use the template below within your code:
# Instanciate the class
noise2VST = Noise2VST().to(device)
# Training (time depends on the performance of your CPU/GPU)
noise2VST.fit(img_noisy, m_ffdnet_color, nb_iterations=2000)
# Inference
with torch.no_grad():
img_den = noise2VST(img_noisy, m_drunet_color)
Acknowledgements
We acknowledge access to the facilities and expertise of the CIBM Center for Biomedical Imaging, a Swiss research center of excellence founded and supported by Lausanne University Hospital (CHUV), University of Lausanne (UNIL), École polytechnique fédérale de Lausanne (EPFL), University of Geneva (UNIGE), and Geneva University Hospitals (HUG).
This work was granted access to the HPC resources of IDRIS under the allocation 2024-AD011015932 made by GENCI.
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}
}
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file noise2vst-0.1.0.tar.gz.
File metadata
- Download URL: noise2vst-0.1.0.tar.gz
- Upload date:
- Size: 10.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
da1254a1b1a104e7b7a9abcc0b21be0c28774f9fadc74fe563e66f85b475f853
|
|
| MD5 |
c84c92162878a10d69eafd08077e056e
|
|
| BLAKE2b-256 |
6975831e99994ccecf2af57af68132d074b7b20cab5f1411da47e83aaeabc2f7
|
File details
Details for the file noise2vst-0.1.0-py3-none-any.whl.
File metadata
- Download URL: noise2vst-0.1.0-py3-none-any.whl
- Upload date:
- Size: 11.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a9985af6a39d2bbe95b9d109a9f0e36595367d46fc501f9d77f6439e30060994
|
|
| MD5 |
ff7692109f0f101aa77145182927d6c8
|
|
| BLAKE2b-256 |
f8a66370178550c77310cf9587d41126fe6d2cd74a27a2eba840ca9ebe293110
|