基于残差聚集网的恶劣天气环境下图像清晰化处理
2020-04-13刘扬
刘 扬
(江苏自动化研究所,江苏连云港 222061)
恶劣天气环境下的图像清晰化处理是计算机视觉中的一个重要任务。如图1所示,许多计算机视觉应用如:军事作战(目标检测、目标识别、目标跟踪),安防系统和交通导航等都依赖于高质量图像。在下雨、下雪、起雾或者抖动等影响下,相机捕捉的图片会有一定程度的失真。由于沙尘、雨、雪、雾、霾等容易遮挡住图像中的目标,造成目标不明确,降低了图片内容的可识别性,使用低质量图片严重影响计算机视觉应用。因此,为了保证计算机视觉应用在恶劣天气下能够正常运行,需要对恶劣天气环境下拍摄的图像进行清晰化处理,降低图像的失真度,提高图像的质量。本文针对上述问题,结合卷积神经网络,提出了一种新的残差聚集网,用于恢复高质量图像。
传统的图像清晰化技术采用高斯混合模型、低秩估计、字典学习等技术。虽然传统技术能够取得一定的效果,但是由于雨、雪、雾、霾、抖动等影响因素在图像中表现为多方向、多密度、多类别,简单地使用传统方法难以建模图像中的复杂影响因素。因此,传统技术在多数情况下会失去原有的性能。
图1 图像清晰化处理与计算机视觉应用
近几年来,随着计算机计算能力的不断提高,深度卷积神经网络得到迅猛发展,卷积神经网络在计算机视觉任务上得到了广泛的应用。在众多图像处理任务如图像去雨流、图像去噪、图像去雾、图像去模糊、图像去雨滴等有重要突破。卷积神经网络可以提取丰富的特征,可以很好地拟合雨、雾、霾、雪、抖动等在图像中的复杂分布。文献[1]提出了一种新的跳连方式,利用网络提取的层级细节流,通过跳连方式将细节特征从低维空间传播到高维空间,可以很好地指导网络对低维特征的学习,在图像修复方面取得不错的效果。针对单步处理图像难以恢复出高质量图像的问题,文献[2]提出了一种多步图像处理模式,在网络中引入循环神经单元,构建一个循环神经网络结构,通过关联不同步骤图像处理的隐藏层信息,可以很好地指导网络下一步的修复工作,实验表明,该方法在图像去雨等任务上取得了不错的效果。不同于上述方式,文献[3]结合了膨胀卷积和循环神经单元,提出了一种循环多尺度增强网络,该网络融合多尺度特征,可以高效地建模各种复杂前景。上述方法可以在特定的图像处理任务中取得一定的效果,但在不同任务中没有很好的泛化能力。基于该问题,本文提出了一种新的残差聚集网,可以在图像去雨流、图像去噪、图像去雾、图像去模糊、图像去雨滴等任务都表现优异。残差聚集网可以充分地利用网络提取的局部层级特征生成高效的高维特征,残差聚集网使用残差连接,允许网络不同层之间互相传递信息流。
1 图像清晰化相关工作
如图2所示,图像清晰化处理就是从低质量图像恢复出高质量的清晰图像。该部分主要总结了图像去雨流、图像去噪、图像去雾、图像去模糊、图像去雨滴的相关工作。
图2 不同场景下的图像清晰化处理
基于深度神经网络的高斯图像去噪有很长的研究历史, 文献[4]提出了REDNet网络,REDNet网络由多层卷积层和反卷积层构成,卷积层和反卷积层通过对称跳连传递信息。文献[5]提出了MemNet网络,该网络具有局部记忆模块和全局稠密连接能力,可以记住的局部细节信息,并充分利用全局信息,取得了比REDNet网络优越的性能。而文献[6]通过神经网络自动搜索架构搜索出高效的网络结构,该结构表明具有大小卷积核重复配对的标准自动编码器性能远远高于MemNet网络。
在图像去雾中,王玉坤等人提出一种基于小波变换的雾天图像清晰化方法[7]。张凯等人提出了一种卷积神经网络[8],联合估算透射率和全局大气光。文献[9]则提出一种直接估算干净背景图的方法,该方法不需要显式地估算透射率和全局大气光。区别上述的方式,文献[10]将卷积神经网络集成到传统的基于先验的方法上,高效地估算出干净背景图。
在运动去模糊中,基于卷积深度神经网络的方法[11-13]取得了重大的突破。文献[11]改进残差模块,提出了一种由粗到细的方法恢复图片中的模糊部分。不同于文献[11],文献[12]提出了一种基于生成对抗网络[13]的方法,可以更好地学习不同场景的模糊核。
图像去雨流和去雨滴也是图像清晰化的重要研究内容。文献[14]使用导向滤波器提取图片的高频信息训练神经网络。文献[15]提出一种联合估计图像中雨流的密度并去除雨流的方法,来缓解图像中雨的分布密度不均匀的问题。林向伟等人提出了基于多细节卷积神经网络的单幅图像去雨方法[16]。李夏等人提出了一种基于循环神经网络的图像多步去雨模型[2],该模型实现渐进式去除图像的雨流信息,取得了比单步去雨模型更高的性能。而在图像去雨滴中,钱瑞等人提出了一种混合网络模型[17],该模型包括一个卷积LSTM模块用于定位雨滴位置和一个卷积神经网络用于生成干净背景图像。该模型融合在一个生成对抗网络框架中,可以高效地检测图像中的雨滴信息并实现去除雨滴的效果。
由于上述的图像清晰化方法只在某一个特定任务中(如:图像去雨流、图像去噪、图像去雾、图像去模糊、图像去雨滴)表现出不错的效果,但是在五个任务上不具备较好的泛化能力。因此,本文基于卷积神经网络,提出了一种新的网络结构: 残差聚集网,该网络结果可以在五个任务中表现出优异的性能,可以在复杂恶劣环境下为计算机视觉应用提供高质量图像。
2 残差聚集网
图像清晰化模型一般可以定义为一个简单的线性模型。
I=B+R
(1)
其中,I表示输入的低质量图像,B表示干净背景图,R表示估算的残差图。由于图像清晰化是一个病态问题,本文构造一种端到端的基于卷积神经网络的方法估算残差图。如图3所示,残差聚集网的网络结构主要包括四个部分:低质量图片分解,低维特征提取,残差聚集模块和残差图生成。
2.1 残差聚集网
假定Iin、Il、Ih分别表示低质量图片、低频特征和高频特征。图像中的沙尘、雨、雪、雾、霾、噪声等均属于高频信息。具体的残差聚集网的网络结构如图3所示。
图3 残差聚集网网络结构
首先使用中值滤波对低质量图片进行滤波操作,从低质量图片中分离出低频信息Il,然后,将低质量图片Iin减去低频信息Il可以获得高频信息Ih。
Ih=Iin-Il
(2)
随后,使用低维特征提取器从高频信息中提取低维特征
Fsf=Tsf(Ih)
(3)
其中,Tsf表示卷积—批归一化—relu激活函数的组合操作,该操作输入高频信息Ih,输出特征图Fsf。
更进一步,为了提取更丰富的特征信息,本文构造了残差聚集模块,通过堆叠多个残差聚集模块,可以提取丰富的高维特征。残差聚集模块提取的各层特征图使用稠密连接将特征图传递到最后的残差变换模块,通过特征压缩和蒸馏提取更高效的高维特征。
Fff=TRAB(Fsf,M)
(4)
其中,TRAB表示使用残差聚集模块提取特征,M表示堆叠M块残差聚集模块。通过堆叠多块残差聚集模块充分提取和利用局部层级特征,输出高维特征Fff。每一块残差聚集模块由三个部分组成: 残差特征提取器,稠密变换层和局部特征融合。具体地,残差特征提取器使用残差模块提取不同特征图;稠密变换层将残差特征提取器提取的特征图组合到一起,使用卷积核为1*1的卷积操作压缩和蒸馏特征;局部特征融合将每一块残差聚集模块的输入跳连到稠密变换层的输入,允许网络低维特征向高维特征流动。
使用残差图生成器估算残差图
Frm=Trm(Fff)
(5)
其中,Trm表示卷积—批归一化的组合操作,该操作输入高维特征Fff估算出残差图Frm。
最后,从低质量图Iin减去估算的残差图Frm可以获得清晰化之后的高质量图像。
Iout=Iin-Frm
(6)
2.2 激活函数
为了增加网络的非线性表达能力,缓解梯度消失问题,我们选择修正线性单元(relu)作为网络的激活函数,在每一层卷积和批归一化层之后我们使用修正线性单元(relu)激活函数将特征映射到非线性特征空间,提高特征的表达能力。具体地,修正线性单元(relu)表达式如下
Frelu=max(0,x)
(7)
其中,x为输入,Frelu为修正结果。
2.3 损失函数
直观上,在进行网络训练的时候,要求清晰化图片Iout要和对应的干净图片Igt在像素级别上保持一致。因此,使用均方误差(MSE)约束两者的相似性。
(8)
使用均方误差约束两者的一致性容易造成图像过度平滑,丢失背景细节信息。因此,为了保持清晰化图片的背景细节,采用峰值信噪比(PSNR)损失和结构相似性(SSIM)[18]损失保证结构相似性和像素相似性。
(9)
(10)
其中PSNR(,)和SSIM(,)表示指标计算函数,用于计算清晰化之后的图片和干净图片之间的PSNR和SSIM指标。
此外,鉴于生成对抗网络在许多图像处理任务的广泛应用,引入对抗损失作为损失函数的一部分,进一步提升清晰化图片的性能。本文采用条件对抗损失如下所示
Ladv=minGmaxDEIin,z[log(1-D(Iin,G(Iin,z)))]+
EIin,Igt[log(D(Iin,Igt))]
(11)
其中,G表示残差聚集网,D表示判别器,使用条件生成对抗网络[19]中的判别器结构。为了加速网络训练,将噪声z设置为常量。
最终,网络训练使用的损失函数如下所示
L=minGmaxD[Lmse(G)+λ1Lpsnr(G)+
λ2Lssim(G)+λ3Ladv(G,D)]
(12)
其中,λ1,λ2,λ3表示对应损失函数的权重。
3 实验过程
本文选择五个图像清晰化任务:图像去雨流、图像去噪、图像去雾、图像去模糊、图像去雨滴来评测残差聚集网的性能。使用公开的数据集训练残差聚集网,在测试数据集上做相应测试。具体的数据集,网络训练设置和实验结果介绍如下。
3.1 数据集
对于五个图像清晰化任务所使用的数据集如表1和表2所示。对于图像去雨任务,使用合成的Rain100L和Rain100H两个数据集;对于图像去噪任务,使用BSD数据集作为训练数据,在训练的时候自动生成高斯白噪声,将噪声添加到图片中,生成对应的噪声图片和无噪声图片作为训练数据;对于图像去雾任务,使用Dehaze数据集;对于图像去模糊任务,使用公开的GoPro数据集; 对于图像去雨滴任务,使用收集的RainDrop数据集。
表1 图像去雨流训练和测试数据集
表2 图像去噪、去雾、去模糊、去雨滴的训练测试数据集
3.2 训练设置
残差聚集网的训练流程如图4所示,由于数据集的图片大小不一样,因此,预先对输入图像进行随机裁剪,对于每一步训练,随机从训练集中裁剪出20对大小为64*64的图片对作为网络的输入。
图4 残差聚集网训练流程
对于网络结构,低维特征提取器包含一个卷积层,一个批归一化层(batch normalization)和一个relu激活函数层;残差图生成器包含一个卷积层和一个批归一化层(batch normalization);残差聚集网堆叠6块残差聚集模块,每块残差聚集模块使用2个残差块提取层级特征,使用一个卷积核大小为1*1的卷积将各个层级特征组合变换到高维特征。除了上述提到的1*1卷积核,网络中的其他卷积操作均使用3*3的卷积核,卷积步长设置为1,除了残差图生成器以外(设置为3),每一层卷积的输出通道设置为64。使用TensorFlow搭建残差聚集网,使用NVIDIA GeForce GTX 1080Ti显卡训练网络。网络使用Adam优化器优化,Adam优化器的指数衰减参数beta1和beta2设置为0.9和0.999。网络训练40 000步,网络学习率从初始的0.1,经过25 000步之后降低为0.01,然后在30 000之后固定为0.001。损失函数的权重参数λ1、λ2、λ3分别设置为0.001、0.1、0.001。此外,公式(9)中的σ1设置为0.001。为了稳定训练,每一步训练三次生成器和一次判别器。
4 实验结果与分析
4.1 图像去雨流
在下雨天气环境下拍摄图片,容易造成图片有许多雨流。由于雨流的密度和方向存在比较大的差异,残差聚集网内部的残差聚集模块利用多个残差模块可以提取丰富的雨流特征,利用特征变换层融合丰富的雨流特征产生高维雨流特征,使得残差聚集网可以高效地去除图像中的雨流。
本文对比了残差聚集网和DDN(CVPR2017)[14], DID-MDN(CVPR2018)[15],MSCSC(CVPR2018)[20], DualCNN(CVPR2018)[21]四种方法的去雨流效果。使用PSNR和SSIM指标作为评测指标,在Rain100L和Rain100H两个数据集上评测几种方法在图像去雨流上的性能。比较结果如表3所示,残差聚集网络能够取得比其他方法更好的去雨流效果。在Rain100L数据集上,残差聚集网在PSNR和SSIM指标上取得了2.66%和2.70%的改进,在Rain100H数据集上,取得了1.19%和4.00%的改进。
表3 残差聚集网在Rain100L数据集和Rain100H数据集上去雨流的量化指标
图像去雨流对比结果如图5a-h)所示,本文选择了两种效果比较好的方法(DDN和DualCNN)与残差聚集网进行对比。两张图片均含有稠密的雨流,利用残差聚集网可以建模复杂的雨流分布,估算出雨流残差图,得到干净的去雨图像。而DDN和DualCNN两种方法的去雨流图像上仍然残留较多的雨痕。
图5 残差聚集网与DDN[14]和DualCNN[21]在图像去雨流结果上的比较
4.2 残差聚集网模块分析
进一步对残差聚集模块的性能进行分析验证。如图6所示,我们分析比较了四种残差聚集模块的变体。比较结果如表4所示,简单地使用残差块去雨流取得的效果一般,将跳步连接和稠密连接分别加到基本残差块中可以较大的提升网络的去雨流性能。将图6的(1) (2) (3)结合构成最终的残差聚集模块,可以得到最佳的去雨流性能,如表4最后一列所示。
图6 (1)简单实用残差块提取特征(RFE);(2)将低维特征通过跳步连接传输到高维特征(RFE+LFE);(3)将残差块提取的特征通过稠密连接传输到高维特征(RFE+DTL);(4)为(1) (2) (3)的结合(RFE+LFE+DTL)
表4 不同残差聚集模块在Rain100L的去雨流的量化指标
4.3 其他图像清晰化任务
残差聚集网在图像去噪、图像去雾、图像去模糊、图像去雨滴等任务上,能够高效地去除图像中噪声、雾、模糊、雨滴等遮挡物,取得很不错的效果。各种任务下运用残差聚集网处理图像后的效果如图7所示。
图7 各种任务下残差聚集网处理后的效果
在图像去噪中,残差聚集网可以从具有噪声的图像中学习复杂的噪声分布,估算出图片中高频噪声信息,恢复出高质量的去噪图片。在图像去雾中,残差聚集网可以自适应地学习雾和天空的特征,在去雾过程中去除图像中的雾,保留图像的天空细节。在图像去模糊中,残差聚集网联合估算模糊核和去模糊图像,直接输出去模糊的图像,可以从模糊图像中恢复出高质量的去模糊图像。在图像去雨滴中,雨滴的形状和大小与雨流存在较大的差异,两者的分布截然不同,因此无法简单地将图像去雨流任务直接迁移到图像去雨滴任务,需要使用雨滴数据集重新训练网络,残差聚集网也可以表现出令人满意的效果。
5 结束语
恶劣的天气条件会使得环境中物体的可见度变低,严重影响众多计算机视觉应用的可行性。在恶劣的天气条件下,由于环境中的沙尘、雨、雪、雾、霾等的影响,给相机拍摄带来很大的难度;另一方面,在正常的天气下,由于物体的运动和相机的抖动容易造成拍摄的图像变得模糊不清。为了解决恶劣条件下图像的不清晰问题,本文提出了一种新的方法,构建新的网络模型残差聚集网,从低质量图像中恢复出高质量的清晰图像。残差聚集网可以解决图像去雨流、图像去噪、图像去雾、图像去模糊、图像去雨滴等图像处理任务。作为计算机视觉应用的前期处理,图像清晰化在军事作战系统、安防系统和交通导航等具有很重大的应用价值。