改进YOLOE算法在压板状态检测中的应用
The Application of Improved YOLOE Algorithm for Platen State Detection
DOI: 10.12677/csa.2024.145130, PDF, HTML, XML, 下载: 31  浏览: 64 
作者: 徐 岗, 罗印升, 宋 伟:江苏理工学院电气信息工程学院,江苏 常州
关键词: 压板状态检测小目标检测YOLOE注意力机制Platen State Detection Small Target Detection Yoloe Attention Mechanisms
摘要: 针对当前变电站压板种类多、数量大、小目标易误检,及压板状态检测的速度慢和准确性不高等问题,本文设计实现了一种基于深度学习的压板状态检测系统。以YOLOE检测算法为基础,在其主干网络中融入ECA(Efficient Channel Attention)注意力机制,强化网络的特征提取能力,以提升模型检测的准确度。引入SIoU代替原损失函数,以解决检测精度低和小目标易漏检误检的问题,并且提高模型的训练速度。对比实验结果表明改进后的YOLOE算法在变电站压板检测中上取得了90.3%的平均检测精度、96.9%的召回率以及97.8%的精确率,能够满足变电站运行检测要求。
Abstract: Aiming at the current problems of multiple types and large number of substation voltage plates, easy misdetection of small targets, and slow speed and low accuracy of platen state detection, this paper designs and implements a deep learning-based platen state detection system. Based on the YOLOE detection algorithm, the ECA (Efficient Channel Attention) attention mechanism is integrated into its backbone network to strengthen the feature extraction capability of the network in order to improve the accuracy of model detection. SIoU is introduced to replace the original loss function to solve the problems of low detection accuracy and easy to miss and error detection of small targets and to improve the training speed of the model. Comparative experimental results show that the improved YOLOE algorithm achieves an average detection precision of 90.3%, a recall rate of 96.9% and an accuracy rate of 97.8% in substation voltage plate detection, which can meet the requirements of substation operation detection.
文章引用:徐岗, 罗印升, 宋伟. 改进YOLOE算法在压板状态检测中的应用[J]. 计算机科学与应用, 2024, 14(5): 219-228. https://doi.org/10.12677/csa.2024.145130

1. 引言

电能的可靠安全供给对国民经济和人们的生活不可或缺,变电站是其中的重要环节。变电站运行中的保护压板作为关键设备,其工作状态是一个重要的关注点。保护压板的投退状态是否正确,关系到变电站控制柜是否处于正常工作中,所以对于保护压板投退状态的检测至关重要。

对压板投退状态的检测,早期电网内部使用人工监视的方式来核对压板投退状态,该方法受到检测人员自身因素的影响,检测时间长,易出现漏检误检的情况。2014年后随着计算机技术的不断提高,开始尝试使用智能识别检测技术来完成。国内外对于智能化识别与检测压板投退状态的方法与技术都有所研究,其研究主要分为两个方向;第一种是对于压板本身进行结构改造,需要在每个压板上再加一个状态判断控件,该控件可以实时传输信号,来告诉计算机当前压板的投退状态。但是该方法不适应于传统变电站,如果想要推广应用,硬件成本过高。第二种则是使用图像处理和深度学习方面的技术进行自动检测,2015年,广东电网有限责任公司电力科学研究院邓应松团队 [1] 提出了基于图像识别的压板投退状态辨别方法,标志着智能压板状态识别的重要进展。该方法首次采用基于特征识别技术,结合去噪聚类、Sobel算子边缘检测、布局排列分析和整体分割等图像处理算法,具有里程碑意义。然而,该系统仅考虑了连片式压板,未涵盖线簧式压板,因此适用范围较窄。2023年10月国网山东省电力公司泰安供电公司邹积鹏团队提出了一种基于图像识别的变电站保护压板校核移动应用 [2] ,该方法通过图像分割和分割目标匹配,采用Kmeans算法作为图像分割算法,构建3个状态特征指标,并利用D-S证据融合理论,融合这3个指标作为状态判别结果。虽然达到了预期的检测结果,但本身分割压板图像一个个检测,导致检测时间过长,实时性不够,且一旦漏检即无法完成投退状态对比,缺乏泛化性。

本文提出了一种基于改进的YOLOE算法的压板状态检测系统来满足精度、时间和泛化性的要求 [3] ,来解决上述检测时间长,易出现漏检误检问题。本文从引进注意力机制和更换损失函数两个方面对于检测算法进行改进,从而提高模型的性能和精度。

2. 压板状态及其检测

2.1. 压板状态类型

常见压板的投退状态类型有三种,投入,未投入以及取下 [4] 。一般的压板使用连接片进行连接,各类压板投退状态图片如图1所示。

(a) 投入 (b) 未投入 (c) 取下

Figure 1. All kinds of pressure plate states

图1. 各类压板状态

2.2. 压板状态检测

变电站系统包括各地区站点。将站点内区域按功能分类为开关室、控制室等。每一各区域包含数量不等的电气控制柜。而本文的任务是完成对控制柜上的压板的投退状态检测。为了完成该任务,创建了变电站压板状态检测系统。

Figure 2. Flow diagram of the detection system

图2. 检测系统流程图

检测系统包括变电站管理系统和压板实时检测系统。由于本系统前端载体使用的微信小程序,所以并不存在过多的硬件设施,采集变电站控制柜图片主要依靠手机自带的摄像头。变电站管理系统主要负责处理变电站控制柜的管理和将采集到的图片上传到后端服务器进行处理。压板实时检测系统负责将前端传输的图片放到训练好的深度学习目标检测模型中进行识别,利用深度学习技术,使用目标检测算法,获取图像中所有压板的位置和状态。再通过斑点检测方法,获取图片中符合条件的压板位置数据,将两者进行对比,以防止漏检,最后再输出所有的压板状态检测结果,通过移动端软件信息及时提示提醒工作人员进行相应的处理,整个压板状态监测过程无需人工操作,中间信息更新的时效性好,对压板投退状态进行更好地检测和快速及时的掌握,管控自动化程度高,大大提高了整体效率。有异常时能够快速及时提醒工作人员进行相应的处理。系统流程如图2所示。

3. YOLOE模型算法优化

3.1. PP-YOLOE模型概述

近几年来,YOLO系列目标检测算法不断更新,且不断被应用于各个领域的检测当中。目前YOLOX以50.1达到了速度和精度的最佳平衡,V100上测试可达68 FPS,是当前YOLO系列网络的集大成者,YOLOX [5] 引入了先进的动态标签分配方法,在精度方面显著优于YOLOv5,受到YOLOX的启发,化了之前的工作PP-YOLOv2。在PP-YOLOv2的基础上提出YOLOE,该检测器避免使用deformable convolution和matrix nms等运算操作,能在各种硬件上得到很好的支持。

YOLOE在速度和准确性权衡方面优于YOLOv5和YOLOX。在640 × 640的分辨率下,YOLOE-l 达到51.4 mAP,78.1 FPS。YOLOE借鉴YOLOv5,采用width multiplier和depth multiplier的方式配置,支持TensorRT和ONNX,部署代码开源在PaddleDetection。其网络结构如图3所示。

Figure 3. YOLOE network structure

图3. YOLOE网络结构

从YOLOE的网络结构中我们可以看出YOLOE使用了高效的骨干网络作为基础,通常采用像ResNet [6] 、DarkNet或者MobileNet等结构,用于提取输入图像的特征;其引入了特征金字塔网络,用于提取不同尺度的特征图,从而有效地检测不同大小的目标;与此同时,还使用了空间金字塔池化技术,可以在不同尺度下进行目标检测,提高了模型的感受野。

综上所述,PP-YOLOE是一种高效、准确的目标检测模型,它结合了PaddlePaddle框架的优势和多种先进技术,能够在保持实时性的同时实现精确的目标检测。

3.2. YOLOE算法改进

YOLOE算法处理一些常见的任务场景时有出色的表现,但由于控制柜压板种类多、分布广和人工巡检存在检测精度低、小目标易误检等问题,需要对YOLOE基础网络进行改进,以适应变电站的实际需求。本研究对原始YOLOE网络进行改进,包括引入ECA通道注意力机制,以捕捉不同通道之间的关系,从而提升网络特征表达能力。同时,针对Smooth L1损失函数的不足,本文在定位损失计算中引入SIoU代替原损失函数,有效地解决了检测精度低、小目标易漏检误检和模型收敛性和训练速度不高的问题。

3.2.1. ECA通道注意力

为了增强模型的检测能力,同时避免深层网络在处理时易于丢失疵点特征,在网络中引入了ECA注意力模块,ECANet是基于SENet (Squeeze-and-Excitation Networks)传统注意力机制改进的轻量级通道注意机制 [7] ,在能够在不降维的基础上,有效实现通道与空间信息的交互。SE模块通过一次全局平均池化(GAP)获得了全局感受野,并使用两个全连接层来实现非线性交互,但SE模块所采用的非线性交互方法会导致输入特征的丢失,大大降低了检测的精度。而ECA注意力机制通过大小为k的一维卷积取代了SENet的2个FC (全连接层),在能实现局部交叉通道的交互和降低模型复杂度的同时,增强了捕获每个通道中获取的关键信息的能力,避免了降维,有效提升了目标检测算法的性能。ECA注意力机制如图4所示。

Figure 4. Structure diagram of ECA attention mechanism

图4. ECA注意力机制结构图

ECA注意力机制对输入的特征图𝜒进行了全局平均池化(GAP),使特征图的维度由H × W × C变为1 × 1 × C,接着对输出的特征向量进行sigmoid激活函数处理,然后使用一维卷积对输入进行重要性加权,以捕获输入图中更重要的信息,得到具有通道注意力的特征图。其中,重要的特征分配较高的权重,不重要的特征分配较低的权重。

3.2.2. 改进损失函数

在目标检测中,损失函数通常由分类损失、定位损失、置信度损失三部分组成,这三个部分分别衡量了模型对目标类别、位置和存在性的预测准确性。YOLOE中分类和置信度损失都是使用交叉熵损失函数进行计算的。而定位损失用于衡量模型对目标框位置的预测精度 [8] 。在YOLOE中,通常使用Smooth L1损失函数计算定位损失,定位损失用于衡量模型对目标框位置的预测精度。在YOLOE中,通常使用Smooth L1损失函数计算定位损失,其计算公式如式1。

L l o c = i = 1 N o b j ( c { x , y , w , h } S m o o t h L 1 ( t i , c t ^ i , c ) ) (1)

其中, N o b j 是图像中的目标数量, t i , c 是第 i 个目标的真实位置信息包括目标框的中心坐标 x , y 和宽高 w , h t ^ i , c 是模型预测的第 i 个目标的位置信息。Smooth L1损失函数在设计上是为了平衡平方损失和绝对损失,在误差较小时使用平方损失,在误差较大时使用绝对损失。然而,这种平滑性的引入会导致损失函数在接近阈值时出现过渡性的变化,有时会使模型难以收敛。同时Smooth L1损失函数的性能可能受到超参数(如阈值)的影响,这些超参数通常需要手动调整。选择不当的超参数值可能会影响模型的训练效果。针对Smooth L1损失函数的不足,本文在定位损失计算中引入SIoU代替原损失函数,SIoU通过在损失函数成本中引入方向性,重新定义相关损失函数。SIoU损失函数由角度、距离、形状、IoU 4个成本函数组成。

SIoU损失函数添加这种角度感知组件背后的想法是最大限度地减少与距离相关的“wondering”中的变量数量。基本上,模型将尝试首先在X或Y轴做预测(以最接近者为准),然后沿着相关轴继续接近。

要实现这一点,收敛过程将首先尝试最小化 α ,如果 α π 4 ,否则最小化 β = π 2 α 。角度成本计算过程

图5所示。

Figure 5. Angular costing process

图5. 角度成本计算过程

在SIoU损失函数中,IoU成本通常作为损失函数的一部分,用于衡量模型对目标定位的准确性。其IoU计算如图6所示。

Figure 6. IoU computational graph

图6. IoU计算图

最终我们定义损失函数SIoU计算公式如式2:

L b o x = 1 I o U + Δ + Ω 2 (2)

其中Section (Next) Ω 为形状成本,IoU如式3:

I o U = | B B G T | | B B G T | (3)

SIoU损失函数可用于训练目标检测模型,通过最小化IoU成本,模型可以更好地学习目标的定位精度,从而提高目标检测的准确性。

SIoU损失函数的IoU成本是衡量两个边界框之间重叠程度的度量,用于评估模型对目标定位的准确性,具有鲁棒性、可解释性和训练优化的特点。

4. 实验过程与结果分析

4.1. 数据集介绍

本文所用数据集来自某区多个变电站场景拍摄,共2000张以金属板为背景的图片,有裸露在外的也有保护好封装在玻璃柜中的。由于保护柜的玻璃会反射外部光线,所以一般会打开保护罩进行拍摄取照。由于控制柜压板分布密集,数据集中每张都会包括2~3种压板的投退状态。控制柜例如图7所示。

(a) 常见的控制柜压板图片 (b) 特殊形态的压板

Figure 7. Picture of the control cabinet plate

图7. 控制柜压板图片

4.2 算法评价指标

为了准确地反映深度学习目标检测模型在变电站领域的检测能力,本文对比实验采取精准率、召回率和平均检测精度来分析检测模型的性能是否具有工程价值,精准率和召回率越高,表示压板投退状态检测过程漏检率和错检率越低,较高的平均检测精度表示模型在目标检测任务上的性能更好 [9] 。

平均精度均值(mean Average Precision, mAP)是衡量目标检测算法性能的一项重要指标,是目标检测算法的性能度量标准,被广泛应用于目标检测算法的研究和评估中。mAP是对所有类别的AP取平均值,提供了一种单一的衡量目标检测算法总体性能的指标,有助于更客观地评估算法的优劣。

准确率是根据混淆矩阵而衍生的一种判断正负的评价指标。是指是指分类或检测算法正确预测的样本数量与总样本数量之比,它衡量了算法对所有样本的分类或检测准确性。准确率的计算公式如下所示:

A c c u r a c y = ( T P + T N ) ( P + N ) = ( T P + T N ) ( T P + T N + F P + F N ) (4)

其中,TP (True Positives)表示正确预测的正样本数量,TN (True Negatives)表示正确预测的负样本数量,FP (False Positives)表示错误预测的正样本数量,FN (False Negatives)表示错误预测的负样本数量。P + N表示样本总和。

召回率是深度学习目标检测算法中非常重要的评价指标,是指分类或检测算法在所有真实正样本中,成功预测为正的样本数量占总正样本数量的比例。它衡量了算法对正样本的识别能力,即算法在所有正样本中识别出多少。当我们需要确保尽可能多地找到所有正样本时,召回率是一个重要的指标。召回率的计算公式如下:

Re c a l l = T P T P + F N (5)

4.3. 实验与分析

为了进一步验证本文改进后的算法YOLOE的对压板检测的性能提升,进行了几组对比实验,将其与常见的目标检测算法Faster RCNN、SSD、YOLOv5、YOLOv7、YOLOE在同一压板数据集上进行对比试验,结果如表1所示。

Table 1. Comparison table of the results of each detection algorithm

表1. 各检测算法结果对比表

与Faster RCNN、SSD相比,各项评价指标都有显著提高。与YOLOv5、YOLOv7、YOLOE 相比,虽然模型的参数量有增加,但其余的评价指标都有大幅提升。与原本的YOLOE [10] 相比,本研究算法在模型参数量增加的情况下,精确率、召回率、mAP@0.5分别提升了0.9个百分点、4个百分点、2个百分点。通过增加少量的模型参数量增加大幅提升了模型的性能,有利于压板投退状态检测。本研究的改进模型能够有效实现压板投退状态小目标检测。

4.4. 消融实验

通过设计2组消融实验来分别评估ECA注意力机制模块和SIoU损失函数对于YOLOE的改进效果。由表2可以看出引进注意机制提升模型准确率和召回率0.6和0.3个百分点。而替换SIoU损失函数则分别提示0.2和0.7个百分点。由此可见两项改进均可提升模型的准确率和召回率 [11] 。而本文提出的改进后的YOLOE算法,将替换SIoU和引进ECA机制相结合的方式,最后在提升精确率、召回率、mAP@0.5分别提升了0.9个百分点、4个百分点、2个百分点。由此可知,模块融合后的网络模型整体性能优于单项改进 [12] ,验证了两个改进策略在压板投退状态检测中的有效性。

Table 2. Comparison table of ablation experimental results

表2. 消融实验结果对比表

4.5. 检测结果可视化

图8所示,经优化过的YOLOE模型检测后,控制柜图片上的所有压板状态基本检测无误,置信度均值达到0.90,以达到工程应用的基本标准,可以完成现阶段的压板状态实时检测任务。

Figure 8. Graph of the model detection results

图8. 模型检测结果图

5. 结论

在变电站场景中实现批量压板投退状态的检测,具有重要的工程实际意义,本文针对变电站压板种类多、数量大、小目标易误检问题,开发了以PP-YOLOE目标检测模型为基础的变电站控制柜压板投退状态检测系统。系统以PP-YOLOE模型为多类别压板状态目标检测的基础。针对多个目标实时检测问题,提出一种前后端相结合的变电站管理系统及实时检测系统。通过在PP-YOLOE网络中引进ECA注意力机制,调高了网络的提出能力,从而加强模型的检测效果,减少了误检漏检现象。并在定位损失中引入SIoU代替原损失函数,提高模型执行效率,减少了误检漏检情况。最终实现变电站压板状态的实时准确检测。但受到变电站室内环境影响和压板的污染和磨损程度影响,压板状态目标检测可能产生检测错误,为了尽快正式投入使用,需要更多的样本数据集,不断补强模型的训练,是下一步的重点。

参考文献

[1] 邓应松, 段秦刚, 宋小松. 基于图像识别的保护压板投退状态辨识方法[J]. 陕西电力, 2015, 43(10): 49-53 67.
[2] 邹积鹏, 梁辰, 陈广辉. 基于图像识别的变电站保护压板校核移动应用[J]. 黑龙江电力, 2023, 45(5): 417-422.
[3] 陈拓, 张国月, 齐冬莲. 基于全卷积神经网络的智能变电站开关状态识别方法[C]//第35届中国控制会议论文集. 杭州: 浙江大学, 1458-1461.
[4] 周克, 杨倩文, 王耀艺, 张金钱. 一种改进的压板状态识别SSD算法[J]. 电测与仪表, 2021, 58(1): 69-76.
[5] 王伟, 张彦龙, 翟登辉, 刘力卿, 许丹, 张旭. 基于OpenCV SSD深度学习模型的变电站压板状态智能识别[J]. 电测与仪表, 2022, 59(1): 106-112.
[6] 付文龙, 谭佳文, 吴喜春, 陈铁, 胡文斌, 钟浩. 基于图像处理与形态特征分析的智能变电站保护压板状态识别[J]. 电力自动化设备, 2019, 39(7): 203-207.
[7] 吕家伟, 刘瑞荣. 基于颜色模版匹配的继电保护压板投退状态识别设计[J]. 机电信息, 2018(36): 115-116.
[8] 吕志宁, 宁柏锋, 周子强. 基于图像处理的保护压板定位及状态识别研究[J]. 数字技术与应用, 2018, 36(6): 82-83.
[9] 汪洋, 黎恒烜, 鄂士平, 王成智, 张侃君. 基于深度学习的变电站硬压板状态检测与识别算法[J]. 沈阳工业大学学报, 2020, 42(6): 676-680.
[10] 肖立军, 莫玲. 基于模式识别的继电保护压板状态检定系统[J]. 新技术新工艺, 2017(11): 56-58.
[11] Rao, L. (2021) TreeNet: A Lightweight One-Shot Aggregation Convolutional Network. arXiv:2109.12342
[12] Liu, S., Qi, L., Qin, H., et al. (2018) Path Aggregation Network for Instance Segmentation. 2018 IEEE/CVF Conference on Computer Vision and Pattern Recognition, Salt Lake City, 18-23 June 2018.
https://doi.org/10.1109/CVPR.2018.00913