基于YOLOv5算法的无人机巡检图像中绝缘子单目测距方法
2024-09-19陈彬刘华洲李勃铖贾燕峰郭昊孙君录
摘 要:为了提升无人机安全飞行性,提升线路运维能力,基于YOLOv5 深度学习算法,提出了一种无人机单目测距方法,用于实现一种精确的辅助距离测量功能。对现有的开源绝缘子数据集进行了扩充和标定,采用YOLOv5s 模型进行了训练、验证和测试,建立了绝缘子串的测距模型,设计代码加入到检测模块中,实现对绝缘子的识别和测距。实验结果表明,该模型能够准确识别输电线路不同类型的绝缘子并进行精确测距,平均测距误差为4. 76% ;对复合绝缘子的识别和测距效果最佳,改变俯仰角和相对距离,最大测距误差为6% ;在不同天气条件下,亮度变化越大,对绝缘子的识别测距误差也越大,亮度增加至100% 时,误差最高可达到12. 3% 。测距所需平均时间为0. 298 4 s,可以实现高效、高精度测距,为无人机巡检安全距离测量提供支持。
关键词:安全距离;绝缘子;深度学习;YOLOv5;图像识别;单目测距
中图分类号:TM755;TP391 文献标志码:A 开放科学(资源服务)标识码(OSID):
文章编号:1003-3106(2024)06-1421-10
0 引言
输电线路是电力系统的重要组成部分,对其进行巡检维修以维持正常稳定运行是保证电力系统稳定的重要环节。研究表明,线路运行中一半以上故障是由绝缘子问题引起的[1]。因此,在巡检过程中,加强对输电线路特别是绝缘子的检查尤为重要。传统的绝缘子检查方式依赖巡检人员沿线进行近距离巡视和检测。然而,随着输电线路的扩建,人工巡检任务的负担增加,巡线的难度也加大[2-3]。近年来,全国各电网公司大力发展无人机巡线,相较于传统的人工巡线方式,无人机巡线具有高效率、不受地形限制、实时信息传输和安全等优点[4]。然而,在运行过程中,输电线路会产生电磁场,可能干扰无人机的信号,并且有可能由于电场击穿使无人机的电子设备发生故障,导致无人机坠毁,威胁到输电线路的安全[5]。因此,在进行绝缘子巡检时,必须充分考虑输电线路电磁场对无人机的影响,与绝缘子保持合适的安全距离[6]。
目前,测量无人机与绝缘子之间安全距离的非接触式方法主要包括超声波测距、红外测距和视觉测距[7-9]。相较于前2 种测距,视觉测距是一种比较具有优势和发展前景的测距方法。视觉测距具有更高的精度,并且能够提供被测物体的形状信息以及实现三维重建和测量。视觉测距通常分为单目测距和双目测距。双目测距精度高,但是成本较高、安装复杂、存在一定的局限性,并且无人机搭载双目相机会增加功耗、降低续航时间。相比之下,单目测距成本低、灵活性高、安装简单,更适合无人机巡线。目前国内外已经开展了许多关于单目测距的研究。例如,文献[10]提出了一种将YOLO 目标检测与距离测量相结合的方法,实现了实时距离测量。文献[11]提出一种使用深度学习算法YOLOv5s 的无人机光学快速识别定位追踪系统,实现了无人机的双目测距。文献[12]基于深度学习提出一种高检测精度且速度快的YOLOv4 目标检测算法,并结合单目测距,实现了实时行人目标检测及测距。文献[13]通过使用YOLOv4 算法进行模型训练,设计了一种单目测距算法,使得测距误差控制在5% 以内,展示了将YOLO 深度学习算法和单目测距相结合的可行性和准确性。
基于以上背景,本文提出了一种基于YOLOv5算法的无人机巡检图像中绝缘子快速识别与单目测距方法。通过收集635 张无人机巡检绝缘子时拍摄的绝缘子图片和现有的600 张绝缘子数据集图片,并进行标定,构建了绝缘子的YOLO 数据集。然后,利用YOLOv5 算法对数据集进行训练、验证和测试,实现了对不同类别、不同环境下绝缘子的检测。此外,根据小孔成像原理,设计了一种用于绝缘子的单目测距模型,并将计算代码嵌入到绝缘子检测代码中。最终,通过输入相机参数和绝缘子参数,实现了对绝缘子的检测和快速测距。通过实验证明了该测距算法在不同情况和环境下的准确性和实用性,并分析影响该测距程序精度的因素。该方法为无人机巡检绝缘子提供了一种经济且实用的辅助测距手段。
1 基于YOLOv5 算法的绝缘子目标检测方法
1. 1 YOLOv5 算法及数据集
YOLOv5 是一种基于深度学习的目标检测算法,在目标检测领域具有很高的精度和效率,其算法结构可以分为以下七部分:输入层、Backbone 网络、Neck 网络、Head 网络、输出层、损失函数和数据增强[14-16]。YOLOv56. 0 网络结构如图1 所示。
本文使用的训练数据集是中国输电线路绝缘子数据集,该数据集包含600 张不含缺陷的绝缘子图片,结合工程中无人机巡线拍摄的绝缘子图片,将绝缘子图片数据集扩充至1 235 张。使用图像标注工具LabelImg 对绝缘子图片进行标定,并将标定的结果输出为YOLO 格式的标签。然后通过Python 软件里的划分数据集代码将所有图片和标签按8 ∶ 1 ∶ 1 的比例划分训练集、测试集和验证集并将图片的分辨率调整为640 pixel×640 pixel。图2 为绝缘子标定过程。
1. 2 模型训练及检测
本次模型训练是基于AutoDL 云电脑平台,操作系统为Linux,GPU 为NVIDIA RTX 3090,内存为24 GB,深度学习环境为PyTorch 1. 8. 1+Python 3. 8+cuda 11. 1。具体的训练参数设置如表1 所示。
训练结果以精度(P)、召回率(R)、平均准确率(mean Average Precision,mAP )和准确率(AveragePrecision,AP)来衡量准确性。TP 为把正例分类归为正例,FP 为把正例分为负例,FP 为把负例归为正例,k 为每个类别中要计算的预测结果的最大数量。具体的计算如下:
图3 为深度学习的训练结果,根据训练结果可知,该绝缘子的训练模型经过300 轮次的训练后精度接近1. 0 并且P、R、mAP 曲线接近于1,此模型的训练结果较为优良,可以用作后续的绝缘子检测任务。
训练完成后,配置YOLOv5 中的detect 代码随机进行绝缘子图片的检测。结果表明,绝缘子的检测准确率达到了96% ,算法在大多数图片中能够有效地识别绝缘子,部分绝缘子检测效果如图4 所示。由图4 可知,绝缘子边缘轮廓被YOLOv5 算法识别框选,可以根据框选结果获取识别框在图中的像素宽度和高度,为后续的单目测距提供测距基础数据。
2 单目测距算法及改进
2. 1 单目测距原理
单目测距的基本原理是将现实世界的三维坐标转换为相机中的像素坐标,通过比例关系实现测距。坐标系转换是将世界坐标系、相机坐标系、图像坐标系和像素坐标系四大坐标系经过刚体变换,透视投影和二次转换三次变换,将三维世界坐标系中的物体投影为二维平面的像素[17]。图5 为相机的成像原理。
图中,OW -XW YW ZW 为世界坐标系,OC -XC YC ZC为相机坐标系,o-xy 为图像坐标系,u、v 为像素坐标系,P 为真实世界中的绝缘子一点,p 是P 的成像点。
世界坐标系到像素坐标系转换的最终公式如下:
式中:M1 为外参矩阵,M2 为内参矩阵,fx 为横向焦距,fy 为纵向焦距,ZC 为物体相对于相机的深度,u为像素坐标系中水平方向的坐标,v 为像素坐标系中垂直方向的坐标,u0 为主点水平方向的像素坐标,v0 为主点垂直方向的像素坐标,R 为旋转矩阵,T 为平移向量,XW 、YW 、ZW 为世界坐标系中的点的三维坐标。通过转换公式可知,需要获得相机的M1 、M2 ,才能计算物体与相机的距离。
2. 2 相机标定与畸变矫正
根据式(5)可知,如果要计算距离,需要得到相机的M1 和M2 。因为无人机进行飞行时,M1 不可能不变,所以定M1 为单位矩阵,后续再进行姿态补偿。获取M2 ,一般需要通过相机标定来确定[18]。相机标定的步骤为:将相机标定板固定,使用相机随机拍摄不同角度的20 张标定板的图片,然后打开Matlab 的Camera Calibrator,导入标定图片,设置标定板每个正方形格的边长为25 mm 并进行标定,软件自动分析标定板的正方形格角落并计算,输出拍摄相机的具体参数[19]。图6 为相机标定图片。
相机畸变是指摄影机器在将实际世界中的物体投影到成像平面时,由于镜头形状、位置等因素导致的图像失真现象。相机畸变一般可分为径向畸变和切向畸变,在此相机切向畸变不做考虑。径向畸变的矫正公式如下:
x^ = x(1 + k1 r2 + k2 r4 ), (6)
y^ = y(1 + k1 r2 + k2 r4 ), (7)
式中:x^、y^ 为相机畸变矫正后的图像横、纵坐标,x、y为畸变矫正前的图像横、纵坐标,r 为像平面上的距离,k1 、k2 为径向畸变系数,由相机标定获得。相机标定的结果如表2 所示。
2. 3 测距模型设计
通过上述步骤,确定了真实世界中的目标绝缘子和图像平面中绝缘子的关系。考虑到无人机在巡线过程中,难以直接获得无人机到绝缘子所在平面的垂直高度;改变无人机的拍摄姿态后,相机的姿态角也会随之变化,从而测量的距离也会产生变化,引起较大的误差。所以,需要对距离进行修正。相机的姿态角分为俯仰角θ1 、偏航角θ2 和翻转角θ3 ,俯仰角是相机绕其水平轴旋转的角度,翻转角是相机绕其前后轴旋转的角度,偏航角是相机绕其垂直轴旋转的角度[20],姿态角示意如图7 所示。一般情况下,需要考虑3 个角度对测距的影响。绝缘子的形状可以类比为圆柱体,改变偏航角,对绝缘子的测距没有影响,绝缘子的像素宽度不会产生变化。通常认为相机的翻转角对单目测距的影响很小,所以,本文仅考虑相机的俯仰角对测距的影响。因此,本文设计了2 种无需测量高度并考虑无人机飞行姿态的单目测距模型。
2. 3. 1 基于单片绝缘子特征尺寸的单目测距模型
第一种测距模型是基于单片绝缘子特征尺寸进行测距,如图8 所示。已知绝缘子的宽a 和长b。α为相机的俯仰角。相机具有俯仰角θ 时,b 和a 的比值会变化,可以由此求出相机的俯仰角来修正距离。从相机到绝缘子的直线距离可以通过坐标系转换的基本原理得出相机到绝缘子的直线距离d =fx b/B 。相机俯仰角公式为sin θ = Ab/aB,故相机到绝缘子的垂直距离D = d cos θ。而A、B 是绝缘子的像素宽和长,由相机标定获得。推得最终距离D 的最终计算公式为:
2. 3. 2 基于双片相邻绝缘子的单目测距模型
图9 所示为本文设计的另外一种单目测距模型,测距原理为:测量得到双片相邻绝缘子的距离d1 、d2 ,而双片绝缘子之间的高度H 已知,所以由余弦定理,可以求得角度α、β,俯仰角θ 为90-α-β,则最终距离D 如下:
模型设计完成后,将测距模型的计算公式与绝缘子检测代码结合,把最终的测距公式写入到distance. py 测距文件中计算,并将计算结果写入plot. py 画框文件中,使测距计算结果呈现在识别框上。
3 实验设计及结果分析
测距系统完成后,需要进行以下实验来验证此测距系统的可行性和实用性:明确2 个测距模型的测距精度;被测绝缘子的类别对测距的误差影响;相机拍摄姿态产生的平均误差大小;天气环境对测距精度的影响。具体测距流程如图10 所示。
3. 1 实验条件及平台布局
本实验在Windows 11 系统中进行,CPU 为Intel(R)core(TM)i5-8300H 2. 3 GHz,GPU 为NVIDIAGeForce GTX 1050Ti,编程软件为PyCharm 2022. 3、Matlab R2021a,Python 版本为3. 8。
图11 为具体的实验场景模拟。相机到绝缘子的实际距离使用卷尺进行测量,俯仰角的值通过将手机和拍摄相机绑定,使用手机自带的水平仪来测量。测距用时为输入图片后,点击运行程序到输出测距图片的时间,通过代码来显示并手动记录。
3. 2 实验过程及分析
3. 2. 1 选择测距模型
首先比较本文设计的2 种不同的测距模型的精度,选出精度更高的模型进行后续测量。在相同距离下,不改变俯仰角和绝缘子,使用2 种模型对绝缘子进行测距,模型1 为单片绝缘子测距模型,模型2为双片绝缘子测距模型,实验结果如表3 所示,不同模型测距误差如图12 所示。
由表3 和图12 可以看出,对复合绝缘子进行同等条件测距,在1、5 m 处测距时模型1 的误差都低于模型2,在3 m 处时误差大致相同。模型1 的平均误差为4. 76% ,模型2 的平均误差为11. 07% ,所以模型1 的测距精度要优于模型2,后续的测距任务都选择模型1 来进行测量。
3. 2. 2 改变绝缘子类别
在输电线路设计中,选择适合该输电线路的绝缘子需要考虑额定电压、环境条件、线路类型和经济性等问题。深度学习对不同类别的绝缘子的识别和轮廓提取的效果不一样。不同类型的绝缘子在形状、材料和表面纹理等方面可能存在差异,这些差异可能会影响深度学习算法的识别准确率[21]。为了提高本测距程序的普适性,实验针对输电线路最常用的3 种绝缘子:复合绝缘子、玻璃绝缘子和瓷式绝缘子进行测距,并根据3 种类别的绝缘子的单目测距结果来分析此程序对不同类别的绝缘子的测距精度。实验在不改变其他条件的情况下,对3 种绝缘子在1、3、5 m 处进行测距。测量效果和测量结果如图13 所示。
不同类别的绝缘子测距结果如表4 和图14 所示。结果表明,不同类别的绝缘子,测距误差各不相同。复合绝缘子的平均测距误差为4. 76% ,玻璃绝缘子的平均误差为8. 4% ,瓷式绝缘子的平均误差为7. 11% ,复合绝缘子的测距结果要好于玻璃绝缘子和瓷式绝缘子。复合绝缘子在5 m 较远距离测量时,误差较大,而玻璃绝缘子和复合绝缘子,在距离较近时,测量误差较大。
3. 2. 3 改变拍摄姿态
考虑到在输电线路无人机巡线中,需要在各种复杂的情况下进行拍摄,无人机的飞行姿态通常不会与绝缘子保持相平,所以本文提出的测距模型均考虑了相机俯仰角的影响,并验证本文所提出的测距模型的精度。实验在距离复合绝缘子3 m 处,使测距相机具有+30°和-30°的俯仰角,测量相机在不同俯仰角的情况下,测距模型的误差,测距结果如表5 所示,测距误差和俯仰角的关系如图15 所示。
由图15 可以看出,相机的拍摄俯仰角对于测距结果存在影响。在相机的俯仰角为0°时,误差是最小的。当测距俯仰角增大时,误差也会呈现增大趋势,并且角度越大,误差也会变得更大。在-30° ~ +30°,误差最大为5% 。所以改变相机的俯仰角对于测距结果有一定的影响,且俯仰角越大,测距误差越大。本文提出的测距模型在改变相机俯仰角的情况下,测距结果较为优异,能够适应相机在不同姿态下的测距。
3. 2. 4 改变拍摄天气
天气状况的不同同样会影响测距精度。由于单目测距是视觉测距,在晴天和阴天等不同情况下,拍摄的绝缘子图片由于亮度的改变,识别效果也会不同,识别效果影响绝缘子的框选,直接会影响测距。天气的变化无法控制,所以本实验采用改变图片的亮度来模拟不同天气下的测距情况。亮度变化如图16 所示,亮度-100% ~ +100% ,亮度+100% 模拟晴天高亮度情况,而-100% 模拟阴天低亮度情况。在不改变其他因素的情况下,对复合绝缘子3 m 处进行测距实验,计算误差。亮度变化测距结果如表6 所示。
改变亮度误差如图17 所示。当亮度降低或者升高时,误差都呈现增大的趋势,在高亮情况下误差会更大,达到了12. 3% ,而在低亮度情况下,误差相对小。所以,天气状况对此测距模型存在一定的影响,并且在高亮度的晴天时,误差更大。
4 结论
本文提出了一种基于YOLOv5 算法的输电线路绝缘子测距方法。通过深度学习,利用YOLOv5 算法实现对输电线路绝缘子的目标检测,然后根据单目成像原理建立单目测距模型进行测距,通过实验验证该模型在不同条件的准确性和鲁棒性,并研究了影响精度的因素,可以得到以下结论:
① 基于YOLOv5 算法的深度学习模型对于输电线路绝缘子的识别效果较好,通过对绝缘子数据集的训练,能够识别各种类型的绝缘子,并框出绝缘子的大致轮廓。
② 提出了2 种测距模型,通过实验验证了性能,模型1 表现出更高的精度,平均误差为4. 76% 。此外,该算法对复合绝缘子展现出更好的识别效果,测距精度更高。同时,相机的姿态对测距精度也有影响,俯仰角越大,误差越大。另外,不同的天气条件下会导致测距精度的差异,尤其在环境过亮或过暗的情况下,测距的准确性会受到较大影响,最大误差可达到12. 3% 。
③ 测距系统对于输入的图像或者视频文件的平均测距时间为0. 298 4 s,进行一次测距时间较短。后续可将单目测距程序集成到Raspberry Pi 产品中,用于实际工程应用测距。该方法可为输电线路智能化巡检和测量安全距离提供一种快速而可靠的解决方案,具有实用价值。
参考文献
[1] MIAO X R,LIU X Y,CHEN J,et al. Insulator Detectionin Aerial Images for Transmission Line Inspection UsingSingle Shot Multibox Detector[J]. IEEE Access,2019,7:9945-9956.
[2] 石万. 电力巡线无人机自主无线充电系统设计[D]. 哈尔滨:哈尔滨理工大学,2021.
[3] 李弘宸. 无人机电力巡线视觉算法研究[D]. 南京:南京航空航天大学,2021.
[4] 陈强,秦飞跃,王丽明. 无人机在高压线路巡检中的关键技术及应用[J]. 科技与创新,2022(18):97-100.
[5] 陈朋,汤粤生,俞天纬,等. 三维场景的实时无人机航迹规划方法[J]. 小型微型计算机系统,2020,41(9):1800-1805.
[6] 许家文,阴酉龙,严波,等. 超特高压直流输电线路电磁场对无人机安全距离的影响[J]. 电力与能源,2021,42(5):536-542.
[7] 杜清怀,胡立新,张栋,等. 声波测距定位系统在浅海地震采集作业中的应用[J]. 石油仪器,2004(6):17-20.
[8] 胡鹏,秦会斌. 基于红外测距汽车倒车雷达预警系统设计[J]. 传感器与微系统,2018,37(7):114-116.
[9] 周东兴. 视觉测距技术的研究与应用[D]. 保定:华北电力大学,2021.
[10] 梁忠超,黄茁,胡兴,等. 基于YOLO 网络的车辆四点标定测距研究[J]. 机械工程学报,2023,59 (10 ):226-235.
[11] 梅枫,高兴宇,邓仕超,等. 双目测距和YOLOv5s 的无人机快速识别定位追踪系统[J]. 现代电子技术,2023,46(10):181-186.
[12] 胡清政. 基于深度学习的行人目标检测及测距技术研究[D]. 成都:西华大学,2021.
[13] 王忠言,李波,刘茹艳,等. 基于yolov4 算法的无人机单目测距算法[J]. 机械设计与制造工程,2022,51(3):58-62.
[14] CHEN H F,ZHANG Z Y. Improved YOLOv5 Algorithmfor Power Insulator Defect Detection[C]∥2023 13th International Conference on Power,Energy and ElectricalEngineering (CPEEE). Tokyo:IEEE,2023:301-305.
[15] BOCHKOVSKIY A,WANG C Y,LIAO H Y M. YOLOv5:Improved Realtime Object Detection with CrossstagePartial Network Adaptation [J]. IEEE Transactions onPattern Analysis and Machine Intelligence,2021,43(5):1630-1643.
[16] 王道累,张世恒,袁斌霞,等. 基于改进YOLOV5 的轻量化玻璃绝缘子自爆缺陷检测研究[J]. 高电压技术,2023,49(10):4382-4390.
[17] LIU J C,XU W,JIANG T et al. Development of anAttitude Transformation Method from the Navigation Coordinate System to the Projection Coordinate System [J].IEEE Geoscience and Remote Sensing Letters,2020,17(8):1318-1322.
[18] HU B W,WEN G J,ZHANG P,et al. A Novel Line ScanCamera Calibration Technique with an Auxiliary FrameCamera[J]. IEEE Transactions on Instrumentation andMeasurement,2013,62(9):2567-2575.
[19] 郭星源. 基于双目视觉的移动目标测距方法研究与实现[D]. 成都:电子科技大学,2021.
[20] 杨雪姣. 自动驾驶场景下的实时单目测距研究[D]. 重庆:重庆理工大学,2020.
[21] JIANG K H,MEI B X,LI T,et al. Identification Method forComposite Insulator Pulverization Defect Based on YOLOv5Algorithm[C]∥2022 International Conference on High Voltage Engineering and Applications (ICHVE). Chongqing:IEEE,2022:1-4.
作者简介
陈 彬 男,(1989—),博士,副教授。主要研究方向:超特高压输电线路电磁环境、输变电设备数字化及智能化技术。
刘华洲 男,(2000—),硕士研究生。主要研究方向:输变电无人机技术。
李勃铖 男,(1996—),硕士,助理工程师。主要研究方向:输变电工程电磁环境、输电线路智能巡检。
贾燕峰 男,(1978—),高级工程师。主要研究方向:电网规划、设计及检修。
郭 昊 男,(1989—),硕士,高级工程师。主要研究方向:输电线路带电作业及输电线路运维。
孙君录 男,(1975—),高级工程师。主要研究方向:输电线路带电作业及输电线路运维。