APP下载

基于改进YOLOV4 网络的绝缘子缺陷检测*

2023-10-08李运堂詹叶君王鹏峰李孝禄

传感技术学报 2023年8期
关键词:锚框绝缘子特征提取

李运堂,詹叶君,王鹏峰,张 坤,金 杰,李孝禄,陈 源,冯 娟

(1.中国计量大学机电工程学院,浙江 杭州 310018;2.中国计量大学现代科技学院,浙江 金华 321000)

绝缘子作为输电线路的重要组成部分,是实现电力输送线路不同组件之间可靠绝缘,确保电能安全输送的重要部件。 由于长期暴露于外部环境,经受日晒雨淋、电闪雷击,绝缘子容易出现自爆、破损、闪络等缺陷。 其中,破损和闪络缺陷最常见[1]。 目前,绝缘子缺陷检测大都采用基于深度学习的目标检测方法,通过卷积神经网络学习缺陷特征,利用回归器和分类器定位和分类缺陷。 马宾等[2]提出绝缘子自适应旋转校正算法,利用GDIOU 损失函数提高YOLOV4 的定位精度和收敛速度,提升不同空间状态下绝缘子识别精度。 党宏社等[3]将MobileNetV2 作为轻量级YOLOV4 的主干特征提取网络,利用深度可分离卷积代替标准卷积,采用h-swish 函数作为模型颈部网络激活函数,减少特征反复提取引起的信息损失,提高检测精度。 高伟等[4]利用对抗生成网络SR-GAN 提高小目标检测能力,采用余弦退火算法提高学习率,加快YOLOV4 网络训练速度。 唐小煜等[5]对高分辨率图像进行滑动窗口切分裁剪,将小目标图像经过数据增强后批量输入经优化的UNet 网络,提取绝缘子轮廓,采用YOLOV4 网络训练缺陷数据集,实现自爆缺陷绝缘子定位。 刘悦等[6]利用YOLOV4 网络定位绝缘子,结合形态学重建分水岭算法检测绝缘子爆裂,但存在复杂背景下分割不准确问题。 Bai 等[7]提出基于迁移学习的空间金字塔池化网络(SPP-Net)绝缘子缺陷检测方法,适用于样本数量少的数据集。Tao 等[8]采用仿射变换、高斯模糊、亮度变换和掩膜融合背景图像等方法,生成自爆缺陷绝缘子数据集,利用级联卷积神经网络检测并定位缺陷。 Wen 等[9]基于特征金字塔FPN、级联回归和GIOU 损失函数提出双阶段目标检测R-CNN 模型,引入兴趣区域对齐(ROI Align)代替兴趣区域池化(ROI Pooling)解决区域不匹配问题,利用深度可分离卷积和线性瓶颈层减少计算量,绝缘子缺陷检测精度优于主流目标检测算法。 Qi 等[10]针对默认先验框与绝缘子尺寸不匹配问题,基于SSD 网络提出先验框长宽比自适应确定方法,精度和实时性满足要求。 Gao 等[11]提出添加卷积注意力机制(BN-CBAM)和特征融合模块的绝缘子缺陷检测网络,充分利用特征通道信息,提高小目标检测能力;同时,采用目标分割和背景融合扩充数据集,提高样本多样性。 唐睿等[12]在YOLOV3 内添加SPP 模块融合不同尺度特征信息,提高网络学习能力和缺陷检测精度。 Liao 等[13]利用柔性非极大值抑制(Soft-NMS)改进Faster R-CNN 网络,提高重叠、邻近绝缘子检测能力,采用ResNet101 网络提取绝缘子特征,相对于传统R-CNN 网络目标定位更准确,检测精度更高。

现有目标检测方法检测绝缘子缺陷速度慢、精度低,提出改进YOLOV4 绝缘子缺陷检测方法,通过引入注意力机制,提高主干特征提取网络对绝缘子关键特征的关注度,采用聚类锚框获得适合绝缘子特征的锚框尺寸,改进网络结构和损失函数,利用柔性非极大值抑制解决重叠小目标漏检问题。 实验结果表明,改进YOLOV4 能够实现绝缘子缺陷快速高精度检测。

1 YOLOV4 网络

1.1 网络结构

YOLOV4 为通过深度卷积神经网络对检测目标进行定位回归和对象分类的单阶段模型[14]。 常规YOLOV4 网络结构如图1 所示,主要包括三部分,主干特征提取网络CSPDarknet53、加强特征提取网络PANet 和网络头部结构Yolo Head。

图1 常规YOLOV4 网络结构

图1 中,CSPDarknet53 由1 个ConvBNMish 卷积模块和5 个Resblock-module 组成。 卷积模块ConvBNMish 包括卷积层(Conv)、批量归一化(BN)和Mish 激活函数。 每个Resblock-module 由多个残差模块堆叠而成,如图2 所示。

图2 Resblock-module 结构

Resblock-module 将输入特征层分成两个分支,主分支经过ConvBNMish 模块后进行N个小残差单元(ResBlock)堆叠,小残差单元由两个ConvBNMish模块和一条快捷链路构成,最终再经过一次ConvBNMish 卷积。 过渡分支通过ConvBNMish 卷积直接连接到输出层,最终将主分支和过渡分支在通道上堆叠,从而增加网络深度并充分考虑前部特征层信息。 同时,内部小残差单元可减小网络加深引起的梯度损失。

PANet 融合多尺度特征金字塔结构,深层特征向浅层特征堆叠融合后将浅层特征反方向进行深层特征堆叠融合,多层次多尺度反复提取绝缘子关键特征,从而增强特征复用性,如图3 所示。

图3 PANet 特征层输出

SPP 网络输出的13×13 特征图经上采样放大后融合图3(c)所示的第5 层特征图(26×26)得到图3(d)所示的第11 层特征图(26×26),再经过卷积、残差以及上采样放大得到图3(e)所示的第13层特征图(52×52),最后融合图3(b)所示的第4 层特征图(52×52)得到图3(f)所示的第14 层特征图(52×52)。

Yolo Head 用于输出YOLOV4 网络的预测特征层信息,通过单次ConvBNLeaky 和单次1×1 卷积,将输出通道调整为对象分类和定位回归的张量维度。

1.2 网络预测

YOLOV4 为基于锚框(Anchor)的端到端目标检测模型,最终获得Yolo Head1、Yolo Head2 和Yolo Head3 不同尺寸预测特征图,如图4 所示。

图4 不同尺寸预测特征图

每个预测特征图的前两个维度将输入图像划分为不同尺度网格,物体真实框中心在网格内则该网格负责预测此物体。 每个网格设有小、中、大三种尺寸锚框,对应三个预测特征图,共9 种锚框,常规YOLOV4 锚框尺寸如表1 所示。

表1 常规YOLOV4 锚框尺寸

Yolo Head 第三个维度输出5+Nclass个参数。 分别为横纵坐标偏移变量tx和ty,锚框宽高缩放变量tw和th,置信度分数O和类别总数Nclass。 YOLOV4利用Yolo Head 输出结果调整锚框实现目标边界框预测,如图5 所示。 其中,虚线矩形框为当前网格基准锚框,实线矩形框为调整后的预测框。

图5 YOLO4 目标边界框预测

bx、by、bw和bh分别为调整后预测框横纵坐标和宽高。

式中:Cx和Cy分别为当前网格左上角横纵坐标,利用Sigmoid 归一化后,得到横纵坐标偏移量σ(tx)和σ(ty),Pw和Ph分别为锚框在当前预测特征层上的宽高。 通过网络模型预测回归参数,实现锚框调整,完成预测框定位。

置信度分数O表示当前预测框存在物体的置信度概率。

预测框内存在物体时Pr(Object)置1,预测框内为背景(不存在物体)时置0,IOU 表示预测框和绝缘子真实框的交并比。

式中,SA∩B表示预测框A和真实框B交集面积,SA∪B表示预测框A和真实框B并集面积。 IOU 取值[0,1],取值越大预测框和真实框重合度越高,网络预测越准确。

预测特征层在多目标重叠区域附近生成多个预测框,采用非极大值抑制(NMS)保留置信度最大的预测框,去除同一区域属于同一类别的多余预测框,按式(4)计算结果判断。

式中:Di={d1,d2,…,dn}表示当前类别对应的置信度分数,N表示非极大值抑制阈值,Q表示当前类别置信度分数最高的预测框,Ei={e1,e2,…,en}表示当前类别的其他预测框。 通过预测操作实现预测框定位回归和框内目标分类。

1.3 模型评价指标

①单个类别精确率P:

式中:TC表示当前缺陷类别被网络预测正确的数量,FC表示其他缺陷类别但被网络预测为当前缺陷类别的数量。

②单个类别召回率R:

式中:FN表示当前缺陷类别被网络预测为其他缺陷类别的数量。

③单个类别P-R曲线面积AP:

AP 表示网络单类别检测结果,AP 值越大,单个类别检测性能越好。

④多类别平均精度mAP:

mAP 反映网络多类别检测精度。C表示所有类别数量。

2 YOLOV4 算法改进

绝缘子缺陷复杂、尺度多变,常规YOLOV4 网络提取绝缘子缺陷特征能力不足,检测精度低,并且网络参数多,检测速度慢。 同时,分类结果不准确,小目标绝缘子缺陷检测容易出现漏检。 因此,需改进常规YOLOV4 网络,从而适应绝缘子缺陷检测需求。

2.1 添加注意力机制

注意力机制有利于提高卷积神经网络自适应学习重要特征的能力,根据网络训练得出的注意力系数增加网络关键特征注意力,减少干扰特征关注度。CBAM 为典型维度域和空间域相结合的注意力机制[15],缺陷特征定位效果好,结构如图6 所示。

图6 CBAM 模块

CBAM 首先将特征图输入通道注意力模块,然后输入空间注意力模块,得到权衡特征图维度域和空间域的关键特征。 通道注意力模块如图7 所示。

图7 通道注意力模块

首先,沿输入特征图F 每个特征层的宽和高方向进行全局最大池化(MaxPool)和全局平均池化(AvgPool),得到两个与输入特征图通道数相同,尺寸为1×1 的通道池化层。 然后,对两个通道池化层进行多层感知机(MLP)处理,分别进行两次共享全连接和非线性激活,第一次全连接压缩通道数,第二次全连接恢复至输入特征图通道数,将两个输出的通道权重层融合相加再进行Sigmoid 非线性激活,得到权衡输入特征图通道关键特征信息的权重层Mc,将Mc权重参数与输入特征图F在通道上相乘,完成输入特征图通道施加注意力机制,有效提取输入特征图维度域关键特征信息。

CBAM 空间注意力模块如图8 所示。

图8 空间注意力模块

首先,对通道注意力模块输出的特征图F′在每个特征点的通道维度进行最大池化和平均池化,得到尺寸为输入特征图大小的空间池化层,堆叠后获得通道数为2 的聚合特征图。 然后,利用卷积层将特征图通道数减小至1,再经Sigmoid 非线性激活,得到权衡输入特征图每个特征点信息的权重层Ms,将Ms权重参数与输入特征图F′相乘,完成输入特征图施加空间注意力机制,有效提取输入特征图空间域关键特征信息。

为了验证YOLOV4 引入注意力机制对绝缘子缺陷检测结果的影响,对比表2 所示的YOLOV4 主干特征提取网络三个输出层添加CBAM 注意力模块检测结果。

表2 改进主干特征提取网络策略

表2 中改进主干特征提取网络,加强特征提取网络PANet 和网络头部结构Yolo Head 不变,绝缘子数据集和实验环境相同,训练500 个世代,常规YOLOV4 和三种改进网络实验结果如表3 所示。

表3 改进主干特征提取网络实验结果

可以看出,检测精度随主干网络中引入注意力机制模块数增加而提高,CBAM1、CBAM2 和CBAM3的mAP 分别提高了1.53%、1.72%和1.86%,优于常规YOLOV4 网络。 但注意力模块增加,网络复杂度增大,检测时间增长。

通过可视化热力图[16]可直观显示网络兴趣区域。 图9 对比了常规YOLOV4 和三种改进网络的热力图。 其中,白色包裹区域表示网络更加关注的区域。 可以看出,主干网络添加注意力机制改善了绝缘子特征提取效果。

图9 常规YOLOV4 和三种改进网络热力图

2.2 先验锚框选取

由网络预测过程可知,锚框初始尺寸影响训练速度和定位准确性,常规YOLOV4 锚框针对COCO数据集和VOC 数据集,不适用于绝缘子缺陷检测。

K-Means[17]为重新定义锚框尺寸的聚类方法,将绝缘子标注的目标边界框的宽和高作为坐标点集合,以坐标点之间的欧氏距离为指标,从坐标点集合随机选取K个初始坐标代表K个簇心,计算剩余坐标点与簇心距离,将剩余坐标点归为最近簇的类别,所有坐标点聚类完成后,重新计算每个簇心,反复迭代重新聚类操作直至簇心不变。 由于YOLOV4 头部结构输出3 种尺度预测特征图,每个预测特征图有小、中、大三种尺度锚框,K取值为9。 绝缘子图像输入YOLOV4 前统一调整为416×416,真实框的宽和高坐标值均缩小在416 以内,聚类实验结果如图10 所示。绝缘子数据集锚框分成9 种不同尺寸的簇。

图10 K-Means 聚类结果

聚类后,9 种锚框尺寸参数更加符合绝缘子缺陷尺寸和宽高比例特征,如表4 所示。

表4 改进YOLOV4 的锚框尺寸

2.3 改进网络结构

常规YOLOV4 加强特征提取网络PANet 中的卷积模块ConvSet5 由5 个卷积层、归一化层和激活函数组成,对于绝缘子缺陷检测,ConvSet5 参数过多,检测耗时过长。 为减少网络参数,采用CSPlayer[18]代替五次卷积ConvSet5。

CSPlayer 类似于常规YOLOV4 主干特征提取网络中的Resblock-module,如图11 所示。 不同之处在于小残差单元(ResBlock)中采用深度可分离卷积代替普通卷积,大幅减少网络参数。 引入CSPlayer 可增强网络学习能力,突破深层网络反向传播时的梯度计算瓶颈,加快网络学习速度,实现网络轻量化,有效提高检测速度。

图11 CSPlayer 结构

为提高绝缘子缺陷检测精度,主干特征提取网络采用CBAM3 策略,改进YOLOV4 结构如图12所示。

图12 改进YOLOV4 网络结构

具体改进如下:

①在常规YOLOV4 主干特征提取网络的三个输出层添加CBAM 注意力模块,增大网络绝缘子缺陷空间特征和通道特征权重。

②利用三次深度可分离卷积代替三次ConvSet3卷积,减少了网络参数,提高计算速度。

③利用CSPlayer 代替五次ConvSet5 卷积,增加网络深度。 同时,堆叠多层残差结构充分结合输入层特征,残差结构采用深度可分离卷积大幅降低网络复杂度。

④由于绝缘子缺陷特征复杂多样,为提高PANet特征提取能力,每一次上采样和下采样后,特征层堆叠后采用空间金字塔池化(SPP)进一步融合多种尺度特征,有效聚合多重感受野绝缘子缺陷特征。

2.4 损失函数设计

常规YOLOV4 的损失函数包括三部分,预测框定位回归损失、置信度分数损失和类别损失。

预测框定位回归损失为:

式中:d表示绝缘子预测框中心与真实框中心之间的欧氏距离,c表示绝缘子预测框和真实框的最小矩形外包框对角线长度,α为非负的权衡参数,q表征绝缘子预测框和真实框宽高比的相似度。

式中:hgt和wgt分别表示绝缘子真实框的高和宽,h和w分别表示绝缘子预测框的高和宽。

置信度分数损失为:

式中:s表示绝缘子图像划分网格数量。B表示每个网格存在的预测目标边界框数量。goijbj表示绝缘子图像的第i个网格对应的第j个预测目标边界框内是否存在物体,存在物体goijbj=1,否则,goijbj=0。λnoobj表示加权惩罚系数。C表示绝缘子缺陷类别数。

类别损失为

式中:pi表示属于某个类别的概率表示当前类别预测概率,c表示绝缘子缺陷类别编号。

常规YOLOV4 的闪络缺陷和正常绝缘子分类精度较低。 因此,增加类别损失在总损失函数的比重,提高分类精度。

实验结果表明,分类权重系数λclass=2 时测试集分类效果较好,网络总损失函数为

2.5 柔性非极大值抑制

常规YOLOV4 采用非极大值抑制(NMS)筛选预测框。 NMS 根据同一类别预测框IOU 是否大于设定阈值去除与置信度分数最大预测框重合度较高的冗余预测框。 如果绝缘子缺陷距离很近或部分重叠,同时预测框的IOU 较大,NMS 将删除置信度较小的预测框,出现漏检。 采用柔性非极大值抑制(Soft-NMS)[19]可有效解决上述问题,按式(16)的计算结果进行判断。

式中:Si={s1,s2,…,sn}表示置信度分数,M表示Soft-NMS 阈值,G表示置信度得分最高的预测框,Hi={h1,h2,…,hn}表示其余预测框。 预测框重叠面积越大,与G重合的其余预测框置信度分数下降越快,距离G近的预测框惩罚分数越大,距离G远的预测框置信度分数不变。 但式(16)在预测框重叠时不连续,预测框交并比为M时,惩罚函数导致置信度分数排序突变。 为使预测框重叠时惩罚函数连续变化,不重叠时惩罚函数为零,引入高斯指数惩罚函数。

式中:σ为指定系数,值为0.5;L为最终预测框集合,惩罚函数随重叠度增加而增大。

图13 为采用NMS 和Soft-NMS 的检测结果。 可以看出,Soft-NMS 识别出所有闪络缺陷,而NMS 漏检了重叠程度高的闪络缺陷。

图13 NMS 和Soft-NMS 检测结果

3 绝缘子缺陷检测实验

3.1 绝缘子数据集搭建

通过网络收集绝缘子缺陷数据集,分别为中国输电线路绝缘子数据集[20]、IEEE 绝缘子数据集(https:/ /ieee-dataport.org/competitions/insulator-defect-detection) 和2020 届泰迪杯绝缘子数据集(https:/ /www.tipdm.org)。 数据图像包含正常绝缘子、闪络缺陷绝缘子和破损缺陷绝缘子,通过水平镜像、上下翻转、随机亮度和对比度等数据增强方式将数据集扩充至5 000 张图像。

采用Labelimg 标注绝缘子图像,如图14 所示。生成包含绝缘子锚框坐标、缺陷锚框坐标、绝缘子类别、缺陷类别等信息的xml 文件。

图14 Labelimg 标注界面

3.2 实验环境

实验环境配置:深度学习框架Pytorch-GPU V1.7.0,深度神经网络加速库CUDNN7.6.4;Nvidia运算平台CUDA10.1,显卡为Nvidia GeForce GTX 1660,显存6GB,处理器为Inter Core i7-9700k 3.60GHz 八核,内存32GB;图像处理库Opencv4.4.0 和Pillow8.0.1,数组运算库numpy1.19.4,绘图工具库matplotlib3.3.3;编程语言为Python3.7,操作系统为Windows10。

3.3 网络训练过程

利用迁移学习策略,将改进YOLOV4 网络在GPU 上训练,采用Adam 优化器更新网络参数,初始学习率为0.001,学习率衰减系数为0.0005,Batch_size为4,共训练500 个世代,损失值变化如图15 所示。

图15 损失值变化曲线

随着训练代数增加,损失值逐渐降低并趋于稳定,收敛于0.6 附近,表明缺陷检测达到较好的训练结果。

3.4 对比消融实验

对比常规YOLOV4 和改进YOLOV4 在测试集的预测结果,如图16 所示。 测试集中随机抽取存在大目标破损缺陷、大目标闪络缺陷、多种类型绝缘子和小目标缺陷。

图16 常规YOLOV4 和改进网络检测结果

图16(Ⅰ)表明,常规YOLOV4 存在绝缘子缺陷漏检,改进YOLOV4 在PANet 中添加的SPP 模块增强了网络多尺度特征学习能力,未出现漏检或错检,并提高了检测精度;由图16(Ⅱ)和图16(Ⅲ)可以看出,常规YOLOV4 和改进YOLOV4 均能检测出大目标缺陷,但改进YOLOV4 定位更准确,预测框完整包围缺陷,并且预测框置信度分数大于常规YOLOV4,表明K-Means 聚类锚框有利于提高缺陷定位精度,CBAM 使网络更加关注绝缘子缺陷特征;图16(Ⅳ)表明,常规YOLOV4 将高分辨率图像中所有小目标绝缘子误判为正常绝缘子,而改进YOLOV4 在总损失函数中增大了分类损失比重,提高了分类精度,可检测出小目标破损缺陷。

定量消融对比实验结果如表5 所示。 其中a 类表示破损缺陷,b 类表示闪络缺陷,c 类表示存在缺陷绝缘子,d 类表示正常绝缘子。 方法1 引入注意力机制,主干特征提取网络采用CBAM3 策略;方法2 引入注意力机制并改进锚框尺寸;方法3 引入注意力机制、改进锚框尺寸和调整损失函数;方法4 引入注意力机制、改进锚框尺寸、调整损失函数和修改网络结构;方法5 引入注意力机制、改进锚框尺寸、调整损失函数、修改网络结构和使用Soft-NMS。

表5 消融对比实验结果

由表5 可以看出,方法1 耗时比常规YOLOV4长,但检测精度高,表明引入CBAM3 注意力机制能够提取更多绝缘子关键特征,但增加了模型复杂度。方法2 比方法1 和常规YOLOV4 识别精度高,表明利用K-Means 聚类得到的锚框尺寸更加符合绝缘子数据集特征。 方法3 在总损失函数中增大分类损失的权重比例,检测精度进一步提高。 方法4 检测精度显著高于方法1、方法2、方法3 和常规YOLOV4,并且检测时间大幅缩短,表明在PANet 中添加SPP模块有助于融合绝缘子多尺度特征,深度可分离卷积和CSPlayer 代替普通卷积块大幅减少网络参数,实现模型轻量化,提高了检测速度。 方法5 破损和闪络缺陷检测精度高,表明Soft-NMS 有助于检测重叠程度较大的小目标绝缘子缺陷。

3.5 不同网络对比实验

选用Faster R-CNN[21]、SSD[22]、YOLOV3[23]、YOLOV4 等主流目标检测方法与改进YOLOV4(方法5)进行对比实验,结果如表6 所示。

表6 不同网络对比实验结果

可以看出,Faster R-CNN 的检测精度高于其他主流的单阶段目标检测模型,但是双阶段检测模型结构复杂,参数多,检测时间长,无法满足绝缘子缺陷实时性要求。 SSD 虽然参数量较少,检测速度较快,但特征提取能力弱于YOLO 算法,检测精度最低。 由于YOLOV3 的加强特征提取网络采用FPN结构,绝缘子缺陷特征融合能力弱于PANet,检测精度低于常规YOLOV4。 改进后YOLOV4 相对于Faster R-CNN、SSD、YOLOV3 和常规YOLOV4 检测精度和速度均最优。

4 结论

针对现有目标检测方法绝缘子缺陷检测速度慢、精度低等问题,提出改进YOLOV4 绝缘子缺陷检测方法。 在YOLOV4 主干特征提取网络中引入注意力机制。 利用K-Means 算法重新聚类适合绝缘子特征的锚框尺寸。 加强特征提取网络采用CSPlayer 代替五次ConvSet5 卷积,三次深度可分离卷积代替三次ConvSet3 卷积,大幅减少网络参数,提高检测速度。在PANet 中添加了多尺度空间金字塔池化模块(SPP),融合多重感受野绝缘子缺陷特征,提高检测精度。 在总损失函数中增大类别损失的比重,提高分类精度。 柔性非极大值抑制(Soft-NMS)代替NMS,有效解决小目标绝缘子缺陷重合程度高引起漏检问题。与Faster R-CNN、SSD、YOLOV3、常规YOLOV4 的对比实验结果表明,改进YOLOV4 检测精度和速度均优于其他网络,mAP 和检测时间分别达到了92.26%和19.82 ms,满足绝缘子缺陷检测精度和速度要求。

猜你喜欢

锚框绝缘子特征提取
基于YOLOv3锚框优化的侧扫声呐图像目标检测
锚框策略匹配的SSD飞机遥感图像目标检测
基于SSD算法的轻量化仪器表盘检测算法*
基于GA-RoI Transformer的遥感图像任意方向目标检测
基于Daubechies(dbN)的飞行器音频特征提取
Bagging RCSP脑电特征提取算法
1000kV耐张绝缘子串单片绝缘子的带电更换技术
基于MED和循环域解调的多故障特征提取
500kV绝缘子串含零值绝缘子时的电晕放电分析
绝缘子的常见故障及排除方法