赵杰伦,张兴忠,董红月
太原理工大学 软件学院,太原 030024
高压电力线路巡检是电力安全管理的核心工作,通过一系列精细化巡视,及时消除隐患,为人民的生活和生产用电提供保障[1]。随着近年来国家电网公司对无人机电力巡检的推进,基于巡检现场照片进行关键电力部件与巡检缺陷的检测已成为目前研究的热点方向[2],其中检测精度是影响技术落地应用的重要指标,本文将解决高压电力复杂巡检场景下各类电力部件与巡检缺陷检测精度低的问题,最大限度提升检测精度。
2014年以来基于深度学习的目标检测技术迅猛发展,使得众多研究者将该技术应用于电力巡检关键部件及巡检缺陷检测问题。其中,大部分研究者将绝缘子自爆缺陷检测作为研究的主要方向,文献[3]使用Faster R-CNN[4]进行绝缘子与绝缘子自爆缺陷的检测;文献[5]在YOLO v3[6]的基础上增加映射层来获取丰富的特征信息,实现对绝缘子自爆缺陷的实时检测;文献[7]在RFCN[8]网络基础上引入ASDN(adversarial spatial dropout net)模块,提升对遮挡绝缘子自爆区域的检测能力。少量学者针对鸟巢、多种类关键部件及缺的陷检测进行研究,文献[9]在解决鸟巢检测问题上将SSD[10]网络模型与HSV色彩空间滤波器相结合;文献[11]与文献[12]以Faster R-CNN网络为基础展开针对鸟巢检测的研究,均实现了较高的检测精度。但上述文章只针对少量类别进行检测,较难满足实际应用中对多类缺陷检测的需求。在多类部件及缺陷检测方面,文献[13]在全卷积网络结构基础上,结合可形变卷积、特征融合与聚类方法对绝缘子、防震锤、均压环与悬垂线夹四类对象的缺陷进行检测,其中11类缺陷的识别精度达到83.3%;Zhao等[14]提出一种多特征融合的网络结构,对绝缘子、防震锤、悬垂线夹、绝缘子自爆、防震锤故障及鸟巢六类对象进行检测,实现了83.0%的检测精度。总结以上文章,针对少类别的检测方法拥有较高的检测精度但不贴切于当前电力应用场景,针对多类别的检测方法则在检测精度方面难以满足电力应用场景对检测精度的需求。此外,在检测方法层面,上述文章在特征有效提取方面未曾引入注意力机制提升特征的鉴别性,在特征融合方面依旧使用特征图直接相加的方法,没有综合利用不同层次间的语义信息,在特征有效提取与特征融合两方面有较大改进空间。
本文受上述文献启发,针对高压电力线路巡检过程中电力部件及巡检缺陷检测精度较低问题,提出一种超越主流检测器的高压电力部件与巡检缺陷检测方法,主要贡献如下:(1)将主流目标检测网络用于本文数据集,通过对比实验得出RepPoints v2[15]网络模型在电力部件与巡检缺陷检测问题上检测精度最高;(2)针对RepPoints v2中FPN[16](feature pyramid networks)结构不能有效提取跨层次间语义信息及分配角点时忽略FPN各层次特征尺度归一化的问题,结合尺度均衡金字塔卷积(scale-equalizing pyramid convolution,SEPC)[17]与高效通道注意力模块(efficient channel attention,ECA)[18]提出了一种尺度不变特征金字塔结构(scale-invariant feature pyramid networks,SI-FPN),大幅度提升RepPoints v2目标检测算法精度;(3)本文提出的SI-FPN结构可作为一种独立模块嵌入至其他检测网络,有效改善目标检测方法性能,具有一定的通用性。实验证明,本文方法可实现高压电力线路巡检过程中电力部件及巡检缺陷的高精度检测,并优于当前主流检测方法,为高压电力线路自主巡检提供了可靠依据。
随着近期无锚窗网络模型的兴起,基于深度学习的目标检测方法依据网络中是否使用锚窗将网络分为基于锚窗(Anchor-based)与无锚窗(Anchor-free)两大类。基于锚窗的方法如Fast R-CNN[19]、Faster R-CNN、RetinaNet[20]等,基于无锚窗的方法如CenterNet[21]、ExtremeNet[22]、RepPoints[23]等。其中无锚窗的方法解决了锚窗所带来的难以识别尺度变化大的目标、训练过程中正负样本不平衡以及对内存的高额占用等缺点,是当前的主流发展方向。在无锚窗的方法中又细分为基于中心点与基于关键点两大类。基于中心点的方法如YOLOv1[24]、FCOS[25]、CenterNet等,直接检测目标的中心点,然后回归出目标的边界信息。基于关键点的方法如CornerNet[26]、ExtremeNet、RepPoints等,通过预测出目标的关键点获取边界框。基于关键点的方法在检测精度上通常略高于基于中心点的方法,但在计算量上有较大消耗。本文所采用的RepPoints v2目标检测方法即为当前最新的基于Anchor-free的关键点检测方法之一。
本文为寻求高压电力线路巡检过程中电力部件与巡检缺陷检测精度的最高界限,故将RetinaNet、Faster R-CNN、ATSS等当前主流检测方法应用于电力部件及巡检缺陷检测问题,综合考量各方法对于本文问题的适用性。当前主流方法的性能对比结果见表1所示,通过限定ResNet-50[32]为特征提取网络、迭代训练24代以及训练方式三项变量,分析各方法在验证集及测试集的结果得出RepPoints v2检测方法在解决本文问题上更具优势,以92.4%的检测精度超越其他检测方法。故本文在RepPoints v2检测方法的基础上进行改进,实现高压电力部件及巡检缺陷检测精度的最大化。
表1 主流检测网络性能对比Table 1 Performance comparison of mainstream detection network
RepPoints v2目标检测方法旨在充分结合验证与回归两种通用预测方法的优势,通过在RepPoints网络的基础上添加验证任务,提升网络检测性能。RepPoints v2一方面通过在特征融合阶段融合前景验证与角点验证的结果,改进RepPoints回归目标的精度;另一方面RepPoints v2在获得RepPoints输出结果的基础上结合角点验证结果进行最终结果的级联推理,显式地将验证结果与回归的结果相结合。
本文尺度不变特征金字塔网络即在RepPoints v2目标检测方法基础上,针对FPN结构不能有效提取跨层次间语义信息及分配角点时忽略FPN各层次特征尺度归一化的问题提出了一种尺度不变特征金字塔结构SI-FPN,使用SI-FPN替换RepPoints v2中FPN结构。尺度不变特征金字塔网络结构图如图1所示,图中箭头代表数据流动方向,输入图像通过特征提取网络生成尺度不变特征金字塔SI-FPN,之后在SI-FPN的每一层进行验证,验证结束后将验证的结果与原始特征图融合以增强特征表示。在回归目标阶段,通过RepPoints的回归方式将融合后的特征图回归为一个点集,即使用9个点表示对象。最后结合角点验证的结果进行级联推理,综合回归目标、前景验证与角点验证三个任务进行训练学习,得到最终输出结果。
在本文方法的验证分支中包含前景验证与角点验证两部分,见图1验证分支模块所示,均在SI-FPN的每一层进行验证。前景验证即验证特征映射点是否位于对象框内,该任务采用非二进制分类感知前景热图来判断每个点是否位于前景之中,有助于粗粒度的定位。角点验证即检测特征图中每个点是角点的概率。在角点验证过程中,原RepPoints v2方法没有根据目标大小分配至FPN的指定特征图进行验证,而是将所有GT(ground truth)角点分配至FPN的各个层级进行角点验证计算,忽略了尺度归一化的问题。本文方法即以此为出发点,通过所提出的SI-FPN提取跨特征金字塔层级的尺度不变特征,然后在尺度不变特征上进行验证,解决了角点验证时忽略尺度归一化的问题。角点验证与主回归分支所预测的定位信息相比,其更关注局部细节,在局部定位的预测方面更精准。本文方法将在改善原RepPoints v2角点验证任务的同时,提升FPN对特征的融合能力,从而改善主回归分支,提升检测精度。
图1 尺度不变特征金字塔网络结构图Fig.1 Architecture of scale-invariant feature pyramid networks
本文针对RepPoints v2目标检测方法在角点验证过程中将GT分配至FPN的各个特征层级时忽略了尺度归一化并且尚未针对FPN进一步进行特征融合的缺陷,结合ECA注意力机制与SEPC尺度均衡金字塔卷积提出了一种尺度不变特征金字塔结构SI-FPN。其中ECA注意力机制使特征金字塔更关注相邻通道的交互信息,提升FPN特征的可鉴别性,SEPC尺度均衡金字塔卷积深度融合特征金字塔特征的同时提取尺度不变特征解决RepPoints v2中忽略尺度归一化问题,有效提升检测精度,使RepPoints v2目标检测方法更适于电力场景的应用。此外,通过将本文SI-FPN结构应用至ATSS目标检测方法,证明了该结构的通用性。
特征金字塔是解决物体尺度问题的重要手段,在RepPoints v2网络中也通过在特征金字塔的各个层次进行回归与验证解决多尺度检测问题,但在角点验证中将GT目标分配至FPN的各个层次时忽略了尺度归一化的问题。虽然忽略尺度归一化的分配策略比在单一尺度特征图上检测性能好,但由于FPN不同层次特征图之间存在近似性,故造成了大量的无效计算。本文即以此为出发点使用SEPC进一步融合特征金字塔跨层次的信息,提取尺度不变特征,解决角点验证过程中忽略尺度归一化的问题。
SEPC提出了一种跨越尺度和空间维度的三维卷积PConv,并利用可形变卷积将特征金字塔的各层次特征进行均衡化,使得PConv可从特征金字塔提取尺度不变特征。PConv的原理图如图2所示,FPN各层特征图上随着金字塔水平的上升而缩小,存在大小不匹配问题。为了解决大小不匹配PConv在不同层次的特征图使用不同步长的卷积核进行运算。如图所示为N=3的PConv,在求特定层次结果时在其对应层的更高一层使用步长为0.5的卷积,在其对应层使用步长为1的卷积,在其对应层的第一层使用步长为2的卷积,然后将三层结果相加,融合跨金字塔层次的信息,计算过程见公式(1)。其中步长为0.5的卷积被步长为1的卷积与连续的双线性上采样代替,见公式(2)。
图2 PConv结构图Fig.2 Architecture of PConv
PConv的特殊设置使得它可从高斯金字塔中提取尺度不变特征,但由于特征金字塔中的多层卷积与非线性操作使得特征金字塔的模糊效应严重,使得PConv难以在特征金字塔中提取尺度不变特征。SEPC为缓解特征金字塔与高斯金字塔之间的差异,在PConv的基础上,使用可形变卷积预测卷积核在共享核尺度上的偏移量,并在FPN的高层特征图通过偏移量进行均衡。SEPC原理结构图见图3所示,PConv在底部特征图的卷积核被固定为普通的3×3卷积,在高层特征图上使用可形变卷积,使得特征金字塔的高层特征通过变形偏移进行均衡,以此在特征金子塔中提取尺度不变特征。本文尺度不变特征金字塔网络即通过SEPC在特征金字塔上提取尺度不变特征,使得RepPoints v2的角点验证过程在尺度不变特征上进行,解决其忽略尺度归一化的问题,提升高压电力线路巡检过程中电力部件与巡检缺陷检测的精度。
图3 SEPC结构图Fig.3 Architecture of SEPC
注意力机制是改善目标检测性能的重要方法。ECA注意力机制解决了SEnet等传统注意力机制降维为后续预测带来的副作用,旨在获取通道间的依赖关系,增强特征的表达能力。本文在生成特征金字塔的过程中,使用ECA注意力模块在FPN的最高层增强其通道间的相关性,并基于该层指导特征金字塔的生成,便于尺度均衡金字塔提取特征金字塔跨层次间的尺度不变特征。ECA注意力模块结构图如图4所示,在不降低维度的情况下输入特征图χ进行所有通道全局平均池化之后,ECA通过一个可以权重共享的1维卷积进行学习,并在学习过程中考虑每个通道与其k个近邻来捕获跨通道交互。k代表1维卷积的内核大小,通过跨通道信息交互作用的覆盖范围(即一维卷积的内核大小k)与通道维数C的正比关系,得出公式(3),自适应确定k的取值,公式中γ=2,b=1,C为通道维数。
图4 ECA注意力模块结构图Fig.4 Architecture of ECA attention module
本文为解决RepPoints v2中FPN结构不能有效提取跨层次间语义信息及分配角点时忽略FPN各层次特征尺度归一化的问题,结合SEPC尺度均衡金字塔卷积与ECA注意力机制提出了一种尺度不变特征金字塔结构SI-FPN,结构图见图5所示。输入图像通过特征提取网络得到C2~C5四层特征图,FPN层采用RepPoints中P3~P7的设置,并在最高层次的特征图C5使用ECA注意力机制对特征进行通道级别的增强,指导特征金字塔的生成,有助于缓解特征金字塔的模糊效应。最后,特征金字塔通过SPEC尺度均衡化卷积对特征金字塔的特征进行更深层次的融合,见图5中特征金字塔通过P4、P5与P6最终生成SI-FPN中的P5层,SI-FPN的每层均为从特征金字塔中所提取的融合跨金字塔层次的尺度不变特征。在SI-FPN中,ECA注意力机制使特征金字塔更关注相邻通道的交互信息,提升FPN特征的可鉴别性,SEPC尺度均衡金字塔卷积深度融合特征金字塔特征的同时提取尺度不变特征解决RepPoints v2中忽略尺度归一化问题。本文使用SI-FPN代替RepPoints中的FPN进行回归与验证,切实解决RepPoints v2的上述缺陷。经消融实验证明,本文SI-FPN结构可有效提升RepPoints v2的检测精度。此外,本文所提出的SI-FPN结构可作为独立的模块加入其他目标检测网络中,通过将SI-FPN结构替换ATSS目标检测方法中的FPN结构,ATSS目标检测方法在高压电力部件与巡检缺陷检测精度上有显著提升,证明了本文方法的通用性。
图5 SI-FPN结构图Fig.5 Architecture of SI-FPN
本文首先对国家电网公司无人机巡检过程中所拍摄的现场巡检照片进行采集整理,将图像统一调整为3 000×1 700分辨率大小。其次,在巡检专家指导下使用Labelimg标注工具对整理后的4 189张巡检图像进行标注。该数据集共包含六类对象,分为关键电力部件与巡检缺陷两大类。关键电力部件包含绝缘子、防震锤与悬垂线夹三类,见图6第一列。巡检缺陷包含绝缘子自爆、防震锤脱落与鸟巢三类,见图6第二列。六类对象的统计信息见表2所示,其中共包含19 121个目标对象,绝缘子数量最多,绝缘子自爆缺陷数量最少,各类对象整体呈长尾分布。将数据集图像转至本文网络输入分辨率1 333×800大小后,依据COCO数据集验证方法中对于对象大小的定义进行统计,各类对象的尺度统计结果见表2所示。
图6 高压关键电力部件与巡检缺陷图示Fig.6 Schematic diagram of key power components and inspection defects
表2 数据集分布Table 2 Distribution of data set
本文实验环境采用深度学习服务器,Ubuntu16.04 64位操作系统,NVIDIA GeForce RTX 2080Ti显卡,Intel i9-9900K CPU,所有实验均基于mmdetection代码库完成,其中Pytorch采用1.5.0版本,mmcv采用0.6.2版本,CUDA采用10.2版本,CUDNN采用7.6.5版本。
在实验过程中,将数据集按7∶2∶1划分为训练集、验证集与测试集三部分,并使用两块2080Ti显卡进行训练。在以ResNet-50为特征提取网络的实验中,每块显卡启动4个进程,每个进程处理4张图像,在其余实验中每块显卡启动4个进程,每个进程处理2张图像。训练过程使用SGD优化器进行训练,设置初始学习率为0.01,权重衰减为0.000 1,动量为0.9,基本设置均与RepPoints v2相同。所有实验中都采用单尺度训练,图像输入大小为1 333×800,共训练24个epoch,学习率分别在第16次与第22次迭代时进行衰减。在测试时,在1 333×800单一尺度进行测试。
本文采用IOU为0.5时的AP(average precision)与mAP(mean average precision)作为评价指标,AP0.5对于目标检测在工业场景的应用具有重要意义。AP指PR曲线(Precision-Recall)上精准度的均值,MAP指每个类别AP的均值,AP的计算公式见公式(4)与公式(5),mAP的计算公式见公式(6)所示。
消融实验采用ResNet-50与Resnet-101作为特征提取网络测试本文方法性能,消融实验结果见表3所示。通过消融实验结果可知,SEPC尺度均衡金字塔分别在以Resnet-50与Resnet-101为特征提取网络的RepPoints v2网络中提升了1.3个百分点与1.6个百分点,ECA注意力机制均提升了0.5个百分点,本文所提出的SI-FPN尺度不变特征金字塔结构分别提升了1.7个百分点与2.0个百分点。实验证明本文方法在不同特征提取网络条件下,仍可有效提升目标检测精度,证明了该方法的有效性。
表3 消融实验结果Table 3 Results of ablation experiments
本文通过在RepPoints v2架构下,将所提出的SI-FPN尺度不变特征金字塔结构替换原先的FPN特征金字塔结构,实现高压电力线路巡检过程中电力部件及巡检缺陷的高精度检测。通过将当前主流目标检测方法使用本文数据集进行训练,得到的对比结果见表4所示,其中各检测方法均使用性能最高的特征提取网络。本文方法以ResNeXt-101+DCN[33]为特征提取网络,AP0.5达到96.3%,超越所有主流目标检测方法,证明了本文方法对电力部件及巡检缺陷检测问题的适用性。
表4 主流目标检测方法性能对比Table 4 Performance comparison of mainstream object detection methods
本文方法的训练过程损失变化图像见图7所示,总损失loss由前景验证损失loss_sem、偏移损失loss_offset、角点验证损失loss_heatmap、第一段定位损失loss_pts_init、精炼后的定位损失loss_pts_refine、与分类损失loss_cls构成。该方法共训练24个epoch,每个epoch训练733代,共迭代17 592次,各损失在训练过程中平稳收敛。训练过程AP0.5变化图见图8所示,随着训练的进行,AP0.5指标稳步上升,最终达到96.3%,检测结果见图9。
图7 训练过程损失曲线Fig.7 Loss curve during training
图8 训练过程AP0.5曲线Fig.8 AP0.5 curve during training
图9 检测结果图像Fig.9 Result image of detection
扩展实验将本文SI-FPN结构扩展至ATSS目标检测方法中,替换其本身的FPN结构,实验结果见表5所示。本文方法在以Resnet-50为特征提取网络的ATSS检测网络中,在验证集结果有效提升1.8个百分点,在测试集提升2.1个百分点,证明了本文方法的通用性。
表5 扩展至其他目标检测方法Table 5 Extended to other object detection methods
本文针对现有目标检测算法对于高压电力复杂巡检场景下各类电力部件与巡检缺陷目标检测精度较低问题,将RetinaNet、ATSS、Free Anchor、RepPoints v2等11种当前主流目标检测模型用于电力部件与巡检缺陷检测问题,对比得到检测精度最高的RepPoints v2检测模型。综合分析RepPoints v2在FPN特征融合以及将GT角点分配至FPN各个层级特征图忽略尺度归一化的问题,结合SEPC尺度均衡金字塔与ECA注意力机制提出了SI-FPN尺度不变特征金字塔结构,在RepPoints v2检测方法中稳定提升1.9个百分点。本文尺度不变特征金字塔网络以ResNeXt-101+DCN进行特征提取,实现了96.3%的检测精度,超越当前主流检测模型。实验最后将SI-FPN用于ATSS目标模型,相比基准有1.8个百分点的提升,证明了该本文方法的有效性,证得本文所提出的SI-FPN可作为一种独立的结构改善目标检测网络性能。下一步将深入研究模型推理技术,使本文方法在精度不下降的条件下,进一步加快推理速度,使之更适用于电力应用场景。