Auto-Denoise¶
Auto-denoise (autoden) provides implementations for a small selection of unsupervised and self-supervised CNN denoising methods. These methods currently include:
- Noise2Noise (N2N) - A self-supervised denoising method using pairs of images of the same object [1].
- Noise2Void (N2V) - A self-supervised denoising method capable of working with a single image [2]. We have also implemented a later development of the method that can work with structured noise [3].
- Deep Image Prior (DIP) - An unsupervised denoising/upsampling/deconvolution method that can also work with a single image [4].
We also provide example implementations of supervised denoising methods, and the tomography specific Noise2Inverse (N2I) method [5].
References:
- [1] J. Lehtinen et al., “Noise2Noise: Learning Image Restoration without Clean Data,” in Proceedings of the 35th International Conference on Machine Learning, J. Dy and A. Krause, Eds., in Proceedings of Machine Learning Research, vol. 80. PMLR, 2018, pp. 2965–2974. https://proceedings.mlr.press/v80/lehtinen18a.html
- [2] A. Krull, T.-O. Buchholz, and F. Jug, “Noise2Void - Learning Denoising From Single Noisy Images,” in 2019 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR), IEEE, Jun. 2019, pp. 2124–2132. doi: 10.1109/CVPR.2019.00223.
- [3] C. Broaddus, A. Krull, M. Weigert, U. Schmidt, and G. Myers, “Removing Structured Noise with Self-Supervised Blind-Spot Networks,” in 2020 IEEE 17th International Symposium on Biomedical Imaging (ISBI), IEEE, Apr. 2020, pp. 159–163. doi: 10.1109/ISBI45749.2020.9098336.
- [4] V. Lempitsky, A. Vedaldi, and D. Ulyanov, “Deep Image Prior,” in 2018 IEEE/CVF Conference on Computer Vision and Pattern Recognition, IEEE, Jun. 2018, pp. 9446–9454. doi: 10.1109/CVPR.2018.00984.
- [5] A. A. Hendriksen, D. M. Pelt, and K. J. Batenburg, "Noise2Inverse: Self-Supervised Deep Convolutional Denoising for Tomography," IEEE Transactions on Computational Imaging, vol. 6, pp. 1320–1335, 2020, doi: 10.1109/TCI.2020.3019647.
Getting Started¶
It takes just a few steps to setup Auto-Denoise on your machine.
Installing with conda¶
We recommend using Miniforge.
Once installed miniforge
, simply install autoden
with:
conda install auto-denoise -c n-vigano
Installing from PyPI¶
Simply install with:
python -m pip install auto-denoise
If you are on jupyter, and don't have the rights to install packages system-wide, then you can install with:
! python -m pip install --user auto-denoise
Installing from source¶
To install Auto-Denoise, simply clone this github.com project with either:
git clone https://github.com/CEA-MetroCarac/auto-denoise.git auto-denoise
git clone git@github.com:CEA-MetroCarac/auto-denoise.git auto-denoise
Then go to the cloned directory and run pip
installer:
cd auto-denoise
pip install -e .
How to contribute¶
Contributions are always welcome. Please submit pull requests against the main
branch.
If you have any issues, questions, or remarks, then please open an issue on github.com.