kanglin755 / plug_and_play_admm

A simple Pytorch implementation of plug and play ADMM with examples
MIT License
29 stars 6 forks source link
admm image-restoration inverse-problems plug-and-play pnp pytorch

Plug and Play ADMM

This repository provides a simple Pytorch implementation of plug and play ADMM with examples.

The notebook pnp_admm_example.ipynb contains a example in which a pretrained convnet gaussian denoiser is downloaded (120MB) and plugged into ADMM for solving a motion deblur, inpainting, and super-resolution problem. You can also view in Google Colab.

The notebook denoiser_training.ipynb contains code for training a denoiser from scratch using a subset of ImageNet as trainingset. The trainingset will be download automatically (250MB). You can also view in Google Colab.

Degraded PnP output Ground truth
Motion deblur
Inpainting
Super-resolution


References:
S. Venkatakrishnan, C. Bouman, and B. Wohlberg, “Plug-and-play priors for model based reconstruction,” in Proc. IEEE Global Conference on Signal and Information Processing, 2013, pp. 945–948.