APP下载

基于残差学习的非对称卷积神经网络图像去噪方法*

2023-09-29张英俊谢斌红

计算机与数字工程 2023年6期
关键词:非对称骨架卷积

曹 阳 张英俊 谢斌红

(太原科技大学计算机科学与技术学院 太原 030024)

1 引言

随着计算机视觉技术的不断发展,图像处理技术已广泛应用到各种不同的领域中。目前图像处理的一般过程为图像预处理、数据压缩、特征提取、图像分割和图像识别[1]。图像去噪是图像预处理的一部分,图像去噪即输入未处理的含噪图像,经过去噪处理后输出尽可能清晰的图像,图像的去噪效果直接影响之后图像识别等的图形高级处理过程,只有尽可能地降低或者去除图像中的噪声,提高图像质量,才能使去噪后的图像达到各种应用的要求[2~3]。

目前图像去噪领域内的算法分为传统算法和深度学习算法[4],传统算法包括空间域去噪算法和变换域去噪算法,而深度学习算法主要有基于多层感知模型(Multi Layer Perceptron,MLP)[5]和基于卷积神经网络模型(Convolutional Neural Network,CNN)[6]。常见的空间域经典去噪方法主要有均值滤波[7]、中值滤波[8]和高斯滤波[9]。空间域去噪算法是直接在图像像素上进行相应的处理,而变换域去噪算法是首先通过某种变换,将图像从空间域转换到变换域,从频率上把噪声分为高中低频噪声,之后再进行反变换将图像从变换域转换到原始空间域,从而实现去除图像噪声,获得清晰图像的目的。常见的变换域算法包括傅里叶变换[10]、小波变换[11]、基于字典学习的稀疏表示方法[12],以及与非局部去噪理论[13]相结合的BM3D[14]算法。传统去噪算法的优点在于图像处理速度快,实时性强,但去噪效果不好,去噪后的图像不能很好地保留原图像的细节和边缘信息。而深度学习去噪算法无论从性能还是去噪图像细节、边缘信息保留方面都比传统算法效果更好。

深度学习算法主要有基于多层感知机算法(MLP)和卷积神经网络算法(CNN)。2012 年Burger 等提出了用多层感知机(MLP)的方法实现神经网络去噪,MLP 相对CNN 的优点在于可以近似所有函数,而CNN 可学习到的函数相对有限[2];MLP的不足之处在于无法适应不同强度的噪声,若将不同水平的噪声图像作为输入进行训练则无法达到对特定噪声进行训练时的结果[15]。而CNN 的优点在于不仅取得了更好的去噪效果,且参数少,不易发生过拟合,能很容易地学习图像特征,相比MLP更适用于训练深度的神经网络。比如2017 年Zhang等提出了针对高斯噪声的著名的基于残差学习的深度卷积神经网络去噪方法(Denoising Convolutional Neural Networks,DnCNN)[16]模型,提出使用卷积通过端到端的残差学习,从函数回归角度用卷积神经网络将噪声从噪声图像中分离出来,取得了显著优于其他方法的去噪效果,但因为其全卷积的结构,训练时间较长。2018 年Zhang 等又提出了FFDNet[17](Fast and Flexible Denoising Network)将噪声图像作为网络输入,可以快速灵活处理不同的噪声水平及空间相关噪声。但去噪后的图像细节过平滑,边缘信息丢失。2019 年由ShiGuo 等提出的卷积盲去噪网络(Convolutional Blind Denoising Networks,CBDNet)[18]结合了网络结构、噪声建模和非对称学习等特点,模拟真实场景,在对相机内部噪声的去噪上,取得了很好的效果。

DnCNN采用常规的3×3卷积核进行卷积操作,而目前针对DnCNN 卷积操作进行的改进算法层出不穷,比如文献[2]中通过引入空洞卷积扩大感受野,减少网络复杂度,降低推理时间,但同时精度有所下降。而本文针对DnCNN 在特征提取方面存在提取特征不足、不丰富以及如何进一步提升图像去噪效果的问题,引入非对称卷积神经网络(Asymmetric Convolutional Network,ACNet)[19],以使卷积层在不增加任何推理时间的基础上捕获到更多的图像噪声特征,输出更清晰的去噪图像。

2 DnACNN图像去噪模型

为了进一步提高去噪性能,保留更多纹理细节,本文结合ACNet增强方形卷积核骨架部分从而提高精度优点,在通过学习残差图实现去噪的DnCNN算法基础上进行改进。

2.1 ACNet模块

XiaoHu Ding 等团队提出了非对称卷积神经网络ACNet,该算法实验表明常规的方形卷积核的骨架部分比边角部分更加重要,训练时丢弃卷积核骨架部分的权重会降低模型的精度,丢弃卷积核边角部分的权重却会增加模型的精度,当增强卷积核骨架部分时,可以捕获更多的图像特征,提升模型精度。为了增强3×3卷积核的骨架部分,如图1所示,将三个并行的3×3,1×3 和3×1 的卷积核利用卷积的可加性替换:

图1 ACBlock结构

其中I是一个矩阵,K(1)和K(2)是具有兼容尺寸的两个2D核,是在对应位置的求和操作,组成非对称卷积块(Asymmetric Convolutional Block,ACBlock)代替原始的3×3核来增强卷积核的骨架部分。

2.2 DnACNN网络结构

DnACNN 网络模型如图2 所示,该模型利用ACNet 网络增强方形卷积核骨架部分的方法对DnCNN 网络进行改进并在测试阶段进行权值融合,能在不增加任何参数及推理时间的前提下提升噪声特征提取精度,从而提升性能,其关键在于训练阶段ACBlock 的替换和测试阶段的分支融合以及BN融合。

图2 DnACNN网络结构

其中增强方形卷积核骨架部分的具体操作为将训练集Train400 作为输入,输入到DnACNN 中进行特征提取。首先进入第1 层,采用的是步长为1的64 个c×3×3 的卷积核进行特征提取,c=1 表示灰度图,c=3 表示彩色图。本文使用的训练集和测试集的图片都是灰度图。并采用Relu 激活函数。第2 层~16 层的结构相同:利用ACBlock 替换原始的Conv+BN操作,其中原始的64个c×3×3的卷积核进行步长为1 的卷积操作后加BN 层的操作替换成图3 中所示的,数量分别为64,步长分别为1 的3×3conv+BN,3×1conv+BN,1×3conv+BN,然后利用卷积的可加性,将三个卷积操作后输出的特征图相加后再通过Relu 激活函数进行激活。第17 层采用1个c×3×3 的卷积核进行卷积操作后输出得到残差图像。

图3 训练数据集

DnACNN 网络模型的另一重点在于为了不增加参数和推理时间,在测试阶段对训练得到的网络模型进行权值聚合。BN 融合通过卷积的同质性,可以使后续的BN和线性变换可以等价的融合到具有附加偏置的卷积层中,通过对每个分支构造一个新的内核γjF(j)/σj,然后加上偏置-μjγj/σj+βj,可以产生同原分支相同的输出。分支融合通过在平方核的相对位置加入非对称核,将三个BN 融合分支合并成标准卷积层。融合后的结果如下:

其中:表示融合后的卷积核的输出,bj代表偏置,和分别代表1×3 和3×1 卷积核的输出。对于任意的滤波器j可以验证得到:

表1 本文去噪模型在BSD68数据集上测试的PSRN(dB)平均表现

其中,O:,:,j,,分别代表原始3×3,1×3 和3×1 三个分支的输出。

2.3 模型训练及参数设置

本文DnACNN 模型的算法总体流程如图4 所示,分为三个阶段:数据预处理(数据量加强,添加加性高斯白噪声)、对处理后的训练集数据进行训练和对测试集的数据进行测试。

图4 模型训练测试流程图

数据预处理阶段是对如图3 所示的原始数据集Train400 进行缩放、裁剪、添加加性高斯白噪声等操作,最终得到扩充后的训练数据集。

本文采用的优化算法为Adam 算法,和传统的随机梯度下降不同,随机梯度下降保持单一的学习率(即α)更新所有的权重,学习率在训练过程中并不会改变。而Adam 通过计算梯度的一阶矩估计和二阶矩估计而为不同的参数设计独立的自适应性学习率,Adam算法的参数包括α(学习率)、β1(一阶矩估计的指数衰减率)、β2(二阶矩估计得指数衰减率)、ε(防止分母为0 的情况),其中β1,β2,ε均采用Adam 算法提出者推荐的缺省值,即β1=0.9,β2=0.999,ε=10-8。而由于学习率的大小对于网络训练有如下规律:学习率大收敛更快,学习率小能训练到更好的性能,因此本文采用学习率衰退规则,每30轮时采用更小的学习率,公式如下:

初始学习率lr=0.001,衰减周期为30epoch,学习率衰减的乘积因子gamma=0.1;训练180epoch后终止训练,既使训练收敛速度加快又能获得更好的收敛性能。batch size 设置为128,批规范化批大小设置为64。

测试阶段采用BSD68数据集和Set12数据集对训练后的模型性能进行测试。

3 实验分析与结果

3.1 实验环境

硬件环境:CPU 型号为Intel(R)XeonCPU E2-2618L v3,显卡型号为GeForceGTX1080Ti。

软件环境:在Ubuntu 操作系统上,采用Py-Torch深度学习框架。

3.2 实验分析与对比

3.2.1 评价指标

对去噪后图像进行评价的客观指标主要为峰值信噪比(Peak Signal to Noise Ratio,PSNR)和结构相似性(Structural Similarity Index Measurement,SSIM),同时参考人眼感官对图像去噪效果的质量判断作为主观评价指标。其中PSNR 的值为0~100,SSIM 的值为0~1,PSNR 和SSIM 的值越大,则去噪前后的两张图像越相似,即去噪效果越好,本文采用的客观评价指标为PSNR。

3.2.2 客观评价

将提出的改进算法同其他算法进行比较,数据均来源于文献[16],对比算法包括BM3D、WNNM、EPLL、CSF、MLP、TNRD、DnCNN等去噪算法。

本文算法与各种算法在BSD68 测试集上不同噪声下的去噪结果PSNR 均值对比如表1,本文算法在不同噪声水平相比DnCNN 都有提升,虽然平均提升精度只有0.05dB~0.1dB,但是基于近几年图像去噪领域PSNR 提高的累计也只有1dB 左右,所以我们的结果在不损失任何去噪效率的情况下已经非常客观。

3.2.3 主观评价

选取Set12中的蝴蝶图的去噪效果对比图展示在图7 中,蝴蝶图的特点在于其纹理、边缘特征较为丰富,且包含较多的浅色边缘纹理特征,如图5中的清晰图片所示的蝴蝶翅膀上的浅色纹理特征及花瓣的浅色边缘特征。由图5 可以看出本文算法模型去噪后的图像在视觉上的效果比其他几种都好,且本文处理后的图5(h)在细节纹理放面可以明显看到跟其他图像对比保留得更多更清晰,因此本文算法模型在保留图像细节纹理方面有明显优势,去噪效果更好,验证了本文算法在增强卷积核骨架部分后能够捕获更多特征、增强特征丰富性的特性。

图5 σ=50时Set12蝴蝶图各算法去噪效果对比图(PSNR/dB)

3.2.4 实验推理时间

除了图像去噪的质量外,图像去噪的推理时间也尤为重要,如人脸识别门禁系统对算法运算的时间要求极高,因此本文将DnCNN 算法模型同本文提出的算法模型在搭载GeForceGTX1080Ti 的同一硬件条件下对噪声水平σ=15 的Set12 测试集进行推理时测试,测试结果如表2,由表中数据可知,在进行权值融合后本文提出的算法在推理时间方面并没有增加,因此本文提出的算法模型不仅提升了精度且没有增加任何额外的参数和推理时间。

表2 本文去噪模型在Set12数据集上测试的推理时间(Time/s)

4 结语

本文基于DnCNN 网络架构,结合非对称卷积块,将ACNet中增强卷积核骨架部分能捕获更多图像特征的特点用于DnCNN 的图像噪声特征提取中,旨在提取更多图像噪声特征,使去噪后的图像更清晰,减少边缘细节的损失;且运用权值融合的技术在模型测试阶段对模型进行BN融合和分支融合,以减少模型参数及保证不增加任何额外的推理时间。通过客观评价、主观评价等的实验结果分析,本文模型不管在指标还是视觉上都有一定的提升,能获得更清晰的去噪图像,保留更多的边缘细节信息,且推理时间没有任何增加,具有一定的实用价值,且本文证实了非对称卷积核在图像去噪领域的可行性,学者可通过非对称卷积核以及权值融合对图像去噪领域内的算法尝试更多的改进。但是,实验数据集只对附加了加性高斯白噪声的训练集进行训练,含噪图像噪声种类较为单一。因此,在后续工作中将对附加多种噪声的训练集进行实验研究。

猜你喜欢

非对称骨架卷积
浅谈管状骨架喷涂方法
基于3D-Winograd的快速卷积算法设计及FPGA实现
骨架密度对炭/炭多孔骨架压力浸渗铜的影响
从滤波器理解卷积
非对称Orlicz差体
基于傅里叶域卷积表示的目标跟踪算法
点数不超过20的旗传递非对称2-设计
非对称负载下矩阵变换器改进型PI重复控制
内支撑骨架封抽技术在突出煤层瓦斯抽采中的应用
一种基于卷积神经网络的性别识别方法