基于改进YOLOX的变电站设备缺陷检测方法
2023-12-26罗箫瑜
罗箫瑜,张 志
(广西电网有限责任公司 来宾供电局,广西 来宾 546100)
0 引 言
变电站作为电力系统的关键基础设施,其安全稳定运行是电能供应的重要保障。受人们生活和自然环境的影响,变电站设备可能会有破损、脏污等缺陷,这会给变电站的安全运行带来隐患,并有可能导致电力系统危害发生。因此不可忽视变电站日常的巡检。目前,我国变电站巡检基本还是以人工巡检方式为主,但这种巡检方式存在效率低,限制多等问题。为减轻电力工作人员的巡检负担,实现变电站智能巡检,迫切需要开展变电站设备的无人智能化运维管控,提高变电站巡检的质量与效率[1-4]。
目前,随着目标检测算法技术的蓬勃发展,许多学者将目标检测算法引入到变电站和输电线路巡检的工作中,旨在提高电力系统的自动化程序。目标检测算法能在各种复杂的环境下提取使用者感兴趣的信息,极大地加速了工业领域自动化的进程[5]。根据训练方式的不同,变电站目标检测方法可分为双阶段法和单阶段法,双阶段法以基于区域建议的R-CNN(Region-based Convolutional Neural Network)系列为代表,将检测和识别分成两个步骤,需要先产生目标候选框,再对候选框做分类与回归; 单阶段法是一种端到端的检测算法,它将检测和识别作为类别概率和边界框的回归问题,主要有SSD(Single Shot multiBox Detector)模型、YOLO(You Only Look Once)网络模型等[6-15]。刘黎等[7]提出了基于Faster-RCNN(Faster Region-based Convolutional Neural Network)的变电站悬挂异物检测方法,实现了悬挂物和鸟巢两类常见异物的检测。尹子会等[8]提出了一种基于Faster-RCNN的变电站设备缺陷检测系统,实现了包括呼吸器变色、呼吸器漏油、绝缘子破损和鸟巢在内的4类常见变电站设备缺陷的检测与识别。陈婷等[9]提出了基于YOLOv4的变电站缺陷检测方法,对呼吸器变色类缺陷实现了高精度的检测与识别。琚泽立等[10]提出了一种耗时较短的基于SSD的变电站缺陷图片检测方法,实现了表盘故障与呼吸器故障的高效检测与识别。由此可见,单阶段的YOLO系列将目标检测作为回归问题,在产生候选区域的同时完成分类和定位,推理速度较快[11-15]。
然而,针对变电站缺陷检测任务仍存在以下难点:1) 数据采集成本高,神经网络需要大量样本学习,由于缺陷场景的稀缺性,收集足够的考虑复杂光照条件的缺陷样本成本很高; 2) 变电站背景信息复杂,由于缺陷图片中同时包含小目标和大目标,不同层次特征之间的不一致性干扰了训练过程,降低模型检测的有效性; 3) 由于同一类别部件的破损或模糊种类较多、形状多样,尤其是样本数量有限且正、负样本存在不均衡问题时,将导致模型准确度降低。
为此,考虑到YOLO网络本身运算速度快、精度高的优点,而变电站缺陷监测与识别恰好需要准确性和实时性兼备。笔者首先用数据增强方法对有限的初始数据集进行扩充,利用多种图像处理方法增加数据集的复杂度,生成考虑复杂光照环境的数据集; 然后从提高特征提取能力和预测能力两点上对原始YOLOX-s算法进行改进,采用自适应空间特征融合(ASFF:Adaptively Spatial Feature Fusion)的方法缓解特征金字塔中不同尺度特征的不一致性问题,并将置信度损失函数改为Focal损失函数以缓解正负样本不平衡的问题。实验结果证明了两项改进的有效性,表明改进后的YOLOX-s算法能更好地实现变电站设备缺陷的检测任务。
1 数据集构建
深度学习依赖庞大的训练数据实现,训练数据的合适与否对网络训练模型的训练效果具有重要影响,严重时会导致过拟合甚至模型不收敛。目前获得的缺陷样本数据集容量较小,而样本容量大小对卷积神经网络的训练效果有很大影响,因此需要通过数据增强的方法对数据集进行扩容。常用的数据增强方法有空间变换、颜色变换等。
空间变换数据增强方法可通过简单的图像矩阵坐标变换实现,多数变换中初始图像(x0,y0,1)与变换后的图像(xc,yc,1)为
(xc,yc,1)T=M(x0,y0,1)T,
(1)
其中图像变换效果及变换说明如表1所示。
颜色变换数据增强方法通过调节RGB(Red Green Blue)图像三通道的像素值大小实现,笔者主要采用亮度调节方式进行亮度方面的数据增强,调节亮度只需在3个通道对其像素值按照一定规律增减即可改变图像的亮度。RGB图像的亮度计算公式如下:
L=0.299R+0.587G+0.114B。
(2)
采取调节亮度措施可对变电站中图像采集的明暗环境进行一定的模拟,亮度调节处理后的图像如图1所示。
图1 亮度调节效果
对图像进行加噪和加雾可分别对图像采集过程中的噪声和恶劣天气下的环境进行模拟,环境模拟效果如图2所示。
图2 环境模拟效果
Mixup数据增强方法将两张图片进行混合而生成新的训练图片,可扩大数据集容量,在有限的图片中获得更多的异物信息,如下:
(3)
图3 Mixup数据增强效果图
Mosaic数据增强方法使用4张图片进行拼接生成新的训练图片,可丰富异物检测时的背景,其实现思路可以分为如下3步:随机读取4张图片; 将读取到的4张图片进行简单的空间、颜色变换,并将4者按左上、左下、右上、右下的位置进行摆放; 进行4张图片的组合和其目标框的对应组合,并保留有效的目标框。Mosaic数据增强方法的效果如图4所示。
笔者采用Jung等[16]设计的Python库Imgaug进行数据增强,先定义一组变换方法,规定JPEGImages中每张原始图片从该变换方法中随机选择若干种方法作为一个数据增强的策略并进行变换,并使每个策略不尽相同,最后将增强后的图片保存作为数据集的扩充部分,与之前的异物初始数据集合成为新的数据集。
2 基于YOLOX-s的变电站缺陷检测算法设计
2.1 卷积神经网络模型
卷积神经网络是一种人工神经网络和一类包含卷积计算且具有深度结构的前馈神经网络,目前以其作为核心的深度学习算法被广泛使用。卷积神经网络主要用于识别位移、缩放和其他形式扭曲不变性的二维图像,每张图像的像素可看作是一个多维输入向量,同一特征映射图上的权值共享减少了权值的数量,降低了网络的复杂性。卷积神经网络主要由输入、卷积、激活、池化、全连接和输出层构成[17]。当一个样本图片输入后,经过多层的卷积、激活和池化层后,逐层地提取图像特征信息、加强特征信息,并且在保留图片重要特征信息的同时,压缩特征数据,提高模型的计算速度,最后得到的特征向量输入到全连接层中进行分类输出。
2.2 图像预处理模型
由于笔者考虑复杂光照环境下的变电站缺陷检测识别,数据集中引入了图像噪声、光线环境等因素的影响,因此在进行图像预处理过程中需要采用一定的算法进行图像去噪,提高图像特征[18]。图像的去噪也可称为图像的平滑处理,主要是对图像采用各种滤波算法以减少噪声,常用的方法有均值滤波、高斯滤波、中值滤波和双边滤波等。
1) 均值滤波。其为典型的线性滤波算法,主要方法为邻域平均法,即通过模板求像素邻域的均值代替原像素值。均值滤波的变换公式如下:
(4)
其中m为该模板包括当前像素在内的所有像素总个数。
2) 高斯滤波。其是一种线性平滑滤波,对图像中的高斯噪声有一个很好的去除作用,在图像的去噪过程中得到了广泛使用。高斯模板中各元素值的计算公式如下:
(5)
3) 中值滤波。其是一种典型的非线性滤波技术,采用邻域内像素的中值代替原像素值去除噪声。中值滤波由于不依赖领域内与典型值差别很大的值,所以椒盐和斑点噪声的去除有显著效果,且能保护信号边缘不被模糊,但需要进行像素排序,计算量大。中值滤波各像素值计算公式如下:
g3(x,y)=median{sort(f(x+i,y+j))}, (i,j)∈a×a。
(6)
在实际进行图像处理时,应当综合考虑噪声消除与细节保留因素,选择合适的图像去噪方法。均值滤波不能很好地保存图像的细节,在去噪的同时也对图像的细节部分造成了一定程度破坏,会造成边缘模糊; 高斯滤波在有利于去除高斯噪声,能较柔和的保留边界,但依然较难完全去除椒盐噪声; 中值滤波在去除椒盐噪声的效果较好,能在去除图像噪声的同时,对图像的边缘特性进行保存,但由于需要进行排序操作,花费的时间是均值滤波的5倍以上。由于所拍摄的照片中可能包含高斯、椒盐和斑点等噪声,笔者考虑将多种方法相结合,根据具体情况选择合适的滤波方法。
2.3 改进的YOLOX-s网络模型
YOLOX网络YOLO系列的anchor-free版本,根据其网络结构大小可以分为标准网络结构和轻量网络结构,前者包括YOLOX-s、YOLOX-m、YOLOX-l、YOLOX-x和YOLOX-Darknet53,后者包括YOLOX-Nano和YOLOX-Tiny。其中YOLOX-s是在YOLOv5s的基础上进行了改进。YOLOX-s网络结构主要由输入端、网络主干、特征增强与预测模块4部分构成,即图5中所示的Input、Backbone、Neck与Prediction 4部分。
图5 YOLOX-s网络总结构
为进一步提升YOLOX-s网络的检测效果,笔者改进了原YOLOX-s算法,将置信度损失函数改为Focal损失函数以缓解正负样本不平衡问题,并采用自适应空间特征融合(ASFF:Adaptively Spatial Feature Fusion)的方法缓解特征金字塔中不同尺度特征不一致性。
1) Focal损失函数。原YOLOX-s网络的损失计算中置信度损失采用二分类交叉熵损失函数,虽然一定程度上解决了正负样本不平衡的问题,但并未区分是易分类还是难分类样本,可能导致整个过程针对易分类负样本进行,使过程的损失增大。因此采用Focal损失函数进行改进,Focal函数的计算公式如下:
F(pt)=-αt(1-pt)γlog(pt),
(7)
其中(1-pt)γ为调制因子,用于降低易分类样本的损失贡献并增加难分类样本的损失比例;αt为平衡参数,用于抑制正负样本数量失衡问题。
2) ASFF机制。基于特征金字塔的one-stage目标检测算法不同特征尺度之间具有不一致性,即在采用FPN(Feature Pyramid Network)结构的网络中,不同层之间的特征将会影响最后的检测结果,当某一目标在某一层被判别为正类后,其他层会将其判别为负类。而在特征融合时,其他层的无用信息也可能会被融合。因此采用ASFF机制自适应地学习各尺度特征映射融合的空间权重,而非之前基于元素和抑或级联方式进行的多层次特征融合。ASFF机制如图6所示,其将PAFPN中3个不同尺度的特征图分别融合为对应尺度的3个特征图,然后学习一个融合权重,了解不同特征尺度对预测特征图的贡献。
图6 ASFF机制示意图
2.4 网络模型相关参数
为使训练取得一个较好的效果,笔者采用了如下几种训练策略。
1) 迁移学习。其是指将一个任务的网络结构和权值迁移到另一个任务中,使其可以在该任务中产生较好的效果。适合样本不足的情况,将通用特征的学习从已训练好的网络模型中迁移到变电站缺陷检测网络中,既可节省训练时间,又可得到较好的识别效果。
2) 学习率余弦退火衰减。其是指通过余弦函数的形式对学习率进行调整,先缓慢下降,然后加速下降,再缓慢下降,学习率的更新机制如下:
(8)
其中Lrate为初始学习率,Gstep为用于衰减计算的全局步数,Dsteps为衰减步数,α为最小学习率。
3) 优化器选择。其是在深度学习网络反向传播过程中使损失函数不断逼近全局最小的一种权值参数更新算法,笔者选用收敛能力更强且计算效率更高的Adam梯度下降法。其权重更新方式如下:
(9)
该训练模型的全部超参数如表2所示。
表2 模型训练超参数表
2.5 评价指标
为衡量模型训练效果,笔者选用的评价指标有权重平均精度值(WAP:Weighted Average Precision)、F1分数(F1-score)和每秒帧率FPS(Frame Per Second)。
由于模型需要针对变电站多种类缺陷进行识别,为整体衡量模型对变电站各类设备缺陷的检测精度,需要合理考虑不同种类缺陷在系统中所占的比例。笔者提出了考虑变电站设备缺陷权重的平均精度评价指标及不同种类设备缺陷的重要性,对不同种类设备缺陷赋予不同权值。权重平均精度值WAP公式如下:
(10)
其中αi为第i类检测目标的权重,笔者使用的实验样本中,共有3类主要设备缺陷类型:绝缘子一类、二类和间隔棒缺陷,对3类设备缺陷图片数目进行计算,得到3类缺陷的权值分别为0.19,0.57,0.25。由于PAPi为第i类检测目标的平均精度,欲计算PAP值,需要先计算准确率(Precision)和召回率(Recall)。准确率p表示预测样本中实际正样本数占所有正样本数的比例,召回率r表示实际正样本数占所有预测样本的比例,如下:
(11)
其中TP(True Positives)为正确地被划分为正例的数量,FP(False Positives)为被错误地划分为正例的数量,FN(False Negatives)为被错误划分为负例的数量。按照IOU(Intersection Over Union)阈值评估,即分别为IOU值大于0.5的预测框数量、小于0.5的预测框数量和未检测到目标的数量。
用召回率r作为横坐标,准确率p作为纵坐标,则PAP值为该p-r曲线与坐标轴围成的面积,如下:
(12)
类似的指标还有F1分数,其是统计学用于衡量二分类模型准确度的一种指标,是模型准确率和召回率的调和平均数,如下:
(13)
每秒帧率FPS表示算法每秒可以处理的图片数量,表征模型运行的速度,其值越大,表示模型运行的速度越快。如下:
(14)
其中N为从图片处理起始时间tstart到结束时间tend时间内处理的图片数量。
综上,当WAP、F1得分与FPS指标均取值越大时,模型的训练效果越好。
3 实验结果与分析
笔者分别对SSD、Faster-R-CNN与YOLO各系列算法效果进行对比,采用WAP、F1分数与FPS 3项评价指标。各类算法的PAP值如表3所示,3类设备缺陷PR和F1曲线如图7,图8所示。
图7 改进YOLOX-s算法的3类设备缺陷PR曲线
图8 改进YOLOX-s算法的3类设备缺陷F1曲线
表3 各类算法检测精度对比
由表3可看出,各类算法在绝缘子缺陷的检测上PAP值均较高,其中重要的原因是绝缘子缺陷数据集比较丰富,间隔棒缺陷相对单一。虽然各种算法在每种异物上的检测效果变化很大,但可以看出,相比于SSD与Faster RCNN,YOLO系列算法,YOLO算法结果较好,而笔者所提出的改进的YOLOX-s检测精度WAP更是达到了98.07%,相较于原始YOLOX-s算法提升了约1.16%,相较于其他算法更是有明显优势。
从图7可看出,3类典型缺陷的PR曲线与坐标轴所围成的面积均比较大,表明每种检测物体的AP值均比较高。而间隔棒缺陷的PR曲线均不太光滑,因为数据集中这3者所占的比例比较低,由此可看出一个丰富的数据集也能较好地反映模型检测的泛化能力。
从图8可看出,F1曲线反映的是在不同的IOU阈值下的F1分数值,在笔者设定的阈值IOU为0.5时,3类典型缺陷的的F1分数值均较高,且其大小规律与PAP值相同,均为绝缘子一类缺陷最大,间隔棒缺陷最小。因为PAP值和F1得分都是综合反映各检测物体的准确率和召回率,区别是PAP值不随IOU阈值变化。
由此看出,对于准确性和实时性,YOLOX-s模型均要优于另外几种模型,而改进的YOLOX-s模型以一定的模型大小增长为代价,获得了WAP上一定的提升。如图9所示,基于改进YOLOX网络的变电站设备缺陷算法可以对典型设备缺陷进行检测和识别。
图9 基于改进YOLOX-s模型对变电站设备典型缺陷的检测结果
4 结 语
笔者为提高变电站缺陷检测精度,提出了基于改进YOLOX的复杂光照下变电站设备缺陷检测方法。总结了常用的数据增强手段,利用目前有限的数据集对其进行数据增强,尽可能模拟复杂光照条件下的变电站缺陷图片,最终完成了变电站缺陷的数据集设计。在此基础上,给出了基于YOLOX-s的变电站缺陷检测算法,并对YOLOX-s进行了改进,使用Focal函数作为新的置信度损失计算函数以及ASFF机制,采用多种训练策略,并与几种其他深度学习的算法进行效果对比,得出使用YOLOX-s网络进行变电站缺陷检测更具有优势的结论。