一种基于动态区域卷积的图像去模糊方法技术

技术编号:29406188 阅读:19 留言:0更新日期:2021-07-23 22:45
本发明专利技术公开了一种基于动态区域卷积的图像去模糊方法,首先构造动态卷积层,在输入的不同区域中使用不同的卷积核进行卷积;然后使用动态卷积层构造生成器,将模糊图转变为清晰图像;构造判别器,与生成器构成生成对抗网络,并使用真实的清晰图像与生成器生成的清晰图像的损失网络进行训练;训练结束后,仅保留生成器;将模糊图像输入训练后的生成器即可获得清晰图像。本发明专利技术利用动态卷积,考虑到了输入数据的区域之间的差异性,针对不同区域使用不同卷积核进行卷积,从而提升特征提取能力。由动态卷积构造的生成对抗网络在单张图像去模糊任务中性能有所提升。

【技术实现步骤摘要】
一种基于动态区域卷积的图像去模糊方法
本专利技术属于图像去模糊计算领域,具体涉及一种基于动态区域卷积的图像去模糊方法。技术背景随着计算机视觉的快速发展,其最重要的输入形式——图像——的质量影响着众多视觉任务的结果。其中,模糊带给图像的变形走样会导致诸如图像分割、目标检测之类的视觉算法性能的显著下降。图像的模糊产生于相机拍摄时,传感器中的单个像素点在曝光时间内,接收到的场景中多个地方的光线叠加而成。获取清晰图像的一种方法是使用高速相机,通过减小曝光时间来减少模糊,但是这种相机价格昂贵,拍摄的图像噪声很大,从而导致信噪比下降。图像产生模糊的过程可以看作使用模糊卷积核作用于清晰图像,然后叠加噪声而成。由于整个过程只有最终的模糊图像已知,其余全部未知,因此图像去模糊问题属于病态问题。传统去模糊方法通过引入各种先验信息,将问题转化为可解问题。然而,现实生活中模糊的来源很广泛,例如相机抖动、场景运动等,使得先验的引入同时变成一种约束。此外,场景中深度不同的区域在图像中的模糊程度也不同,进而加大了图像去模糊的难度。近年来,深度学习在各个计算机视觉任务的应用获得了巨大的成功。由于卷积操作有利于保留图像中的空间关系并降低计算复杂度,因此视觉任务的神经网络大多使用了卷积层。此外,深度学习中的生成对抗网络可以很好地处理图像中的纹理细节,在图像去模糊任务上取得了不错的效果。然而,在普通的卷积层中,使用一个卷积核对整个输入进行卷积,这种全局卷积操作忽略了图像不同区域之间的区别性,使得去模糊的效果不尽人意。专利技术内容本专利技术旨在提供一种有用的解决方案。为此,本专利技术的目的在于解决单张图像去模糊问题,其输入为单张模糊图像,输出为其对应的清晰图像,专利技术中的方法使用动态卷积构造生成对抗网络,经过训练后可以完成图像去模糊任务。一种基于动态区域卷积的图像去模糊方法,包括以下步骤:步骤(1)构造动态卷积层,在输入的不同区域中使用不同的卷积核进行卷积;步骤(2)使用动态卷积层构造生成器,将模糊图转变为清晰图像;步骤(3)构造判别器,与生成器构成生成对抗网络,并使用真实的清晰图像与生成器生成的清晰图像的损失网络进行训练;步骤(4)训练结束后,仅保留生成器。将模糊图像输入训练后的生成器即可获得清晰图像。本专利技术有益效果如下:本专利技术实现了一种基于动态区域卷积的图像去模糊方法,对图像去模糊有较大意义。本专利技术利用动态卷积,考虑到了输入数据的区域之间的差异性,针对不同区域使用不同卷积核进行卷积,从而提升特征提取能力。由动态卷积构造的生成对抗网络在单张图像去模糊任务中性能有所提升。此技术可以在普通PC机或工作站等硬件系统上实现。附图说明图1为本专利技术实施例动态卷积层的结构示意图;图2为本专利技术实施例生成器的结构示意图;图3为本专利技术实施例判别器的结构示意图;图4为本专利技术实施例生成对抗网络的结构示意图。具体实施方式为使本专利技术的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本专利技术作进一步详细的说明。本专利技术提出的基于动态区域卷积的图像去模糊方法,包括以下步骤:步骤(1)构造动态卷积层,在输入的不同区域中使用不同的卷积核进行卷积,如图1所示;1-1、首先初始化n个大小为O*C*K*K大小的公共卷积核,其中O、C、K分别表示输出数据的通道数、输入数据的通道数、卷积核边长。1-2、假设输入数据Input大小为C*H*W,其中H、W分别表示高和宽。首先对输入进行一次普通的卷积操作,其中卷积核大小为m*C*3*3,步长为1,边界填充零元素的宽度为2,从而使得输出的大小为m*H*W,表示为F,其中m表示要将Input划分成的区域个数。对于F中的每个位置(u,v),u∈[0,H-1],v∈[0,W-1]都有m个通道,取其中最大值所在通道编号作为该元素所属的区域,即:其中argmax()输出最大值的下标,表示在位置(u,v)处m个通道的取值。F中Mu,v相等的位置归属于同一区域,因此F会被划分为m个区域。1-3、对于F中的每一个区域i∈[0,m-1],保留属于该区域的数值,并将区域外的所有数值置为零,得到大小为1*H*W的特征图Xi。将特征图Xi作为输入,通过如下操作获得该区域的权重参数Ri:Ri=Sigmoid(FullConnected(GAP(Xi))(2)其中,GAP()表示全局平均池化操作,FullConnected()表示使用全连接层,Sigmoid()表示使用Sigmoid激活函数,而最终的输出为n*1大小的向量。使用权重参数Ri与公共卷积核的线性组合能够得到该区域的卷积核Wi:其中,W0,...,Wn-1表示n个公共卷积核。使用Wi对Xi卷积,即可得到对应的输出Yi,大小为O*H’*W’:其中K、P、S分别为公共卷积核的边长、填充宽度和步长。并且,根据卷积的性质能够验证,使用公共卷积核的线性组合对输入数据卷积得到的结果,与公共卷积核分别对输入数据卷积后再线性组合的结果相同,即:1-4、由于步骤1-2中的操作不改变每个元素的位置,因此使用步骤1-3对所有区域操作完毕后,将所有输出求和即可得到最终输出Output,大小为O*H’*W’:1-5、由于步骤1-2中argmax()操作不可导,为了让反向传播正常工作从而使得整个网络顺利学习,所以在反向传播时需要将argmax()近似为一种可导的操作。首先,对F中每个位置(u,v)的每个通道值使用softmax函数进行近似,即:在softmax函数的作用下,将会趋于0或1,因此近似后都得到的与原始的的差距会很小。的梯度公式为:其中,表示张量的梯度,<,>表示点乘,即对应元素相乘后求和,输出结果为单个数值,(·).2表示对张量的每个元素求平方,输出结果大小不变。进而可以得到Fu,v梯度:其中,表示阿达玛乘积,即两个形状相同的矩阵对应位置的元素乘积,输出结果形状不变,list(·)表示广播操作,即将其中的元素通过复制的形式扩展大小,从而能够保证公式(10)中的减法正常工作。步骤(2)使用动态卷积层构造生成器,将模糊图像转变为清晰图像;2-1、生成器的结构如图2所示,整个网络由2个卷积模块、5个残差模块、1个反卷积模块以及1个动态卷积层和tanh激活函数构成。卷积模块中,首先是1个动态卷积层,然后是1个实例归一化层,最后是ReLU激活函数。每个残差模块中,首先为1个动态卷积层、1个实例归一化层、1个ReLU激活函数,然后使用了块大小为7、丢弃概率为0.1的DropBlock正则化,接着为1个动态卷积层、1个实例归一化层,最后是残差连接。反卷积模块则由1个反卷积层、1个实例归一化层和1个ReLU激活函数构成。生成器中所有的动态卷积层中m=n=3,而其中动态卷积层与反卷积层的参数按顺本文档来自技高网...

【技术保护点】
1.一种基于动态区域卷积的图像去模糊方法,其特征在于,包括以下步骤:/n步骤(1)构造动态卷积层,在输入的不同区域中使用不同的卷积核进行卷积;/n步骤(2)使用动态卷积层构造生成器,将模糊图转变为清晰图像;/n步骤(3)构造判别器,与生成器构成生成对抗网络,并使用真实的清晰图像与生成器生成的清晰图像的损失网络进行训练;/n步骤(4)训练结束后,仅保留生成器;将模糊图像输入训练后的生成器即可获得清晰图像。/n

【技术特征摘要】
1.一种基于动态区域卷积的图像去模糊方法,其特征在于,包括以下步骤:
步骤(1)构造动态卷积层,在输入的不同区域中使用不同的卷积核进行卷积;
步骤(2)使用动态卷积层构造生成器,将模糊图转变为清晰图像;
步骤(3)构造判别器,与生成器构成生成对抗网络,并使用真实的清晰图像与生成器生成的清晰图像的损失网络进行训练;
步骤(4)训练结束后,仅保留生成器;将模糊图像输入训练后的生成器即可获得清晰图像。


2.根据权利要求1所述的一种基于动态区域卷积的图像去模糊方法,其特征在于,步骤(1)具体方法如下:
1-1、首先初始化n个大小为O*c*K*K大小的公共卷积核,其中O、C、K分别表示输出数据的通道数、输入数据的通道数、卷积核边长;
1-2、假设输入数据Input大小为C*H*W,其中H、W分别表示高和宽;首先对输入进行一次普通的卷积操作,其中卷积核大小为m*C*3*3,步长为1,边界填充零元素的宽度为2,从而使得输出的大小为m*H*W,表示为F,其中m表示要将Input划分成的区域个数;对于F中的每个位置(u,v),u∈[0,H-1],v∈[0,W-1]都有m个通道,取其中最大值所在通道编号作为该元素所属的区域,即:



其中argmax()输出最大值的下标,表示在位置(u,v)处m个通道的取值;F中Mu,v相等的位置归属于同一区域,因此F会被划分为m个区域;
1-3、对于F中的每一个区域i∈[0,m-1],保留属于该区域的数值,并将区域外的所有数值置为零,得到大小为1*H*W的特征图Xi;将特征图Xi作为输入,通过如下操作获得该区域的权重参数Ri:
Ri=Sigmoid(FullConnected(GAP(Xi))(2)
其中,GAP()表示全局平均池化操作,FullConnected()表示使用全连接层,Sigmoid()表示使用Sigmoid激活函数,而最终的输出为n*1大小的向量;使用权重参数Ri与公共卷积核的线性组合能够得到该区域的卷积核Wi:



其中,W0,...,Wn-1表示n个公共卷积核;使用Wi对Xi卷积,即可得到对应的输出Yi,大小为O*H’*W’:






其中K、P、S分别为公共卷积核的边长、填充宽度和步长;并且,根据卷积的性质能够验证,使用公共卷积核的线性组合对输入数据卷积得到的结果,与公共卷积核分别对输入数据卷积后再线性组合的结果相同,即:



1-4、由于步骤1-2中的操作不改变每个元素的位置,因此使用步骤1-3对所有区域操作完毕后,将所有输出求和即可得到最终输出Output,大小为O*H’*W’:



1-5、由于步骤1-2中argmax()操作不可导,为了让反向传播正常工作从而使得整个网络顺利学习,所以在反向传播时需要将argmax()近似为一种可导的操作;首先,对F中每个位置(u,v)的每个通道值使用softmax函数进行近似,即:



在softmax函数的作用下,将会趋于0或1,因此近似后都得到的与原始的的差距会很小;的梯度公式为:



其中,表示张量的梯度,<,>表示点乘,即对应元素相乘后求和,输出结果为单个数...

【专利技术属性】
技术研发人员:颜成钢徐浙峰朱尊杰李明珠徐枫孙垚棋张继勇李宗鹏张勇东
申请(专利权)人:杭州电子科技大学
类型:发明
国别省市:浙江;33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1