什么是图像噪声#?是如何产生的?
在一些图像中,像素值会在原始场景理想均匀的区域内变化,其原因要么是光子或其他信号的有限计数统计、在芯片内的电子偏移中引入的损耗;要么是放大器或电缆中出现了电子噪声。任何情况下,这种变化通常称为噪声,而由图像到噪声电平表示的场景中出现的差别引起的对比度比值,称为信噪比。
当信噪比较低时,可能就看不到一些特征。下图显示了几个不同大小和形状的特征以不同的信噪比叠置在噪声背景上。分辨这些特征的能力通常与特征的面积成正比,而与形状无关。
噪声背景上的各个特征:(a)信噪比为1:1;(b)信噪比为1:3;(c)信噪比为1:7;(d)空间平滑后的图(c)
在图像信号处理成像过程中的各个流程,均有可能生成噪声,按照物理成因可分为沟道热噪声、散粒噪声、放大器噪声和量化噪声等,按照其视觉效果和满足的分布特性可分为椒盐噪声、泊松噪声、高斯白噪声和脉冲噪声等几类。
下图展示了在静止场景相机成像过程中各个过程产生噪声原因的完整示意图,其中沟道噪声主要满足泊松分布,其主要成因是光电转换器件中单位置生成电子数目与接受到的入射光子数目出现泊松抖动而非线性映射关系。
简要介绍一下图像去噪技术都有哪些?
图像去噪技术是现代数字图像处理器中最为重要的步骤,负责去除在像素值产生、读出、处理过程中产生的各类型噪声。按照处理原理差异,主要分为基于信号处理原理的图像去噪技术(传统图像降噪方法)和基于机器学习的图像去噪技术(基于映射和算力模拟的降噪方法)。
一、传统图像去噪技术
传统图像去噪技术主要可分为4大类:1.基于空间域的图像降噪方法;2.基于变换域的图像降噪方法;3.基于图像压缩的去噪方法;4.基于超糅合的图像去噪方法。
1)空域降噪方法
按照滤波范围分为基于邻域的空间滤波技术和基于非局部的空域滤波技术。
基于邻域的空间滤波技术主要包括均值滤波、中值滤波、高斯滤波、双边滤波等。基于邻域的滤波技术等效为空间卷积的滤波器核对输入图像进行卷积,区别在于卷积类型和参数设置。此类方法的特点是:简单、计算复杂度和资源消耗低,机械的考虑去噪时周围的位置相似度而非图像纹理、细节的相似度,因此时常产生局部平滑的效果。
对基于非局部自相似性的图像去噪方法,主要代表就是2005年CVPR中的NLM方法和其变式INLM(Improved NLM)等,其基本思想是搜索以当前待去噪中心点为中心的区块范围以寻求相似纹理、细节堆叠后进行去噪。区别于局部去噪技术, 此类方法的特点是:效果优良、纹理清晰,但也伴随着过大的计算资源消耗和存储消耗。
2)频域降噪方法
频率域去噪,其基本思想是将图像转换至选定进行信号分解的变换域后,根据图像自然特征的不同统计特性设计不同性质的滤波器进行噪声滤波,最后将频域滤波结果反变换回原始空间域完成去噪。目前主流的信号分解域包括FFT(快速傅里叶变换域)、DCT(离散余弦变换域)和DWT(图像小波变换域等)。
3)图像压缩去噪方法
基于图像压缩的方法,核心思想是将图像看作矩阵,其中的有效信号主要集中在有限的图像位置处而其余位置的图像信号强度很弱(对应于实际图像中平滑区域多而纹理细节少)。
遭受噪声污染后,图像矩阵的无序性变强而差异性变弱。因此如何从无序性强的噪声矩阵映射到无噪矩阵,可通过压缩的方法进行处理。
最常见方式是将图像看为一系列微小细节的线性组合,这些细节又称为字典,系数根据图像内容拟合确定。基于压缩的方法包括:K-SVD(K means 奇异值矩阵分解)和LSSC(基于学习的稀疏编码)等。
此类方法的特点是: 场景数据集先验依赖、需要不断迭代至拟合收敛、图像恢复极好、硬件实现性差、鲁棒性差。
4)超糅和去噪方法
超糅合类去噪方法,其典型代表为BM3D(TIP-2007)。超糅合方法的基本特征是糅合了前面几类信号处理去噪方法的优点,抛弃缺点,因此获得了极大的去噪性能提升,是目前STOA的性能代表。下图中时间轴上列举了1992年以来至2016年的各阶段STOA方法集合,从16年开始基于深度学习的方法出现了并持续引领现代降噪技术的发展潮流。
二、基于深度学习的图像去噪技术
- 以下仅例举了部分常见的深度学习去噪技术
1)基于卷积神经网络(CNN)的去噪方法
CNN五种结构组成:输入层,卷积层,池化层,全连接层(提取完成之后,使用全连接层完成分类任务),SoftMax(概率分布)。
基于CNN自监督学习去噪
利用像素之间的独立性,以自监督训练方式寻找目标像素与输入像素之间的映射关系,从而实现去噪任务。局限性:自监督方式忽视了空间信息之间的依赖关系,提取的特征对噪声的表达能力不足,且网络训练参数的调整方式缺乏灵活性,不能很好地表示含噪图像到清晰图像之间的复杂映射关系。
基于CNN监督学习去噪
如 DnCNN-B、FFDNet和 CBDNet利用高斯混合模型对多种不同噪声水平的样本图像进行训练。过程是通过网络的训练,提取噪声分布,并与原始输入的噪声图像做差值运算,实现去噪任务训练。局限性:1)单一的卷积神经网络没有记忆功能,浅层像素级信息在池化过程中会大量丢失,导致去噪后的图像仍带有残留噪声;2)增加卷积层数量来提升特征表达能力的同时也带来了参数量增加、计算量加大和时间消耗多等问题,且网络更加复杂,训练难度增加。
2)基于残差网络的去噪方法
CNN中图像网络分为深层网络和浅层网络。
深层网络提取的特征离输出较近,一些粗粒度的信息,包含更抽象的信息,即语义信息。原理:感受野增加,感受野之间重叠区域增加,图像信息进行压缩,获取的是图像整体性的一些信息。优缺点:具有更强的语义信息,但是分辨率很低,对细节的感知能力较差。
浅层网络提取的特征和输入比较近,包含更多的像素点的信息,一些细粒度的信息是图像的一些颜色、纹理、边缘、棱角信息。原理:浅层网络感受野较小,感受野重叠区域也较小,所以保证网络捕获更多细节。优缺点:分辨率更高,包含更多位置、细节信息,但是由于经过的卷积更少,其语义性更低,噪声更多。
去噪思想可以用以下公式:
Me(x) 表示的是卷积层的特征提取操作;
f0表示的是卷积层对输入噪声图像提取的初始特征;
Mfl(f0) 表示残差学习;
fr是学习的特征;Mr(fr) 表示对学习到的残差信息进行重构操作;
并输出去噪后的图像 ŷ.
局限性:残差连接的多次使用容易导致网络出现过拟合的现象,即模型过于贴合训练集,从而导致其无法正确预测未知数据的现象,过拟合会导致模型的泛化能力差。
3)基于生成对抗网络的去噪方法
生成对抗网络(GAN)因其具有很强的学习能力,通过对抗学习训练策略,可以得到逼真的噪声图,在一定程度上缓解了成对训练样本不足的问题。
其中有两个网络,G(Generator)和D(Discriminator)。Generator是一个生成图片的网络,它接收一个随机的噪声z,通过这个噪声生成图片G(z)。Discriminator是一个判别网络,判别一张图片是不是“真实的”。它的输入是x,x代表一张图片,输出D(x)代表x为真实图片的概率,如果为1,就代表100%是真实的图片,而输出为0,就代表不可能是真实的图片。
第一阶段:固定「判别器D」,训练「生成器G」
让生成器G不断生成“假数据”,然后给这个判别器D去判断。开始生成器G还很弱,所以很容易被揪出来。但是随着不断的训练,生成器G技能不断提升,最终骗过了判别器D。到了这个时候,判别器D基本属于瞎猜的状态,判断是否为假数据的概率为50%。
第二阶段:固定「生成器G」,训练「判别器D」
现在训练「生成器G」就没有意义了。因此固定「生成器G」,然后开始训练「判别器D」。「判别器D」通过不断训练,提高了自己的鉴别能力,最终他可以准确的判断出所有的假图片。到了这个时候,「生成器G」已经无法骗过「判别器D」。
循环阶段一和阶段二
通过不断的循环,「生成器G」和「判别器D」的能力都越来越强。最终我们得到了一个效果非常好的「生成器G」,我们就可以用它来生成我们想要的图片了。
局限性:1)生成模型的分布没有显示表达,可解释性差;2)生成器和鉴别器需要做到同步更新参数,很难生成离散数据;3)目前为止,达到纳什均衡(博弈中,对于每个参与者来说,只要其他人不改变策略,他就无法改善自己的状况)的方法还没找到,网络训练不够稳定。