Home

Awesome

DBSN

Official PyTorch implementation of Unpaired Learning of Deep Image Denoising.

We investigate the task of learning blind image denoising networks from an unpaired set of clean and noisy images. Assuming that the noise can be signal dependent but is spatially uncorrelated, we present a two-stage scheme by incorporating self-supervised learning and knowledge distillation. For self-supervised learning, we suggest a dilated blind-spot network (D-BSN) to learn denoising solely from real noisy images. Due to the spatial independence of noise, we adopt a network by stacking 1 × 1 convolution layers to estimate the noise level map for each image. Both the D-BSN and image-specific noise model (CNN_est) can be jointly trained via maximizing the constrained log-likelihood. Given the output of D-BSN and estimated noise level map, improved denoising performance can be further obtained based on the Bayes’ rule. As for knowledge distillation, we first apply the learned noise models to clean images to synthesize a paired set of training images, and use the real noisy images and the corresponding denoising results in the first stage to form another paired set.

<img src="./figs/ULD.png"> <p align="center">Illustration of our two-stage training scheme involving self-supervised learning and knowledge distillation.</p> <img src="./figs/DBSN.png"> <p align="center">Mechanisms of BSNs</p>

Preparation

Training

The training process inlcudes two stages: self-supervised learning and knowledge distillation. In self-supervised learning, we jointly train a dilated convolution based blind-spot network (D-BSN) and a noise level estimation model (CNN_est). In knowledge distillation, we use D-BSN and CNN_est to synthesize paired data for the training of existing CNN denoiser (e.g., MWCNN). On gray level images, we evaluate two basic noise models, i.e., AWGN and heteroscedastic Gaussian (HG). On color images, we evaluate three basic noise models, i.e., AWGN, heteroscedastic Gaussian (HG) and multivariate Gaussian (MG).

Evaluating

We fix the random seeds to generate noisy images in evaluation mode. The evaluation results have been updated and should be better or comparable to the paper.

Run directly for different noise types:

Results

More results can be found in the paper and supplementary material.

<img src="./figs/gray_psnr.png"> <img src="./figs/color_psnr.png"> <img src="./figs/color_img.png">

Citation

@InProceedings{DBSN,
    title = {Unpaired Learning of Deep Image Denoising},
    author = {Wu, Xiaohe and Liu, Ming and Cao, Yue and Ren, Dongwei and Zuo, Wangmeng},
    booktitle = {European Conference on Computer Vision (ECCV)},
    year = {2020}
}