目录
图像去噪概述:
(1)数据预处理
(2)特征提取
(3)去噪模型设计和选择
基于深度学习的图像去噪方法
基于卷积神经网络的去噪方法
基于CNN自监督学习去噪
基于CNN监督学习去噪
基于残差网络的去噪方法
CNN中图像网络分为
基于生成对抗网络的去噪方法
GAN
基于图神经网络的去噪方法(GCDN)
GNN
GCN
GCDN
图像去噪概述:
图像去噪的研究内容包括数据预处理、特征提取和去噪三部分
(1)数据预处理
-
- 问题:获取的数据集中常包含一些不可用数据,如图像格式不符,像素过高、亮度过低以及一些重复数据
- 方法:采用图像格式转换、几何校正、主成分分析等预处理操作为后续的去噪模型提供更多可用数据
(2)特征提取
-
- 目的
提取图像纹理细节特征(通过卷积池化等方式),并将噪声与背景信息分离
-
-
- 卷积
- 提取图像特征,自动提取图像的高维度且有效的特征
- 卷积层工作原理:从左上角开始,卷积核就对应着数据的3*3的矩阵范围,然后相乘再相加得出一个值。按照这种顺序,每隔一个像素就操作一次,我们就可以得出9个值。这九个值形成的矩阵被我们称作激活映射
- 举例:卷积核为3*3的矩阵,图片为一个分辨率5*5的图片,像素为1,卷积核的任务如下图
- 卷积
-
-
-
-
- 分类:padding,步长
- 池化
- 主要是为了减少卷积层提取的特征个数,增加特征的鲁棒性或是为了降维
- 目的是降低参数,方法是删除参数,分为最大池化(常用)和平均池化
- 池化层池化的是卷积层的输出(池化层一般放在卷积层后面)
-
-
-
- 方法
- 有尺度不变特征变换(SIFT):提取不变性(invariant)特征
- 方向梯度直方图(HOG):将3通道的彩色图像转换成一定长度的特征向量
- FAST 角点检测:快速角点特征的检测算法
- 提取后的目的:提取到的噪声块儿,可以对噪声水平的高低做出初步估计
- 原因:精准的噪声水平估计是设计合理去噪网络结构的前提
- 方法:递归平均、最小值跟踪和直方图噪声估计
- 方法
(3)去噪模型设计和选择
-
- 基于深度学习的图像去噪方法可以自主快速地提取浅层像素级特征和深层语义级特征,具有强大的表示学习能力和良好的去噪效果
- 基于传统模型的去噪方法提取的信息量较少,无法准确拟合噪声分布,去噪效果不甚理想
基于深度学习的图像去噪方法
基于卷积神经网络的去噪方法
卷积神经网络(CNN)是深度学习的基础网络
上图为DNN神经网络图,DNN内部的神经网络层可以分为三类,输入层,隐藏层和输出层,一般来说第一层是输入层,最后一层是输出层,而中间的层数都是隐藏层。
CNN五种结构组成:输入层,卷积层,池化层,全连接层(提取完成之后,使用全连接层完成分类任务),SoftMax(概率分布)
基于CNN自监督学习去噪
利用像素之间的独立性,以自监督训练方式寻找目标像素与输入像素之间的映射关系,从而实现去噪任务
自监督缺点:自监督方式忽视了空间信息之间的依赖关系,提取的特征对噪声的表达能力不足,且网络训练参数的调整方式缺乏灵活性,不能很好地表示含噪图像到清晰图像之间的复杂映射关系
基于CNN监督学习去噪
如 DnCNN-B、FFDNet和 CBDNet利用高斯混合模型对多种不同噪声水平的样本图像进行训练
通常,用 x = y - R(y) 表示恢复出的清晰图,y 为输入的噪声图,R(y) 表示预测的噪声,其去噪方法使用的损失函数如公式
过程:通过网络的训练,提取噪声分布 R(y) ,并与原始输入的噪声图像做差值运算,实现去噪任务
问题:对训练域外的噪声图像适应性差 --> 解决方法:专家混合法(MoE)给数据集中的每个代表性领域培训一名专家,对数据的可用性进行评估和分类,并通过无监督的聚类方法最小化 MoE 损失
局限性:
- 单一的卷积神经网络没有记忆功能,浅层像素级信息在池化过程中会大量丢失,导致去噪后的图像仍带有残留噪声
- 增加卷积层数量来提升特征表达能力的同时也带来了参数量增加、计算量加大和时间消耗多等问题,且网络更加复杂,训练难度增加
基于残差网络的去噪方法
CNN中图像网络分为
深层网络
- 高层信息:深层网络提取的特征离输出较近,一些粗粒度的信息,包含是更抽象的信息,即语义信息。
- 原理:感受野增加,感受野之间重叠区域增加,图像信息进行压缩,获取的是图像整体性的一些信息。
- 优缺点:具有更强的语义信息,但是分辨率很低,对细节的感知能力较差。
浅层网络(常用)
- 浅层特征:浅层网络提取的特征和输入比较近,包含更多的像素点的信息,一些细粒度的信息是图像的一些颜色、纹理、边缘、棱角信息。
- 原理:浅层网络感受野较小,感受野重叠区域也较小,所以保证网络捕获更多细节。
- 优缺点:分辨率更高,包含更多位置、细节信息,但是由于经过的卷积更少,其语义性更低,噪声更多。
思想
去噪思想可以用以下公式:
Me(·) 表示的是卷积层的特征提取操作 --> f0表示的是卷积层对输入噪声图像提取的初始特征
Mfl(·) 表示残差学习 --> fr是学习的特征
Mr(·) 表示对学习到的残差信息进行重构操作 --> 并输出去噪后的图像 ŷ
存在的问题
图像去噪方法常以普通 RGB 图像作为训练样本,没有考虑到传感器设备自身在图像信号处理过程对图像质量的影响,但 RGB 图像与成像设备获取的原始 RAW 图之间始终存在偏差,导致噪声建模方式不够合理、准确
解决方法:设计循环镜像转换方法 CycleISP
- RGB2RAW 分支的任务是将 RGB 彩色图像转换成原始成像设备拍摄的 RAW 图
- Noise injectionk控制器负责给 RAW 图添加噪声
- RAW2RGB 分支的任务是将带噪声的 RAW 图转换成普通的 RGB 图像
- 图中色彩校正单元(Color Correction)对提高样本数据的真实性提供巨大帮助
缺点
残差连接的多次使用容易导致网络出现过拟合的现象,即模型过于贴合训练集,从而导致其无法正确预测未知数据的现象,过拟合会导致模型的泛化能力差
基于生成对抗网络的去噪方法
生成对抗网络(GAN)因其具有很强的学习能力,通过对抗学习训练策略,可以得到逼真的噪声图,在一定程度上缓解了成对训练样本不足的问题。
生成对抗网络在训练过程中需要计算生成器 (G) 和鉴别器 (D) 两部分损失
GAN
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」,我们就可以用它来生成我们想要的图片了。
局限性
- 生成模型的分布没有显示表达,可解释性差
- 生成器和鉴别器需要做到同步更新参数,很难生成离散数据
- 目前为止,达到纳什均衡(博弈中,对于每个参与者来说,只要其他人不改变策略,他就无法改善自己的状况)的方法还没找到,网络训练不够稳定。
基于图神经网络的去噪方法(GCDN)
GNN
GNN是什么
- 图神经网络(GNN)适合处理非结构化或比较复杂的数据
- GNN是一种连接模型,通过网络中节点之间的信息传递的方式来获取图中的依存关系
- GNN通过从节点任意深度的邻居来更新该节点状态,这个状态能够表示状态信息。
GNN产生原因
- CNN只能在欧几里得数据(Euclideandata),比如二维图片和一维文本数据上进行处理,而这些数据只是图结构的特例而已,对于一般的图结构,则很难使用
- 图嵌入的缺陷
- 节点编码中权重未共享,导致权重数量随着节点增多而线性增大
- 直接嵌入方法缺乏泛化能力,意味着无法处理动态图以及泛化到新的图
GCN
GCN是什么
- GCN,图卷积神经网络,实际上跟CNN的作用一样,就是一个特征提取器,只不过它的对象是图数据。
- GCN精妙地设计了一种从图数据中提取特征的方法,从而让我们可以使用这些特征去对图数据进行节点分类、图分类、边预测,还可以顺便得到图的嵌入表示
- 上图中的GCN输入一个图,通过若干层GCN每个node的特征从X变成了Z,但是,无论中间有多少层,node之间的连接关系都是共享的。
优点
- 即使不训练,完全使用随机初始化的参数W,GCN提取出来的特征就以及十分优秀了!
- 这跟CNN不训练是完全不一样的,后者不训练是根本得不到什么有效特征的。
GCDN
该方法通过引入边缘注意力机制(Edge Attention)减少边缘信息的丢失
并采用3×3、5×5和7×7大小的滤波器进行多尺度分层提取特征,提高对特征信息的利用率