1、信息与电脑算法语言Information&Computer基于改进的YOLOv7与暗通道算法的图像检测2023年第10 期水卯瑞(西安石油大学,陕西西安710065)摘要:随着计算机视觉技术的快速发展,目标检测在安防和无人驾驶等领域广泛应用。然而,在复杂环境下如雾气天气,目标检测面临许多挑战。针对一阶段检测算法YOLOv7在雾气条件下的图像处理表现不佳的问题,提出一种基于改进的YOLOv7与暗通道算法相结合的目标检测方法。首先,通过对采集的图像进行暗通道处理以提取特征,缓解雾天气下图像质量退化的问题,以及由于背景层过深导致的小目标或其他目标特征不够显著的问题。其次,对原始YOLOv7网络添加小
2、目标层,以提高网络对小目标的检测效果。最后,在backbone模块中引入卷积注意力机制模块(ConvolutionalBlockAttentionModule,C BA M),以增强网络对图像前景和上下文信息的敏感性。实验结果显示,该网络在较模糊目标和小目标识别方面表现良好。关键词:目标识别;YOLOv7算法;暗通道算法中图分类号:TP301.6Image Detection Based on the Improved YOLOv7 and Dark Channel Algorithm文献标识码:A文章编号:10 0 3-9 7 6 7(2 0 2 3)10-0 7 6-0 3SHUI Mao
3、rui(Xian Shiyou University,Xian Shaanxi 710065,China)Abstract:With the rapid development of computer vision technology,object detection is widely used in fields suchas security and unmanned driving.However,in complex environments such as foggy weather,target detection faces manychallenges.A target d
4、etection method based on the combination of improved YOLOv7 and dark channel algorithm is proposedto address the issue of poor image processing performance of the one-stage detection algorithm YOLOv7 under foggyconditions.Firstly,by performing dark channel processing on the collected images to extra
5、ct features,the problem of imagequality degradation in foggy weather and the problem of small targets or other target features not being significant enough dueto deep background layers are alleviated.Secondly,add a small target layer to the original YOLOv7 network to improve thenetworks detection pe
6、rformance for small targets.Finally,the Convolutional Block Attention Module(CBAM)is introduced intothe backbone module to enhance the networks sensitivity to image foreground and contextual information.The experimentalresults show that the network performs well in identifying fuzzy and small target
7、s.Keywords:target recognition;YOLOv7 algorithm;dark channel algorithm0引言由于雾气天气,户外的监控设备采集的图像经常出现图像退化的现象,且当前常见的目标检测算法直接处理图像时,检测效果不理想,导致后期针对图像内部的目标物体检测和识别的技术应用效果不突出。而使用一阶段检测算法YOLOv7针对雾气天气条件下所采集的图收稿日期:2 0 2 3-0 3-10作者简介:水卯瑞(19 9 9 一),男,陕西西安人,硕士研究生。研究方向:机器学习、图像识别。像进行目标检测,发现图像识别不高,图片检查效果有待提升。基于此,首先在YOLOv7
8、识别图像前将图像经过暗通道算法进行处理,解决雾天气下图像本身可能退化、导致背景层过深造成图像层的小目标或其他目标特征不够突出的问题。其次,针对原YOLOv7网络修76信息与电脑2023年第10 期Information&Computer算法语言改增加小目标检测层,增强原网络对小目标的检测效果。最后,针对backbone部分增加卷积注意力机制模块(Co n v o l u t i o n a l Bl o c k A t t e n t i o n M o d u l e,CBA M),以增加原网络对图像前景和上下文信息的敏感度。1 YOLOv7算法一阶段YOLO算法是直接将整个图片放入检测算法
9、过程,大幅提高了检测速度。因此,目前基于YOLO的算法研究较多。例如:张宁等人针对小目标任务检测分辨率低、特征易丢失的问题,对YOLOv4网络添加了融合因子L-,有效提高了信息融合效率2 ;李彦错等人对YOLOv3网络进行优化,提出一种针对红外环境的改进的 YOLOv3 检测算法3。目前,最新的YOLOv7网络由输入模块、主干网络、头部网络3个部分组成。相比以往的YOLO版本,YOLOv7设计了可以训练的bag-of-freebies方法,大幅提升网络的检测精度的同时几乎未增加推理成本。同时,提出的扩充和复合扩展方法利用参数优化计算过程,约减少了45%的计算量。尤其是提出的扩展高效层聚合网络(
10、Extended-Eficient Layer Aggregation Networks,E-ELAN)模块,在大规模运用中,当堆叠的计算块达到一定限度时,网络均处于稳定状态,且参数利用率较高。而YOLOv7的模型缩放方法在针对不同图像采取不同的缩放因子,能够满足不同的推理需求,达到最优解。2暗通道算法暗通道算法通常是针对由于雾或霾而导致所采集的图片细节模糊、图像对比度不高,致使图像可能会丢失关键特征信息的问题而提出的一种图像分析与处理方法。该算法在实践应用中很常见,例如周昊等人和黄金炜等人基于暗通道提出的全局去雾算法4-5。经过暗通道算法处理后,图像的轮廓和细节都有所增强。暗通道算法根据提取
11、大量的图片特征,发现图像的基本特点,即对于图像中绝大部分的非天空的局部区域,存在一些像素点在至少一个颜色通道中的数值趋近于0,把这些像素点称为暗像素。根据上述特点对已采集的图片进行归纳分类,其中有雾的图片会呈现一定的灰色,而无雾的图片会呈现大量的黑色,其像素值接近为0。基于此,先利用大气散射模型进行去雾处理,得到其中存在的映射关系,再根据有雾图像的形成过程进行反推逆运算,从而实现清晰图像的目的。3本文方法先将实验的图像经过暗通道算法处理,再经过改进的YOLOv7网络进行处理,处理流程如图1所示。首先,将图像经过暗通道算法进行去雾处理,当实验中使用的采集图像的背景层和图像层并不相近时,使用暗通道
12、方法处理的结果较好。如果背景层和图像层比较相近,那么处理后会导致一些原有目标置信度降低。但是,综合来看,可以显著提高较为模糊的对象置信度,可以接受对于常见物体损失的置信度。图像输入暗通道算法改进的YOLOv7算法图像输出图1本文网络处理流程将有雾图像处理前后和无雾图像处理前后进行对比,结果分别如图2 和图3所示。无论是有雾图像还是无雾图像,暗通道算法可以提升图像的亮度,增强细节,但是对于有雾图像的处理会更为明显。从图3可以看出,处理之前,在雾中远处的汽车本身非常模糊,如果没有使用去雾算法,人眼很难辩别。但是,使用暗通道去雾算法会存在明显的弊端,处理之后的树的颜色相较于处理之前的颜色更深,干扰更
13、大,且有白色轮廓,可能会对图像的识别处理起到反作用。(a)图像处理前图2 无雾图像暗通道算法处理前后(a)图像处理前(b)图像处理后图3有雾图像暗通道算法处理前后(b)图像处理后77一信息与电脑算法语言Information&Computer研究人员对原YOLOv7网络进行改进,分为两步:第一部是增加对小目标的检测;第二部是对网络backbone部分增加CBAM。增加小目标模块是因为目前基于深度学习的目标检测算法大多是针对具有一定尺寸或比例的目标,导致对于小目标的检测不够精准,所以增加专门的小目标检测层。将两种情况的图像目标定义为小目标:一是当物体的像素点小于32 32 时;二是当目标尺寸小于
14、原图尺寸的0.1时。针对backbone部分增加CBAM。C BA M 由通道注意力和空间注意力两个模块构成。其中,通道注意力可以关注网络的前景,获得更有意义的GT区域,而空间注意力模块增加了网络对上下文信息的敏感度。为了实现整体网络对图像识别的效果,使用YOLOv7原网络直接对无雾图像和有雾图像进行实验,再利用改进后的YOLOv7网络对无雾图像和有雾图像进行对比,结果分别如图4和图5所示。(a)图像测试前图4无雾图像测试前后(a)图像测试前(b)图像测试后图5有雾图像测试前后由图4和图5可知,对于无雾图像,本文提出的网络和直接使用YOLOv7算法的实验效果相近,而对于有雾图像,能够显著增强对
15、小目标的实验效果。将有雾图像和无雾图像各收集150 张,均对图像在暗通道处理和不进行暗通道处理的情况下进行测试,并对比精度结果分别如表1和表2 所示。2023年第10 期表1无雾图像处理数据识别正确数目/次目标对象样本数/个提升精度/%无暗通道有暗通道汽车234行人46表2 有雾图像处理数据识别正确数目/次目标对象样本数/个提升精度/%无暗通道有暗通道汽车178行人41从表1和表2 可以看出,无雾图像经过暗通道处理,再使用改进的YOLO算法进行检测,其平均提升精度可提高10.33%。而有雾图像经过暗通道处理其结果更为明显,平均提升精度可提高2 2.37%。4结语针对一阶段检测算法YOLOv7在
16、雾气条件下对图像处理表现不佳的问题,文章提出一种基于改进的YOLOv7和暗通道算法相结合的目标检测方法。结果表明,在雾气中,本文算法在针对识别的目标物体的效果更好,但是对于不处于雾气的照片,目标识别效果有待提升。可见,该网络对有雾图像的使用效果较为明显。参考文献1刘彦清.基于YOLO系列的目标检测改进算法D.(b)图像测试后长春:吉林大学,2 0 2 1:2 3.2张宁,于鸣,任洪娥,等.融合L-的YOLO-v4小目标检测算法J/OL.哈尔滨理工大学学报,2 0 2 3(1):37-452 0 2 3-0 2-2 7 .https:/doi.org/10.15938/j.jhust.2023.01.005.3李彦错,许媛媛,刘子琪,等基于改进YOLOv3算法的空中红外目标检测.红外技术,2 0 2 3,45(4):38 6-39 3.4周昊,赵静波,宣美艳,等.基于暗通道先验的全局去雾算法J.黑河学院学报,2 0 2 3,14(3):18 6-18 8.5黄金炜,于,郭天元,等.基于暗通道先验的改进图像去雾算法.佳木斯大学学报(自然科学版),2 0 2 3,41(1):2 5-2 8.6张柳.基于单幅图像去雾算法的改进与实现D.武汉:华中师范大学,2 0 14:2 5.153318225178371223410.6813.0422.4721.9578