改进SSD 的变电站电力设备识别方法∗
2024-04-17徐海洋
徐海洋 卢 泉
(广西大学电气工程学院 南宁 530004)
1 引言
变电站是电力系统的重要组成部分,为人们的生产生活用电提供基本保障[1]。随着社会经济的不断发展,用电量与日俱增,变电站数量大幅增长,出现巡检人员短缺的问题。当前,采用机器视觉和人工智能代替人工巡检已经成为变电站巡检的重要方式。智能巡检依托可见光相机和红外热像仪等设备采集图像,对图像进行处理,进一步对电力设备状态进行识别[2]。
一张巡检图像中经常包含几种尺寸差异显著的识别对象。如图1 所示,本文定义电流互感器等设备是大尺寸对象,表盘和柜门等设备是小尺寸对象,将大尺寸和小尺寸对象统称为尺寸差异显著的对象。如何在图像中同时预测几种尺寸差异显著的对象,是电力设备识别面临的一个难题。此外,电力设备的检测环境复杂,存在光照变化和遮挡现象,这些干扰因素都不利于电力设备识别。
图1 巡检图像
目前,国内外研究人员针对部分电力系统设备进行识别,取得了一定的研究成果。可以将现有的电力设备识别方法分为两类:基于传统图像处理的方法和基于深度学习的方法。基于传统图像处理的方法中,HUANG 等[3]采用形态学运算的多尺度Harr 小波变换和其逆变换的系数特征进行覆冰绝缘子图像清晰化的处理,提升了覆冰绝缘子在特殊天气和背景下的检测。LI等[4]采用Canny算法进行边缘检测和融合分类器和等矩取点配对机制的Hough 实现对覆冰导线的冰厚度检测。基于深度学习的方法中,QU 等[5]使用Spark 构建多深度神经网络的电力变压器故障识别算法,第一部分为多个多神经网络识别器,第二部分为使用Reduce 模块的结果融合和决策算法,该算法综合的诊断较传统的DNN 算法正确率提高了5%。TANG 等[6]采用U-net 进行绝缘子分割,再使用YOLOv4 获取绝缘子的位置,最终实现对自爆绝缘子的目标识别。SHEN 等[7]提出了一种基于灰度转换的特征提取方法和多源Mallat-NIN-CNN网络的电力变压器绕组故障诊断模型,解决了变压器绕组形变检测中的参数过多和受噪声干扰的问题。
上述文献通过传统的图像处理和深度学习实现了部分单一种类电力设备(变压器、输电线路或绝缘子)的检测与识别,但对多种电力设备识别的研究较少。此外,以上研究多为背景单一情况下的检测与识别,未考虑变电站的复杂背景对于识别准确率的影响。同时,以上方法未对尺寸差异显著的对象提出合理的识别方案。
目前,国内外开展变电站电力设备分析和识别研究的相关工作较少。近些年深度学习技术不断发展,相较于传统机器学习,深度学习在特征提取方法方面具有较好的表征能力,克服了梯度爆炸等情况带来的不利影响[8]。同时,深度学习在特征传播、目标识别的准确率和检测时间上均有改善[9]。深度学习的发展为其在小样本变电站电力设备中的研究开展提供了可能。基于深度学习的方法能应对更复杂的检测情形,综合识别性能要强于基于传统图像处理的方法。本文提出一种改进SSD[10]算法的多分类检测器,用于尺寸差异显著的电力设备进行识别。本文方法主要改进SSD 算法的两个重要部分:其一,保证多尺度特征提取,加强大尺度特征图的有效性。其二,优化默认框的生成策略,提出符合尺寸差异显著对象的多种默认框。本文收集了变电站环境下的电力设备图片,并将图片标注作为电力设备数据集。经实验结果表明:相比于SSD、Faster R-CNN 和YOLOv3 算法,本文算法的识别效果更好,能较好地识别多种类的变电站电力设备。
2 基于改进SSD 的变电站电力设备识别
目前主流的深度学习识别算法分为一步法和两步法。一步法包括了YOLO[11]和SSD 等方法,二步 法 包 含 了R-CNN[12]、Fast R-CNN[13]和Faster R-CNN[14]等算法。基于二步法的算法识别精度高,但识别速度慢。在一步法中,YOLO 算法速度较快,但精度不高;SSD 网络结合了YOLO 的回归思想和Faster R-CNN 的anchor 机制,既保留了YOLO的识别速度,也具有Faster R-CNN的精确度,具有良好的应用场景,故本文选用SSD作为变电站设备分类的基本方法。SSD 算法是由Wei Liu 等在2016 年提出,其结构是根据CNN 网络前面特征图尺寸较大,通过后续的卷积和池化的操作后会逐步变小这一特点设计[15],采用前后多层的特征图用来做识别和回归[16]。
2.1 传统SSD网络
SSD网络结构以改进的VGG16作为主干网络,其网络结构如图2 所示(以SSD300 为例)。SSD 网络通过改进原有的VGG16 网络进行特征提取。其中,通过将两个全连接层置换成两个卷积层,再添加四个卷积层构成了特征提取部分。最终将六层不同尺度的特征用于目标识别的分类预测与位置回归。SSD 采用不同尺度的默认框(default box),在特征图中的每一个像素点均会生成4 个~6 个默认框,默认框的大小可由式(1)计算得出。
图2 SSD网络结构(以SSD300为例)
式中,Sk为默认框大小相对图片的比例,m为特征图的数量,k为不同的特征层,Smax和Smin分别表示设定比例的最大值和最小值,通常设置为0.9 和0.2。通过式(1)得出对于浅层特征图来说,默认框的尺寸较大,但感受野较小,可以用于识别图像中较小的目标,反之深层的特征图可以用于较大的目标。
SSD 算法的损失函数由分类置信度损失和定位损失得到,如式(2)所示。
SSD 算法在改进的VGG16 中提取六层特征进行目标预测。改进的VGG16 的意图在于保证适宜识别精度的前提下尽可能提升识别速度。因此,可以对SSD算法的主干网络进一步优化,使其更好地适用于尺度差异显著的对象识别。
2.2 改进的SSD网络
本文方法主要从两个重要方面对SSD 算法进行改进:首先,改进传统SSD的主干网络,以保证多尺度特征提取,加强大尺度特征图的有效性。其次,优化传统SSD 默认框的生成策略,提出符合尺寸差异显著对象的多种默认框。
2.2.1 深度残差网络
深度残差网络[17]是由何凯明等在2015 年的ILSVRC 大赛上提出的,是一种采用残差块堆叠而成的深度卷积模型,内部残差块使用跳跃链接的方式,可以缓解因网络深度增加而出现的梯度消失等问题,提高网络的准确率,图3为残差块的示意图。
图3 残差块结构
残差块分为两个部分,一部分为直接映射部分,另一部分为残差部分。一个残差块可以表示为
深度残差网络将常规的深度网络的层间乘性传播改善为层间加性传播。Resnet50 网络深度可达50层,使用其代替VGG16作为主干网络,可以提升特征的表征质量。ResNet 网络使用其Conv4_x及以前的网络结构,后面的结构和传统SSD 一样,添加额外的卷积结构,改进的SSD 网络结构如图4所示。
图4 改进的SSD网络结构
2.2.2 K-means聚类算法
K-means聚类算法是一种常用的、基于原型的目标函数聚类算法[18]。原SSD 论文中的默认框生成方式不符合变电站电力设备的特点,为了生成符合变电站电力设备特征的默认框,本文通过K-means算法对本文构建的数据集进行聚类分析,得出更符合的默认框。K-means 算法通常使用欧氏距离作为度量,在SSD网络中,考虑到交并比(Intersection over Union,IOU)对匹配的影响,本文采用式(8)所示的距离度量。
式中,gtbox 为物体真实框(ground truth box),centro为聚类中心,areagtbox为真实框的面积,areacentro为聚类中心的面积。K-means 聚类算法伪代码如下所示。
3 基于迁移学习的变电站电力设备识别
3.1 变电站电力设备图像标注
本文选取了变电站内的避雷器表盘、电流互感器、电压互感器、断路器、避雷器和柜门等六类设备作为研究对象,六类设备大小不一,为变电站内常见的设备,作为测验类型生成的网路具有一定普适性。本文采用的数据集共125 张,其中训练集100张,测试集25 张。使用由Python 和Qt开发的LabelImg工具进行图像标注,采用PASCAL VOC 为数据集格式,标注效果如图5所示。
图5 标注效果图
3.2 网络训练
网络训练需要用到两个训练技巧,一个为迁移学习,另一个为数据增强。迁移学习(Transfer Learning)是机器学习的一个分支,研究如何将已有的数据或者模型应用到新的领域或者场景,进而解决新领域的问题[19]。通过使用迁移学习,既能解决小样本不足以训练神经网络的问题,还能减少数据标注和训练带来的麻烦,符合本文研究对象和数据集的需求,故本文通过迁移学习实现变电站电力设备的识别。
由于受到变电站图像数据需要保密的限制,且变电站内部场景较为复杂,采集到的图像质量不一,因此采集到的样本不适宜直接进行训练,故本文先在公开数据集VOC 上进行预训练,得到预训练模型。
为丰富样本数量,提高模型性能,在训练集图像送入网络之前,需对图像进行水平翻转、随机裁剪和随机分割等处理,丰富了现有数据集。然后利用预训练模型进行参数初始化,将训练集内的图像送入网络进行训练,并对网络参数进行微调,最终得到适合本文变电站电力设备的网络参数。
4 实验结果及分析
本文实验使用的实验环境为Windows10 系统,PyTorch深度学习框架和Python3.7语言。
本文首先对默认框进行K-means 聚类调节尺寸实验,将电力设备的宽和高聚成6 个类,聚类结果如图6 所示,真实框的宽高情况如表1 所示。根据结果,本文将默认框的基准大小为[13,19]、[24,103]、[24,51]、[50,218]、[33,158]和[65,58]。
表1 默认框聚类的基准大小
图6 聚类结果
为了验证本文方法的有效性,使用本文构建数据集分别在传统SSD、Faster R-CNN、YOLOv3 和本文所提算法中进行训练和识别,本实验采用准确率,召回率及F 值作为评价标准。如式(9)~(11)所示,precision 是准确率,recall是召回率,F 值是准确率和召回率的调和平均值。
式中,tp 为真阳性检测,fp 为假阳性检测,fn 假阴性检测。
表2 为对比试验结果。从表中可以看出,本文算法在准确率上最优,在召回率上仅比Faster R-CNN算法低2.59%,调和平均值上最优。本文方法与传统SSD 算法在准确率上相差不大,均高于97%,但本文算法在召回率上比传统SSD 算法高出42.24%;在调和平均值上,本文算法比传统SSD 高出36.26%。综上,本文在尺寸差异显著的电力设备数据集上取得了最优的性能,说明本文算法能够很好地识别尺寸差异显著的对象。
表2 目标识别算法对比试验结果
图7 为不同识别算法的展示图。由图可知,对于大尺寸对象,如电流互感器和避雷器等,传统SSD 出现了严重的漏检;Faster R-CNN 和YOLOv3出现了部分漏检,主要体现在避雷器上,同时对于遮挡面积大的电流互感器也未能识别出来。对于小尺寸目标如表盘和柜门,传统SSD算法几乎无法识别;Faster R-CNN 算法存在少量漏检;YOLOv3算法几乎全部识别出来。本文算法几乎将图中目标识别出来,效果较好。
图7 不同算法识别结果
综上所述,本文改进算法在尺度差异明显的变电站电力设备识别中具有良好的效果。
5 结语
本文围绕变电站尺寸差异明显的电力设备进行识别与分类,针对原有SSD 的不足进行了改进,以Resnet 残差网络代替VGG 网络作为主干网络加深网络深度,提高特征表征质量;引入K-means 聚类算法,调节默认框尺寸,提高识别精度。经实验证明,相较于传统SSD、FasterR-CNN 和YOLOv3,本文算法具有良好的效果。