DeepInverse: a Pytorch library for imaging with deep learning
Deep Inverse is a Pytorch based library for solving imaging inverse problems with deep learning.
Github repository: https://github.com/deepinv/deepinv.
Featuring
Large collection of predefined imaging operators (MRI, CT, deblurring, inpainting, etc.)
Training losses for inverse problems (self-supervised learning, regularization, etc.).
Many pretrained deep denoisers which can be used for plug-and-play restoration.
Framework for building datasets for inverse problems.
Easy-to-build unfolded architectures (ADMM, forward-backward, deep equilibrium, etc.).
Diffusion algorithms for image restoration and uncertainty quantification (Langevin, diffusion, etc.).
A large number of well-explained examples, from basics to state-of-the-art methods.
Installation
Install the latest version of deepinv
via pip:
pip install deepinv
You can also install the latest version of deepinv
directly from github:
pip install git+https://github.com/deepinv/deepinv.git#egg=deepinv
Getting Started
Try out one of the following deblurring examples (or pick from full list of examples):
Image deblurring with custom deep explicit prior.
Image deblurring with Total-Variation (TV) prior
Plug-and-Play algorithm with Mirror Descent for Poisson noise inverse problems.
DPIR method for PnP image deblurring.
Building your custom sampling algorithm.
Deep Equilibrium (DEQ) algorithms for image deblurring
Finding Help
If you have any questions or suggestions, please join the conversation in our Discord server. The recommended way to get in touch with the developers is to open an issue on the issue tracker.
Lead Developers
Julian Tachella, Dongdong Chen, Samuel Hurault, Matthieu Terris and Andrew Wang.