基于混合神经网络的图像复原方法

2018-05-08 07:52兰妙萍李朝锋
计算机工程与应用 2018年9期
关键词:图像复原复原卷积

兰妙萍,李朝锋,2

LAN Miaoping1,LI Chaofeng1,2

1.江南大学 物联网工程学院,江苏 无锡 214122

2.江南大学 轻工过程先进控制教育部重点实验室,江苏 无锡 214122

1.School of Internet of Things Engineering,Jiangnan University,Wuxi,Jiangsu 214122,China

2.Key Laboratory of Advanced Process Control for Light Industry,Ministry of Education,Jiangnan University,Wuxi,Jiangsu 214122,China

1 引言

图像复原技术具有广泛的应用领域,近年来已经成为国内外图像界研究的热点问题之一[1]。在获取图像的过程中有许多因素会导致图像质量的下降,如光学系统的像差、大气扰动运动、散焦和系统噪音,它们会造成图像的模糊和变形。图像复原的目的就是由退化图像,选择合适的最优化准则,得到尽可能与原始图像接近的改善图像。图像复原的方法有多种,如维纳滤波法(Wiener)[2]、约束最小二乘法(CLS)[3]、迭代盲反卷积(IBD)[4]等,其中经典的滤波方法常假定点扩散函数已知,并综合运用关于点扩散函数、原始图像和噪声的统计特性等信息达到降噪复原的目的,但通常点扩散函数是未知的,所以盲复原技术应用需求更广泛和迫切。常用的迭代盲去卷积法,利用真实图像与点扩散函数的约束关系构建相应的优化目标函数,并采用渐进的方式求解清晰图像,避开了直接估计点扩散函数的难点,但具有计算量大,噪声敏感的缺点。为此,Fahmy等[5]将多种的先验知识和约束条件应用到迭代盲去卷积法中,更好地引导解的搜索方向,但迭代的收敛性与初始条件有关,解的唯一性不确定,鲁棒性差。Zhang等[6]进一步利用自适应稀疏先验来估计点扩散函数和噪声模型,以便更好地引导优化问题求解的方向,但算法对细节丰富的图像过度平滑,复原结果失真。此外,Cao等[7]另辟蹊径,利用单张图像的深度图来估计点扩散函数,以快速有效地实现盲去卷积,但算法中光线的衰减和扩散具有相同的降质规律假设,无法满足场景深度不连续的边缘区域,导致边缘细节丢失及噪声残余。综上分析,如何准确估计点扩散函数,减少计算量,是目前算法亟待解决的问题。

本文提出了一种基于混合神经网络的图像复原方法。首先将真实图像进行模糊,作为输入,真实图像作为输出,组成训练对,作为训练样本输入到卷积神经网络中训练。然后利用训练好的卷积神经网络模型提取特征映射作为BP神经网络的输入。通过训练BP神经网络建立退化图像与真实图像之间的非线性映射关系,实现图像复原。本方法不需要估计点扩散函数,同时卷积神经网络采用的局部连接和共享权值的方式,一方面减少了权值的数量使得网络易于优化,另一方面降低了过拟合的风险,具有较强的鲁棒性[8]。实验表明,本文方法对模糊图像的复原性能很好,收敛速度快。

2 卷积神经网络

卷积神经网络包含两种特殊的网络结构:卷积层和亚采样层,结构如图1所示。卷积层中含有多个特征映射图,完成特征提取的任务,其中每个特征映射图都代表上一层某方面的特征。子采样层的神经元对卷积层上相应的感受野进行采样(如取最值、均值等),所以子采样层上的神经元往往会大幅度减少。卷积神经网络通过权值共享大幅度减少需要训练的权值数目,从而大大降低对训练样本的需求。Bouvrie[9]对卷积神经网络进行了比较细致的理论介绍与推导。在图像的应用中,卷积神经网络采用随机梯度下降[10](Stochastic Gradient Descent,SGD)和 GPU(Graphics Processing Unit)加快训练过程从而使得训练大量的图像数据更为方便。

图1 卷积神经网络结构示意图

卷积神经网络通过卷积层和亚采样层的相互配合来学习原始图像的特征,并且通过经典的BP算法来调整参数,完成权值的更新,最终完成学习任务。BP网络更新权值公式为[11]:

其中,x(t)为神经元的输出,δ(t)表示该神经元的误差项,η表示学习率。

卷积神经网络中卷积层的网络结构采用卷积的离散型[12],表示为:

其中,Mβ为输入特征的一个选择;k为卷积核;γ为网络的层数;b为每个输出特征映射添加的偏置,对于特定的输出映射,输入的特征映射可以应用不同的卷积核卷积得到[9];f为卷积层神经元所用的激活函数,可以采用Sigmoid、修正线性单元(ReLU)[13]等激活函数。

子采样层的作用是对输入的特征映射进行采样,采样后,输入特征与输出的特征数目不会改变,但是输出特征的大小与输入特征相比会大幅减少。子采样层表示为:

其中,sub(⋅)表示亚采样所用的函数,B和b都是输出特征的偏置。 f的含义与卷积层的类似,表示亚采样层神经元的激活函数,可以取与卷积层一样的激活函数,也可以选择不用激活函数。输入层感受野的特征经过卷积映射到新的特征空间,得到的特征作为子采样层的输入。子采样层对其进行池化操作以降低上一层的复杂度,还可以防止过拟合。最后,把得到的多个特征映射转化为一个特征向量以完全连接的方式输出。

图2 用于图像复原的卷积神经网络模型结构

3 图像复原的方法实现

本文提出的用于图像复原的混合神经网络模型结构见图2。在Training1阶段对模糊图像以步长为1进行n×n(本文n最终选择为8)大小的切块处理作为训练样本,图3给出部分切块展示集合图像。将训练样本输入到卷积神经网络中训练,通过建立输入图像与目标输出图像的非线性映射关系得到网络模型。在Training2阶段利用Training1阶段训练好的网络模型提取特征向量输入到BP神经网络中进行训练,然后用训练好的BP神经网络对模糊图像进行复原。

图3 8×8切块展示图集合

3.1 网络结构

本文提出的混合神经网络中的卷积神经网络由5层网络结构组成,如图2 Training1阶段所示。在Training1阶段,首先将原图像进行灰度化和归一化处理,然后进行n×n(本文n最终选择为8)大小的切块作为训练样本输入到网络中。在卷积层中,使用10个5×5的卷积核对输入块进行卷积操作,得到10个大小为4×4的特征映射图。子采样层中,本文采用大小为4×4的均值池对上一层卷积后的特征映射图进行采样得到10个1×1特征映射。采样操作提取的特征虽然大小缩减,但是依然能够保证特征的表现力。在输出层,本文采用全连接方法。最后通过线性回归网络得到图像的像素值。在Training2阶段,是一个用于图像复原的BP神经网络,网络拓扑结构为10∶20∶1,隐含层采用Sigmoid函数作为激活函数,输出层采用线性函数。BP神经网络的输入为Training1阶段训练好的卷积神经网络子采样层采样操作后获得的特征映射向量。

3.2 网络训练

3.2.1 图像映射关系

图像中某一点的灰度值在退化过程中与它周围点的灰度值密切相关,距离越小,这种影响作用就越大,所以具有相同灰度值的像素点,如果其邻域不同,退化后的灰度值会有较大差异。可以认为,清晰图像的像素点与相应的模糊图像对应像素点的邻域高度相关。为了充分考虑邻域的影响,图像的映射关系采用邻域对像素的方法,即由输入图像的一个邻域内的多个像素点对应目标输出图像中的一个像素点。假定清晰图像中的一个像素对应到模糊图像的8×8邻域,输入一张256像素×256像素大小的模糊图像,将得到(256-8+1)2=62 001个8×8邻域,并将这些邻域的中心点位置对应到清晰图像所对应的像素点作为输出。这样就可以获得训练样本62 001对。这种映射方法虽然会使运算量变大,但是参与运算的数据也多了,使网络具有更强的记忆泛化能力和鲁棒性。对于边界像素点所对应的8×8邻域选取不到的像素点用0补充,进行训练,有效保留边界信息。

3.2.2 实现图像复原

首先在Training1阶段利用卷积神经网络将退化图像与原始图像进行学习训练,初步建立退化图像与原始图像的映射关系。在Training2阶段,将训练样本再次输入到Training1阶段训练好的网络模型中,提取出全连接层的上一层得到的特征映射成特征向量作为BP神经网络的输入。通过训练BP神经网络进一步建立退化图像与清晰图像的非线性映射关系。最后利用训练好的BP神经网络进行图像复原。在Training1阶段,训练好的卷积神经网络模型也可直接实现图像复原,将该模型取名为CIR。同时为了方便实验结果比较,将本文方法命名为CIRBP。

4 实验结果和分析

在实验中,训练图像选择TID2013标准数据库[14]的25张384×512像素的清晰图,并分别将这25张图片进行高斯模糊和运动模糊。本文采用邻域对像素的方法获取76 800个训练集样本训练卷积神经网络。测试时,对模糊图像取步长为1大小为8×8的块输入到训练好的网络结构中进行测试得到输出结果。本文实验在MATLAB R2010a,Windows 8操作系统的电脑上实现图像去模糊。

为了定量评价复原效果,采用结构相似性(SSIM)和峰值信噪比(PSNR)对图像进行评价。PSNR是一种基于对应像素点间的误差的图像质量评价指标,一般由下述公式计算得出:

其中MSE表示均方误差,一般情况下,PSNR的值越大代表图像失真越少,即恢复出来的图像的效果越好。

SSIM是一种衡量两幅图像相似度的新指标,相较于传统所使用的影像品质衡量指标(如PSNR),结构相似性在影像品质的衡量上更能符合人眼对影像品质的判断。计算公式如下:

其中μ表示均值,σ表示方差,σxy表示x和y协方差,其中系数a,b,c通常取1。C1,C2,C3为比较小的数值,SSIM值越大越好,最大为1。

4.1 实验结果分析

为了验证本文算法的有效性,将测试结果与Cao等[7]提出的单张图像深度信息的盲去卷积算法,Zhang等[6]提出的自适应离散先验的盲去卷积算法以及Fahmy等[5]提出的迭代盲去卷积算法对比。

首先采用Lenna高斯模糊图像进行盲复原测试,图 4(a)为高斯模糊的Lenna图像,从图4(c)中可以看出,CIRBP模型有效地去除模糊,且发丝、帽沿等细节都得到了较好保留。而Cao算法由于假设成像光线的衰减和扩散具有一致的降质规律,使得深度信息变化的边缘细节丢失。Fahmy算法的解的唯一性不确定,导致复原结果图4(f)有条纹现象。Zhang算法使用自适应的稀疏先验来估计点扩散函数和噪声的概率模型,较好地引导图像复原的方向,但仍比本文结果图4(c)的清晰度低。

图4 Lenna图像的复原结果对比

图5进一步对真实退化图像Teapot进行复原,并展示各算法的复原结果。Cao算法结果图5(e)虽在一定程度上去除了初始图像的模糊度,但茶壶花纹的辨识度低。Zhang算法的结果图5(d)存在过平滑问题,花纹细节没有恢复。Fahmy算法复原的茶壶花纹模糊度高。本文结果图5(b)复原结果清晰度不高,但是图5(c)清晰度高,并且较好地保存图像的边缘纹理结构,复原结果最成功。

图5 Teapot图像的复原结果对比

表1给出了不同方法复原结果的SSIM和SPNR比较。从表中可以看出,CIRBP模型的复原效果较好。CIRBP模型在训练好的卷积神经网络基础上再一次进行BP神经网络训练来进一步建立模糊图像与原图像的非线性映射关系,起到微调节作用,因而获得比模型CIR更好的复原效果。本身BP神经网络可用于图像复原[15],CIRBP模型也可以理解为利用训练好的卷积神经网络提取到更好的特征来训练BP神经网络,从而获得更好的图像复原结果。

表1 不同复原方法的SSIM和PSNR比较

图6为训练卷积神经网络模型获得的对高斯模糊和运动模糊失真图像学习得到的10个卷积核示意图。通过对卷积核的观察可以发现,在对同一失真的学习过程中,有少数卷积核的结构非常类似。而且卷积核的这种学习会随着不同的失真特性和训练调节的设置而不断进行自我改变,与传统的固定特征提取的方式相比较,卷积神经网络的特征提取方法能够更好地反映出所输入的图像的特征特点。

图6 高斯模糊和运动模糊图像学习后的卷积核示意图

为进一步验证算法的鲁棒性,在Levin等[16]提供的散焦图像集下(包括4幅统一尺寸为255×255的原始清晰图像与8个不同的点扩散函数,共32幅模糊图像),测试不同盲复原算法的复原效果。图7给出了各算法对8个不同的点扩散函数形成的8种模糊图像进行复原的结果比较。

图7 各算法复原结果比较

本文方法在19×19、17×17尺度的模糊核上的复原效果显然优于现有方法,但是当模糊核的大小超过23×23的情况下,复原效果明显下降。分析导致这个结果的原因是网络训练对应单尺度输入,不能全面实现多尺度图像的复原。在小尺度的模糊核上的复原效果比较好,可以用于拍照过程的去抖动模糊等。

4.2 不同网络参数对复原结果的影响

4.2.1 卷积神经网络参数设置

卷积神经网络的卷积层和子采样层的相关参数设置非常灵活,不同的结构设置会得到不同的结果。例如输入块大小、卷积核大小、特征图个数、池化面积的选择都会影响图像复原结果。相关实验结果如图8所示。

图8 不同网络结构复原结果

通过图8可以看出,在迭代次数很少的情况下,网络学习尚不充分,训练得到的模型也不理想,因此复原效果较差。随着迭代次数的增加,网络参数不断得到优化,复原结果越来越好。但是,当迭代次数足够多时,网络参数就不会有大的变化,表示卷积网络已呈收敛状态,复原效果能达到最优。因为卷积神经网络训练所用时间和迭代次数是成正比的,所以根据实验结果,选择迭代次数100为最优迭代次数。子采样层池化面积的选取对实验结果影响较大,若池化面积过小会导致子采样层的池化作用不明显,因而图像复原结果不理想。在一定范围内,特征映射图数目越多,复原的效果比较好。因为退化图像某一点的灰度值在退化过程中与它周围点的灰度值密切相关,所有输入块的选择不宜过大。根据实验结果,将本文中卷积神经网络特征映射图个数设置为10个,卷积核大小为5×5,池化面积为4×4,输入块大小为8×8。

图9给出上述不同参数设置的卷积神经网络训练过程中,随着训练次数的增加,均方误差趋于平稳,达到最优训练效果。

4.2.2 BP神经网络参数设置

本文用于图像复原的BP神经网络,网络拓扑结构为10∶20∶1。神经网络的输入为Training1阶段训练好的卷积网络模型提取的特征向量。图10给出训练数据中8个相邻切块在卷积网络模型中提取的特征向量。每个竖条纹代表一个切片获得的特征向量。从图中可以看出各个切块获得的特征比较明显,易于区分。这将有利于BP神经网络实现图像复原。利用提取的特征向量训练BP神经网络,完成退化图像的复原。

图10 8个相邻切块对应特征向量

图11给出BP神经网络在Matlab(R2010b)上的仿真图。当迭代次数为96时,训练网络已呈收敛状态。实验发现,在隐含层采用20个神经元时,训练用时为40 s,采用50个神经元时,用时却达到了2 min。它们的复原结果相差不大。在实际应用中需恰当选择神经元的个数,兼顾复原结果与运行速度,所以实验最终选择隐含层采用20个神经元。

图11 BP神经网络训练收敛曲线

5 结束语

本文研究了混合神经网络在图像复原中的应用。将卷积神经网络与BP神经网络结合,分步实现图像复原。从网络结构设置及迭代次数等方面测试了混合神经网络的图像复原效果。通过样本训练建立退化图像与真实图像之间的非线性映射关系。这种方法无需知道退化过程的先验知识,不需要估计点扩散函数,采用滑动窗口进行样本的选取,充分考虑了退化过程中邻域的影响。在小尺度的模糊核上的复原效果优于现有方法。

参考文献:

[1]Katsaggelos A K.Digital image restoration[M].Berlin:Springer Publishing,2012.

[2]周玉,彭召意.运动模糊图像的维纳滤波复原研究[J].计算机工程与应用,2009,45(19):181-183.

[3]Kang B J,Park K R.Real-time image restoration for iris recognition systems[J].IEEE Transactions on Systems Man&Cybernetics-Part B:Cybernetics,2007,37(6)1555-1566.

[4]李艳琴,张立毅,孙云山.一种改进的图像迭代盲反卷积算法[J].计算机工程,2012,38(8):204-206.

[5]Fahmy M F,Raheem G M A,Mohamed U S,et al.A new fast iterative blind deconvolution algorithm[J].Journal of Signal and Information Processing,2012,3(1).

[6]Zhang H,Wipf D,Zhang Y.Multi-observation blind deconvolution with an adaptive sparse prior[J].IEEE Transactions on Pattern Analysis and Machine Intelligence,2014,36(8):1628-1643.

[7]Cao Y,Fang S,Wang F.Single image multi-focusing based on local blur estimation[C]//International Conference on Image&Graphics,Brussels,2011:168-175.

[8]LeCun Y,Bottou L,Bengio Y,et al.Gradient-based learning applied to document recognition[J].Proceedings of the IEEE,1998,86(11):2278-2324.

[9]Bouvrie J.Notes on convolutional neural networks[EB/OL].[2016-10-30].http://web.mit.edu/jvb/www/papers/cnn tutorial.pdf.

[10]Bottou L.Large-scale machine learning with stochastic gradient descent[C]//Proceedings of COMPSTAT’2010,2010:177-186.

[11]姚明海.改进的遗传算法在优化BP网络权值中的应用[J].计算机工程与应用,2013,49(24):49-54.

[12]李海峰,李纯果.深度学习结构和算法比较分析[J].河北大学学报:自然科学版,2012,32(5):538-544.

[13]Nair V,Hinton G E.Rectified linear units improve restricted boltzmann machines[C]//Proceedingsofthe 27th International Conference on Machine Learning(ICML-10),2010:807-814.

[14]Ponomarenko N,Jin L,Ieremeiev O,et al.Image database TID2013:Peculiarities,results and perspectives[J].Signal Processing:Image Communication,2015,30:57-77.

[15]Farooq U,Shen T Z,Zhao S Y,et al.Image restoration by using new AGA optimized BPNN[J].Procedia Engineering,2012,29(4):3028-3032.

[16]Levin A,Weiss Y,Durand F,et al.Understanding and evaluating blind deconvolution algorithms[C]//IEEE Conference on Computer Vision and Pattern Recognition,2009:1964-1971.

猜你喜欢
图像复原复原卷积
双背景光自适应融合与透射图精准估计水下图像复原
温陈华:唐宋甲胄复原第一人
基于3D-Winograd的快速卷积算法设计及FPGA实现
浅谈曜变建盏的复原工艺
毓庆宫惇本殿明间原状陈列的复原
卷积神经网络的分析与设计
基于MTF的实践九号卫星图像复原方法研究
从滤波器理解卷积
基于傅里叶域卷积表示的目标跟踪算法
虚拟现实的图像复原真实性优化仿真研究