一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于改进的yolov5的绝缘子缺陷检测方法与流程

2022-02-22 18:55:50 来源:中国专利 TAG:


1.本发明属于绝缘子缺陷检测技术领域,特别涉及基于改进的yolov5的绝缘子缺陷检测方法。


背景技术:

2.电是使世界转动的最基本的元素之一,高、低压电的传输对它的实际应用是非常重要的。在高压电的传输中,绝缘子用来支撑和分离电导体而不让电流通过。低压配电线路则是从配电网向最终用户输送电能的一种配电方式。一次配电系统的一个重要方面是电力的持续供应及其设备的高效性能。绝缘子串在一次架空配电线路中起绝缘和提供机械强度的作用。总而言之,绝缘子在电力系统中是必不可少的设备。通常情况下,绝缘子暴露在强电场的恶劣环境中,以及各种恶劣的天气条件,如烈日、台风或飓风、雷暴、冻雨、暴风雪等。这种恶劣的环境会使绝缘子容易被损坏,进而威胁电网系统的安全及电力的使用。这样重要的部件一旦损坏,对电力供应和公共安全都会造成严重问题。例如:在每年的雨季,都会有人由于暴露在电线杆下而触电丧生。因此,有必要研究有效的绝缘子缺陷检测方法,以确保电力传输的安全可靠。
3.目前的缺陷检测方法可分为物理方法、传统的基于视觉的方法以及基于深度学习的方法三类。物理方法主要包括基于人工操作的超声波法和紫外线脉冲法。在基于视觉的绝缘子缺陷检测方法中,最常用的是hog svm和haar adaboost。传统的检测算法主要是利用滑动窗口选择感兴趣的区域,提取每个窗口的特征,然后对特征样本进行分类,得到检测结果。此外,还有基于轮廓特征和灰度相似度匹配的方法对完好的和有缺陷的绝缘子进行分类。在基于视觉的绝缘子缺陷检测方法中,最常用的是hog svm和haar adaboost。这些方法通常是基于积累的经验来提取图像特征,效率低,精度有限,耗时长。随着计算机性能的不断提高,基于深度学习框架的检测方法得到了广泛的应用。该方法可以有效补偿人工图像特征提取过程中特征信息的丢失,提高故障检测的效率。目前已经提出了许多有效的目标检测算法,如faster r-cnn(faster region-based convolutional neural network)、yolo(you only look once)、ssd(single shot multibox detector)、dcnn(dynamic convolutional neural network)等。由于绝缘子的细长形状特性和不同的缺陷变化导致缺陷在图像中的表现形式多样而复杂以及采集的绝缘子图像中包含了大量的无关背景信息,因此,现有的绝缘子检测方法的准确性及速度还有待提高。


技术实现要素:

4.针对绝缘子检测方法的准确性及速度存在的问题,本发明提供一种基于改进yolov5算法的绝缘子缺陷检测方法。
5.为解决上述技术问题,本发明采用如下技术方案:基于改进的yolov5的绝缘子缺陷检测方法,包括如下步骤:
6.步骤1、采集绝缘子图像形成数据集;
7.步骤2、使用labelimg标注工具对数据集进行标注,标注类别为绝缘子和缺陷;
8.步骤3、对所采集的图像进行数据增强处理,以扩充数据集;
9.步骤4、在yolov5的骨干网络中引入triplet attention模块;
10.步骤5、优化损失函数;将ciou作为改进yolov5算法的bounding-box损失函数loss
ciou

11.ciou定义为:
12.其中,为权重函数,ν是用来测量长宽比一致性的参数,c代表能够包含预测框和真实框的最小封闭区域的对角线距离,ρ2(b,b
gt
)代表预测框和真实框的中心点之间的欧氏距离,h
gt
、ω
gt
分别代表真实框的高度和宽度,h
p
、ω
p
分别代表预测框的高度和宽度;
13.步骤6、对处理最终结果的非极大值抑制nms方法进行优化;将soft-nms作为处理最终结果的方法:
14.soft-nms的得分函数表达式为:
15.其中,si为预测框bi的得分,bm为得分最高的预测框,n
t
为重叠阈值,高斯惩罚函数,σ为一个根据经验选择超参数;
16.步骤7、训练改进后的网络;设置学习率、学习率动量、批次大小、训练总轮次小、权重衰减和最大迭代次数作为训练参数,对改进的yolov5网络进行训练;
17.步骤8、将收集的绝缘子图像数据集输入训练好的yolov5网络,得到输入图片中是否存在有缺陷的绝缘子以及该缺陷所在位置。
18.在上述基于改进的yolov5的绝缘子缺陷检测方法中,triplet attention模块采用三个平行的分支结构,其中两个用于提取两个空间维度与通道维c之间的相互依赖关系,另一个提取空间特征依赖关系;在前两个分支中,triplet attention将原始输入旋转张量χ分别沿h轴和w轴逆时针旋转90
°
,并且将张量的形状由c
×h×
w转换为w
×h×
c和h
×c×
w;在第三个分支中,张量以其原始形状c
×h×
w输入,通过z-pool层将c维度的张量缩减到2维,并将该维上的平均汇集特征和最大汇集特征连接起来;
19.z-pool定义为:z-pool(χ)=[maxpool
0d
(χ),avgppool
0d
(χ)]
[0020]
其中,0d是最大池化操作和平均池化操作发生的第0维;
[0021]
将简化后的张量通过核大小为k的标准卷积层和批归一化层,将由sigmoid激活函数生成的相应维数的注意权重加到旋转张量中;在最终输出时,第一个分支的输出沿h轴顺时针旋转90
°
,第二个分支的输出沿w轴顺时针旋转90
°
,以保证与输入的形状相同;最后,将三个分支的输出平均地聚合为输出;
[0022]
输出张量定义为:
[0023]
其中,σ为sigmoid激活函数,ψ1、ψ2、ψ3分别代表triplet attention的三个分支中由核大小k定义的标准二维卷积层,分别表示triplet attention前两个分支中经过旋转后的张量,分别表示triplet attention三个分支中经过z-pool层之后的张量。
[0024]
在上述基于改进的yolov5的绝缘子缺陷检测方法中,采用soft-nms代替nms来处理最后的检测结果流程如下;
[0025]
1)先对预测框进行排序,然后将得分最高的预测框bm移到最终检测列表d中,并将其余所有预测框分配同一个标识bi;
[0026]
2)当某个预测框bi与bm的重叠面积大于一定阈值n
t
时,soft-nms将重新计算该预测框的得分si,并将其与一定置信阈值o
t
相比较,当该预测框的得分si大于一定置信阈值o
t
时,将该预测框移到最终检测列表d中,反之,则删除该预测框;
[0027]
3)对其余的框bi重复上述过程,直到初始列表为空。
[0028]
在上述基于改进的yolov5的绝缘子缺陷检测方法中,训练改进的yolov5网络包括以下步骤:
[0029]
a、网络训练时,将数据集统一缩放到640
×
640大小,在depth_multipl=0.33,width_multiple=0.50的改进后的yolov5s网络模型上进行训练;
[0030]
b、参数更新方式为随机梯度下降sgd方法,初始学习率为0.01,动量项为0.937,权值衰减系数为0.0005,将模型训练的批大小设置为16,每次由bn层进行正则化,更新模型的权值;
[0031]
c、色相h、饱和度s和亮度v的增强系数分别设为0.015、0.7和0.4;训练总轮次设置为300次;
[0032]
d、训练完成后,将得到的识别模型的权值文件保存,并利用测试集对模型的性能进行评价;
[0033]
e、网络的最终输出识别出绝缘子及其缺陷的位置框和属于特定类别的概率。
[0034]
与现有技术相比,本发明在骨干网络中加入triplet attention模块以提取不同维度之间的语义依赖,消除通道与权值之间的间接对应,从而以较小的计算开销达到了提高准确率的效果。将diou损失函数修改为ciou损失函数,以提高模型预测框架的精确定位能力,增强模型的收敛效果。采用soft-nms代替nms(non-maximum suppression,非极大值抑制)来处理检测结果,解决了被遮挡的检测物容易被忽视的问题,减少了漏检。
附图说明
[0035]
图1为本发明一个实施例基于改进的yolov5的绝缘子缺陷检测方法流程图;
[0036]
图2为本发明一个实施例改进的yolov5网络结构图;
[0037]
图3为本发明一个实施例triplet attention模块网络结构图;
[0038]
图4为本发明一个实施例soft-nms算法流程图。
具体实施方式
[0039]
下面将结合本发明实施例对本发明实施例中的技术方案进行清楚、完整地描述,
显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0040]
需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。
[0041]
下面结合具体实施例对本发明作进一步说明,但不作为本发明的限定。
[0042]
为了解决现有绝缘子检测方法在准确度和速度上不平衡的问题,本实施例在现有yolov5算法上进行改进,使得在绝缘子缺陷的检测方面能够取得更好的效果。本实施例具体流程如图1所示,首先将所收集的数据集训练原始网络,得到原始网络的实验效果。然后,对数据集进行扩展,同时对网络进行改进,主要修改了网络的损失函数,骨干网络以及结果处理方法。其次,将扩展后的数据集对改进后的网络进行训练。最后,根据实验结果调整网络参数。
[0043]
本实施例是通过以下技术方案来实现的,基于改进的yolov5的绝缘子缺陷检测方法,包括以下步骤:
[0044]
1、采集绝缘子图像数据集(包含有缺陷的绝缘子图像和完整绝缘子图像)。
[0045]
2、使用labelimg标注工具对数据集进行标注,标注类别为绝缘子和缺陷。
[0046]
3、对所采集的图像进行数据增强处理,以扩充数据集。
[0047]
4、在yolov5的骨干网络中引入triplet attention模块。
[0048]
由于注意机制能够建立通道或空间位置之间的相互依赖关系,近年来被广泛地应用于各种计算机视觉任务中。注意机制能够通过直接构建通道之间的依赖关系或空间注意的加权空间掩模来改进标准卷积层生成的特征表示。学习注意力权重的目的是,允许网络有能力学习在哪里关注和进一步关注目标对象。与一些需要大量额外学习参数的注意力方法不同,triplet attention是基于如何构建计算量小但有效的注意力,但同时保持相似或提供更好的性能而提出的。triplet attention通过旋转操作和剩余变换建立不同维度间的依赖关系,消除了通道与权值之间的间接对应,以较小的计算开销达到了提高准确率的效果。所以将triplet attention模块引入yolov5骨干网络中。
[0049]
5、优化损失函数。
[0050]
将ciou作为改进yolov5算法的bounding-box损失函数loss
ciou
。ciou将真实框与预测框之间的距离、重叠率、尺度以及惩罚项都考虑进去,使得预测框回归变得更加稳定,不会像其他损失函数一样出现训练过程中发散等问题,而惩罚因子把预测框长宽比拟合目标框的长宽比考虑进去,从而使模型能够更快更好的收敛。
[0051]
ciou定义为:
[0052]
其中,为权重函数,ν是用来测量长宽比一致性的参数,c代表能够包含预测框和真实框的最小封闭区域的对角线距离,ρ2(b,b
gt
)代表预测框和真实框的中心点之间的欧氏距离,h
gt
、ω
gt
分别代表真实框的高度和宽度,h
p
、ω
p
分别代表预测框的高度和宽度。
[0053]
6、对处理最终结果的非极大值抑制方法进行优化。
[0054]
非极大值抑制(nms)是目标检测过程中不可分割的一部分。首先,它根据分数对所有预测框进行排序。选择得分最大的预测框bm,并抑制与bm有显著重叠(使用预定义阈值)的所有其他预测框。这个过程递归地应用于其余的框。根据算法的设计,如果一个对象位于预定义的重叠阈值内,就会导致漏检。为此,本发明将soft-nms作为处理最终结果的方法。soft-nms的核心思想是将所有其他目标的检测分数衰减为它们与bm重叠的连续函数。因此,在这个过程中没有对象被消除,从而减少漏检。
[0055]
soft-nms的得分函数表达式为:
[0056]
其中,si为预测框bi的得分,bm为得分最高的预测框,n
t
为重叠阈值,高斯惩罚函数,σ为一个根据经验选择超参数。
[0057]
7、训练改进后的网络。设置学习率、学习率动量、批次大小、训练总轮次小、权重衰减和最大迭代次数等训练参数,对改进的yolov5网络进行训练。
[0058]
8、将收集的绝缘子图像数据集输入训练好的yolov5网络,得到输入图片中是否存在有缺陷的绝缘子以及该缺陷所在位置。
[0059]
基于改进的yolov5的绝缘子缺陷检测方法的具体实施包括以下步骤:
[0060]
一、首先,采集绝缘子图像形成数据集,在数据集进入网络模型训练前对其进行标注,得到符合pascal voc数据格式的xml文件,xml文件内容包括图像名称、图像路径、图像的高/宽度以及真实框中心点位置与宽/高等信息。然后,通过自适应对比度、旋转、随机灰度变化、平移、裁剪、颜色通道标准化、mosaic等方法对数据集进行扩充。其中,mosaic是分别对四张图片进行翻转、缩放、色域变化等,并且按照四个方向位置摆好,然后组成一张图片,增强模型检测小目标的能力。本发明构建的数据集共包含1268张图像,以供深度学习、训练模型及满足检测需求。
[0061]
二、如图2所示,改进的yolov5网络由骨干网络、颈部网络和检测网络组成。骨干网络由focus、convolution with batch normalization and leakyrelu(cbl)、mix convolution(mixconv)、cross-stage partial network(csp)、spatial pyramid pooling(spp)和triplet attention组成。颈部由cbl、csp、upsampling和aff组成。为了检测目标的位置和类别,需要从图像中提取特征,并利用骨干网络进行定位和分类来捕获特征;颈部网络通过骨干网络的初始输出特征,融合特征,适应大小,从而提高体系结构的整体性能;检测网络接收颈部网络的三个输出,输出每个特征映射输出层的包围盒位置、对象置信度和对象类别的预测。
[0062]
focus模块用于对特征图进行切片操作,可以保留更完整的图像降采样数据,用于后续的特征提取;cbl模块用于提取切片后的特征图中的特征信息;csp网络的主要思想是为输入产生两条路径,主路径有cbl或resunit,另一条路径执行卷积功能,将两条路径的结果合并。csp模块在保证精度的同时减少了计算成本;spp模块用于实现局部特征与全局特征的融合,从而提高特征图的表示能力。因为绝缘子缺陷的形状是不同的背景图像中的对象,提高绝缘子缺陷检测的准确性。而视觉注意力机制是人类视觉所特有的大脑信号处理
机制。人类视觉通过快速扫描全局图像,获得需要重点关注的目标区域,也就是一般所说的注意力焦点,而后对这一区域投入更多注意力资源,以获取更多所需要关注目标的细节信息,而抑制其他无用信息。因此,在yolov5网络的骨干网络中加入tripletattention模块以提取不同维度之间的语义依赖,消除通道与权值之间的间接对应,从而以较小的计算开销达到了提高准确率的效果。
[0063]
颈部网络的aff模块用于融合来自同一层或交叉层的基于注意力的特征,包括短跳连接和长跳连接,甚至在自身内部进行初始融合。
[0064]
三、以yolov5网络作为基础框架,以在其中加入triplet attention模块、将损失函数修改为ciou损失函数、采用soft-nms代替nms为改进依据,搭建改进的绝缘子缺陷检测网络模型。
[0065]
(1)triplet attention的基本结构如图3所示。triplet attention采用三个平行的分支结构,其中两个用于提取两个空间维度与通道维c之间的相互依赖关系,另一个提取空间特征依赖关系。在前两个分支中,triplet attention将原始输入旋转张量χ分别沿h轴和w轴逆时针旋转90
°
,并且将张量的形状由c
×h×
w转换为w
×h×
c和h
×c×
w.在第三个分支中,张量以其原始形状c
×h×
w输入,然后,通过z-pool层将c维度的张量缩减到2维,并将该维上的平均汇集特征和最大汇集特征连接起来,这使得该层在保留实际张量的丰富表示的同时能够缩小其深度以使进一步的计算量更轻。
[0066]
z-pool定义为:z-pool(χ)=[maxpool
0d
(χ),avgppool
0d
(χ)]
[0067]
其中,0d是最大池化操作和平均池化操作发生的第0维。例如,张量形状为c
×h×
w的z-pool结果为2
×h×
w。
[0068]
然后将简化后的张量通过核大小为k的标准卷积层和批归一化层,最后将由sigmoid激活函数生成的相应维数的注意权重加到旋转张量中。在最终输出时,第一个分支的输出沿h轴顺时针旋转90
°
,第二个分支的输出沿w轴顺时针旋转90
°
,以确保与输入的形状相同。最后,将三个分支的输出平均地聚合为输出。
[0069]
输出张量定义为:
[0070]
其中,σ为sigmoid激活函数,ψ1、ψ2、ψ3分别代表triplet attention的三个分支中由核大小k定义的标准二维卷积层,分别表示triplet attention前两个分支中经过旋转后的张量,分别表示triplet attention三个分支中经过z-pool层之后的张量。
[0071]
在yolov5网络的骨干网络中加入triplet attention模块以提取不同维度之间的语义依赖,消除通道与权值之间的间接对应,从而以较小的计算开销达到了提高准确率的效果。
[0072]
(2)优化损失函数。iou为交并比,是目标检测中常用的指标,其主要功能是确定正样本和负样本并计算预测框与真实框之间的距离。但iou的定义本身存在一个问题。如果两个预测框和真实框不相交,即iou为0。同时,由于0损失,没有坡度后退;因此,不能进行学习和培训练。为了解决这些问题,giou思想被提出。
[0073]
giou的原理为:
[0074]
然而,该算法在训练过程中仍存在目标框回归不稳定、容易发散等问题。目标检测的某些框不重叠导致giou回归策略可能退化为iou回归策略。因此,为了直接最小化预测框与真实框之间的归一化距离,以达到更快的收敛速度,使回归在与真实框重叠甚至包含真实框时更加准确和快速,diou被提出。
[0075]
diou的原理为:
[0076]
其中,b、b
gt
分别表示预测框和真实框的中心点。但diou计算不考虑宽高比,只考虑边界盒的重叠面积和b与b
gt
的中心点距离。但是,预测框与真实框之间的w和h比值的一致性也具有很高的显著性。在此基础上,ciou loss被提出。ciou的惩罚项是基于diou的惩罚项加上影响因子α、ν,该因子考虑了预测框的长宽比来拟合真实框。
[0077]
ciou的原理为:
[0078]
其中,为权重函数,ν是用来测量长宽比一致性的参数,c代表能够包含预测框和真实框的最小封闭区域的对角线距离,ρ2(b,b
gt
)代表预测框和真实框的中心点之间的欧氏距离,h
gt
、ω
gt
分别代表真实框的高度和宽度,h
p
、ω
p
分别代表预测框的高度和宽度。
[0079]
因此,本实施例将diou损失函数修改为ciou损失函数,以提高模型预测框架的精确定位能力,增强模型的收敛效果。
[0080]
(3)为了进一步提高算法对被遮挡目标的检测,还将对非极大值抑制(non-maximum suppression,nms)进行优化。nms应用于大多数最先进的检测器,以获得最终结果,因为它大大减少了误报的数量。nms算法流程大致描述如下
[0081]
首先,根据置信度对列表中的所有预测框进行排序;其次,将得分最高的预测框bm移至最终检测列表d,其余预测框分配唯一标识bi;第三,去除与bm重叠面积大于一定阈值n
t
的任何预测框bi;对其余的框bi重复此过程,直到初始列表为空。由于在nms中,设置了一个确定的阈值来决定bm域中哪些框应该保留,哪些框应该删除。然而,如果一个对象确实存在,但与bm的重叠率大于n
t
,则其检测将被忽略。
[0082]
nms的得分函数表达式为:
[0083]
soft-nms的核心思想则是使用惩罚函数来衰减与bm重叠的预测框的分数,而不是将这些分数设置为零。因此本发明采用soft-nms代替nms来处理最后的检测结果。
[0084]
soft-nms算法流程图如图4所示,也是先对预测框进行排序,然后将得分最高的预测框bm移到最终检测列表d中,并将其余所有预测框分配同一个标识bi;但当某个预测框bi与bm的重叠面积大于一定阈值n
t
时,soft-nms并不是将该预测框删除,而是将重新计算该预测框的得分si,并将其与一定置信阈值o
t
相比较,当该预测框的得分si大于一定置信阈值o
t
时,将该预测框移到最终检测列表d中,反之,则删除该预测框;对其余的框bi重复上述过程,直到初始列表为空。由此可以得出,使用soft-nms算法时与bm重叠较大的预测框得分会大大降低,而距离bm较远的预测框则不会受到影响。因此,可以大大降低网络的漏检率。
[0085]
soft-nms的得分函数表达式为:
[0086]
其中,si为预测框bi的得分,bm为得分最高的预测框,n
t
为重叠阈值,高斯惩罚函数,σ为一个根据经验选择超参数。
[0087]
(4)训练改进的yolov5网络。网络训练时,将数据集统一缩放到640
×
640大小,在depth_multipl=0.33,width_multiple=0.50的改进后的yolov5s网络模型上进行训练。参数更新方式为随机梯度下降(sgd)方法,初始学习率为0.01,动量项为0.937,权值衰减系数为0.0005,将模型训练的批大小设置为16,每次由bn层进行正则化,更新模型的权值。色相(h)、饱和度(s)和亮度(v)的增强系数分别设为0.015、0.7和0.4。训练总轮次设置为300次。训练完成后,将得到的识别模型的权值文件保存下来,并利用测试集对模型的性能进行评价。网络的最终输出是识别出绝缘子及其缺陷的位置框和属于特定类别的概率。
[0088]
以上仅为本发明较佳的实施例,并非因此限制本发明的实施方式及保护范围,对于本领域技术人员而言,应当能够意识到凡运用本发明说明书内容所作出的等同替换和显而易见的变化所得到的方案,均应当包含在本发明的保护范围内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献