Paper | Toward Convolutional Blind Denoising of Real Photographs

Toward Convolutional Blind Denoising of Real Photographs

发表在2019 CVPR。

摘要

While deep convolutional neural networks (CNNs) have achieved impressive success in image denoising with additive white Gaussian noise (AWGN), their performance remains limited on real-world noisy photographs. The main reason is that their learned models are easy to overfit on the simplified AWGN model which deviates severely from the complicated real-world noise model. In order to improve the generalization ability of deep CNN denoisers, we suggest training a convolutional blind denoising network (CBDNet) with more realistic noise model and real-world noisy-clean image pairs. On the one hand, both signal-dependent noise and in-camera signal processing pipeline is considered to synthesize realistic noisy images. On the other hand, real-world noisy photographs and their nearly noise-free counterparts are also included to train our CBDNet. To further provide an interactive strategy to rectify denoising result conveniently, a noise estimation subnetwork with asymmetric learning to suppress under-estimation of noise level is embedded into CBDNet. Extensive experimental results on three datasets of real-world noisy photographs clearly demonstrate the superior performance of CBDNet over state-of-the-arts in terms ofquantitative metrics and visual quality. The code has been made available at https://github.com/GuoShi28/CBDNet.

结论

We presented a CBDNet for blind denoising of realworld noisy photographs. The main findings of this work are two-fold. First, realistic noise model, including heterogenous Gaussian and ISP pipeline, is critical in making the learned model from synthetic images be applicable to real-world noisy photographs. Second, the denoising performance of a network can be boosted by incorporating both synthetic and real noisy images in training. Moreover, by introducing a noise estimation subnetwork into CBDNet, we were able to utilize asymmetric loss to improve its generalization ability to real-world noise, and perform interactive denoising conveniently.

要点

  1. 现有的方法大多建立在AWGN上,在实际样本上效果不好。作者认为是AWGN模型太简单,过拟合了。

    Existing CNN denoisers tend to be over-fitted to Gaussian noise and generalize poorly to real-world noisy images with more sophisticated noise.

  2. 作者对现实噪声尝试了建模,并且在训练集中加入了很多生成样本。包括:signal-dependent noise和in-camera signal processing pipeline。

  3. CBDNet中包括了一个预测噪声的子网络。其训练采用的是非对称的loss,着重惩罚对噪声的低估(在FFDNet中我们看到,宁可高估噪声,不可低估噪声)。

贡献

  1. 提出了一个盲去噪网络CBDNet,其中一个子网络用于预测噪声水平、输出噪声水平图,第二个子网络即完成非盲去噪。两个子网络的损失项合并起来,end-to-end训练。

  2. 在训练时混合了生成噪声和真实噪声。

局限

  1. 能否有效地剥离噪声预测和盲去噪模块?作者通过真实噪声图(只有生成噪声才有)监督,以及TV平滑规范,强迫输出为平滑的噪声水平图。但真实效果(能否很好地独立)未知。

故事背景

在真实的相机系统(real camera system)中,图像噪声的来源多种多样,例如暗电流噪声(dark current noise)、短噪声(short noise)和热噪声(thermal noise)。进一步,图像还会在相机内部的处理流程(in-camera processing, ISP)中进一步加噪,例如去马赛克(demosaicing)、伽马校正(Gamma correction)和压缩(compression)。显然,这些噪声与简单的AWGN截然不同。

建模现实噪声

根据[14,45],泊松高斯分布(可近似为heteroscedastic Gaussian of a signal-dependent and a stationary noise components)更适用于建模真实噪声。此外还有相机内部的处理,使得噪声与空域位置和色彩有关(makes the noise spatially and chromatically correlated)。

具体而言,光成像(photon sensing)导致的噪声由泊松分布刻画,而其余的静态干扰由高斯分布刻画。
再进一步,我们可以用异方差的高斯分布近似:

Practically, the noise produced by photon sensing can be modeled as Poisson, while the remaining stationary disturbances can be modeled as Gaussian. Poisson-Gaussian thus provides a reasonable noise model for the raw data of imaging sensors [14], and can be further approximated with a heteroscedastic Gaussian.

论文

ISP没看懂,见1714页。其考虑了相机响应函数CRF、RGB到拜耳图像的转换M、去马赛克函数DF、生成辐照图像的L以及JPEG压缩,但没有考虑量化噪声。JPEG量化系数QF和图像方差(泊松和高斯)都在一定范围内变化。

因此在本文中,我们同时考虑泊松-高斯模型和ISP(实验证明ISP很重要)
具体而言,我们将生成噪声图像和真实噪声图像一起用于训练CBDNet。

CBDNet

CBDNet

  • CBDNet分为两个子网络:噪声预测网络CNN_E和非盲去噪网络CNN_D。

  • 理想状况下,CNN_E将会输出噪声水平图,其大小与输入图像大小一样。噪声水平图和原输入一起,输入CNN_D,实现去噪。

  • 噪声水平图在输入CNN_D之前,可以被人为地适当修改。作者设了一个乘子\(\gamma\),对噪声水平图进行点乘。

  • CNN_E是一个五层CNN,没有BN和池化。每一层都有32个通道,都是\(3 \times 3\)卷积。

  • CNN_D采用的是16层的U-Net结构。并且整体学习的是残差(头尾引入了短连接)。其中有大量的短连接、跨步卷积和转置卷积,可以捕捉多尺度信息,同时扩大感受野。所有滤波器都是\(3 \times 3\)的。除了最后一层,其余都使用ReLU非线性激活。

实验发现,BN对真实噪声的去除帮助微乎其微。可能的原因是真实噪声非高斯分布。

作者引入CNN_E的原因有两个:

  1. 可以通过调节噪声水平图,来调整去噪程度。

  2. 在FFDNet等工作中发现,引入噪声水平图可以达到更好的性能,特别是当噪声程度较大时。

非对称损失

比起低估噪声损失,我们更倾向于高估噪声损失。原因:

Both CNN and traditional non-blind denoisers perform robustly when the input noise SD. is higher than the ground-truth one (i.e., over-estimation error), which encourages us to adopt asymmetric loss for improving generalization ability of CBDNet.

并且在FFDNet中,作者也发现高估噪声几乎不会影响效果,但低估影响很严重。因此,作者在损失函数的设计上,更着重惩罚低估噪声。

此外,作者还引入了TV正则化项,保证预测噪声水平图的平滑性。

数据库

通过我们的建模,我们可以获得大量生成数据。具体而言,作者从多个数据集中获取了很多RGB图像,然后通过ISP的反变换,得到“干净、无损”的图像。然后再加噪甚至压缩。

但对于真实有噪图像,我们很难获得其无损图像。文献[43,45,1]说可以通过对同一场景的多张有噪图像取平均,但这样做很难:要保证静态,同时要有多张图像。因此作者也采取了上述方式?(作者没说清楚)数据库来源于[4]。

但当输入batch为真实有噪图像时,由于噪声标准差不可知,因此loss只衡量去噪保真项,不衡量噪声估计损失和正则项。

实验

有点可惜的是,作者没有探究decorrelation的程度,以及噪声预测的效率。作者通过这个实验,探究了互动性:

实验

可见,随着噪声水平预测图放大系数的不断提高,去噪强度也在增强。

posted @ 2019-10-01 14:00  RyanXing  阅读(831)  评论(0编辑  收藏  举报