丁楠楠 胡旭晓 吴跃成 汪威 王佳
摘 要:针对输电线路附近可能出现的大型违章车辆施工造成外力破坏的情况,为保证输电线路运行的安全和稳定,提出了改进的YOLOv5目标检测算法。在原有YOLOv5算法的基础上,将其使用的Bounding box损失函数GIOU_Loss改为CIOU_Loss,使其具有更快更好的收敛效果;同时将其使用的经典NMS改为DIOU_NMS,使其对一些遮挡重叠的目标有更好的识别效果。实验结果显示,改进后的YOLOv5算法模型可以有效地监控输电线路附近的外力破坏情况。
关键词:输电线路;目标检测;改进YOLOv5
中图分类号:TP249 文献标识码:A
文章編号:2096-1472(2022)-01-14-04
Abstract: Operation of large illegal vehicles are likely to cause external damage on nearby transmission line. In order to ensure the safe and stable operation of transmission line, this paper proposes an improved YOLOv5 target detection algorithm. Based on the original YOLOv5 algorithm, the Bounding box loss function GIOU_Loss used by it is changed to CIOU_Loss, so that it has a faster and better convergence effect. At the same time, the classic NMS used by the original one is changed to DIOU_NMS, so that it has a better detection effect for some occluded and overlapped targets. Experimental results show that the improved YOLOv5 algorithm model can effectively monitor the damage caused by external forces near transmission line.
Keywords: transmission line; target detection; improved YOLOv5
1 引言(Introduction)
近年来,随着我国各类产业尤其是互联网的飞速发展,电力的需求量也直线上升。输电线路是电力系统的生命线,关系到整个电力系统的安全和效益,因此保证输电线路的稳定运行至关重要。
由于输电线路长期处于复杂的地理位置,且与人类活动紧密联系,因此输电线路有较高的可能性会出现故障,严重影响电网安全运行的同时,也对人民的生命财产安全构成了极大的威胁。
据统计,随着城市化进程的加速发展,大型车辆违章施工已经成为输电线路外力破坏的主要因素[1]。目前对于输电线路的外力破坏检测,主要是通过安装在高空塔架的摄像头拍摄照片,再交给后端中心去进行人工分析[2]。监控人员通过监看摄像头拍摄现场传回的静态图像查看其中可能出现的外力入侵目标,如吊车、油罐车、挖掘机等大型施工车辆,在发现外力入侵行为时则发出警告,派出电网维护人员至现场进行处理[3]。这种依靠人工检查的方法工作量大,工作人员容易疲劳,实时性差且效率较低。
近年来,随着深度学习的快速发展,许多研究学者发布了大量基于卷积神经网络的目标检测算法。目前,目标检测领域的深度学习方法主要分为两类:一类是基于区域候选网络(RPN)来提取目标候选区域的两阶段算法,如R-CNN[4]、Fast R-CNN[5]、Faster R-CNN[6]等。这种类别的目标检测算法主要是在特征提取的基础上,使用一个神经网络来生成候选区域,然后再对候选区域回归来确定目标的类别和位置。另一类是端到端的一阶段目标检测算法,如YOLO系列[7-9]算法。此类方法直接对图片内容进行分类和回归,不需要提取候选区域,将目标检测视为回归问题处理。
本文使用输电线路现场监控图像数据,以及网络收集的工程车辆数据,制作了输电线路外力破坏的检测数据集,以YOLOv5模型为主体,研究改进模型的效果,进一步提高模型的识别精度和鲁棒性。
2 YOLOv5算法简介(Introduction to YOLOv5 algorithm)
YOLO(You Only Look Once)网络是一种基于回归的目标识别算法,具有较快的检测速度,在很多任务中取得了很好的效果。YOLO网络将输入的图像划分成大小为S×S的网格,目标物的中心位置落到哪个网格上,就由该网格对应锚框负责检测目标[10]。相比于其他目标检测算法,YOLO的多尺度算法能够更为有效地检测目标,且在实时性方面表现得较为突出,适合输电线路异常情况检测的需求。
YOLOv5根据网络深度的不同分为YOLOv5s、YOLOv5m、YOLOv5l、YOLOv5x,其中YOLOv5x检测精度最高,但是网络模型较大,对设备的要求较高;YOLOv5s的模型尺寸较小,检测速度快,且部署方便。考虑到保证检测精度的同时,能够提高检测速度,减小模型尺寸,本文选用YOLOv5l作为实验使用的模型。YOLOv5的网络结构可以分为Input、Backbone、Neck和Prediction四部分。
YOLOv5在输入端采用了和YOLOv4一样的Mosaic数据增强方式。Mosaic数据增强方式参考了CutMix数据增强方式,随机读取四张图片,然后再对这四张图片采取随机缩放、随机裁剪、随机排布的方式拼接到一张图上作为训练数据,既丰富了检测物体的背景,提高了数据样本的多样性,又增加了很多小目标,提高了小目标物的识别能力。并且,四张图片拼接在一起,在进行Batch Normalization的时候会同时计算四张图片,相当于增加了Batch Size的大小,减少了GPU内存的消耗。YOLOv5还在YOLOv4的基础上增加了自适应锚框计算和自适应图片缩放功能。在YOLO算法中,针对不同的数据集,都会使用K-means聚类出初始设定的锚框。在以往的YOLO算法中,计算初始锚框的值都是通过单獨的程序运行的,但在YOLOv5中将此功能嵌入代码中,每次训练时,自适应地计算出不同训练集中的最佳锚框值。YOLOv5的自适应图片缩放在对原始图片进行缩放时,能够自适应地添加最少的黑边,减少信息冗余,提高推理速度。
在Backbone上主要使用了Focus结构、CSP结构。Focus模块是对图片进行切片操作,从而得到二倍下采样特征图,相比于一般的下采样,Focus模块可以在一定程度上减少模型的计算量,并且不会使信息丢失,为后续的特征提取保留了更完整的图片下采样信息。不同于YOLOv4只在主干网络Backbone中使用CSP结构,YOLOv5中设计了两种CSP结构,其中CSP1_X结构应用于Backbone,CSP2_X结构则应用于Neck中。在Neck上采用了PAN结构和FPN结构,用于特征增强。在损失函数上,YOLOv5采用GIOU_Loss作为Bounding Box的损失函数。
3 改进的YOLOv5算法(Improved YOLOv5 algorithm)
(1)用CIOU_Loss取代GIOU_Loss
IOU是指目标预测框与真实框的交集与并集的比例,通常称为交并比,它可以反映预测检测框与真实检测框的检测效果。IOU_Loss即为1-IOU,其表达式如式(1)所示。
IOU_Loss作为Bounding Box的损失函数存在一个问题,即如果预测框与真实框没有相交,根据定义IOU=0,不能反映两者的距离大小。同时因为损失函数失去了可导的性质,没有梯度回传,无法进行学习训练。基于此,相关研究者提出了GIOU_Loss,对于两个框A、B,先计算它们的最小凸集(包围A、B的最小包围框),然后结合最小凸集计算GIOU_Loss,其表达式如式(2)所示。
YOLOv5就是采用GIOU_Loss作为Bounding Box的损失函数,解决了两个框没有交集时无法训练的问题,同时考虑到了IOU没有关注的非重叠区域,能够更好地反映出两个框的重合度。但是,仍无法解决预测框在真实框内部且预测框面积不变的情况,因为这个时候预测框和真实框的差集是相同的,不管预测框在真实框内部的哪个位置,GIOU_Loss都是相同的。针对GIOU_Loss存在的问题,相关学者提出了DIOU_Loss,相比于GIOU_Loss限制最小外接矩形和预测框与真实框并集的差值,DIOU_Loss直接限制了最小外接矩形的面积和预测框与真实框中心点的位置,其表达式如式(3)所示。
其中,为预测框与真实框中心点之间的欧几里得距离,c为预测框与真实框最小外接矩形的对角线长度。一个好的回归损失应该考虑三点,分别为覆盖面积、中心点距离和长宽比。而DIOU_Loss只考虑了覆盖面积和中心点距离,所以研究人员在DIOU_Loss的基础上加入了长宽比的因素,提出了CIOU_Loss,其表达式如式(4)所示。
其中,是预测框与真实框长宽比的距离:
是一个权重系数:
因此,本文选用将覆盖面积、中心点距离和长宽比等信息都考虑在内的CIOU_Loss作为Bounding Box的损失函数,提高回归精确度,使得预测框更加符合真实框。
(2)用DIOU_NMS取代经典的NMS
NMS(非极大值抑制)是目标检测算法后处理中常用的技术,用于将冗余的检测框过滤掉。在经典的NMS中,得分最高的检测框和其他检测框逐一计算出一个对应的IOU值,并将该值超过NMS Threshold的框全部过滤掉。可以看出,在经典的NMS算法中,IOU是唯一考虑的因素。但是在实际的应用场景中,当两个不同物体距离很近时,由于IOU值比较大,往往经过NMS处理后只剩下一个检测框,可能导致漏检的情况发生。为了避免发生漏检,本文用DIOU_NMS取代经典的NMS。DIOU_NMS不仅仅考虑IOU,还关注两个框中心点之间的距离。如果两个框之间的IOU比较大,且这两个框之间的距离也比较大时,可能会认为这是两个物体的框而不会被过滤掉。
4 评价指标(Evaluating indicator)
基于神经网络的目标检测常用的评价指标通常为精确率(Precision)和召回率(Recall)[11]。
以识别吊车为例,上式中,TP指的是正确检测出吊车目标;FP指的是将其他目标物识别为吊车;FN指的是吊车未被正确识别出。
5 实验分析(Experimental analysis)
5.1 实验数据集的制作与训练细节
针对检测输电线路附近可能出现大型施工车辆这一情况,本文制作了一个输电线路附近大型施工车辆的数据集。本数据集的数据来源于安装在多个输电线路上的摄像头拍摄到的图像数据。并非所有采集到的图像都适用于制作训练目标检测模型的数据集,因此,我们首先要对采集到的图像数据进行筛选,然后使用labelImg图像标注软件对图像进行标注。标注的类别为大型卡车、挖掘机、吊车和油罐车,如图1(a)所示为输电线路附近挖掘机的图像标注。使用labelImg标注完图像后会生成一个xml格式的文件,如图1(b)所示,其中size一栏记录原图的宽度、高度和通道数目,object一栏记录目标的类别及标注矩形框的左上角和右下角坐标[12]。整个数据集包含2,000 张图片,将数据集随机分为训练集和测试集,其中训练集1,400 张图片,测试集600 张图片。
此次实验在Ubuntu 16.04操作系统、Intel i5-9300H处理器、NVIDIA GTX1660Ti显卡下搭建实验环境,包括CUDA 10.1、OpenCV 4.4.0,使用PyTorch 1.7.0搭建YOLOv5的网络框架。epochs设置为300,batch_size设置为16。
5.2 实验结果
为了验证YOLOv5网络模型对输电线路外力破坏检测的准确性,从输电线路数据集的测试集中随机选出包含大型卡车、挖掘机、吊车和油罐车的图片各125 张,用于实验测试。
将测试样本放在YOLOv5的测试文件夹下,分别用原始YOLOv5算法训练出的网络模型和改进YOLOv5算法训练出的网络模型对样本进行检测,然后再统计出两种网络模型的精确率和召回率。
由表1和表2对比可得,YOLOv5改进算法相较于原始YOLOv5算法在精确率和召回率上都有所提高,图2为改进YOLOv5的检测效果示意图。
6 结论(Conclusion)
本文使用输电线路现场采集到的图像数据制作数据集,并用其训练网络模型,对网络模型的性能进行实验测试。实验结果表明,基于改进YOLOv5的目标检测算法对输电线路外力破坏的检测效果较好,能够满足其要求。
参考文献(References)
[1] 钱宇.基于深度学习的输电塔架异常识别与预警系统的设计与实现[D].济南:山东大学,2019.
[2] 沈方晴,许金明,王劲松.架空输电线路防外力破坏工作的分析与对策[J].科技信息,2013(05):393,430.
[3] 闫春江,王闯,方华林,等.基于深度学习的输电线路工程车辆入侵检测[J].信息技术,2018,42(07):28-33.
[4] GIRSHICK R, DONAHUE J, DARRELL T, et al. Rich feature hierarchies for accurate object detection and semantic segmentation[C]// SUN J, KIM J, PANTIC M, et al. 2014 IEEE Conference on Computer Vision and Pattern Recognition. Columbus, OH, USA: IEEE, 2014:580-587.
[5] GIRSHICK R. Fast R-CNN[C]// SUN J, LIU W, PRICE B, et al. 2015 IEEE International Conference on Computer Cision. Santiago, Chile: IEEE, 2015:1440-1448.
[6] REN S, HE K, GIRSHICK R, et al. Faster R-CNN: Towards real-time object detection with region proposal networks[J]. 2017 IEEE Transactions on Pattern Analysis and Machine Intelligence, 2017, 39(6):1137-1149.
[7] REDMON J, DIVVALA S, GIRSHICK R, et al. You only look once: Unified, real-time object detection[C]// PRICE B, LIN L, CUPTA A, et al. 2016 IEEE Conference on Computer Vision and Pattern Recognition. Las Vegas, NV, USA: IEEE, 2016:779-788.
[8] REDMON J, FARHADI A. YOLO9000: Better, faster, stronger[C]// SCHIELE B, LIN L, DARRELL T, et al. 2017 IEEE Conference on Computer Vision and Pattern Recognition. Honolulu, HI, USA: IEEE, 2017:6517-6525.
[9] REDMON J, FARHADI A. YOLOv3: An incremental improvement[Z/OL]. [2021-08-19]. https://arxiv.org/abs/1804.02767.
[10] 李同,阮士峰,陳卓,等.基于卷积神经网络的目标检测综述[J].科技经济导刊,2020,28(27):18-20.
[11] 万晨霞.基于卷积神经网络的道路多目标检测算法研究[D].郑州:河南工业大学,2019.
[12] 吕宁.基于深度学习的输电线路防外力破坏监测系统研究[D].哈尔滨:哈尔滨工程大学,2018.
作者简介:
丁楠楠(1996-),男,硕士生.研究领域:图像处理.
胡旭晓(1965-),男,博士,教授.研究领域:图像处理,机器视觉.本文通讯作者.
吴跃成(1966-),男,博士,副教授.研究领域:人机交互.
汪 威(1997-),男,硕士生.研究领域:图像处理.
王 佳(1998-),女,硕士生.研究领域:故障诊断算法研究.