首页 / 专利库 / 电子零件及设备 / 真值表 / 一种基于生成对抗网络的细化单幅图像去雨方法

一种基于生成对抗网络的细化单幅图像去雨方法

阅读:482发布:2020-05-12

专利汇可以提供一种基于生成对抗网络的细化单幅图像去雨方法专利检索,专利查询,专利分析的服务。并且本 发明 涉及一种基于生成对抗网络的细化单幅图像去雨方法,将有雨图像输入到雨纹估计网络,得到估计的雨纹图,与输入图像连接形成多通道的图像,输入到生成模型,生成模型生成的无雨图像输入到判别器进行判断,根据判断的结果来优化生成器,最终得到去雨能 力 较强的生成器网络,生成模型的输出作为图像细化网络的输入,对图像进行进一步的处理,得到最终的无雨图像。本发明 算法 是一种端到端的算法,不需要进行任何额外的预处理和后处理。相较于其他使用生成对抗网络进行单幅图像区域的工作,本发明提出了两个辅助网络,能够在不显著增加计算量的同时进一步提升图像去雨效果。,下面是一种基于生成对抗网络的细化单幅图像去雨方法专利的具体信息内容。

1.一种基于生成对抗网络的细化单幅图像去雨方法,其特征在于:将有雨图像输入到雨纹估计网络,得到估计的雨纹图,与输入图像连接形成多通道的图像,输入到生成模型,生成模型生成的无雨图像输入到判别器进行判断,根据判断的结果来优化生成器,最终得到去雨能较强的生成器网络,生成模型的输出作为图像细化网络的输入,对图像进行进一步的处理,得到最终的无雨图像。
2.根据权利要求1所述的基于生成对抗网络的细化单幅图像去雨方法,其特征在于:所述的雨纹估计网络以DenseNet密集残差为基本组成元件,包含三路卷积核大小不同的深度密集网络,三路网络输出的特征图进行拼接,再通过两层卷积层,得到最终的输出,雨纹估计网络的参数使用L1损失函数和感知损失函数进行训练和优化,雨纹估计网络的真值使用有雨图像减去无雨图像得到。
3.根据权利要求2所述的基于生成对抗网络的细化单幅图像去雨方法,其特征在于:所述的雨纹估计网络的参数通过perceptual loss和MSE loss来优化,设计如下:
其中,LR为雨纹估计网络的总loss函数,L1R是输入和输出之间的L1距离损失函数,定义如下:
其中,T代表真实的雨纹图,该图由带雨图像与干净图像相减得到,C、W、H分别为图像的通道数、宽度、高度,E为雨纹估计网络,
是使用预训练好的VGG网络计算的损失函数,将VGG-16网络中第一层卷积之后的结果,即relu1_2的结果提取出来做特征图之间的L1损失,定义如下:
其中,V代表VGG-16网络模型,r为估计的雨纹图,gt为雨纹估计图的真值,Rain为输入的带雨图像,Clear为真实的无雨图像。
4.根据权利要求1所述的基于生成对抗网络的细化单幅图像去雨方法,其特征在于:所述的生成模型包含编码器、转换器、解码器三个部分,每一部分都包含多个卷积层/转置卷积层、激活层、归一化层。
5.根据权利要求4所述的基于生成对抗网络的细化单幅图像去雨方法,其特征在于:编码器使用三层卷积神经网络对输入图像进行卷积以及下采样,在每一个卷积核的后面都有一个InstanceNormalization层和ReLU激活函数层。
6.根据权利要求4所述的基于生成对抗网络的细化单幅图像去雨方法,其特征在于:所述的转换器使用6个残差块来实现,在每一个残差块中应用了SE模块,转换器中使用了Instance Normalization来对特征进行归一化处理。
7.根据权利要求4所述的基于生成对抗网络的细化单幅图像去雨方法,其特征在于:所述的生成模型的参数通过GAN loss、可训练perceptual loss和MSE loss来优化,GAN loss是判别模型对生成的图片的判断;
其中,D代表判别模型,G代表生成模型,R代表输入的带雨图像,C代表干净的真实图像,G(R)即代表生成的干净图像, 为生成模型的对抗损失函数, 为判别模型的对抗损失函数;
Perceptual loss为输出图像和真实图像的特征之间的误差,
λi是手动设置的超参数,在本发明中,他们的值分别是5,1.5,1.5,5,N为提取的中间层的数量,在本发明中设置为N=4,m为判别器感知损失函数正边界,即训练前期阶段,生成模型和判别模型均比较弱,因此m的存在可以使这个阶段的 不提供梯度,不参与训练,加速网络的收敛,Pi(G(R),C)代表生成的无雨图片和干净的无雨图片特征之间的距离,在本发明中,使用L1距离来衡量,即Pi(G(R),C)=||Hi(C)-Hi(G(R))||,Hi即从判别网络第1层、第4层、第6层、第8层提取出的特征图, 为生成模型的感知损失函数, 为判别模型的感知损失函数;
MSEloss为输出图像和真实图像的逐像素误差,
其中,C、W、H分别为图像的通道数、宽度、高度,G为生成对抗网络中的生成模型,代表生成无雨图像和干净图像的二范数。
8.根据权利要求1所述的基于生成对抗网络的细化单幅图像去雨方法,其特征在于:所述的图像细化网络模型使用改进的ResBlock作为主体结构,该网络由skip、body、head三部分,skip层经过一个卷积层后使用pixelshuffle层进行上采样,head层包含一个卷积层,body层在head后面,是由一系列的ResNet残差块组成的,残差块后是和skip层相同的卷积层和pixelshuffle层,每个ResNet残差块首先进行一个输出通道数是32的卷积,降低特征图大小,然后使用输出为192特征通道的卷积层进一步提取特征,再将特征通道数降维
32,Skip和body层的输出相加,使用Tanh函数激活。
9.根据权利要求8所述的基于生成对抗网络的细化单幅图像去雨方法,其特征在于:所述的图像细化网络模型使用输入粗糙图像和真实无雨图像之间的MSEloss来进行优化,设计如下:
其中,C、W、H分别为图像的通道数、宽度、高度,Lrefine为细化网络的总loss函数,Refine为细化网络输出的结果图,Clear为真实的无雨图像。

说明书全文

一种基于生成对抗网络的细化单幅图像去雨方法

技术领域

[0001] 本发明属于多媒体图像处理领域,涉及到计算机视觉深度学习技术,尤其是一种基于生成对抗网络的单幅图像去雨方法。技术背景
[0002] 雨是一种最常见的恶劣天气,雨天中得到的图像往往有比较糟糕的视觉效果。与此同时,很多计算机视觉的算法通常默认输入为干净的图像,因此带雨的图像对这些算法往往产生不好的影响,降低他们的性能。单幅图像去雨方法就是利用已有的先验信息,对输入图像进行一定的处理,得到一个干净的无雨的图像。
[0003] 去雨算法主要分为视频去雨和图像去雨。视频、图像去雨算法已经发展的较为成熟,这些模型可以利用视频中存在的时间信息,准确的定位雨点,从而准确地去除雨点,但是对于单副图像去雨来说,我们得到的输入只是单幅图像,因而没有办法利用时间信息,这为准确的定位雨点消除雨点带来了很大的挑战。目前图像去雨算法主要分为三种,基于图像处理知识的去雨算法,基于稀疏编码字典学习和分类器的去雨算法以及基于深度学习的图像去雨算法。前两种算法计算比较简单,成本比较低。但是他们虽然在某些数据集上取得了不错的效果,但是由于不同的图像中雨点的密集程度、方向都会发生较大的变化,因此不能实际应用于具体的场景中。

发明内容

[0004] 本发明的目的在于克服现有技术的不足之处,提出了一个基于生成对抗网络的单幅图像去雨方法。基于对抗训练的思想,针对带雨图像进行网络模型训练,得到无雨的干净图像。
[0005] 本发明生成器使用编码-转换-解码的网络结构,对带雨图像进行处理和重建。与此同时,为了得到更好的结果,本发明设计了两个辅助网络,即雨纹估计网络和图像细化网络。雨纹估计网络可以根据输入的有雨图像估计图像中雨的分布情况,为生成模型的训练提供参考信息,能够有效地提升效果。图像细化网络能够对生成模型的生成结果进行进一步的细化和重建,消除生成模型输出图像中的模糊和雨痕残留问题。总体训练过程如下:有雨图像输入到雨纹估计网络,得到估计的雨纹图,与输入图像连接形成6通道的图像,输入到生成模型,生成模型生成的无雨图像输入到判别器进行判断,根据判断的结果来优化生成器,最终得到去雨能较强的生成器网络。生成模型的输出作为图像细化网络的输入,对图像进行进一步的处理,得到最终的无雨图像。本发明使用的网络是端到端进行训练,不需要任何额外的预处理和后处理。
[0006] 具体步骤如下:
[0007] (1)对输入图像进行归一化处理,使图像的值分布在-1到1之间,便于神经网络进行处理。
[0008] (2)构建单幅图像去雨的雨纹估计网络模型,模型包含三路卷积核大小不同的深度密集网络,能够在不同的感受野上估计输入图像的雨纹分布。
[0009] (3)构建单幅图像去雨的生成模型,模型包含编码器、转换器、解码器三个部分。每一部分都包含多个卷积层/转置卷积层、激活层、归一化层等等。
[0010] (4)构建单幅图像去雨的判别模型。该模型包含多个卷积以及下采样
[0011] (5)构建单幅图像去雨的图像细化网络模型,该模型使用改进的ResBlock作为主体结构,能够在不显著增加计算量的情况下进一步消除生成结果中的雨痕残留。
[0012] (6)根据设计的网络模型设置初始化参数,设计损失函数使其在不断的训练过程中取得最小化结果,从而获得最优的网络权重。
[0013] 生成对抗网络的loss函数设计如下:
[0014] 1)GAN loss
[0015]
[0016]
[0017] 其中,D代表判别模型,G代表生成模型,R代表输入的带雨图像,C代表干净的真实图像,G(R)即代表生成的干净图像, 为生成模型的对抗损失函数, 为判别模型的对抗损失函数;
[0018] 2)Perceptual loss
[0019]
[0020]
[0021] λi是手动设置的超参数,在本发明中,他们的值分别是5,1.5,1.5,5,N为提取的中间层的数量,在本发明中设置为N=4,m为判别器感知损失函数正边界,即训练前期阶段,生成模型和判别模型均比较弱,因此m的存在可以使这个阶段的 不提供梯度,不参与训练,加速网络的收敛,Pi(G(R),C)代表生成的无雨图片和干净的无雨图片特征之间的距离,在本发明中,使用L1距离来衡量,即Pi(G(R),C)=||Hi(C)-Hi(G(R))||,Hi即从判别网络第1层、第4层、第6层、第8层提取出的特征图, 为生成模型的感知损失函数,为判别模型的感知损失函数;
[0022] 3)MSE loss
[0023]
[0024] 其中,C、W、H分别为图像的通道数、宽度、高度,G为生成对抗网络中的生成模型,代表生成无雨图像和干净图像的二范数。
[0025] 雨纹估计网络的loss设计如下:
[0026]
[0027] 其中,L1R是输入和输出之间的L1距离损失函数,定义如下:
[0028]
[0029] 是使用预训练好的VGG网络计算的损失函数,将VGG-16网络中第一层卷积之后的结果,即relu1_2的结果提取出来做特征图之间的L1损失,定义如下:
[0030]
[0031]
[0032] 图像细化网络的loss函数使用输入粗糙图像和真实无雨图像之间的均方根误差(MSE)函数,定义如下:
[0033]
[0034] 其中,C、W、H分别为图像的通道数、宽度、高度,Lrefine为细化网络的总loss函数,Refine为细化网络输出的结果图,Clear为真实的无雨图像。
[0035] (7)将待处理的图像输入到雨纹估计网络中,雨纹估计网络输出估计的雨纹图,与输入作连接操作,形成一个六通道的图像,作为生成模型的输入,判别模型的输入为生成器输出的生成干净图像或者真实的干净图像,生成模型和判别模型二者交替对抗训练,性能同步提高。在训练过程中生成模型输出的无雨图像相对稳定后,图像细化网络参与训练,输入是生成模型输出的粗糙无雨图像,输出是经过细化的无雨图像。
[0036] 本发明的优点和有益效果:
[0037] 1、本发明算法是一种端到端的算法,不需要进行任何额外的预处理和后处理。
[0038] 2、相较于其他使用生成对抗网络进行单幅图像区域的工作,本发明提出了两个辅助网络,能够在不显著增加计算量的同时进一步提升图像去雨效果。
[0039] 3、本发明提出的算法能够在不需要修改网络的前提下适用于多种类型的带雨图片,具有较高的鲁棒性。最终得到的生成模型与雨纹估计网络和图像细化网络的组合即为所需要的去雨模型。
[0040] 4、使用Instance Normalization来代替其他工作中的Batch Normalization对数据进行归一化,Batch Normalization是对输入的一批数据进行归一化,因此一批数据中的不同样本之间容易相互影响,而Instance Normalization只对单个样本的特征输出进行归一化操作可以消除这种影响。
[0041] 5、将SE模块嵌入到网络结构中去,能够提升生成模型对雨线信息的关注程度,从而具有更强的建模能力,能够有效地去除雨线。
[0042] 6、使用雨纹估计网络首先对输入有雨图像中的雨线进行估计,输出雨线的估计图,相当于提供一个注意力图,能够给生成模型提供输入图像中的雨线信息,降低生成模型的建模难度,提高模型性能。
[0043] 7、生成模型的输出结果中仍然存在一定的模糊和雨痕残留问题,因此本发明设计了一个图像细化网络对生成模型的输出结果进行进一步的细化,能够消除生成模型输出的无雨图像中存在的模糊和雨痕残留的问题。附图说明
[0044] 图1为生成对抗网络的网络结构图;
[0045] 图2为生成器中带有SE模块的残差块网络结构图;
[0046] 图3为雨纹估计网络结构图;
[0047] 图4为雨纹估计网络中3×3卷积核大小的密集连接网络图;
[0048] 图5为图像细化网络结构图;
[0049] 图6为总体网络结构图;
[0050] 图7a为去雨前图像;
[0051] 图7b为采用本发明方法去雨处理后图像;
[0052] 图8a为有雨图像;
[0053] 图8b为采用JORDER方法去雨处理后图像;
[0054] 图8c为采用DDN方法去雨处理后图像;
[0055] 图8d为采用DID-MDN方法去雨处理后图像;
[0056] 图8e为采用本发明方法去雨处理后图像。

具体实施方式

[0057] 下面结合附图并通过具体实施例对本发明作进一步详述,以下实施例只是描述性的,不是限定性的,不能以此限定本发明的保护范围。
[0058] 一种基于生成对抗网络的细化单幅图像去雨方法,步骤如下:
[0059] (1)对输入图像进行归一化处理,使图像的值分布在-1到1之间,便于神经网络进行处理。
[0060] 本发明的输入是RGB通道的带雨图像,如果输入是其他通道数的图像则需要将图像转换为3通道的图像。除此之外不需要进行任何额外的处理以防止丢失原图中的信息。本发明采用的数据集是合成数据集进行训练。该合成数据集共有12000张训练图片以及1200张测试图片。训练集和测试集中均包含不同模式的带雨图片,雨的大小、方向、密集程度等均有较大程度的变化,可以增加训练出模型的泛化能力。
[0061] (2)构建雨纹估计网络模型,该网络以DenseNet密集残差块为基本组成元件。使用了三路不同大小卷积核的密集残差网络,卷积核的大小分别是3×3,5×5,7×7,不同卷积核大小可以让网络拥有不同尺度的感受野,能够在多个特征尺度上定位雨线位置,三路网络输出的特征图进行拼接,然后通过两层卷积层,得到最终的输出。在7×7卷积核这一路网络中,特征图进行降维与升维操作两次,即在第一个密集残差块和第二个密集残差块对图像特征图进行降维,在最后两个残差块对图像特征图进行升维,在5×5卷积核大小的一路网络中,特征图进行降维与升维操作一次,在3×3卷积核大小的一路网络中,特征图不进行降维与升维操作。进行降维和升维操作的目的是为了减少计算量,加快网络计算速度。在每个相同大小的特征图模块,对图像的特征图进行了跨层连接,目的是让底层网络和高层网络共享图像部分特征。雨纹估计网络的参数使用L1损失函数和感知损失函数进行训练和优化,使得雨纹估计网络的输出与有雨图像中雨的分布相同。该网络的真值(Ground Truth)使用有雨图像减去无雨图像得到。
[0062] (3)构建单幅图像去雨的生成模型,模型包含编码器、转换器、解码器三个部分。每一部分都包含多个卷积层、激活层、归一化层等等。
[0063] ①编码器使用三层卷积神经网络对输入图像进行卷积以及下采样。除了第一个卷积核为7x7大小,第二个,第三个卷积核大小均为4x4。在每一个卷积核的后面都有一个InstanceNormalization层和ReLU激活函数层。下采样通过步进卷积来实现,即设置卷积层的步长为2。经过该步骤特征图的输出大小为原始图像的1/4。经过编码器进行编码,我们可以得到带有雨点特征和原图中其他细节特征的特征图。
[0064] ②转换器使用6个残差块来实现。每一个残差模块包括两个卷积层和一个恒等映射,卷积核的大小均为4x4,同时为了建模通道的重要性,在每一个残差块中应用了SE模块。SE模块可以显式地建模通道间的依赖关系,这主要通过给每一个特征通道赋予不同的权值来实现,权值是可以学习的。转换器中同样使用了Instance Normalization来对特征进行归一化处理。通过这一步处理,我们可以得到具有原图丰富的细节信息的无雨图像的特征图。
[0065] ③解码器网络结构和编码器相对称,使用了三个卷积层,卷积层参数的设置与编码器网络类似,与编码器不同的是,解码器包含了上采样的过程使用步长是2的转置卷积来实现。解码器的输出就是去雨之后的图像。
[0066] 通过这三个步骤,我们便可以把输入的6通道图像数据输出为无雨图像。生成模型的参数主要通过GAN loss、perceptual loss和MSE loss来优化,MSE loss即输出图像和真实图像的逐像素误差,perceptual loss即输出图像和真实图像的特征之间的误差,特征的提取通过判别模型来进行,GAN loss即判别模型对生成的图片的判断,若判断为假,那么往判别模型输出为真的方向进行优化,反之则说明判别模型需要优化。
[0067] (4)构建单幅图像去雨的判别模型。该判别模型的作用是指导生成模型的训练,其网络结构可以认为是一个二分类的卷积神经网络。该模型包含多个卷积以及下采样模块。该模型一共有九层卷积,卷积核大小均为4x4,第1层,第4层,第6层,第8层的卷积步长为2来实现下采样过程。对第1层,第4层,第6层,第8层输出的特征图进行提取,用来判断该特征与真实图像的相应特征是否一致,即真实的无雨图像和生成的无雨图像在不同层次的特征应当是相同的。网络的输出为输入的图像是否是真实的图像。该模型可以帮助训练生成模型,通过GAN loss的约束,可以使生成模型的输出更加接近真实图像的数据分布。判别模型的GAN loss实际上相当于二进制交叉熵。若判别模型能够准确地判断生成器的输出,那么说明生成器需要优化,反之则说明判别器需要进一步的优化。
[0068] (5)构建图像细化网络,该网络主要由三部分组成,即skip、body、head三部分,skip层经过一个卷积层后使用pixelshuffle层进行上采样,head层包含一个卷积层,body部分跟在head后面,是由一系列的ResNet残差块组成的,残差块后是和skip层相同的卷积层和pixelshuffle层。在图像细化网络中使用的ResNet残差块与传统的残差块有所不同,每个残差块首先进行一个输出通道数是32的卷积,降低特征图大小,然后使用输出为192特征通道的卷积层进一步提取特征,再将特征通道数降维至32,这样既能够提取更多的特征,得到更好的效果,同时保证计算量在可接受的范围之内。Skip和body层的输出相加,使用Tanh函数激活,使相加的结果最终的值落在[-1,+1]区间,如果不使用激活函数,则对相加得到的值没有约束,造成的结果是最后的输出可能会超出界限最终出现色块[0069] (6)根据设计的网络模型设置初始化参数,设计损失函数使其在不断的训练过程中取得最小化结果,从而获得最优的网络权重。我们设计了不同的loss函数使得网络能够在各个评估标准上逼近真实无雨图像的数据分布。对于生成对抗网络设计了GAN loss,perceptual loss以及MSE loss。其中perceptual loss与其他的工作不同,采用了一个可训练方式来提取特征进行特征对比,在前期特征不具有代表性的情况下,我们不采用这个loss来指导训练,直到网络训练的足够优秀,再使用这个loss。对于雨纹估计网络了MSE loss和不可训练的perceptual loss。对于图像细化网络我们使用MSE loss进行训练。
[0070] 下面是本发明在合成数据集以及真实图像上的实验结果说明:
[0071] 本发明在Pytorch深度学习框架下进行训练和预测。在拥有12000张训练集和1200张测试集的数据集上进行训练和测试,同时在真实世界带雨图像上进行了测试,测试使用的平台是MATLAB2017a,测试标准为结构相似度(SSIM)和峰值信噪比(PSNR)。在合成数据集上的实验结果如下表所示
[0072]
[0073] 其他几种算法的文献均来源于近年的计算机视觉顶级会议和期刊文章,如下表所示:
[0074]
[0075] 可以看到,本文提出的方法能够在两种评价指标上均取得了优于其他方法的结果。同时我们还在真实图像中进行了测试,效果如图7b所示。
[0076] 同时我们进行了与其他主流算法的视觉对比,如图8所示,可以看到,本发明提出的方法相对于其他方法能够有效地去除真实图像中的雨线,同时相较于其他方法,能够保留更多的细节信息。
[0077] 为了说明本发明方法各个部分的有效性,本发明进行了对比实验,结果如下表所示,w/o即缺少某部分:
[0078]
[0079]
[0080] 可以看到,本发明提出的方法的各个创新点对结果都有不同程度的提升,提出的雨纹估计网络和图像细化网络能够在不显著增加计算量和参数量的情况下进一步提升效果。
[0081] 以上所述的仅是本发明的优选实施方式,应当指出,对于本领域的普通技术人员来说,在不脱离发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈