CN109493303B - 一种基于生成对抗网络的图像去雾方法 - Google Patents
一种基于生成对抗网络的图像去雾方法 Download PDFInfo
- Publication number
- CN109493303B CN109493303B CN201910018682.1A CN201910018682A CN109493303B CN 109493303 B CN109493303 B CN 109493303B CN 201910018682 A CN201910018682 A CN 201910018682A CN 109493303 B CN109493303 B CN 109493303B
- Authority
- CN
- China
- Prior art keywords
- image
- generator
- sample data
- fog
- foggy
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 58
- 238000012549 training Methods 0.000 claims abstract description 25
- 125000004122 cyclic group Chemical group 0.000 claims description 14
- 238000012545 processing Methods 0.000 claims description 6
- 238000012216 screening Methods 0.000 claims description 5
- 238000011425 standardization method Methods 0.000 claims 1
- 239000003086 colorant Substances 0.000 abstract 1
- 230000006870 function Effects 0.000 description 19
- 238000010586 diagram Methods 0.000 description 6
- 238000010606 normalization Methods 0.000 description 6
- 238000009826 distribution Methods 0.000 description 5
- 230000000694 effects Effects 0.000 description 4
- 238000011160 research Methods 0.000 description 4
- 208000037170 Delayed Emergence from Anesthesia Diseases 0.000 description 3
- 230000015556 catabolic process Effects 0.000 description 3
- 230000000875 corresponding effect Effects 0.000 description 3
- 238000005520 cutting process Methods 0.000 description 3
- 238000006731 degradation reaction Methods 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 239000013598 vector Substances 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000007547 defect Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 230000004913 activation Effects 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 239000008280 blood Substances 0.000 description 1
- 210000004369 blood Anatomy 0.000 description 1
- 238000013527 convolutional neural network Methods 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 230000009193 crawling Effects 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 125000001475 halogen functional group Chemical group 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 239000002245 particle Substances 0.000 description 1
- 238000002834 transmittance Methods 0.000 description 1
Images
Classifications
-
- G06T5/73—
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10004—Still image; Photographic image
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20081—Training; Learning
Abstract
一种基于生成对抗网络的图像去雾方法,该方法包括:1)获取样本数据;2)样本数据中的真实有雾图像作为第一生成器的输入数据,第一生成器生成一次无雾图像;样本数据中的真实无雾图像作为第二生成器的输入数据,第二生成器生成一次有雾图像;第一判别器将一次有雾图像与真实有雾图像之间的误差反馈给第二生成器,第二判别器将一次无雾图像与真实无雾图像之间的误差反馈给第一生成器,第二生成器和第一生成器减小误差,提高生成图像的真实度;生成器和判别器进行反复对抗训练,得到最优去雾网络模型;3)图像去雾。本发明采用生成对抗网络结构及损失函数,网络训练不需要同一场景的有雾‑无雾匹配图像,同时保证去雾前后图像的颜色不失真。
Description
技术领域
本发明涉及图像去雾的方法,具体涉及一种基于生成对抗网络的图像去雾方法,属于计算机图形图像处理技术领域。
背景技术
随着科技的进步,大量的户外数字图像被采集、分析用于各种各样的科学研究、生产实践,如目标检测,地形分类,户外摄影等。然而,由于户外环境下水气或空气中悬浮颗粒的存在,户外采集的图像常常伴有雾或者雾霾,这引起了图像对比度降低、部分场景缺失、颜色偏移等一系列退化现象,对我们获取图像有效信息造成很大阻碍。因此,寻找一种有效的数字图像去雾方法是至关重要并且必不可少的,较多的学者、研究员在此领域投入了大量的心血。
Fattal等提出了光线传播与阴影区域局部不相关的假设,该方法适用于带有稀薄雾的图像,对于浓厚的雾图并不能起到很好的去雾效果。Tan等的研究认为,无雾的图像在对比度上相较于有雾图像往往具有更高的数值,基于这一假设提出了最大化图片局部对比度的方法进行去雾,对于浓雾图像有着很好的效果,然而Tan的方法经常伴有光晕现象的产生。He等提出的DCP算法是近年来图像去雾领域的最佳成果,该算法基于暗通道先验对有雾图像能够起到十分出色的去雾效果,暗通道先验是指一副无雾图片中除了天空和一些明亮区域外,总有颜色通道像素值为0的像素存在。然而该算法仍然存在颜色退化、透射率估计不足等问题,后续有更多基于DCP的研究旨在解决这些问题。尽管图像去雾算法发展很快,但是由于图像去雾问题本身欠约束的特点,先验信息并不充足,各种先验假设在解决某一类问题的同时,经常伴有新的问题产生,人为地分析、寻找精准的先验模型是十分困难的。大数据时代的到来为以往难以实现的任务提供了可能性,近年来,深度学习迅速崛起,由于其自动提取特征的特点,被广泛地关注和应用,随着网络结构设计的优化,在各类图像处理领域发挥着越来越重要的作用。
发明内容
针对现有技术的不足,本发明的目的在于提供一种基于生成对抗网络的图像去雾方法。该方法鉴于难以获得同场景下无雾图像和有雾图像数据集的问题,设计了一种包括独特的网络结构和损失函数的去雾网络模型,利用生成器和判别器网络表达非线性的图像退化和复原过程,最终,通过生成器生成高度匹配目标图像的去雾图像,实现图像去雾的目的。
根据本发明的实施方案,提供一种基于生成对抗网络的图像去雾方法:
一种基于生成对抗网络的图像去雾方法,该方法包括以下步骤:
1) 获取样本数据:通过公开的数据集或网络爬虫技术获取有雾图像和无雾图像的样本数据;
2) 生成对抗网络的对抗训练:样本数据中的真实有雾图像作为第一生成器的输入数据,第一生成器生成一次无雾图像,第一生成器生成的一次无雾图像作为第二生成器的输入数据,第二生成器生成二次有雾图像;
样本数据中的真实无雾图像作为第二生成器的输入数据,第二生成器生成一次有雾图像,第二生成器生成的一次有雾图像作为第一生成器的输入数据,第一生成器生成二次无雾图像;
第一判别器判断一次有雾图像是来自第二生成器还是来自样本数据,并将一次有雾图像与样本数据中的真实有雾图像之间的第一误差反馈给第二生成器,第二生成器减小第一误差,提高生成图像的真实度;第二判别器判断一次无雾图像是来自第一生成器还是来自样本数据,并将一次无雾图像与样本数据中的真实无雾图像之间的第二误差反馈给第一生成器,第一生成器减小第二误差,提高生成图像的真实度;
第一生成器和第二生成器分别与第二判别器和第一判别器进行反复对抗训练,得到最优去雾网络模型;
3) 图像去雾:利用训练完成的最优去雾生成网络模型对有雾图像进行去雾,输入有雾图像,输出去雾后的无雾图像。
在本发明中,步骤2)中所述一次有雾图像与样本数据中的真实有雾图像之间的第一误差的计算方法具体为:
式(1)中y为标签,取值为{0,1},为判别器预测值。标签即指在计算机中用一个数值表示真假,0为假,1为真;即,不论是有雾图像还是无雾图像,只要是真实图像就打标签1,只要是生成图像,就打标签0。相应的,判别器的预测值也是0或1。
在本发明中,由于两个判别器完成的是二分类问题,所以用交叉熵表示判别器的损失,用来描述预测值和真实值之间的差别。
式(2)中r,g,b为图像去雾后三个通道的归一化值。对于每一个像素点,r的归一化方法为r=r/(r+g+b),相应的,g的归一化方法为g=g/(r+g+b),b的归一化方法为b=b/ (r+g+b)。W表示输出图像的宽度,H表示输出图像的高度,I表示式(2)的输入参数,即式(2)为以图像为输入参数的函数。
c) 定义样本数据的生成对抗网络的损失,由式(1)和(2)可得:
式(3)中X表示样本数据中的真实有雾图像,Y表示样本数据中的真实无雾图像,F表示第二生成器,DX表示第一判别器,F(Y)为第二生成器F生成的一次有雾图像,N为样本数据中真实有雾图像的个数,λ为比例系,为正则项对权重约束,为系数。表示第二生成器的色调约束的损失。
比例系数λ的设置反映了λ所在部分对整体的影响程度,用于修饰正则项(约束项),λ的取值在0.01~0.9之间,优选为0.01~0.5。
在本发明中,步骤2)中所述一次无雾图像与样本数据中的真实无雾图像之间的第二误差的计算方法具体为:
式(2)中r,g,b为图像去雾后三个通道的归一化值,W表示输出图像的宽度,H表示输出图像的高度,I表示式(2)的输入参数;
c) 定义样本数据的生成对抗网络的损失,由式(4)和(2)可得:
式(5)中X表示样本数据中的真实有雾图像,Y表示样本数据中的真实无雾图像, G表示第一生成器,DY表示第二判别器,G(X)表示第一生成器G生成的一次无雾图像,M为样本数据中真实无雾图像的个数,λ为比例系数,为正则项对权重约束,为系数。表示第一生成器的色调约束的损失。
在本发明的样本数据中,真实有雾图像和真实无雾图像的两类样本的数量基本相等,本发明的理想情况即为两类样本的数量相等,即M=N。
在本发明中,样本数据中的真实有雾图像和第二生成器生成的二次有雾图像之间的循环损失为:
式(6)中X表示样本数据中的真实有雾图像,G表示第一生成器,F表示第二生成器,C表示输出图像的通道数,W表示输出图像的宽度,H表示输出图像的高度,F(G(X))表示第二生成器F生成的二次有雾图像。
在本发明中,样本数据中的真实无雾图像和第一生成器生成的二次无雾图像之间的循环损失为:
式(7)中Y表示样本数据中的真实无雾图像,G表示第一生成器,F表示第二生成器,C C表示输出图像的通道数,W表示输出图像的宽度,H表示输出图像的高度,G(F(Y))表示第一生成器G生成的二次无雾图像。
在本发明中,联合训练两个生成对抗网络,联合网络的损失函数为:
a) 联合网络的循环损失Lcyc为:
b) 联合网络的损失函数为:
式(9)中γ为比例系数。
比例系数γ的设置反映了γ所在部分对整体的影响程度,γ的取值在0.01~0.9之间,优选为0.01~0.5。优选的是,步骤2)中第二判别器判断一次无雾图像是来自第一生成器还是来自样本数据的概率为0.5时,去雾网络模型的训练达到最优化。
优选的是,步骤1)中还包括对样本数据进行筛选,具体为:删除图像残缺、清晰度低于人眼正常识别范围、内容不合格的样本数据。
优选的是,步骤1)中还包括对样本数据进行归一化处理,具体为:通过图像裁剪或放缩将全部样本数据统一大小。
在本发明中,第一生成器G不仅利用样本数据中的真实有雾图像X作为输入数据,生成一次无雾图像G(X),还利用第二生成器F生成的一次有雾图像F(Y)作为输入数据,从而生成二次无雾图像G(F(Y));相应的,第二生成器F不仅利用样本数据中的真实无雾图像Y作为输入数据,生成一次有雾图像F(Y),还利用第一生成器G生成的一次无雾图像G(X)作为输入数据,从而生成二次有雾图像F(G(X))。其中,第一判别器DX为以真实有雾图像为真的判别器,将样本数据中的真实有雾图像X和第二生成器F生成的一次有雾图像F(Y)输入第一判别器DX,第一判别器DX判断一次有雾图像F(Y)是来自第二生成器F还是来自样本数据中的真实有雾图像X,并将一次有雾图像F(Y)和真实有雾图像X之间的第一误差反馈给第二生成器F,第二生成器F通过不断地减小生成的一次有雾图像F(Y)与真实有雾图像X之间的第一误差,以达到生成更加真实的有雾图像。第二判别器DY为以真实无雾图像为真的判别器,将样本数据中的真实无雾图像Y和第一生成器G生成的一次无雾图像G(X)输入第二判别器DY,第二判别器DY判断一次无雾图像G(X)是来自第一生成器G还是来自样本数据中的真实无雾图像Y,并将一次无雾图像G(X)和真实无雾图像Y之间的第二误差反馈给第一生成器G,第一生成器G通过不断地减小生成的一次无雾图像G(X)与真实无雾图像Y之间的第二误差,以达到生成更加真实的无雾图像。
由于第一判别器DX仅需要判断图像是否为真实有雾图像,第二判别器DY仅需要判断图像是否为真实无雾图像,即判别器只需要清楚雾在图像上体现出来的像素分布特征,例如强度分布及位置分布等,便可判断图像是否为真实有雾图像或真实无雾图像,因此本发明方法在获取样本数据时并不需要配对的同一场景的有雾图像和无雾图像。而在两个生成对抗网络的协同训练过程中,第二生成器F不断学习有雾图像的分布特征,第一生成器G不断学习无雾图像的分布特征,从而达到更好的去雾效果。
当第二判别器DY判断一次无雾图像G(X)是来自第一生成器G还是来自样本数据中的真实无雾图像Y的概率为0.5时,表示去雾网络模型已经训练到了平衡点,第一生成器G足以生成与真实有雾图像X高度匹配的无雾图像,而第二判别器DY将难以判断该无雾图像是来自第一生成器G还是来自样本数据,即得到最优化的去雾网络模型。
在本发明中,二次有雾图像F(G(X))和真实有雾图像X之间存在循环损失,二次无雾图像G(F(Y))和真实无雾图像Y之间存在循环损失,通过加入循环损失来限制一次无雾图像G(X)和一次有雾图像F(Y)的生成结构,避免其随意生成,以保证生成的一次无雾图像G(X)和一次有雾图像F(Y)是有意义的,循环损失体现了两个生成对抗网络之间的限制关系。
在本发明中,两个生成对抗网络相互制约、联合训练,整个联合网络的损失函数为,即联合网络的损失为两个子网络的损失与循环损失的和。在两个生成对抗网络反复训练的过程中,两个生成器分别生成各自的一次生成图像(即输入真实图像产生的生成图像),将对应的一次生成图像和真实图像分别输入给相应的判别器,根据损失函数的反向传播损失,训练最优的判别器,再在当前最优判别器的基础上,同样依据反向传播损失,训练最优的生成器,同时计算真实图像和二次生成图像(即输入一次生成图像产生的生成图像)之间的循环损失,用以指导两个生成对抗网络的协同训练过程。即联合网络的损失函数可以用来衡量子网络的更新对整体网络是有利还是有弊。
在本发明中,获取样本数据后,往往需要对样本数据集中的样本数据进行筛选和归一化处理。其中,筛选处理中的删除图像残缺,其标准为删除部分图像数据丢失造成的图像残缺;删除清晰度低的样本数据,其中清晰度低的标准为清晰度低于人眼正常识别范围;删除内容不合格的样本数据,例如删除内容不健康的样本数据。所述归一化处理,本发明中根据图像的需求,一般将样本数据通过裁剪或放缩统一为256*256或512*512的大小,以保证样本数据的纯洁性和一致性。
在本申请中,第一生成器、第二生成器的网络结构为:输入层尺寸为256*256*3,经过3次4*4卷积核的卷积操作,3次下采样,每次输出的特征图谱在图中由上至下列出,最终输出1*1*256的列向量;经过6个残差块的卷积操作重组特征后,输入得到后续网络进行还原。
第一判别器、第二判别器的网络结构为:对输入图像进行卷积操作,最后经过一个全连接层输出预测结果。本申请中的第一判别器、第二判别器、第一生成器和第二生成器的激活函数均选择ReLu函数。
与现有技术相比,本发明具有如下有益效果:
1、针对当前大多采用先验知识方法中设计先验物理模型复杂,去雾速度慢的问题,本方法通过直接训练循环生成对抗网络得到最优生成网络G,直接生成无雾图,避免人工设计先验模型,且去雾速度更快。
2、针对传统神经网络用于解决图像去雾中需要获取大量成对匹配的同一场景下有雾图和无雾作为训练数据集,而这一数据集获取困难的问题,本文使用的循环生成对抗网络,不需要同一场景的有雾-无雾匹配图像,只需要真实的有雾图和无雾图作为训练集,即可训练得到最优生成模型G。
3、针对传统先验模型中容易出现颜色偏移,对比度过高,造成颜色失真的问题,本方法在训练循环生成对抗网络中加入色调约束,用以提高去雾后图像的色彩还原度,有效的改善了颜色失真的问题。
附图说明
图1为本发明的生成器网络结构图,输入层尺寸为256×256×3,经过3次4×4卷积核的卷积操作,3次下采样,每次输出的特征图谱在图中由上至下列出,最终输出1×1×256的列向量;经过6个残差块的卷积操作重组特征后,输出256×256×3的无雾图;
图2为本发明的判别器网络结构图判别器输入层尺寸为256×256×3,经过48个8×8卷积核、64个4×4卷积核、80个5×5卷积核,80个5×5卷积核后,经由全连接层组合特征,输出预测概率 ;
图3为本发明一种基于生成对抗网络的图像去雾方法的工作流程图。
图4为本发明一种基于生成对抗网络的图像去雾方法的工作流程图。
具体实施方式
根据本发明的实施方案,提供一种基于生成对抗网络的图像去雾方法:
一种基于生成对抗网络的图像去雾方法,该方法包括以下步骤:
1) 获取样本数据:通过公开的数据集或网络爬虫技术获取有雾图像和无雾图像的样本数据;
2) 生成对抗网络的对抗训练:样本数据中的真实有雾图像作为第一生成器的输入数据,第一生成器生成一次无雾图像,第一生成器生成的一次无雾图像作为第二生成器的输入数据,第二生成器生成二次有雾图像;
样本数据中的真实无雾图像作为第二生成器的输入数据,第二生成器生成一次有雾图像,第二生成器生成的一次有雾图像作为第一生成器的输入数据,第一生成器生成二次无雾图像;
第一判别器判断一次有雾图像是来自第二生成器还是来自样本数据,并将一次有雾图像与样本数据中的真实有雾图像之间的第一误差反馈给第二生成器,第二生成器减小第一误差,提高生成图像的真实度;第二判别器判断一次无雾图像是来自第一生成器还是来自样本数据,并将一次无雾图像与样本数据中的真实无雾图像之间的第二误差反馈给第一生成器,第一生成器减小第二误差,提高生成图像的真实度;
第一生成器和第二生成器分别与第二判别器和第一判别器进行反复对抗训练,得到最优去雾网络模型;
3) 图像去雾:利用训练完成的最优去雾生成网络模型对有雾图像进行去雾,输入有雾图像,输出去雾后的无雾图像。
在本发明中,步骤2)中所述一次有雾图像与样本数据中的真实有雾图像之间的第一误差的计算方法具体为:
式(2)中r,g,b为图像去雾后三个通道的归一化值,W表示输出图像的宽度,H表示输出图像的高度,I表示式(2)的输入参数;
c) 定义样本数据的生成对抗网络的损失,由式(1)和(2)可得:
式(3)中X表示样本数据中的真实有雾图像,Y表示样本数据中的真实无雾图像,F表示第二生成器,DX表示第一判别器,F(Y)为第二生成器F生成的一次有雾图像,N为样本数据中真实有雾图像的个数,λ为比例系数,为正则项对权重约束,为系数。表示第二生成器的色调约束的损失。
在本发明中,步骤2)中所述一次无雾图像与样本数据中的真实无雾图像之间的第二误差的计算方法具体为:
式(2)中r,g,b为图像去雾后三个通道的归一化值,W表示输出图像的宽度,H表示输出图像的高度,I表示式(2)的输入参数;
c) 定义样本数据的生成对抗网络的损失,由式(4)和(2)可得:
式(5)中X表示样本数据中的真实有雾图像,Y表示样本数据中的真实无雾图像, G表示第一生成器,DY表示第二判别器,G(X)表示第一生成器G生成的一次无雾图像,M为样本数据中真实无雾图像的个数,λ为比例系数,为正则项对权重约束,为系数。表示第一生成器的色调约束的损失。
在本发明中,样本数据中的真实有雾图像和第二生成器生成的二次有雾图像之间的循环损失为:
式(6)中X表示样本数据中的真实有雾图像,G表示第一生成器,F表示第二生成器,C表示输出图像的通道数,W表示输出图像的宽度,H表示输出图像的高度,F(G(X))表示第二生成器F生成的二次有雾图像。
在本发明中,样本数据中的真实无雾图像和第一生成器生成的二次无雾图像之间的循环损失为:
式(7)中Y表示样本数据中的真实无雾图像,G表示第一生成器,F表示第二生成器,C表示输出图像的通道数,W表示输出图像的宽度,H表示输出图像的高度,G(F(Y))表示第一生成器G生成的二次无雾图像。
在本发明中,联合训练两个生成对抗网络,联合网络的损失函数为:
a) 联合网络的循环损失Lcyc为:
b) 联合网络的损失函数为:
式(9)中γ为比例系数。
优选的是,步骤2)中第二判别器判断一次无雾图像是来自第一生成器还是来自样本数据的概率为0.5时,去雾网络模型的训练达到最优化。
优选的是,步骤1)中还包括对样本数据进行筛选,具体为:删除图像残缺、清晰度低于人眼正常识别范围、内容不合格的样本数据。
优选的是,步骤1)中还包括对样本数据进行归一化处理,具体为:通过图像裁剪或放缩将全部样本数据统一大小。
实施例
图3为本发明的整体工作流程图,基于生成对抗网络的图像去雾方法包括以下步骤:
1) 1) 获取样本数据:爬取3600张公开的图像作为样本数据,对样本数据中的原始图像数据进行筛选和归一化处理,以去除有水印及发生扭曲、变形的图像,最终得到3000张可用图像,为保证图像不失真同时便于网络计算处理,将图像裁剪成960*960的大小,然后通过图像缩小算法将图像缩小至512*512的大小。
2) 生成对抗网络的对抗训练:定义生成对抗网络GAN的网络结构,第一生成器G和第二生成器F具备同样的结构,都是在自编码器的基础上结合去雾过程特点设计的网络结构;第一判别器DX和第二判别器DY均为用于分类的CNN网络。将样本数据投入网络模型中进行训练,样本数据中的真实有雾图像X作为第一生成器G的输入数据,第一生成器G生成一次无雾图像G(X),第一生成器G生成的一次无雾图像G(X)作为第二生成器F的输入数据,第二生成器F生成二次有雾图像F(G(X));样本数据中的真实无雾图像Y作为第二生成器F的输入数据,第二生成器F生成一次有雾图像F(Y),第二生成器F生成的一次有雾图像F(Y)作为第一生成器G的输入数据,第一生成器G生成二次无雾图像G(F(Y));
第一判别器DX判断一次有雾图像F(Y)是来自第二生成器F还是来自样本数据,并将一次有雾图像F(Y)与样本数据中的真实有雾图像X之间的第一误差反馈给第二生成器F,第二生成器F减小第一误差,提高生成图像的真实度;第二判别器DY判断一次无雾图像G(X)是来自第一生成器G还是来自样本数据,并将一次无雾图像G(X)与样本数据中的真实无雾图像Y之间的第二误差反馈给第一生成器G,第一生成器减小第二误差,提高生成图像的真实度;
第一生成器G和第二生成器F分别与第二判别器DY和第一判别器DX进行反复对抗训练,得到最优去雾网络模型。当第二判别器DY判断一次无雾图像G(X)是来自第一生成器G还是来自样本数据的概率为0.5时,去雾网络模型的训练达到最优化。
所述一次有雾图像F(Y)与样本数据中的真实有雾图像X之间的第一误差的计算方法具体为:
式(2)中r,g,b为图像去雾后三个通道的归一化值,W表示输出图像的宽度,H表示输出图像的高度,I表示式(2)的输入参数;
c) 定义样本数据的生成对抗网络的损失,由式(1)和(2)可得:
式(3)中X表示样本数据中的真实有雾图像,Y表示样本数据中的真实无雾图像,F表示第二生成器,DX表示第一判别器,F(Y)为第二生成器F生成的一次有雾图像,N为样本数据中真实有雾图像的个数,λ为比例系数,为正则项对权重约束,为系数。表示第二生成器F的色调约束的损失。
所述一次无雾图像与样本数据中的真实无雾图像之间的第二误差的计算方法具体为:
式(2)中r,g,b为图像去雾后三个通道的归一化值,W表示输出图像的宽度,H表示输出图像的高度,I表示式(2)的输入参数;
c) 定义样本数据的生成对抗网络的损失,由式(4)和(2)可得:
式(5)中X表示样本数据中的真实有雾图像,Y表示样本数据中的真实无雾图像, G表示第一生成器,DY表示第二判别器,G(X)表示第一生成器G生成的一次无雾图像,M为样本数据中真实无雾图像的个数,λ为比例系数,为正则项对权重约束,为系数。其中:M=N。表示第一生成器G的色调约束的损失。
样本数据中的真实有雾图像X和第二生成器F生成的二次有雾图像F(G(X))之间的循环损失为:
式(6)中X表示样本数据中的真实有雾图像,G表示第一生成器,F表示第二生成器,C表示输出图像的通道数,W表示输出图像的宽度,H表示输出图像的高度,F(G(X))表示第二生成器F生成的二次有雾图像。
样本数据中的真实无雾图像Y和第一生成器G生成的二次无雾图像G(F(Y))之间的循环损失为:
式(7)中Y表示样本数据中的真实无雾图像,G表示第一生成器,F表示第二生成器,C表示输出图像的通道数,W表示输出图像的宽度,H表示输出图像的高度,G(F(Y))表示第一生成器G生成的二次无雾图像。
联合训练两个生成对抗网络,联合网络的损失函数为:
a) 联合网络的循环损失Lcyc为:
b) 联合网络的损失函数为:
式(9)中γ为比例系数。
生成对抗网络的去雾算法训练流程具体如下:
设置损失函数中的比例系数λ和γ均为0.01,网络的训练过程采用带有动量的随机梯度下降算法优化参数,初始学习率设置为10-8,动量系数和权重衰减系数分别设置为0.9和0.0001。对于每一个生成对抗网络,在完成网络初始化后,先固定生成器对判别器进行训练,涉及判别器部分的损失函数项被纳入到梯度反向传播中,对参数进行优化。然后固定判别器对生成器进行训练,涉及生成器部分的损失函数项被纳入到梯度反向传播中,对参数进行优化,设置迭代终止次数为500次。
X表示样本数据中的真实有雾图像,Y表示样本数据中的真实无雾图像,G表示第一生成器,F表示第二生成器,DX表示以真实有雾图像为真的第一判别器,DY表示以真实无雾图像为真的第二判别器。
(1)固定第二生成器F、第一判别器Dx和第二判别器DY的权重参数:将真实有雾图像X输入第一生成器G,第一生成器G生成一次无雾图像G(X);将一次无雾图像G(X)输入第二生成器F,第二生成器F生成二次有雾图像F(G(X));计算二次有雾图像F(G(X))和真实有雾图像X之间的循环损失Lcyc(G,F);将真实无雾图像Y和一次无雾图像G(X)输入第二判别器DY,计算第二判别器DY产生的损失;计算第二生成器G的色调约束的损失;根据反向梯度传播算法更新第一生成器G的权重参数;
(2)固定第二生成器F、第一判别器Dx、第一生成器G的权重参数:将真实有雾图像X输入第一生成器G,第一生成器G生成一次无雾图像G(X);将一次无雾图像G(X)输入第二生成器F,第二生成器F生成二次有雾图像F(G(X));计算二次有雾图像F(G(X))和真实有雾图像X之间的循环损失Lcyc(G,F);将真实无雾图像Y和一次无雾图像G(X)输入第二判别器DY,计算第二判别器DY产生的损失;计算第二生成器G的色调约束的损失;根据反向梯度传播算法更新第二判别器DY的权重参数;
(3)固定第一生成器G、第一判别器Dx、第二判别器DY的权重参数:将真实无雾图像Y输入第二生成器F,第二生成器F生成一次有雾图像F(Y);将一次有雾图像F(Y)输入第一生成器G,第一生成器G生成二次无雾图像G(F(Y));计算二次无雾图像G(F(Y))和真实无雾图像Y之间的循环损失Lcyc(F,G);将真实有雾图像X和一次有雾图像F(Y)输入第一判别器DX,计算第一判别器DX产生的;计算第二生成器F的色调约束的损失;根据反向梯度传播算法更新第二生成器F的权重参数;
(4)固定第一生成器G、第二生成器F、第二判别器DY的权重参数:将真实无雾图像Y输入第二生成器F,第二生成器F生成一次有雾图像F(Y);将一次有雾图像F(Y)输入第一生成器G,第一生成器G生成二次无雾图像G(F(Y));计算二次无雾图像G(F(Y))和真实无雾图像Y之间的循环损失Lcyc(F,G);将真实有雾图像X和一次有雾图像F(Y)输入第一判别器DX,计算第一判别器DX产生的;计算第二生成器F的色调约束的损失;根据反向梯度传播算法更新第一判别器DX的权重参数;
(5)重复步骤(1)-(4),直至达到预设迭代次数。
3) 图像去雾:利用训练完成的最优去雾网络模型对有雾图像进行去雾,输入待去雾的有雾图像,第一生成器G输入层尺寸为256×256×3,经过3次4×4卷积核的卷积操作,3次下采样,每次输出的特征图谱在图中由上至下列出,最终输出1×1×256的列向量;经过6个残差块的卷积操作重组特征后,输出256×256×3的无雾图。
在本实施例中,通过对自爬取数据集进行有雾图像和无雾图像的建模,然后设计了一种基于生成对抗网络的图像去雾的方法,实现了对不同程度的有雾图像的去雾功能。
本实施例是本发明的一个简单实现,该过程可以方便的推广到其他智能监控设备、手持移动终端等基于多媒体设备中,从而解决有雾图像对科研、日常生产等工作带来的不便问题。
Claims (8)
1.一种基于生成对抗网络的图像去雾方法,该方法包括以下步骤:
1)获取样本数据:通过公开的数据集或网络爬虫技术获取有雾图像和无雾图像的样本数据;
2)生成对抗网络的对抗训练:样本数据中的真实有雾图像作为第一生成器的输入数据,第一生成器生成一次无雾图像,第一生成器生成的一次无雾图像作为第二生成器的输入数据,第二生成器生成二次有雾图像;
样本数据中的真实无雾图像作为第二生成器的输入数据,第二生成器生成一次有雾图像,第二生成器生成的一次有雾图像作为第一生成器的输入数据,第一生成器生成二次无雾图像;
第一判别器判断一次有雾图像是来自第二生成器还是来自样本数据,并将一次有雾图像与样本数据中的真实有雾图像之间的第一误差反馈给第二生成器,第二生成器减小第一误差,提高生成图像的真实度;第二判别器判断一次无雾图像是来自第一生成器还是来自样本数据,并将一次无雾图像与样本数据中的真实无雾图像之间的第二误差反馈给第一生成器,第一生成器减小第二误差,提高生成图像的真实度;
第一生成器和第二生成器分别与第二判别器和第一判别器进行反复对抗训练,得到最优去雾网络模型;
3)图像去雾:利用训练完成的最优去雾生成网络模型对有雾图像进行去雾,输入有雾图像,输出该图像去雾后的无雾图像;
步骤2)中所述一次有雾图像与样本数据中的真实有雾图像之间的第一误差的计算方法具体为:
b)计算对第二生成器进行约束的色调约束LHue(I):
式(2)中r,g,b为图像去雾后三个通道的归一化值,W表示输出图像的宽度,H表示输出图像的高度,I表示式(2)的输入参数;
c)定义样本数据的生成对抗网络的损失,由式(1)和(2)可得:
式(3)中X表示样本数据中的真实有雾图像,Y表示样本数据中的真实无雾图像,F表示第二生成器,DX表示第一判别器,F(Y)为第二生成器F生成的一次有雾图像,N为样本数据中真实有雾图像的个数,λ为比例系数,l1为正则项对权重约束,λ1为系数。
2.根据权利要求1所述的方法,其特征在于:步骤2)中所述一次无雾图像与样本数据中的真实无雾图像之间的第二误差的计算方法具体为:
b)计算对第一生成器进行约束的色调约束LHue(I):
式(2)中r,g,b为图像去雾后三个通道的归一化值,W表示输出图像的宽度,H表示输出图像的高度,I表示式(2)的输入参数;
c)定义样本数据的生成对抗网络的损失,由式(4)和(2)可得:
式(5)中X表示样本数据中的真实有雾图像,Y表示样本数据中的真实无雾图像,G表示第一生成器,DY表示第二判别器,G(X)表示第一生成器G生成的一次无雾图像,M为样本数据中真实无雾图像的个数,λ为比例系数,l1为正则项,λ1为系数。
5.根据权利要求4所述的方法,其特征在于:联合训练两个生成对抗网络,联合网络的损失函数为:
a)联合网络的循环损失Lcyc为:
Lcyc=Lcyc(G,F)+Lcyc(F,G) (8);
b)联合网络的损失函数为:
L(G,F,DX,DY)=LGAN(G,DY,X,Y)+LGAN(F,DX,Y,X)+γLcyc (9);
式(9)中γ为比例系数。
6.根据权利要求5所述的方法,其特征在于:步骤2)中第二判别器判断一次无雾图像是来自第一生成器还是来自样本数据的概率为0.5时,去雾网络模型的训练达到最优化。
7.根据权利要求6所述的方法,其特征在于:步骤1)中还包括对样本数据进行筛选,具体为:删除图像残缺、清晰度低于人眼正常识别范围、内容不合格的样本数据。
8.根据权利要求7所述的方法,其特征在于:步骤1)中还包括对样本数据进处理,具体为:使用openCV:resize算法图像裁剪或放缩至全部样本数据统一大小,使用Z-score标准化方法归一化处理数据集。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810538098 | 2018-05-30 | ||
CN2018105380984 | 2018-05-30 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109493303A CN109493303A (zh) | 2019-03-19 |
CN109493303B true CN109493303B (zh) | 2021-08-17 |
Family
ID=65714252
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910018682.1A Active CN109493303B (zh) | 2018-05-30 | 2019-01-09 | 一种基于生成对抗网络的图像去雾方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109493303B (zh) |
Families Citing this family (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109993804A (zh) * | 2019-03-22 | 2019-07-09 | 上海工程技术大学 | 一种基于条件生成对抗网络的道路场景去雾方法 |
CN110136075B (zh) * | 2019-04-18 | 2021-01-05 | 中国地质大学(武汉) | 一种基于边缘锐化循环生成对抗网络的遥感影像去雾方法 |
CN110363068B (zh) * | 2019-05-28 | 2023-08-18 | 中国矿业大学 | 一种基于多尺度循环生成式对抗网络的高分辨行人图像生成方法 |
CN110390647A (zh) * | 2019-06-14 | 2019-10-29 | 平安科技(深圳)有限公司 | 基于环形对抗生成网络的oct图像去噪方法及装置 |
CN110288550B (zh) * | 2019-06-28 | 2020-04-24 | 中国人民解放军火箭军工程大学 | 基于先验知识引导条件生成对抗网络的单张图像去雾方法 |
CN110570363A (zh) * | 2019-08-05 | 2019-12-13 | 浙江工业大学 | 基于带有金字塔池化与多尺度鉴别器的Cycle-GAN的图像去雾方法 |
CN110659582A (zh) * | 2019-08-29 | 2020-01-07 | 深圳云天励飞技术有限公司 | 图像转换模型训练方法、异质人脸识别方法、装置及设备 |
CN111008940B (zh) * | 2019-11-27 | 2023-06-27 | 北京科技大学 | 一种图像增强方法及装置 |
CN111105336A (zh) * | 2019-12-04 | 2020-05-05 | 山东浪潮人工智能研究院有限公司 | 一种基于对抗网络的图像去水印的方法 |
CN111260584A (zh) * | 2020-01-17 | 2020-06-09 | 北京工业大学 | 基于gan网络的水下退化图像增强的方法 |
CN111507909A (zh) * | 2020-03-18 | 2020-08-07 | 南方电网科学研究院有限责任公司 | 一种有雾图像清晰化的方法、装置及存储介质 |
CN113450261A (zh) * | 2020-03-25 | 2021-09-28 | 江苏翼视智能科技有限公司 | 一种基于条件生成对抗网络的单幅图像去雾方法 |
CN111709888B (zh) * | 2020-06-03 | 2023-12-08 | 中科九度(北京)空间信息技术有限责任公司 | 一种基于改进的生成对抗网络的航拍图像去雾方法 |
CN111986108B (zh) * | 2020-08-07 | 2024-04-19 | 西北工业大学 | 一种基于生成对抗网络的复杂海空场景图像去雾方法 |
CN111914488B (zh) * | 2020-08-14 | 2023-09-01 | 贵州东方世纪科技股份有限公司 | 一种基于对抗神经网络的有资料地区水文参数率定方法 |
CN112183338B (zh) * | 2020-09-28 | 2021-06-15 | 广东石油化工学院 | 一种基于视频的烟雾场景下人的再识别方法、系统及终端 |
CN112614070B (zh) * | 2020-12-28 | 2023-05-30 | 南京信息工程大学 | 一种基于DefogNet的单幅图像去雾方法 |
CN113191971A (zh) * | 2021-04-26 | 2021-07-30 | 贵州电网有限责任公司 | 一种基于yuv颜色空间的无人机图像去雾方法 |
CN113822976A (zh) * | 2021-06-08 | 2021-12-21 | 腾讯科技(深圳)有限公司 | 生成器的训练方法及装置、存储介质和电子装置 |
CN113256541B (zh) * | 2021-07-16 | 2021-09-17 | 四川泓宝润业工程技术有限公司 | 利用机器学习对钻井平台监控画面进行去水雾的方法 |
CN113487519B (zh) * | 2021-09-03 | 2022-02-25 | 南通欧泰机电工具有限公司 | 一种基于人工智能的图像去雨方法 |
CN114119420B (zh) * | 2021-12-01 | 2022-12-13 | 昆明理工大学 | 一种基于雾迁移和特征聚合的真实场景下有雾图像去雾方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106127702A (zh) * | 2016-06-17 | 2016-11-16 | 兰州理工大学 | 一种基于深度学习的图像去雾算法 |
US9786084B1 (en) * | 2016-06-23 | 2017-10-10 | LoomAi, Inc. | Systems and methods for generating computer ready animation models of a human head from captured data images |
CN107977629A (zh) * | 2017-12-04 | 2018-05-01 | 电子科技大学 | 一种基于特征分离对抗网络的人脸图像衰老合成方法 |
-
2019
- 2019-01-09 CN CN201910018682.1A patent/CN109493303B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106127702A (zh) * | 2016-06-17 | 2016-11-16 | 兰州理工大学 | 一种基于深度学习的图像去雾算法 |
US9786084B1 (en) * | 2016-06-23 | 2017-10-10 | LoomAi, Inc. | Systems and methods for generating computer ready animation models of a human head from captured data images |
CN107977629A (zh) * | 2017-12-04 | 2018-05-01 | 电子科技大学 | 一种基于特征分离对抗网络的人脸图像衰老合成方法 |
Non-Patent Citations (3)
Title |
---|
"Cycle-Dehaze: Enhanced CycleGAN for Single Image Dehazing";Deniz Engin 等;《arXiv》;20180514;参见正文第1-3章 * |
"图像去雾技术研究进展";禹晶 等;《中国图像图形学报》;20110930;全文 * |
"基于storm的在线序列极限学习机的气象预测模型";欧阳建权;《计算机研究与发展》;20170213;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN109493303A (zh) | 2019-03-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109493303B (zh) | 一种基于生成对抗网络的图像去雾方法 | |
Golts et al. | Unsupervised single image dehazing using dark channel prior loss | |
CN112288658B (zh) | 一种基于多残差联合学习的水下图像增强方法 | |
Ren et al. | Low-light image enhancement via a deep hybrid network | |
CN109872285B (zh) | 一种基于变分约束的Retinex低照度彩色图像增强方法 | |
CN111091045A (zh) | 一种基于时空注意力机制的手语识别方法 | |
CN110288550B (zh) | 基于先验知识引导条件生成对抗网络的单张图像去雾方法 | |
CN112348036A (zh) | 基于轻量化残差学习和反卷积级联的自适应目标检测方法 | |
CN112184577A (zh) | 基于多尺度自注意生成对抗网络的单幅图像去雾方法 | |
CN107506792B (zh) | 一种半监督的显著对象检测方法 | |
CN111861906A (zh) | 一种路面裂缝图像虚拟增广模型建立及图像虚拟增广方法 | |
CN113420794B (zh) | 一种基于深度学习的二值化Faster R-CNN柑橘病虫害识别方法 | |
CN113870124A (zh) | 基于弱监督的双网络互激励学习阴影去除方法 | |
CN114494821A (zh) | 基于特征多尺度感知与自适应聚合的遥感影像云检测方法 | |
Xu et al. | Gan based multi-exposure inverse tone mapping | |
CN115272072A (zh) | 一种基于多特征图像融合的水下图像超分辨率方法 | |
CN111768326B (zh) | 一种基于gan扩增图像前景物体的高容量数据保护方法 | |
CN111832508B (zh) | 基于die_ga的低照度目标检测方法 | |
CN113989612A (zh) | 基于注意力及生成对抗网络的遥感影像目标检测方法 | |
Zhang et al. | Mffe: Multi-scale feature fusion enhanced net for image dehazing | |
CN113256528B (zh) | 基于多尺度级联深度残差网络的低照度视频增强方法 | |
CN112991236B (zh) | 一种基于模板的图像增强方法及装置 | |
Hanumantharaju et al. | A new framework for retinex-based colour image enhancement using particle swarm optimisation | |
Guan et al. | DiffWater: Underwater Image Enhancement Based on Conditional Denoising Diffusion Probabilistic Model | |
Zhao et al. | Single Image Dehazing Based on Enhanced Generative Adversarial Network |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |