医学图像病例分析、土壤覆盖率检测等众多领域都假设图片足够清晰。然而,在自然界中,类似雾、阴雨等恶劣的气候坏境是不可避免的,这些恶劣天气会严重降低图片背景清晰度,破坏计算机视觉系统的性能。因此,从单张雨图像中去除雨线条纹对于室外场景的监控系统有重要意义。
基于视频的方法近几年来取得不错效果。例如:文献[3]方法通过在极短的时间内视频中的雨线相位保持一致的特点来检测雨线,利用经典的高斯混合模型来提取雨线[4-5]。
与基于视频去除雨的方法相比,单张图片去除雨的方法缺少上下文时间序列信息,因此对单张图片去除雨的研究更具挑战性。传统的基于补丁[6-7]、稀疏编码[8-9]等方法将雨线看成高频成分从单张图像中分离,去雨同时会平滑背景细节信息。随着深度学习在各个领域的突破性进展[10-11],基于深度学习的单张图片去雨也取得了重大突破。例如:文献[12]利用小波变换和暗通道方法对单张图片去雨;文献[2]使用负残差网络提取雨线特征信息对单张图片去雨。
2 提出方法
单张去除雨线条纹可以建模为如式(1)所示:
2.1 雨密度感知分类器
基于CNN模型的图片分类研究取得突破进展。例如:Res-Net[13]、VGG-16[14]等对图片分类方法主要集中图片的局部特征,泛化图片特征加速训练。然而雨线条纹遍布整张图片,使用CNN方法对图片雨线所有特征捕获不足,分类正确率不高。针对这一问题,本文提出细节雨密度分类网络,利用细节网络针对雨区中的雨线特征定位并提取雨线条纹。图2上方为雨密度感知分类网络。细节层可用有雨图片减去经过导向滤波[15-16]的结果表示。细节层中大部分区域像素基本接近为0,只有雨线条纹和背景对象边缘细节保留在细节层中。这样不仅消除背景信息对分类影响,同时有利于CNN聚合雨线特征提高分类正确率。分类器使用残差网络resnet-34[13]。
训练优化分类器的损失函数如式(2)所示:
其中,D为雨密度感知分类器所有参数;y表示为不同密度的雨图片;label表示不同雨密度的标签,即大雨、中雨、小雨分别对应0、1、2;Lmse(,)为均方差。
2.2 扩张去雨网络
不同的雨密度图片具有的不同特征信息,使用同一大小卷积核聚合不同雨线特征能力较弱。本文提出的扩张网络扩大卷积核的感受,同时聚合多尺寸雨线信息,以增强对不同雨密度图片雨线特征提取。图2中扩张网络[1]是由扩张块1(扩张因子为1)、扩张块2(扩张因子为2)、扩张块3(扩张因子为3)组成的。每个扩张块的组成方式如下所示:
(1)扩张块1由1个扩张降采样层、4个卷积层、1个上采样层组成。
(2)扩张块2由2个扩张降采样层、2个卷积层、2个上采样层组成。
(3)扩张块3由3个扩张降采样层、3个上采样层组成。
扩张降采样层的图片尺寸缩小为原来的一半,卷积层尺寸保持不变,上采样层的图片尺寸扩大一倍。为了进一步聚合来自不同尺寸雨线的特征,在每个扩张块的内部使用跳转链接(即第1块输出与第5块输出级联,第2块输出与第4块输出级联)以学习不同区域雨线特征,保留完整背景细节信息。图3所示为扩张块1的内部原理图。
雨密度感知分类信息有利于引导扩张网络针对不同密度雨的图片调整学习能力,同时为了进一步保留完整背景信息。因此将上下文信息有雨图片和扩张网络以及雨密度分类网络级联后输入到雨线特征提取网络来捕获雨线条纹。将有雨图片减去雨线特征提取网络捕获的雨线条纹,得到去雨图片。最后对图片背景细节进一步优化,采用两个不同深度的卷积核(卷积核大小分别为通道数为16,通道数为3)进行细节信息优化。图2所示下方为扩张去雨网络框架。
扩张去雨网络损失函数如式(3)所示:
其中,f为扩张去雨网络的所有参数,y为有雨图片,x为相应干净无雨图片,Lmse(,)为均方差。
3 实验结果与分析
为了评估网络的性能,本文与其他3种去除雨线条纹方法在峰值信噪比(PSNR)和结构相似度(SSIM)做定量和定性对比。3种方法分别为:联合扩张网络对图片去雨(简称JORDER)[1]、深度细节网络对单张图片去雨(简称Detail-net)[2]、基于小波变化方法对单张图片去雨(SRR-net)[12]。
3.1 训练数据集
实验数据集基于文献[17]数据集上训练。训练数据集包含3种不同雨密度图片各4 000张,每类数据集中雨线分布为不同形状和方向。测试数据集总共600张包含真实雨图片。
3.2 网络参数设计
3.2.1 扩张网络参数设计
扩张块1:降采样层和卷积层使用3个大小分别为1、3、1的卷积层,上采样层使用两个大小为1、3的卷积层;扩张块2:降采样层和卷积层使用3个大小分别为1、3、1的卷积层,上采样层使用两个大小为1、5卷积层;扩张块3:降采样层和卷积层使用3个大小分别为1、3、1卷积层,上采样层使用两个大小为1、7的卷积层。
3.2.2 训练分类器网络参数
图片大小随机裁剪为512×512,使用Adam优化器,小批量数据为64,学习率初始化为0.003。Pytorch作为本文网络训练框架。
3.2.3 扩张去雨网络参数
训练期间,图片大小随机裁剪为512×512,使用Adam优化器,小批量数据大小为1,学习率初始化为0.002。
3.3 细节雨密度分类器结果
本文提出的细节雨密度分类器与基于CNN算法的resnet-34和VGG-16率比较如表1所示。可以看出本文提出的细节网络消除背景细节对分类干扰,提高了对不同雨密度正确率。
3.4 合成数据集测试结果及分析
为了评估本文方法有效性,在本文测试数据集上与其他3种方法做定性和定量对比。表2所示为600张数据集方法的平均PNSR和SSIM对比结果,可以看出本文在PNSR和SSIM性能上的优异性。
为了直观视觉感受本文提出方法的有效性,从合成的3种不同密度雨与其他3种方法测试做定性对比。如图4所示,可以看出JORDER处理中小雨图片雨线去除较干净,但仍残留雨线条纹,处理大雨时过度平滑背景。从第一行和第二行的第三列中看出,SRR-net处理大雨图片时过度平滑背景细节特征,detail-net方法处理大雨图片时留下过多的雨线条纹。本文提出方法在去除雨线条纹的同时能够有效保留更多背景细节。
3.5 真实雨测试结果
在真实雨场景下与其他3种方法进行测试对比,结果如图5所示。从第二行和第三行的第二列看出,Detail-net方法对真实场景去除雨会残留雨线条纹;从第一行的第三、第四列雨滴细节变黑看出,SRR-net和JORDER方法去除雨线条纹会平滑背景细节。本文相较于其他3种方法去雨效果明显,背景细节保留相对完整。
4 结论
单一神经网络学习不同雨线特征能力弱,本文提出的细节雨密度感知扩张去雨网络有效引导一定范围雨密度的图片匹配相适应网络,提高了网络对不同密度雨线特征调整学习能力,同时去雨后图片保留了较完整背景细节。在合成和真实数据集进行测试对比,结果证明了本文扩张去除雨线条纹网络的有效性。
参考文献
[10] 黄睿,陆许明,邬依林.基于TensorFlow深度学习手写体数字识别及应用[J].电子技术应用,2018,44(10):6-10.
[11] 王雅欣,史潇潇.基于生成对抗网络的人脸热红外图像生成[J].信息技术与网络安全,2018,37(8):40-44.