CN117636125A - 一种基于C2f-Faster的YOLOv8n输电线路故障检测方法 - Google Patents
一种基于C2f-Faster的YOLOv8n输电线路故障检测方法 Download PDFInfo
- Publication number
- CN117636125A CN117636125A CN202311604723.8A CN202311604723A CN117636125A CN 117636125 A CN117636125 A CN 117636125A CN 202311604723 A CN202311604723 A CN 202311604723A CN 117636125 A CN117636125 A CN 117636125A
- Authority
- CN
- China
- Prior art keywords
- layer
- yolov8n
- convolution
- layers
- transmission line
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 70
- 230000005540 biological transmission Effects 0.000 title claims abstract description 54
- 238000012549 training Methods 0.000 claims abstract description 44
- 238000000034 method Methods 0.000 claims abstract description 28
- 238000012360 testing method Methods 0.000 claims abstract description 25
- 238000012795 verification Methods 0.000 claims abstract description 9
- 238000003745 diagnosis Methods 0.000 claims abstract description 8
- 239000012212 insulator Substances 0.000 claims description 32
- 230000006870 function Effects 0.000 claims description 25
- 238000011176 pooling Methods 0.000 claims description 22
- 238000010606 normalization Methods 0.000 claims description 21
- 230000004913 activation Effects 0.000 claims description 20
- 238000005070 sampling Methods 0.000 claims description 18
- 230000007547 defect Effects 0.000 claims description 14
- 238000007689 inspection Methods 0.000 claims description 13
- 238000002372 labelling Methods 0.000 claims description 12
- 235000005770 birds nest Nutrition 0.000 claims description 10
- 235000005765 wild carrot Nutrition 0.000 claims description 10
- 230000006872 improvement Effects 0.000 claims description 4
- 238000000605 extraction Methods 0.000 claims description 3
- 238000012545 processing Methods 0.000 claims description 3
- 238000005516 engineering process Methods 0.000 abstract description 3
- 230000008901 benefit Effects 0.000 description 6
- 238000004364 calculation method Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 238000005457 optimization Methods 0.000 description 3
- 230000002776 aggregation Effects 0.000 description 2
- 238000004220 aggregation Methods 0.000 description 2
- 230000004927 fusion Effects 0.000 description 2
- 230000001788 irregular Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000002028 premature Effects 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 238000000638 solvent extraction Methods 0.000 description 2
- 238000010200 validation analysis Methods 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 208000025274 Lightning injury Diseases 0.000 description 1
- 230000032683 aging Effects 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000006555 catalytic reaction Methods 0.000 description 1
- 239000004020 conductor Substances 0.000 description 1
- 230000007797 corrosion Effects 0.000 description 1
- 238000005260 corrosion Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 238000013100 final test Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 239000004576 sand Substances 0.000 description 1
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y04—INFORMATION OR COMMUNICATION TECHNOLOGIES HAVING AN IMPACT ON OTHER TECHNOLOGY AREAS
- Y04S—SYSTEMS INTEGRATING TECHNOLOGIES RELATED TO POWER NETWORK OPERATION, COMMUNICATION OR INFORMATION TECHNOLOGIES FOR IMPROVING THE ELECTRICAL POWER GENERATION, TRANSMISSION, DISTRIBUTION, MANAGEMENT OR USAGE, i.e. SMART GRIDS
- Y04S10/00—Systems supporting electrical power generation, transmission or distribution
- Y04S10/50—Systems or methods supporting the power network operation or management, involving a certain degree of interaction with the load-side end user applications
- Y04S10/52—Outage or fault management, e.g. fault detection or location
Landscapes
- Image Analysis (AREA)
Abstract
一种基于C2f‑Faster的YOLOv8n输电线路故障检测方法,属于计算机视觉领域技术,包括以下步骤:S1:建立故障检测数据集;S2:其次将采集到的数据集进行标记,并按照8:2:1随机划分为训练集、验证集、测试集;S3:在模型方面将C2f模块替换为C2f‑Faster模块,改进YOLOv8n的主干网络(Backbone)和颈部网络(Neck),构建基于C2f‑Faster的YOLOv8n检测模型;S4:然后基于所述训练集训练基于C2f‑Faster的YOLOv8n检测模型,得到检测模型;S5:最后将所述测试集输入基于C2f‑Faster的YOLOv8n检测模型,输出输电线路故障检测结果,实现输电线路故障诊断,具有很强的现实意义。本发明通过改进YOLOv8n的主干网络和颈部网络,可以降低计算复杂度和模型容量,且主干网络能从输入图像中提取和获得不同尺度和复杂度的特征。
Description
技术领域
本发明涉及故障检测技术领域和计算机视觉技术领域,具体涉及一种基于C2f-Faster的YOLOv8n输电线路故障检测方法。
背景技术
由于长期暴露在复杂自然环境中,高压输电线路易受雨雪腐蚀、沙暴、雷击等自然条件扰乱,因此输电线路易发生故障现象。此时,定期巡检变得尤为关键。无人机检测模式可以有效克服人工巡检“费时、缓慢、艰难、风险”的弊端,具有高效安全、操控灵活、受限条件少以及成本低等优势。该方式主要是通过巡检人员操控无人机上的图像采集装置获取高压输电线路的视频或图片数据,然后巡检人员借助自身专业知识对采集的视频或图片数据中存在的故障元件进行检测。但随着输电网络规模不断扩大,无人机采集到的数据倍增,给相关技术人员带来巨大工作负担。这种依赖人工进行输电线路故障检测的方式暴露出效率低、受主观因素限制等缺点。因此,在智能电网发展需求的催化下,基于人工智能方法对高压输电线路故障进行自动、准确检测具有重要意义。利用无人机对高压输电线路巡检并基于计算机视觉技术对巡检数据中存在的故障目标进行自动、准确检测是目前输电线路巡检领域中的重要研究方向,同时也是一个极具挑战性的课题。因此,在巡检大数据背景下开展基于人工智能巡检方式的研究具有重要意义。
YOLO(You Only Look Once)作为经典的目标检测算法,它的优势在于实时性高、简洁高效、多尺度检测、全局上下文信息利用和多任务学习。这些特点使得它在快速目标检测和实时应用场景中表现出色。但从另一方面来说,YOLOv8系列模型参数量过大,计算成本过高的问题和训练模型时间过长的问题长期存在。目前,以YOLOv8为代表的单阶段目标检测技术,在主干网络中有比较明显的优化,但存在模型参数量大,计算复杂度高的问题,对于满足端到端的工业部署还存在一定的提升空间。
发明内容
针对上述YOLOv8系列模型参数量过大,计算复杂度和成本过高的问题,以及训练模型时间过长的技术问题,本技术方案提供了一种基于C2f-Faster的YOLOv8n输电线路故障检测方法,通过改进YOLOv8n的主干网络和颈部网络,可以降低计算复杂度和模型容量,且主干网络能从输入图像中提取和获得不同尺度和复杂度的特征;能有效的解决上述问题。
本发明通过以下技术方案实现:
一种基于C2f-Faster的YOLOv8n输电线路故障检测方法,包括如下步骤:
S100:利用无人机在在输电线路巡检时收集到的图像建立输电线路故障检测数据集;
S200:将采集到的数据集进行标记,并按照8:2:1随机划分为训练集、验证集、测试集;
S300:将模型C2f模块替换为C2f-Faster模块,改进YOLOv8n的主干网络(Backbone)和颈部网络(Neck),构建基于C2f-Faster的YOLOv8n检测模型;所述改进YOLOv8n的主干网络和颈部网络具体的操作方式为:
(1)将YOLOv8n网络主干网络模型10层结构的第三层改为C2f-Faster层,该层由1个嵌入层(Embedding)、3个合并层(Merging)、全局最大池化层(Global Pool)和4个FasterNet Block层组成;其中FasterNet Block层由一个3×3的卷积层和2个1×1的卷积层构成,模块输入可与模块输出构成残差链接;输入通道数为32、输出通道数为32、参数量为3920;全局最大池化可以通过以下公式计算:
式中:kh是高度方向上的核大小;kw是高度方向上的核大小;sh是高度方向上的步幅;sw宽度方向上的步幅;
FasterNet Block具体来说,只在输入通道的一部分上应用正则Conv进行空间特征提取,而不影响其余通道;对于连续或规则的内存访问,将第一个或最后一个连续的通道视为用于计算的整个特征图的代表;
(2)YOLOv8n网络主干网络模型10层结构的第七层为C2f-Faster层,由嵌入层、3个合并层、全局平均池化层和4个FasterNet Block层;其中FasterNet Block层由一个3×3的卷积层和2个1×1的卷积层构成;输入通道数为128、输出通道数为128、参数量为87552;
(3)YOLOv8n网络主干网络模型10层结构的第九层为C2f-Faster层,由嵌入层、3个合并层、全局平均池化层和4个FasterNet Block层;其中FasterNet Block层由一个3×3的卷积层和2个1×1的卷积层构成;输入通道数为256、输出通道数为256、参数量为240128;
S400:基于所述训练集训练基于C2f-Faster的YOLOv8n检测模型,得到检测模型;
S500:将所述测试集输入基于C2f-Faster的YOLOv8n检测模型,输出输电线路故障检测结果,实现输电线路故障诊断。
进一步的,步骤S100所述的输电线路故障检测数据集涵盖绝缘子放电痕迹、绝缘子缺陷、绝缘子、防震锤损坏、防震锤、输电导线异物、鸟巢共6中类型。
进一步的,步骤S200中所述的将采集到的数据集进行标记,并按照8﹕2﹕1随机划分为训练集、验证集、测试集,包括步骤:
S201:使用Labelling标注绝缘子放电痕迹、绝缘子缺陷、绝缘子、防震锤损坏、防震锤、输电导线异物、鸟巢共6种类型的数据;
S202:将标记框的类别、高宽存于txt文件中;
S203:将采集到的数据集进行标记,并按照8﹕2﹕1随机划分为训练集、验证集、测试集。
进一步的,步骤S300所述的YOLOv8n网络主干网络模型10层结构的第一层为卷积模块,由卷积层(Conv2d)、二维批量归一化层(BatchNorm2d)和SiLU激活函数构成;输入通道(input)的数量为3、输出通道(output)的数量为16、卷积核(Kernal Size)的大小为3×3、步长(stride)为2、参数量为464;其中二维批量归一化可以表示为:
式中:x是输入数据;μ和σ2分别是批次数据的均值和方差;γ是比例因子;β是偏移;ò是一个小的数,用于防止除以零的情况;
YOLOv8n网络主干网络模型10层结构的第二层为卷积模块,由卷积层、二维批量归一化层和SiLU激活函数构成;输入通道(input)的数量为16、输出通道(output)的数量为32、卷积核(Kernal Size)的大小为3×3、步长(stride)为2、参数量为4672;
YOLOv8n网络主干网络模型10层结构的第四层为卷积模块,由卷积层、二维批量归一化层和SiLU激活函数构成;输入通道的数量为32、输出通道的数量为64、卷积核的大小为3×3、步长为2、参数量为18560;
YOLOv8n网络主干网络模型10层结构的第五层为C2f-Faster层,由嵌入层、3个合并层、全局平均池化层和4个FasterNet Block层;其中FasterNet Block层由一个3×3的卷积层和2个1×1的卷积层构成;输入通道数为64、输出通道数为64、参数量为22144;
YOLOv8n网络主干网络模型10层结构的第六层为卷积模块,由卷积层、二维批量归一化层和SiLU激活函数构成;输入通道的数量为64、输出通道的数量为128、卷积核的大小为3×3、步长为2、参数量为73984;
YOLOv8n网络主干网络模型10层结构的第八层为卷积模块,由卷积层、二维批量归一化层和SiLU激活函数构成;输入通道的数量为128、输出通道的数量为256、卷积核的大小为3×3、步长为2、参数量为295424;
YOLOv8n网络主干网络模型10层结构的第十层为SPPF层,SPPF层的第一层由卷积层、二维批量归一化层和SiLU激活函数构成、SPPF层的后三层由全局最大池化层构成;输入通道的数量为256、输出通道的数量为256、参数量为164608;由于输入通道数等于输出通道数,每一层的结果可任意相加,在空间通道维数上增大了图片。
进一步的,步骤S300所述的YOLOv8n网络颈部网络模型12层结构的前6层为上采样模块后6层为下采样模块,其中上采样具有2层C2f-Faster,下采样同样具有2层C2f-Faster,下采样模块比上采样模块多了2个卷积层。
进一步的,步骤S400所述的基于所述训练集训练基于C2f-Faster的YOLOv8n检测模型,包括以下步骤:
S401:为保证模型在数据集中进行充分的学习,设置训练轮数(epochs)为300;
S402:为防止最后检测的结果出现过拟合早停(patience),设置训练轮数100,如果在100轮数内没有观察到模型性能的明显提升,就会停止训练;
S403:为了更好的帮助模型理解全局信息,设置批次处理图像数量(batch)为16;
S404:设置输入图像的尺寸(imgsz)为640;
S405:设置训练设备(device)为NVIDIA GeForce RTX 3060Laptop GPU;
S406:设置数据加载时的工作线程数(workers)为0;
S407:采用SGD优化器(optimizer)进行训练,用于调整模型参数以最小化损失函数的算法;
S408:为打印详细输出,设置verbose为True;
S409:为保证在相同的输入下,每次运行的结果是确定的,不会受到随机性的影响,设置Deterministic为True;
S410:此次训练不使用正则化(dropout),设置dropout为0;
S411:设置此次训练初始学习率(lr0)为0.01。
进一步的,步骤S500将所述测试集输入基于C2f-Faster的YOLOv8n检测模型,输出输电线路故障检测结果,实现输电线路故障诊断包括步骤:
S501:将测试集数据输入S400中已经训练完成的基于C2f-Faster的YOLOv8n检测模型,进行检测;
S502:基于C2f-Faster的YOLOv8n检测模型检测完成后,返回检测出的类别信息和框的具体坐标和置信度;
S503:显示测试集中的故障检测结果。
有益效果
本发明提出的一种基于C2f-Faster的YOLOv8n输电线路故障检测方法,与现有技术相比较,其具有以下有益效果:
(1)本发明通过改进后的主干网络,用来从输入图像中提取特征的,通过密集残差结构增强特征表达的能力;根据缩放系数,通过拆分和拼接操作改变通道数,降低计算复杂度和模型容量;在尾部使用快速空间金字塔池化层(SPPF)增加感受野并捕获场景中不同层次的特征信息。这些特征对于后续的目标检测是非常重要的。通过不同层级的卷积、池化和激活函数操作,主干网络能从输入图像中提取和获得不同尺度和复杂度的特征。
(2)本发明中的颈部网络起到一个连接和优化的作用,主要用于特征融合,采用路径聚合网络与C2f-Faster模块,针对Backbone三个阶段输出的不同尺度的特征图进行融合,帮助浅层信息向深层特征聚合。
(3)本发明中的检测头是网络的最后部分,负责实际的目标检测任务。使用解耦头结构,分为分类和定位预测端,用于缓解分类和定位任务之间存在的冲突。采用Anchor-Free框架提高检测性能,在检测长宽不规则的目标比较有优势。
附图说明
图1为本发明基于C2f-Faster的YOLOv8n的模型整体结构图。
图2为本发明C2f-Faster网络模型整体结构图。
图3为本发明FasterNet Block网络模型。
图4为本发明损失函数图、精度图和召回率图。
图5为本发明对绝缘子检测图。
图6为本发明对绝缘子缺陷检测图。
图7为本发明对异物检测图。
图8为本发明对鸟巢检测图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。在不脱离本发明设计构思的前提下,本领域普通人员对本发明的技术方案做出的各种变型和改进,均应落入到本发明的保护范围。
实施例1:
一种基于C2f-Faster的YOLOv8n输电线路故障检测方法,使用基于C2f-Faster的YOLOv8n故障检测模型对缘子放电痕迹、绝缘子缺陷、绝缘子、防震锤损坏、防震锤、输电导线异物、鸟巢进行故障诊断,具体包括如下步骤:
步骤S1:利用无人机在在输电线路巡检时收集到的图像建立输电线路故障检测数据集,使用Labelling标注绝缘子放电痕迹、绝缘子缺陷、绝缘子、防震锤损坏、防震锤、输电导线异物、鸟巢共6种类型的数据。
进行电力系统的维护和监测时,正确地标注各种设备和其可能的缺陷是至关重要的。特别是对于输电线路系统,绝缘子、防震锤和输电导线都是关键的组成部分。为了确保系统的高效运行,需要准确地识别并标记这些组件的状态;具体的操作方式为:
S101:标注绝缘子放电痕迹:绝缘子在长时间使用后,可能由于超高压等原因而在表面产生的放电痕迹;标注时,用红色突出显示放电痕迹的位置和范围。
S102:标注绝缘子缺陷:绝缘子缺陷包括绝缘子的裂纹、破损、老化或其他形式的物理损伤;标注时,使用浅绿色来区分不同类型的缺陷。
S103:标注绝缘子:标注绝缘子的主要目的是为了确保它们都在适当的位置,没有错位或丢失;标注时,用粉色高亮显示绝缘子的轮廓。
S104:标注防震锤损坏:防震锤的作用是减少输电线路因风或其他外部因素引起的振动;如果防震锤损坏,将影响其性能。在标注损坏的防震锤时,使用蓝色标记进行标注。
S105:标注防震锤:与绝缘子一样,需要确保所有的防震锤都在其应有的位。
S106:标注输电导线异物:输电导线异物包括树枝、塑料袋或其他可能与导线接触的异物;异物可能会导致短路或其他问题。标注时,使用深绿色标记来指出异物的位置。
S107:标注鸟巢:鸟可能会在输电线路或设备上筑巢,鸟巢会影响线路的安全和性能;标注鸟巢时,使用深红色。
步骤S2:将采集到的数据集进行标记,并按照8﹕2﹕1随机划分为训练集、验证集、测试集。
首先确保数据是随机的,这样可以避免因数据排序产生的偏见。按照8﹕2﹕1的比例,将数据划分为训练集、验证集和测试集。确保每个划分中的类别分布与整体数据集大致相同,以避免类别不平衡的问题。完成数据划分后,建议按照不同的子集组织数据的文件夹或目录结构,并进行备份。为训练集、验证集、测试集创建单独的文件夹或目录。准确地标记数据并正确地划分数据集是项目成功的关键。包括步骤:
S201:使用Labelling标注绝缘子放电痕迹、绝缘子缺陷、绝缘子、防震锤损坏、防震锤、输电导线异物、鸟巢6种类型的数据。
S202:将标记框的类别、高宽存于txt文件中。
S203:将采集到的数据集进行标记,并按照8:2:1随机划分为训练集、验证集、测试集。
步骤S3:改进YOLOv8n模型,YOLOv8n网络主要由主干网络(Backbone)、颈部网络(Neck)和检测头(Head)部分组成。改后的进YOLOv8n模型网络结构如图1所示。将C2f模块替换为C2f-Faster模块,C2f-Faster网络结构如图2、图3所示。
主干网络,是用来从输入图像中提取特征的,通过密集残差结构增强特征表达的能力;根据缩放系数,通过拆分和拼接操作改变通道数,降低计算复杂度和模型容量;在尾部使用快速空间金字塔池化层(SPPF)增加感受野并捕获场景中不同层次的特征信息。这些特征对于后续的目标检测是非常重要的。通过不同层级的卷积、池化和激活函数操作,主干网络能从输入图像中提取和获得不同尺度和复杂度的特征。
颈部网络起到一个连接和优化的作用,主要用于特征融合,采用路径聚合网络与C2f-Faster模块,针对Backbone三个阶段输出的不同尺度的特征图进行融合,帮助浅层信息向深层特征聚合。
检测头是网络的最后部分,负责实际的目标检测任务。使用解耦头结构,分为分类和定位预测端,用于缓解分类和定位任务之间存在的冲突。采用Anchor-Free框架提高检测性能,在检测长宽不规则的目标比较有优势。
YOLOv8n网络主干网络模型10层结构的第一层为卷积模块,由卷积层、二维批量归一化层和SiLU激活函数构成。输入通道的数量为3、输出通道的数量为16、卷积核的大小为3×3、步长为2、参数量为464。其中二维批量归一化可以表示为:
式中:x是输入数据;μ和σ2分别是批次数据的均值和方差;γ是比例因子;β是偏移;ò是一个小的数,用于防止除以零的情况。
YOLOv8n网络主干网络模型10层结构的第二层为卷积模块,由卷积层、二维批量归一化层和SiLU激活函数构成。输入通道的数量为16、输出通道的数量为32、卷积核的大小为3×3、步长为2、参数量为4672。
YOLOv8n网络主干网络模型10层结构的第三层为C2f-Faster层,该层由1个嵌入层、3个合并层、全局最大池化层和4个FasterNet Block层组成。其中FasterNet Block层由一个3×3的卷积层和2个1×1的卷积层构成,模块输入可与模块输出构成残差链接。输入通道数为32、输出通道数为32、参数量为3920。全局最大池化可以通过以下公式计算:
式中:kh是高度方向上的核大小;kw是高度方向上的核大小;sh是高度方向上的步幅;sw宽度方向上的步幅。
FasterNet Block具体来说,只在输入通道的一部分上应用正则Conv进行空间特征提取,而不影响其余通道。对于连续或规则的内存访问,将第一个或最后一个连续的通道视为用于计算的整个特征图的代表。
YOLOv8n网络主干网络模型10层结构的第四层为卷积模块,由卷积层、二维批量归一化层和SiLU激活函数构成。输入通道的数量为32、输出通道的数量为64、卷积核的大小为3×3、步长为2、参数量为18560。
YOLOv8n网络主干网络模型10层结构的第五层为C2f-Faster层,由嵌入层、3个合并层、全局平均池化层和4个FasterNet Block层。其中FasterNet Block层由一个3×3的卷积层和2个1×1的卷积层构成。输入通道数为64、输出通道数为64、参数量为22144。
YOLOv8n网络主干网络模型10层结构的第六层为卷积模块,由卷积层、二维批量归一化层和SiLU激活函数构成。输入通道的数量为64、输出通道的数量为128、卷积核的大小为3×3、步长为2、参数量为73984。
YOLOv8n网络主干网络模型10层结构的第七层为C2f-Faster层,由嵌入层、3个合并层、全局平均池化层和4个FasterNet Block层。其中FasterNet Block层由一个3×3的卷积层和2个1×1的卷积层构成。输入通道数为128、输出通道数为128、参数量为87552。
YOLOv8n网络主干网络模型10层结构的第八层为卷积模块,由卷积层、二维批量归一化层和SiLU激活函数构成。输入通道的数量为128、输出通道的数量为256、卷积核的大小为3×3、步长为2、参数量为295424。
YOLOv8n网络主干网络模型10层结构的第九层为C2f-Faster层,由嵌入层、3个合并层、全局平均池化层和4个FasterNet Block层。其中FasterNet Block层由一个3×3的卷积层和2个1×1的卷积层构成。输入通道数为256、输出通道数为256、参数量为240128。
YOLOv8n网络主干网络模型10层结构的第十层为SPPF层,第一层由卷积层、二维批量归一化层和SiLU激活函数构成、后三层由全局最大池化层构成。输入通道的数量为256、输出通道的数量为256、参数量为164608。由于输入通道数等于输出通道数,每一层的结果可任意相加,在空间通道维数上增大了图片。
YOLOv8n网络颈部网络模型12层结构的前6层为上采样模块后6层为下采样模块,其中上采样具有2层C2f-Faster,下采样同样具有2层C2f-Faster,下采样比上采样多了2个卷积层。
步骤S4:对基于C2f-Faster的YOLOv8n模型进行基本参数设置;包括以下步骤:
S401:为保证模型在数据集中进行充分的学习,训练轮数(epochs)设置为300,模型会遍历完整的数据集达到300次,以确保所有的数据都被充分利用。
S402:为防止最后检测的结果出现过拟合早停(patience)设置为100,如果在100轮数内没有观察到模型性能的明显提升,就会停止训练,这有助于避免模型在过多的轮数中过度适应训练数据。
S403:为了更好的帮助模型理解全局信息,批次处理图像数量(batch)设置为16,平衡了计算效率和梯度准确性,确保模型可以有效地学习。
S404:输入图像的尺寸(imgsz)设置为640,有助于模型更好地捕获到图像中的细节。
S405:训练设备(device)为NVIDIA GeForce RTX 3060Laptop GPU。
S406:数据加载时的工作线程数(workers)设置为0,在主线程中进行数据加载。
S407:此次训练采用优化器(optimizer)是SGD,用于调整模型参数以最小化损失函数的算法,核心思想是根据当前批次的数据来估计整个数据集的梯度。在每次迭代中,随机选择一个样本或一小批样本,计算这些样本的梯度,然后用此梯度来更新模型的参数。
S408:为打印详细输出,verbose设置为True。
S409:为保证在相同的输入下,每次运行的结果是确定的,不会受到随机性的影响,Deterministic设置为True。
S410:此次训练不使用正则化(dropout)设置为0。
S411:此次训练初始学习率(lr0)设置为0.01。
步骤S5:将所述测试集输入基于C2f-Faster的YOLOv8n检测模型,输出输电线路故障检测结果,实现输电线路故障诊断,包括步骤:
S501:将测试集数据输入S400中已经训练完成的基于C2f-Faster的YOLOv8n检测模型,进行检测;
S502:基于C2f-Faster的YOLOv8n检测模型检测完成后,返回检测出的类别信息和框的具体坐标和置信度;
S503:显示测试集中的故障检测结果。
诊断结果如图4、图5、图6、图7、图8所示。图4一共给出了3种损失的曲线、精度、mAP@50和mAP@95。
将测试集数据输入到第四步中已经训练完成的基于C2f-Faster的YOLOv8n检测模型。此时,模型会使用其学到的权重和偏置对测试数据进行预测。这一步的目的是验证模型在未见过的数据上的性能,确保其具有良好的泛化能力。
基于C2f-Faster的YOLOv8n模型会对每张输入的图像返回预测的结果。每个结果包括:
框的具体坐标:模型为识别出的物体绘制的矩形框,通常由矩形的左上角和右下角的坐标确定;
置信度:模型对于检测结果的置信程度,这是一个0到1之间的数值,值越大表示模型对此检测结果越有信心。
定位损失(box_loss):预测框与标定框之间的误差(GIoU),越小定位得越准;
式中:IoU表示预测框与标定框的交并比(Intersection over Union);C表示预测框和标定框的外接矩形的面积;U表示预测框和标定框的并集的面积。
置信度损失(obj_loss):计算网络的置信度,越小判定为目标的能力越准。
obj_loss=-(ytrue·log(ypred)+(1-ytrue)·log(1-ypred))
式中:y_true表示标定框是否包含目标;y_pred表示模型的置信度预测值。
分类损失(cls_loss):计算锚框与对应的标定分类是否正确,越小分类得越准。
cls_loss=-∑(ytrue·log(ypred))
式中:y_true表示标定框的真实类别;y_pred表示模型的类别预测概率分布。
Precision:精度(找对的正类/所有找到的正类)。
Recall:真实为positive的准确率,即正样本有多少被找出来了。Recall从真实结果角度出发,描述了测试集中的真实正例有多少被二分类器挑选了出来,即真实的正例有多少被该二分类器召回。
mAP:使用Precision和Recall作为两轴作图后围成的面积,m表示平均,后面的数表示判定IoU为正负样本的阈值,0.5:0.95表示阈值取0.5:0.05:0.95后取均值。
与其他传统诊断方法相比显现了提出的本诊断方法具有非常高的故障分类准确度。与传统YOLOv8n算法进行对比,如表1所示。
表1
算法 | 模型大小 | mAP@50% | Recall% |
YOLOv8n | 11.9M | 79.43 | 80.51 |
本文算法 | 9.22M | 84.75 | 86.32 |
本实施例的算法相较于YOLOv8n在多个关键性能指标上表现出显著的优势。
首先,在模型大小方面,该算法的模型仅为9.22M,比YOLOv8n的11.9M小,模型更轻量,对计算资源的需求更低,更适合在资源受限的环境下部署,如移动设备或嵌入式系统和无人机设备,为无人机航空电力线路巡检提供了有效的帮助。
其次,在mAP@50%这一重要的性能指标上,本实施例的算法达到了84.75%,而YOLOv8n为79.43%,本实施例的算法高出约5.32个百分点。表明本算法在检测任务中的准确性更高,能够提供更可靠的检测结果。
最后,在召回率(Recall%)上,本实施例的算法同样表现更优,达到了86.32%,相比之下YOLOv8n为80.51%,本算法提高了约5.81个百分点,说明本算法在识别目标时漏检的情况更少,对于实际应用中的检测覆盖性能有着直接的积极影响。
上述实施方式只为说明本发明的技术构思及特点,其目的在于让熟悉此项技术的人能够了解本发明的内容并据以实施,并不能以此限制本发明的保护范围。凡根据本发明精神实质所做的等效变换或修饰,都应涵盖在本发明。
Claims (7)
1.一种基于C2f-Faster的YOLOv8n输电线路故障检测方法,其特征在于,包括如下步骤:
S100:利用无人机在在输电线路巡检时收集到的图像建立输电线路故障检测数据集;
S200:将采集到的数据集进行标记,并按照8:2:1随机划分为训练集、验证集、测试集;
S300:将模型C2f模块替换为C2f-Faster模块,改进YOLOv8n的主干网络(Backbone)和颈部网络(Neck),构建基于C2f-Faster的YOLOv8n检测模型;所述改进YOLOv8n的主干网络和颈部网络具体的操作方式为:
(1)将YOLOv8n网络主干网络模型10层结构的第三层改为C2f-Faster层,该层由1个嵌入层(Embedding)、3个合并层(Merging)、全局最大池化层(Global Pool)和4个FasterNetBlock层组成;其中FasterNet Block层由一个3×3的卷积层和2个1×1的卷积层构成,模块输入可与模块输出构成残差链接;输入通道数为32、输出通道数为32、参数量为3920;全局最大池化可以通过以下公式计算:
式中:kh是高度方向上的核大小;kw是高度方向上的核大小;sh是高度方向上的步幅;sw宽度方向上的步幅;
FasterNet Block具体来说,只在输入通道的一部分上应用正则Conv进行空间特征提取,而不影响其余通道;对于连续或规则的内存访问,将第一个或最后一个连续的通道视为用于计算的整个特征图的代表;
(2)YOLOv8n网络主干网络模型10层结构的第七层为C2f-Faster层,由嵌入层、3个合并层、全局平均池化层和4个FasterNet Block层;其中FasterNet Block层由一个3×3的卷积层和2个1×1的卷积层构成;输入通道数为128、输出通道数为128、参数量为87552;
(3)YOLOv8n网络主干网络模型10层结构的第九层为C2f-Faster层,由嵌入层、3个合并层、全局平均池化层和4个FasterNet Block层;其中FasterNet Block层由一个3×3的卷积层和2个1×1的卷积层构成;输入通道数为256、输出通道数为256、参数量为240128;
S400:基于所述训练集训练基于C2f-Faster的YOLOv8n检测模型,得到检测模型;
S500:将所述测试集输入基于C2f-Faster的YOLOv8n检测模型,输出输电线路故障检测结果,实现输电线路故障诊断。
2.根据权利要求1所述的一种基于C2f-Faster的YOLOv8n输电线路故障检测方法,其特征在于:步骤S100所述的输电线路故障检测数据集涵盖绝缘子放电痕迹、绝缘子缺陷、绝缘子、防震锤损坏、防震锤、输电导线异物、鸟巢共6中类型。
3.根据权利要求1所述的一种基于C2f-Faster的YOLOv8n输电线路故障检测方法,其特征在于:步骤S200中所述将采集到的数据集进行标记,并按照比例随机划分为训练集、验证集、测试集,包括步骤:
S201:使用Labelling标注绝缘子放电痕迹、绝缘子缺陷、绝缘子、防震锤损坏、防震锤、输电导线异物、鸟巢共6种类型的数据;
S202:将标记框的类别、高宽存于txt文件中;
S203:将采集到的数据集进行标记,并按照8﹕2﹕1随机划分为训练集、验证集、测试集。
4.根据权利要求1所述的一种基于C2f-Faster的YOLOv8n输电线路故障检测方法,其特征在于:步骤S300所述的YOLOv8n网络主干网络模型10层结构的第一层为卷积模块,由卷积层(Conv2d)、二维批量归一化层(BatchNorm2d)和SiLU激活函数构成;输入通道(input)的数量为3、输出通道(output)的数量为16、卷积核(KernalSize)的大小为3×3、步长(stride)为2、参数量为464;其中二维批量归一化可以表示为:
式中:x是输入数据;μ和σ2分别是批次数据的均值和方差;γ是比例因子;β是偏移;是一个小的数,用于防止除以零的情况;
YOLOv8n网络主干网络模型10层结构的第二层为卷积模块,由卷积层、二维批量归一化层和SiLU激活函数构成;输入通道(input)的数量为16、输出通道(output)的数量为32、卷积核(Kernal Size)的大小为3×3、步长(stride)为2、参数量为4672;
YOLOv8n网络主干网络模型10层结构的第四层为卷积模块,由卷积层、二维批量归一化层和SiLU激活函数构成;输入通道的数量为32、输出通道的数量为64、卷积核的大小为3×3、步长为2、参数量为18560;
YOLOv8n网络主干网络模型10层结构的第五层为C2f-Faster层,由嵌入层、3个合并层、全局平均池化层和4个FasterNet Block层;其中FasterNet Block层由一个3×3的卷积层和2个1×1的卷积层构成;输入通道数为64、输出通道数为64、参数量为22144;
YOLOv8n网络主干网络模型10层结构的第六层为卷积模块,由卷积层、二维批量归一化层和SiLU激活函数构成;输入通道的数量为64、输出通道的数量为128、卷积核的大小为3×3、步长为2、参数量为73984;
YOLOv8n网络主干网络模型10层结构的第八层为卷积模块,由卷积层、二维批量归一化层和SiLU激活函数构成;输入通道的数量为128、输出通道的数量为256、卷积核的大小为3×3、步长为2、参数量为295424;
YOLOv8n网络主干网络模型10层结构的第十层为SPPF层,SPPF层的第一层由卷积层、二维批量归一化层和SiLU激活函数构成、SPPF层的后三层由全局最大池化层构成;输入通道的数量为256、输出通道的数量为256、参数量为164608;由于输入通道数等于输出通道数,每一层的结果可任意相加,在空间通道维数上增大了图片。
5.根据权利要求1所述的一种基于C2f-Faster的YOLOv8n输电线路故障检测方法,其特征在于:步骤S300所述的YOLOv8n网络颈部网络模型12层结构的前6层为上采样模块后6层为下采样模块,其中上采样具有2层C2f-Faster,下采样同样具有2层C2f-Faster,下采样模块比上采样模块多了2个卷积层。
6.根据权利要求1所述的一种基于C2f-Faster的YOLOv8n输电线路故障检测方法,其特征在于:步骤S400所述的基于训练集训练基于C2f-Faster的YOLOv8n检测模型,包括以下步骤:
S401:设置训练轮数(epochs)为300;
S402:设置训练早停(early stopping)轮数为100,如果在100轮数内没有观察到模型性能的明显提升,就会停止训练;
S403:设置批次处理图像数量(batch)为16;
S404:设置输入图像的尺寸(imgsz)为640;
S405:设置训练设备(device)为NVIDIA GeForce RTX 3060Laptop GPU;
S406:设置数据加载时的工作线程数(workers)为0;
S407:采用SGD优化器进行训练,用于调整模型参数以最小化损失函数的算法;
S408:设置verbose为True;
S409:设置Deterministic为True;
S410:此次训练不使用正则化,设置dropout为0;
S411:设置此次训练初始学习率(lr0)为0.01。
7.根据权利要求6所述的一种基于C2f-Faster的YOLOv8n输电线路故障检测方法,其特征在于:步骤S500具体包括步骤:
S501:将测试集数据输入S400中已经训练完成的基于C2f-Faster的YOLOv8n检测模型,进行检测;
S502:基于C2f-Faster的YOLOv8n检测模型检测完成后,返回检测出的类别信息和框的具体坐标和置信度;
S503:显示测试集中的故障检测结果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311604723.8A CN117636125A (zh) | 2023-11-29 | 2023-11-29 | 一种基于C2f-Faster的YOLOv8n输电线路故障检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311604723.8A CN117636125A (zh) | 2023-11-29 | 2023-11-29 | 一种基于C2f-Faster的YOLOv8n输电线路故障检测方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117636125A true CN117636125A (zh) | 2024-03-01 |
Family
ID=90015812
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311604723.8A Pending CN117636125A (zh) | 2023-11-29 | 2023-11-29 | 一种基于C2f-Faster的YOLOv8n输电线路故障检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117636125A (zh) |
-
2023
- 2023-11-29 CN CN202311604723.8A patent/CN117636125A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112380952B (zh) | 基于人工智能的电力设备红外图像实时检测及识别方法 | |
CN110827251B (zh) | 一种基于航拍图像的输电线路锁紧销缺陷检测方法 | |
CN111178206B (zh) | 一种基于改进yolo的建筑预埋件检测方法及系统 | |
CN115294473A (zh) | 一种基于目标检测与实例分割的绝缘子故障识别方法及系统 | |
CN111337789A (zh) | 一种高压输电线路中故障电气元件检测方法及检测系统 | |
Manninen et al. | Toward automatic condition assessment of high-voltage transmission infrastructure using deep learning techniques | |
CN113807450A (zh) | 一种基于超高分辨率图片的无人机电力巡线故障检测方法 | |
CN114821852A (zh) | 基于特征金字塔的电网缺陷深度识别巡查机器人控制系统 | |
Hao et al. | Detection of bird nests on power line patrol using single shot detector | |
CN115908786A (zh) | 一种基于深度学习的电气柜接地线缆异常识别方法及系统 | |
CN115171045A (zh) | 一种基于yolo的电网作业现场违章识别方法及终端 | |
CN111753666A (zh) | 输电线路中小目标故障检测方法、检测系统及存储介质 | |
CN114965328A (zh) | 一种紫外多光谱高压线路故障检测与定位方法及装置 | |
CN114187505A (zh) | 输电线路防振锤脱落的检测方法、装置、介质及终端设备 | |
CN113536944A (zh) | 基于图像识别的配电线路巡检数据识别及分析方法 | |
CN117636125A (zh) | 一种基于C2f-Faster的YOLOv8n输电线路故障检测方法 | |
CN116580324A (zh) | 一种基于YOLOv5的无人机对地目标检测方法 | |
CN116363532A (zh) | 基于注意力机制和重参数化的无人机图像交通目标检测方法 | |
CN115359054A (zh) | 一种基于伪缺陷空间生成的电力设备缺陷检测方法 | |
CN113705001B (zh) | 输电线路故障检测方法、系统及嵌入式设备 | |
CN111144420B (zh) | 基于小样本的电塔缺陷监测方法及系统 | |
CN114663751A (zh) | 一种基于增量学习技术的输电线路缺陷识别方法和系统 | |
CN112529881A (zh) | 一种电力控制柜线缆异常识别方法及装置 | |
CN117422689B (zh) | 一种基于改进MS-PReNet和GAM-YOLOv7的雨天绝缘子缺陷检测方法 | |
CN113762153B (zh) | 一种基于遥感数据的新型尾矿库检测方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |