基于无人机航拍的绝缘子掉串实时检测研究
Real-Time Detection of Insulator Drop String Based on UAV Aerial Photography
通讯作者: 任晓明,男,博士,副教授;E-mail:renxm@sdju.edu.cn.
责任编辑: 孙伟
收稿日期: 2021-10-18
基金资助: |
|
Received: 2021-10-18
作者简介 About authors
李登攀(1996-),男,河南省焦作市人,硕士生,从事新能源发电及并网技术研究.
由无人机代替人工进行电力绝缘子巡检具有重要意义,针对无人机的上位机算力和存储资源有限的问题,提出一种适用于绝缘子掉串故障检测的实时目标检测改进算法.以YOLOv5s检测网络为基础,将颈部结构中路径聚合网络替换为双向特征金字塔网络,以提升特征融合能力;使用DIoU优化损失函数,对模型进行γ系数的通道剪枝和微调,总体上提升检测网络的精度、速度和部署能力;在网络输出处进行图像增强以提升算法可用性.在特殊扩增的绝缘子故障数据集下测试,相较于原始的YOLOv5s算法,改进算法在精度平均值上提升了3.91%,速度提升了25.6%,模型体积下降了59.1%.
关键词:
It is of great significance for unmanned aerial vehicle(UAV) to replace manual inspection of power insulators. Aimed at the problem of limited computing power and storage resources of the UAV, an improved real-time target detection algorithm suitable for insulator drop string failure detection is proposed. Based on the YOLOv5s detection network, first, the PANet networks in neck are replaced with bi-directional feature pyramid network(BiFPN) to improve the feature fusion ability. Next, DIoU is used to optimize the loss function to optimize the model. The channel pruning and fine tuning of the γ coefficient generally improve the accuracy, speed, and deployment ability of the detection network. Finally, the image is enhanced at the network output to improve the availability of the algorithm. The proposed algorithm is tested under a specially expanded insulator fault data set. The results show that compared with the original YOLOv5s algorithm, the average accuracy of the proposed algorithm is improved by 3.91%, the detection speed is improved by 25.6%, and the model volume is reduced by 59.1%.
Keywords:
本文引用格式
李登攀, 任晓明, 颜楠楠.
LI Dengpan, REN Xiaoming, YAN Nannan.
在以架空输电线为主的电力传输中,多数绝缘子安装在室外的高空环境,受自然条件和动物活动等影响极有可能出现爆裂、掉串和污秽等问题,将危害整条线路的正常运行和寿命,因此能及时发现故障绝缘子具有重要的现实意义.对于目前的电网规模,传统的人工攀爬巡检已不适用,而基于无人机的航拍图像巡检已成为主流,效率可达人工巡检的40倍,且安全可靠.
在获取航拍图像后,利用机器视觉检测绝缘子是否出现故障.在绝缘子故障检测研究中,文献[1]针对绝缘子爆裂和缺失问题,将最大类间方差法(Otsu)与形态学滤波结合对图像预处理,用免疫遗传Snake算法优化提取绝缘子边界,计算绝缘子片数量后判断是否出现故障;文献[2]针对绝缘子自爆问题,基于Alexnet网络实现检测能力的提升.文献[3]将改进的YOLOv3算法和全卷积网络(FCN)相结合,优化绝缘子多类故障的检测效果.基于电网不间断运行的特点,运维人员若能在巡检过程中通过实时检测掌握绝缘子的故障所在,将极大提升工作效率,充分做好检修的前期规划工作.但实时检测对算法的检测速度和精度提出了更高要求.在提升检测网络的速度方面,可以通过减小网络输入大小(损失了精度)、量化网络或使用特殊的推理引擎来实现,但这些方法具有较大的局限性,限制了使用场景.目前常用方法是对检测网络结构进行优化处理,文献[4]以YOLOv4算法为基础,对路径聚合网络(PANet)结构和聚焦损失函数进行优化,实现检测速度和精度的小幅提升;文献[5]针对交通监管领域的车辆实时监测,将YOLOv3的主干网络更换为轻量级的EfficientNet网络,同时改进融合机制,有效提升网络的检测精度,并兼顾检测速度;文献[6]设计了一种名为GS-YOLO的检测网络,基于Ghost模块并利用模型压缩技术,与YOLOv4相比在速度、精度和体积方面都有较大提升.
基于无人机平台的实时检测绝缘子故障研究很难实现精度、速度和体积3个方面的综合提升.YOLOv5目标检测算法具有快速、轻量的特点,为该领域的发展创造了一定条件[7].本文针对绝缘子掉串这一故障的实时检测进行研究,尝试通过高清图传实时采集图像,由车载或手持上位机完成图像检测工作.以YOLOv5s检测网络为基础,首先将原PANet网络替换为双向特征金字塔网络(BiFPN),以提升特征融合能力,引入DIoU对损失函数进行优化;其次对模型中批量归一化(BN)层通道进行稀疏正则化处理,通过缩放因子(γ)筛选不重要通道并将其剪切,利用微调技术解决修剪后网络精度的精度丢失问题,在扩增的绝缘子掉串数据集中进行验证;最后在网络输出处进行图像增强处理,尽可能降低背景对绝缘子的成像干扰,总体上增强算法在绝缘子掉串检测中的部署能力和可用性.通过上述方法,绝缘子掉串的巡检过程将更加高效便捷,更好地辅助运维人员完成绝缘子掉串的初检工作,提前做好检修规划,提高工作效率.
1 目标检测算法
YOLO是一种利用回归思想处理图片的目标检测网络,其将整张图片送入网络,解决了图像目标的分类和定位问题,是该系列算法的开山之作[8];相较于前代,YOLOv2在准确性、处理速度和识别种类3方面进行了迭代升级[9];YOLOv3采用了全新的Darknet-53网络,在多个方面做出优化,被广泛应用于工业领域[10];YOLOv4在前代基础上,加入许多有效的改进方法,大大提升了算法的综合性能[11];相较于前代,YOLOv5在可部署性、速度和体积方面有了更大提升,在公开数据集PASCAL-VOC[12]、Kaggle[13]和COCO[14]中表现优异,基本结构如图1所示.其中,将输入图片转化640像素×640像素的RGB三通道输入;CBL为卷积、池化和激活函数组成的功能模块;CSP由跨阶段局部网络组成(CSPNet)的功能模块,依照结构和功能分为CSP1和CSP2两类;骨干和预测部分的数据均为像素值.YOLOv5总体上分为输入、骨干、颈部和预测4个部分,分别用于输入预处理、特征提取、特征融合和检测.
图1
图2
图3
图4
骨干部分负责提取特征映射,通过多次的卷积和池化操作,从输入中提取不同尺寸的特征图像.其中切片处理对3层640像素×640像素的输入图片进行切片操作,最终获得32层160像素×160像素的特征图,切片操作处理效果如图5所示.该结构可以提高网络的运行速度.Yolov5设计了两种CSP结构,以Yolov5s网络为例,CSP1_X结构应用于骨干的主干网络,另一种CSP2_X结构则应用于颈部[15].CSP结构增强了网络的学习能力,减少了计算和内存消耗.骨干部分通过卷积操作,生成了大小分别为80像素×80像素、40像素×40像素和20像素×20像素的特征图,颈部结构融合这3种特征图后可获得更多上下层信息并减少信息丢失.在融合过程中,采用PANet的特征金字塔结构,如图6所示.其中,FPN为特征图金字塔网络,PAN为像素聚合网络.
图5
图6
式中:A和B分别为真实标注框和算法预测框,当A与B不相交时,fIoU=0,在很大范围内(不相交的区域),损失函数没有梯度,可用GIoU函数解决该问题.假设找到一个最小的封闭形状C,使得C可以把A和B包含在内,计算C中不含A和B的面积占C总面积的比率,令IoU值减去这个比率,表示为
图7
图7
卷积对语义信息和位置信息的影响
Fig.7
Influence of convolution on semantic information and location information
图8
2 算法改进
为同时提升检测算法的速度、精度以及减小模型体积,本文以轻量的YOLOv5s网络模型为基础,采用BiFPN特征融合、DIoU损失函数优化,进行γ系数通道剪枝和微调技术优化网络,改进原生网络的综合性能,在最后输出层加入图像增强技术提升可视化效果,提高算法的实用性.
2.1 BiFPN特征融合和损失函数
图9
式中:ρ为计算两个中心点间欧氏距离的函数.当两个绝缘子过于接近时,其中一个绝缘子的预测框很可能被滤除,利用DIoU可在一定程度上提升对于靠近物体的检测效果.
图10
2.2 基于γ系数的通道剪枝和微调
基于YOLOv5s绝缘子掉串检测模型在算力较低的上位机端运行时,检测速度无法满足要求.通过缩减输入图片尺寸可以提升检测速度,减少运算量,但是这将极大降低检测效果,同时模型体积依然在14 MB左右,因此需要对模型进行压缩.在检测算法的压缩处理中,基于缩放因子γ的通道剪枝是一种十分经典的方法,该方案可以减小模型体积和运行时的内存占用,在不影响检测精度的同时,降低模型计算量.该方法的基本原理如下:首先对输入网络初始化,在训练期间不断甄别BN层中不重要的网络通道,将和这个通道有关联的所有输入和输出的连接都剪切,实现通道的稀疏化,进而在几乎没有损失的情况下获得一个紧凑的网络,基本流程如图11所示.
图11
在通道稀疏正则化训练时,需要将其强加到训练的目标函数中,目标函数为
式中:第一项中的l为正常训练下卷积神经网络的损失函数,(x, y)为训练的输入和目标,W为网络中可训练权重;第二项作为惩罚项,其中λ为正则系数,起到平衡这两项的作用,可根据数据集调整,
式中:sign为符号函数,此时即可获取L的最小值.对缩放因子γ经过L1正则化并与权重损失函数联合优化处理后,进入修剪通道阶段.
图12
式中:zin和zout分别为输入和输出;μβ和σβ分别为输入激活的平均值和标准偏差值;ε和β为可训练的仿射变换参数(标度和移位),可将归一化的线性激活转换成任何标度,β对应偏置量.每个通道激活大小,即zout和系数γ正相关,如果γ接近于0,则激活值也非常小,即可判定该通道为不重要的通道而修剪掉.γ值的界定取决于人为在整个网络中所有层设置的全局阈值,即剪枝率,被定义为所有缩放因子γ的一个比率.例如,当要剪掉整个网络40%的通道时,首先需要对所有缩放因子γ进行排序,以从小到大的顺序排列,将缩放因子γ增长序列中处在40%处的γ值定为阈值.
修剪不重要的通道后,检测网络的精度会有所下降,下降程度取决于剪枝率,一般可以通过微调剪枝之后的模型后再训练使其精度恢复[21].微调网络是指将预训练模型网络中的全连接层换成实验数据集类别数的全连接层,且采用预训练好的网络参数为训练的初始值,并在该网络中采用相对较小的数据集即绝缘子掉串故障数据集进行再训练,这将节约大量的训练时间且有助于网络性能的提高.通过上述方法,便可将通道稀疏正则化、根据缩放因子γ和微调修剪网络3个步骤迭代使用,在精度无法提高时结束迭代,此时即可输出一个紧凑高效的绝缘子掉串故障检测网络模型.
2.3 图像增强
在无人机实际航拍中,实时检测时的图像会出现亮度过大、因天气原因导致图像不清晰以及背景复杂等问题,为减轻巡检人员的视觉负担,同时在一定程度上弥补故障部位检测精度相对较低的问题,在改进的检测算法输出处进行图像增强处理.将检测到的绝缘子抠选出来,在其他窗口并行展示.对其进行插值放大处理后,分别采用自动色阶算法、反色处理和拉普拉斯算子锐化等方法进行处理.采用上述方法在几乎不影响实时检测性能的同时优化缺陷部位的显示效果,效果如图13所示.绝缘子本体相对于掉串部位更易检测,将绝缘子抠选并进行多种图像增强处理,以此应对可能出现的由多种情况导致的图像显示不清晰问题,缓解监控压力,提升巡检工作效率.
图13
3 消融实验
本文的训练环境为Windows10系统,搭载i7-10700FCPU@2.90 GHz、GeForce RTX 3060 GPU和32 GB的随机存取存储器,代码基于PyTorch深度学习框架,Python版本为3.8,编译所用的集成开发环境为PyCharm.
3.1 数据集扩增
数据集来自上海市电力公司电力科学研究院,从 5 000 张无人机航拍绝缘子照片中人工筛选出501张,其中包括完整绝缘子和出现掉串故障的绝缘子.使用Labelimg工具重新打标,分为绝缘子整体和掉串故障两类,标签分别为“Insulator”和“defect”.另外考虑到可能存在特殊天气下的巡检问题,使用Imgaug工具包将数据集扩增4倍,包括特殊天气条件如小雨、积雪和雾霾,效果如图14所示.最终获得数据集图片 2 004 张,图片分辨率从 1 656 像素×926像素到 5 184 像素×3 456 像素不等.将所有图片按照约6∶2∶2随机划分为训练集、验证集和测试集,3个集合的图片均不相同.
图14
在检测过程中,大于阈值则算作正确,否则算作错误.其中,真阳性(TP)即正确样本预测为正;假阳性(FP)即错误样本预测为正;假阴性(FN)即正确样本预测为负,没有检测到框;真阴性(TN)即错误样本预测为负.准确率(P)和召回率(R)计算如下:
以R为横轴,以P为纵轴,即可获取PR曲线,而平均精准度(AP)即为对PR曲线上的P求均值.对于PR曲线,AP的积分计算如下:
AP值越大,模型效果越好.现阶段,大多目标检测采用mAP(所有检测类别的AP取均值即得到mAP作为衡量标准,本文采用mAP(50%),即阈值为0.5时的mAP值,检测速度以每张图片的检测时间为标准.
3.2 测试结果
采用消融实验验证算法性能,共测试了6组网络,分别在有无数据集扩增、DIoU损失函数、BiFPN结构以及γ系数的剪枝微调方面开展.所有网络的输入尺寸均为640像素×640像素,预训练模型均为官方提供的COCO数据集下的训练结果,超参数设置相同,训练、验证与测试均在本文自制数据集进行,以保证结果的有效性.所有训练结果均达到收敛状态,从网络模型的速度、精度和体积3个方面进行对比.
第1组测试使用扩增前的数据集,模型为YOLOv5s的原始网络;第2组使用扩充后的数据集,其他与第1组相同;第3~5组均在第2组的基础上,单独或同时添加BiFPN 和DIoU改进方法;第6组在第5组基础上增加基于γ系数的剪枝微调.在第6组实验过程中,首先进行稀疏训练,将本来趋于正态分布的BN层权重向0收敛,极小值越多,说明网络越稀疏.根据迭代情况调整学习率,稀疏训练前后的BN层权重分布如图15所示.其中,γG为BN层γ权重值,N为训练次数.
图15
表1 所有网络模型的测试结果汇总
Tab.1
组别 | 网络模型 | mAP(50%) | NRAM/MB | 体积/MB | |||
---|---|---|---|---|---|---|---|
绝缘子整体 | 掉串故障位置 | 平均值 | |||||
1 | YOLOv5s | 0.908 | 0.798 | 0.853 | 12.4 | 7.02 | 13.7 |
2 | YOLOv5s+数据集扩充 | 0.927 | 0.861 | 0.894 | 12.5 | 7.02 | 13.7 |
3 | YOLOv5s+数据集扩充+DIoU | 0.939 | 0.862 | 0.901 | 12.5 | 7.02 | 13.7 |
4 | YOLOv5s+数据集扩充+BiFPN | 0.929 | 0.847 | 0.888 | 12.2 | 7.08 | 13.9 |
5 | YOLOv5s+数据集扩充+ BiFPN +DIoU | 0.945 | 0.868 | 0.907 | 12.7 | 7.08 | 13.9 |
6 | YOLOv5s+数据集扩充+ BiFPN + DIoU+γ系数剪枝微调 | 0.951 | 0.906 | 0.929 | 9.3 | 2.79 | 5.60 |
根据表1结果分析可知,数据集扩充对平均检测精度影响较大,在原有网络模型的基础上提升了7.3%;在此基础上,DIoU在精度平均值上小幅提升了0.78%,BiFPN在速度上提升了2.5%,当两者同时引入时,精度平均值提升了1.5%,但速度却下降了1.6%,在追求高网络特征提取能力时损失了部分检测速度;最后对模型进行γ系数剪枝微调处理,精简冗余的网络参数,精度平均值提升了3.91%,速度提升了25.6%,体积下降了59.1%.
图16
图17
表2 轻量网络测试数据对比汇总
Tab.2
网络模型 | mAP(50%) | NRAM/ MB | 体积/ MB | |||
---|---|---|---|---|---|---|
绝缘子 整体 | 掉串故 障位置 | 平均值 | ||||
YOLOv3-tiny | 0.901 | 0.897 | 0.899 | 5.4 | 8.67 | 16.6 |
YOLOv5n | 0.883 | 0.636 | 0.760 | 9.5 | 1.76 | 3.74 |
YOLOv5s | 0.927 | 0.861 | 0.894 | 12.5 | 7.02 | 13.7 |
YOLOXs | 0.977 | 0.909 | 0.943 | 12.7 | 8.94 | 68.5 |
本文 | 0.951 | 0.906 | 0.929 | 9.3 | 2.79 | 5.60 |
此外,所提算法可正常检测绝大部分目标,部分检测结果如图18所示(未经图像增强处理).
图18
4 结语
提出一种改进YOLOv5s绝缘子掉串实时检测算法,方便巡线人员对绝缘子掉串故障快速定位,提升巡线效率.首先将特征融合结构替换为性能更佳的BiFPN结构,引入DIoU函数对损失函数进行优化;其次对模型进行基于γ系数的通道剪枝轻量化处理,并微调回准;最后在网络输出部分增加图像增强处理,缓解巡检人员的监测压力.实验结果表明,与其他轻量网络模型相比,该改进算法综合性能更佳;相较于原始的YOLOv5s,模型精度平均值提升了3.91%,速度提升了25.6%,体积下降了59.1%,具有较高的实际意义.另外,针对平台算力不足问题和便携性较差等问题,将来考虑引入5G通信技术,将处理工作放在云端,巡检人员仅需携带显示设备即可,实现智能实时检测.
参考文献
航拍图像中绝缘子串的轮廓提取和故障检测
[J].
Contour extraction and fault detection of insulator strings in aerial images
[J].
基于Alexnet网络的绝缘子自爆无人机巡检技术研究
[J].
Insulator self-explosive inspection technology based on alexnet network in UAV grid inspection
[J].
基于协同深度学习的二阶段绝缘子故障检测方法
[J].
Two stage insulator fault detection method based on collaborative deep learning
[J].
改进YOLOv4的表面缺陷检测算法
[J/OL].(2021-11-15)[2021-12-06]. https://doi.org/10.13700/j.bh.1001-5965.2021.0301.
Surface defect detection algorithm based on improved YOLOv4
[J/OL].(2021-11-15)[2021-12-06]. https://doi.org/10.13700/j.bh.1001-5965.2021.0301.
面向高速公路的车辆视频监控分析系统
[J].
Vehicle video surveillance and analysis system for the expressway
[J].
面向移动目标识别的轻量化网络模型
[J].
Lightweight network model for moving object recognition
[J].
Yolov5
[DB/OL]. (
You only look once: Unified, real-time object detection
[C]//
YOLO9000: Better, faster, stronger
[C]//
YOLOv3: An incremental improvement
[EB/OL]. (
YOLOv4: Optimal speed and accuracy of object detection
[J/OL].
PASCAL visual object classes challenge
[EB/OL]. (
Global wheat detection
[EB/OL]. (
Microsoft COCO: Common objects in context
[M]//
CSPNet: A new backbone that can enhance learning capability of CNN
[C]//
Generalized intersection over union: A metric and a loss for bounding box regression
[C]//
EfficientDet: Scalable and efficient object detection
[C]//
Distance-IoU loss: Faster and better learning for bounding box regression
[J].DOI:10.1609/aaai.v34i07.6999 URL [本文引用: 3]
Learning efficient convolutional networks through network slimming
[C]//
Deep compression: Compressing deep neural network with pruning, trained quantization and huffman coding
[J].
基于全局信息的卷积神经网络模型剪枝微调优化方法
[J].
Pruning and fine-tuning optimization method of convolutional neural network based on global information
[J].
Object detection based on improved YOLOv3-tiny
[C]//
/
〈 |
|
〉 |
![](../../../richhtml/1006-2467/richHtml_jats1_1/images/1.png)