文章学习24“Image Blind Denoising Wit

作者: Carrie_Hou | 来源:发表于2018-07-16 13:32 被阅读40次

    这篇文章是CVPR2018里做图像去噪的文章之一,主要针对的是图像里的盲去噪,也就是指在不知道噪声水平下的去噪。作者是中山大学和CVTE合作,文章的主要思路和我现在做的很类似,用一个CNN网络来拟合图像中的噪声,网络就是拿DnCNN改的,把最后的subtract去掉。但是由于数据集不够,所以提出来了用GAN来产生噪声以和干净图像结合增加数据量。

    图像去噪领域内的工作之前也都有介绍,这篇文章就是把DnCNN的subtract去掉之后增加了数据量(数据增强就可以完成的工作),具体的结构如下:

    整个流程大概是,给一组“不成对”的图像,利用从噪声图像中提取的近似噪声块来训练生成对抗网络(GAN)以进行噪声建模和采样。从训练的GAN模型中采样大量噪声块。然后,将提取和生成的噪声块与清晰图像组合以获得成对的训练数据,该训练数据用于训练深度卷积神经网络(CNN)以对输入的噪声图像进行去噪。所以网络就得分成三部分,噪声块提取、GAN生成噪声、和CNN网络用于训练提取图像中的噪声。

    噪声块提取,文章中这一块的解释实在是看不懂,也没有找到相关内容,这一块的目的是产生一个近似的噪声块输入给GAN,以让GAN可以更好的产生噪声。而这个近似的噪声块是由噪声图像减去smooth patch的均值得到,这里有点像均值滤波。而怎么定义smooth patch,作者提出了一个算法。以Sg的步长在噪声图像中遍历获得d*d大小的patch Pi,然后在Pi上以Sl的步长遍历以获得h*h的patch qij,如果对于每一个j都能满足下式,那么这个patch Pi就是smooth patch。

    是smooth patch的Pi都放到集合S中,估计的噪声块就由集合S中每一个patch减去他的均值得到(利用均值滤波的原理)。然后就会得到充足的噪声块用来训练GAN。

    第二部分,GAN生成噪声,网络结构如下图:

    思路就是用GAN来模拟噪声块上的噪声分布,以产生更多的噪声分布丰富训练数据集,作者采用了WGAN-GP(WGAN的改进版本,主要是解决了李普利茨连续性导致的权重分布不均衡问题)的思想,目标函数是:Pr是第一部分求得的噪声块上的分布,Pg是生成器的噪声分布,Px是WGAN-GP里定义的内容。整个GAN的结构类似于DCGAN.

    第三部分用CNN生成噪声,和我现在做的一模一样,就是把成对的噪声图像和干净图像输入到去掉了subtract的DnCNN里,用loss函数使其输出对应的噪声图像,那么最后干净图像就可以通过噪声图像减去产生的噪声而得到。

    实验结果如下表:

    针对高斯噪声和混合噪声各个去噪方法在BSD68数据集上测试所得的结果,可以看出针对混合噪声,本文的GCBD还是可以得到更好的结果。这个我之前也做过实验,达不到29.16,只能达到28.75和28.56

    上表是在DND数据集上的结果,这个数据集是由50个相机拍摄的真实图像。针对GAN的噪声建模部分实验,作者与GMM生成是噪声对比,结果如下,可以看出本文的噪声建模更接近于真实图像

    相关文章

      网友评论

      • 812e6e1f25ae:大佬,您有这篇文章的TensorFlow 实现吗?我在github上没找到,可以请你喝红茶玛奇朵:joy:
        Carrie_Hou:@墨晓白_see 不好意思啊,还是没有~
        812e6e1f25ae:@侯冠群 小姐姐,那你有这篇论文的其他实现方法吗,最近刚还看到这篇,想拿来用下,拜谢:pray:
        Carrie_Hou:@墨晓白_see 么有~
      • super樟:感觉和我一样,,看文章满眼怨念,这也能中。。。
        Carrie_Hou:隔了几个星期再看,感觉能中是有理由的。现在的去噪大都转到真实噪声的生成了,他在这上面做的还是不错的。

      本文标题:文章学习24“Image Blind Denoising Wit

      本文链接:https://www.haomeiwen.com/subject/jpxbpftx.html