基于改进PCL模型的输电线路缺销螺栓弱监督检测方法

2022-09-30 04:25赵振兵丁洁涛
科学技术与工程 2022年23期
关键词:螺栓损失样本

赵振兵 , 丁洁涛

(1.华北电力大学电子与通信工程系, 保定 071003; 2.华北电力大学河北省电力物联网技术重点实验室, 保定 071003; 3.华北电力大学复杂能源系统智能计算教育部工程研究中心, 保定 071003)

输电线路是中国新一代电力系统中最重要的部分之一,保障输电线路的可靠性是能源互联网和智能电网建设的重要内容[1]。在输电线路中,螺栓用于连接各个部件,维持结构稳定。螺栓长期暴露于风吹、雨淋等环境中,会受到外力的拉扯产生晃动,从而导致螺栓销钉脱落[2]。因此,定期进行输电线路的巡检,排查出缺销螺栓,对电网系统的安全运行起到了至关重要的作用。

近些年,由于卷积神经网络(convolutional neural networks, CNN)[3]能学习真实世界对象抽象视觉特征,这种特征具有泛化性,已被证明在许多视觉领域取得成功。基于深度神经网络的目标检测算法主要分为两类:一类是以Faster R-CNN[4]为代表的基于区域建议的二阶段检测模型;另一类是以SSD(single shot detector)[5]和YOLO(you only look once)[6]为代表的基于回归的一阶段检测模型。随着深度神经网络在目标检测领域的成功,基于深度神经网络的目标检测模型也逐渐应用到输电线路航拍图像的检测任务中。文献[7]提出了一种螺栓视觉形状的无监督聚类方法,并应用该方法建立了一个能够学习视觉形状差异的缺陷检测模型。然后,在模型中采用了三种深度卷积神经网络优化方法:特征增强、特征融合和区域特征提取,对区域特征进行回归计算和分类,得到缺陷检测结果。文献[8]提出一种基于改进Mask R-CNN模型的电力场景目标检测方法,利用迁移学习策略初始化主网络参数,结合特征金字塔算法进行自上而下的特征提取,解决目标多尺度问题,引入拉普拉斯卷积层增强目标边缘提取能力,提高低质量视频检测性能。文献[9]提出一种基于YOLOv4的输电线路关键部件实时检测方法,利用自适应路径融合网络增强网络的位置信息和语义信息的提取能力。文献[10]提出一种将传统方法与神经网络相结合的方法进行输电线路故障识别。首先利用经验小波变换提取输电线路的故障特征,再使用改进的学习矢量量化神经网络识别故障类型。文献[11]提出一种MobileNet-SSD目标检测网络,并将模型部署到了嵌入式设备上,测试结果显示,在保持高精度检测结果的前提下,检测速度快了28倍。文献[12]提出了一种将多尺度注意力和空间注意力相结合的输电线路螺栓缺陷检测方法,达到了增强螺栓特征和突出螺栓位置的效果。文献[13]提出了一种基于DBSCAN(density-based spatial clustering of applications with noise)算法与FPN(feature pyramid network)相结合的螺栓缺陷检测方法。DBSCAN算法充分地利用了螺栓目标结构的相似性,在FPN网络中引入了先验知识指导模型训练,同时利用双线性插值和卷积滤波方法进行螺栓特征的融合。

螺栓图像具有目标小的特点,标注人员需要具备一定的专业知识。将全监督检测模型应用于螺栓缺陷检测,图像的目标级标注是一个巨大的挑战,会消耗大量的人力物力财力。

弱监督目标检测的网络基础为多实例学习(multiple instance learning, MIL)[14],随着深度神经网络在图像处理领域取得显著成果,将CNN与MIL 结合可以得更好地弱监督检测性能。弱监督深度检测网络(weakly supervised deep detection networks, WSDDN)[15]于2017年提出,它是一种端到端的深度检测架构,首先把在ImageNet[16]上预训练好的深度卷积网络作为特征提取器,特征图和候选框输入到空间金字塔池化(spatial pyramid pooling, SPP)[17]层得到候选框特征图,经全连接层(fully connected layers, FC)得到的特征向量送入分类数据流和检测数据流,两个数据流进行内积合并与区域求和,得到类别分数,最后通过交叉熵损失函数指导模型的训练。WSDDN为此后的深度弱监督模型提供了良好的基础,在线实例分类提纯(online instance classifier refinement, OICR)[18]弱监督深度检测网络提出了一种新颖的在线实例分类器细化算法,将 MIL和实例分类器细化过程集成到单个深度网络中,在仅利用图像级监督的情况下端到端地训练网络。区域聚类学习(proposal cluster learning, PCL)[19]弱监督检测网络在OICR的基础上融合了聚类的思想,该方法认为空间上具有高重叠度的候选框被分组到一个集合中,同一集合中的不同候选框更有可能覆盖同一实例的不同部分,可以将多个候选框的信息进行组合,找到最合适的候选框。文献[20]针对弱监督目标检测中在具有相同类别的对象簇中进行部分对象检测和错误检测的问题,提出了一种三重优化策略。首先,利用融合类激活图生成某一类别的定位图,这些定位图用于修改从实例分类分支学习到的候选框,然后,利用了深度强化学习网络以进一步细化建议,最后,将细化的边界框反馈到实例分类网络。细化操作使模型能学习对象的完整性并大大提高检测性能。文献[21]将弱监督检测问题看作是缺少边界框的目标检测问题,提出一种伪Ground Truth挖掘算法,以在训练数据中自动找到未标记实例的缺失边界框,然后结合挖掘的伪Ground Truth和标记的注释,以增量学习的方式来训练一个完全监督的目标检测器。文献[22]提出了一种实例感知和上下文聚焦的端到端检测框架,设计了一种实例感知自训练算法和内存高效的顺序批量反向传播方法。

针对螺栓图像和弱监督模型的特点,提出一种基于改进PCL(proposal cluster learning)模型的输电线路缺销螺栓弱监督检测方法。首先,引入通道注意力机制,提取螺栓精细特征,充分挖掘特征图中的螺栓位置信息;然后,对传统分类损失函数进行加权和,平衡正负样本,挖掘出困难螺栓目标;最后,融合全监督的多任务学习思想,修正预先得到的边界框,提高定位准确度。仅利用图像级标注的情况下,实现了缺销螺栓检测,并且改进后的PCL模型比基础模型检测性能有显著提升。

1 改进PCL模型整体框架

本文方法的整体架构如图1所示。输入一个螺栓图像,首先利用Selective Search[23]或Edge Box[24]算法生成大约2 000个候选框。然后将螺栓图像输入到主网络得到特征图,再经过通道注意力模块输出加权特征图,突出螺栓目标特征。再把加权特征图和预先得到的候选框输入到一些带有感兴趣域池化(region of interest pooling, RoI pooling)[25]层的卷积层中,以针对每个候选框生成一个固定大小的卷积特征图。之后,候选框特征图被送入两个全连接层以生成候选框特征向量集合。这些特征向量输入不同的支路:第一个是 MIL 网络,第二个是实例分类提纯网络,第三个是多任务学习网络。MIL网络又分为两个支流,支流一为分类流,对候选框进行归一化操作,输出每个区域中各个类别的概率;支流二为检测流,对类别进行归一化操作,输出每个类别在所有候选框中的概率,采用内积的方式将支流结果进行合并,再对区域求和,转换为图像级别的类别预测分数,利用加权交叉熵损失函数Lw指导多实例分类器的训练,得到初步检测结果;实例分类提纯网络包含具有相同结构的多级实例分类器求精网络,前一级的输出作为伪标签来训练下一级,并且第一级实例分类器将MIL网络的输出作为伪标签。经过多级分类器细化,分类器倾向于选择贴合度较好的框作为正实例,可以用作多任务学习的伪标注数据回归量,多任务学习网络就可以像全监督模型一样进行分类和回归。

2 研究方法

2.1 通道注意力

本文中对数据集中螺栓目标尺寸进行了统计,螺栓目标平均与原图的宽比例为0.14,与原图的高比例为0.15,面积占比为0.025,螺栓样张如图2所示。螺栓图像具有目标小、视觉表示不明显的特点,深度神经网络提取螺栓特征过程中容易出现信息丢失、难以提取精细特征和螺栓位置检测精度低的弊端。

为了解决这种问题,把主网络生成的特征图当作通道注意力网络的输入,生成加权特征图。使模型抑制背景这种无关特征,突出螺栓特征,增强网络提取位置信息的能力,从而提升模型的缺销螺栓检测精度。通道注意力机制如图3所示,首先,利用全局平均池化将输入的特征图进行通道维度上的特征压缩,每个二维特征H×W被压缩为一个标量,得到1×1×C的向量。这个标量可以表征通道特征上的全局信息。

接下来一步是整个通道注意力机制的关键。为了建立特征通道间的依赖关系,生成每个通道的权重值,两个全连接层可以随着损失函数的优化去自动学习,学习到的参数即为每个特征通道的权重值,输出和输入特征同样数目的权重值。第一个全连接层输出1×1×C/r,r是一个缩放参数,本方法取值16,目的是为了减少通道个数从而降低计算量,再经过一个Relu层,输出维度不变;第二个全连接层还原出维度为C的向量,再经过Sigmoid函数得到1×1×C的权重向量。如图3中的第二个1×1×C向量,颜色深的区域表示需要突出的通道特征,颜色浅的区域表示需要抑制的通道特征。

图1 改进PCL模型整体网络结构Fig.1 The overall network structure of improved PCL model

图2 螺栓图样Fig.2 Bolt image samples

图3 通道注意力机制Fig.3 Channel attention mechanism

最后,将前面得到的归一化权重通过广播相乘的方式作用到物征图对应通道上,完成在通道维度上的加权操作,形成加权特征图。

2.2 加权损失函数

弱监督模型为了定位目标会利用Selective Search算法在每张图像上产生大约2 000个候选框,一幅螺栓图像中正样本数量很少,剩余大量的候选框处于背景区域,这就导致了正负样本极不平衡。此时,大量的易分类背景框会主导损失函数,使网络把大量的迭代训练花在简单背景负样本上,减少了对真正应该学习的螺栓目标的关注程度,导致模型不能充分学习螺栓特征,螺栓目标检测效果差;同时,螺栓数据集中存在大量污渍、遮挡、阴影等困难样本,大大增加了缺销螺栓检测任务的难度,数据集中困难样本如图4所示。

针对以上两个问题,对传统的交叉熵损失函数进行加权和,为正负样本赋予不同的权值,控制正负样本在损失值的占比,避免了模型把大量的迭代训练在简单负样本上;同时大大降低易识别螺栓的损失值,保持难识别螺栓的损失值几乎不变,以达到增大困难样本总损失值比重的目的,使模型提高对困难样本的关注程度,从而提高对螺栓的检测能力。

图4 困难样本Fig.4 Hard examples

本方法定义参数pt为

(1)

式(1)中:pt为某一类的得分,值为0~1;y表示标注数据的真实类别;p表示经过激活函数后的输出,值为0~1。

传统的交叉熵损失函数为

L(p,y)=L(pt)=-lnpt

(2)

对于正样本而言,输出的概率值越大损失值就越小,对于负样本而言,输出的概率值越小损失值就越小。此时,模型的训练消耗在大量的背景负样本的迭代过程中,对于少数真正感兴趣的螺栓目标却难以学习。

加权交叉熵损失函数为

Lw=-α(1-pt)γlnpt

(3)

式(3)中:α表示正负样本平衡系数,值为0~1;(1-pt)γ表示难易样本调制系数。通过控制α的取值,控制正负样本对总损失值的权重。当pt越大时,样本越容易被分类,1-pt越小,再经过γ次立方后,此时就会大大降低易分类样本的损失值;当pt越小时,样本越不容易被分类,1-pt越大,再经过γ次立方后,此时难分类样本的损失值也会降低,但是降低的幅度远远小于易分类样本,增大了困难样本损失值比重,挖掘出困难样本。

2.3 多任务学习

边框回归是典型的全监督目标检测器的必要组成部分,能够减少定位误差。适用于弱监督检测模型的数据集没有标注框以及框的类别,无法像全监督模型一样对候选框进行回归。

经过实例分类提纯网络后,分类器倾向于选择精确度较高的候选框作为正实例,这可以作为多任务学习的伪Ground Truth的标注信息,多任务分支就可以像全监督模型一样进行分类和回归。

Lmtl=Lcls+Lreg

(4)

式(4)中:Lcls为分类损失函数;Lreg为边框回归损失函数。

对于Lcls,使用了ln损失函数,即

(5)

边框回归过程如图5所示。

图5 边框回归Fig.5 Bounding box regression

给定候选框P,找到一种映射关系f,得到回归框G′,使G′无限接近伪Ground Truth,使用smoothL1损失函数进行优化得到映射关系f,边框回归损失函数表示为

(6)

式(6)中:参数ti表示回归框的位置信息,参数vi表示伪标注数据里含有的位置信息,函数smoothL1(x)为平滑最小绝对值偏差损失函数,表示为

(7)

整个网络的复合损失函数如式(8)所示,然后通过随机梯度下降法对复合损失函数进行优化,以寻求到最优的参数,使得损失值最小。

(8)

3 实验结果与分析

3.1 实验环境

本文使用的实验环境如表1所示。

表1 实验环境Table 1 Experiment operating environment

3.2 数据与评价指标

实验部分使用的输电线路缺销螺栓数据集中包含1 984张图片,其中含有2 186个缺销螺栓(pmb)和1 363个正常螺栓(nb)。以8∶2的比例将数据集随机划分为训练集和测试集,其中训练集1587张,测试集397张。因为本文是探究缺销螺栓的弱监督检测,所以在训练时只提取了图像类别信息作为训练的输入监督数据,以向量的形式表示每张图片的图像级标签,如{1,1}表示这张图像中有正常螺栓和缺销螺栓两类目标。以每个类别平均精确率(average precision,AP)和所有类别平均精确率(mean average precision,mAP)作为评价指标,在测试集上对模型进行检验。同时,平均定位准确率(CorLoc)作为定位准确度的评价指标,在训练集上对模型进行检验。这是目前在弱监督目标检测领域最常用的两个评价标准。

3.3 模型训练

实验中采用随机梯度下降(stochastic gradient descent, SGD)的优化方法对模型进行训练,使用Selective Search算法生成候选框,并采用预先在ImageNet数据集上训练好的VGG16作为本文提取特征主网络。在训练过程中,采用了4幅图像的小批量大小,总的迭代次数为75 000,并在最初的55 000迭代中将学习率设置为0.001,然后在接下来的20 000迭代中将学习率降低到0.000 1。动量和权重衰减系数分别设置为0.9和0.000 5。对于数据增强,使用五种图像比例,即{480,576,688,864,1 200},将最短的一侧调成成为其中一个比例,以及水平翻转来增强训练和测试数据。

3.4 不同NMS阈值实验分析

非极大值抑制(non-maximum suppression,NMS)[26]是目标检测领域中重要的一步,用来去除冗余的检测框,保留得分最高的检测框。对不同NMS取值下检测精度进行实验,实验结果如表2所示。

当NMS取值为0.2、0.5和0.6时,正常螺栓和缺销螺栓的AP和mAP均明显小于NMS为0.3和0.4时的AP和mAP。虽然NMS为0.3时的缺销螺栓AP比NMS为0.4时低0.1,但是正常螺栓的AP和mAP分别高出0.4和0.1。综合以上,选取NMS取值为0.3,后续的实验均以0.3为基础进行研究。

表2 NMS对检测精度的影响Table 2 Influence of NMS on detection accuracy

3.5 通道注意力实验分析

引入通道注意力机制后模型的检测精度和定位精度的对比如表3和表4所示,mAP提升了2.8%,缺销螺栓的AP提升了1.1%,CorLoc提升了3.1%,缺销螺栓的定位精度提升明显,提升了5.3%。说明了通道注意力能增强螺栓目标特征,充分挖掘出螺栓的位置信息,弥补了因目标过小而导致的螺栓深度特征提取过程中容易出现信息丢失的不足。

通道注意力对可视化特征图的影响如图6所示,左侧列为原图,中间列为微调后模型可视化特征图,右侧列为用通道注意力训练后得到可视化特征图。通过对比得到,微调后模型的噪声较多,引入通道注意力后得到的加权特征图能抑制背景特征,突出目标区域特征。因此,噪声较少,且定位更准确。

表3 引入通道注意力前后检测精度比较Table 3 Comparison of detection accuracy before and after introducing channel attention

表4 引入通道注意力前后定位精度比较Table 4 Comparison of location accuracy before and after introducing channel attention

图6 引入通道注意力前后可视化特征图对比Fig.6 Comparison of visualized feature maps before and after introducing channel attention

3.6 加权损失函数实验分析

加权损失函数中的α和γ的取值会对模型训练过程产生影响,从而导致检测性能的差异。α和γ联调下模型检测的mAP如表5所示,可以看出当α=0.25、γ=2时模型的mAP最高,比微调后的模型提升了13.1%。因此,合理地设置α和γ的取值对模型的检测效果有一定提升。

损失函数改进前后分类损失值随迭代次数增加的变化曲线如图7所示。通过对比可见,在迭代次数为0~10 000时,加权损失函数曲线变化图比改进前更陡,说明了改进后的损失函数,减少了大量背景负样本对损失值的贡献,增加了正样本在损失值中的占比,挖掘出困难螺栓样本,提高了模型对真正需要学习的螺栓目标的关注程度,增强了识别螺栓的能力。另外,损失函数改进前分类器在迭代次数33 000时达到收敛,损失函数改进后分类器在迭代次数28 000时达到收敛,说明损失函数改进后不仅收敛速度更快而且检测性能有了显著提高。

在通道注意力的基础上联合加权损失函数进行了实验,实验在α=0.25和γ=2条件下进行。模型改进前后检测精度和定位精度的对比如表6和表7所示。通过对比,检测精度和定位精度都有显著提升。缺销螺栓的检测效果提升最明显,AP值提升21.2%,定位精度提升27.6%。可以验证,两种方法不论单独使用还是联合使用均能提升模型的检测性能。

表5 不同α和γ取值对检测精度的影响Table 5 Influence of different α and γ values on detection accuracy

图7 损失函数改进前后分类损失曲线对比Fig.7 Comparison of classification loss curve before and after improvement of loss function

表6 loss改进前后检测精度比较Table 6 Comparison of detection accuracy before and after loss improvement

表7 loss改进前后定位精度比较Table 7 Comparison of detection accuracy before and after loss improvement

3.7 多任务学习实验分析

改进后的PCL模型(注意力+加权损失函数+多任务学习)、微调后的PCL模型、OICR(online instance classifier refinement)、OICR+多任务学习和文献[16]在测试集上的检测结果对比如表8所示。从表8可以看出,使用通道注意力、加权损失函数和多任务学习训练模型后,PCL模型对测试集的检测mAP达到了45.0%,并且正常螺栓、缺销螺栓的检测AP也都远高于其他弱监督检测模型。相比于进行参数微调后的PCL模型,正常螺栓的检测AP提升了25.0%,缺销螺栓检测的AP提升了25.6%,mAP提升了25.4%。这是由于通道注意力机制的引入使模型能增强小目标深度特征,挖掘出特征图中隐含的位置信息;对交叉熵损失函数进行加权和,减少了大量背景负样本和易分类样本的损失占比,提高了模型对真正需要学习的螺栓目标的关注程度;多任务学习网络利用学习到候选框到伪Ground Truth之间的映射关系,修正预先得到的边界框,进一步提高模型的定位能力。同时从OICR和OICR+多任务学习的检测结果对比,也可以验证多任务学习对提升缺销螺栓弱监督检测能力的有效性。

表8 不同模型的检测性能对比Table 8 Comparison of detection performance among different models

3.8 实际检测效果对比

对模型改进前后在测试集上的实际检测效果进行了对比,测试时改进后模型IoU(intersection over union)阈值为0.8,改进前模型IoU阈值为0.4。模型改进前后对小目标样本检测结果对比如图8所示,模型改进前后对困难样本的检测效果对比如图9所示,改进后模型部分检测结果如图10所示。

通过图8中的对比可见,微调后的模型得到的检测框非常粗糙,只能检测出目标的大概位置,图像中存在多个目标时,容易出现漏检的情况。改进后的模型得到的检测结果要明显好于微调后的模型。检测框与螺栓的贴合度好,而且漏检的情况改善明显。

通过图9中的对比可见,微调后的模型在污渍样本上的检测框精确度低,在遮挡和阴影样本上均出现了漏检的情况。改进后的模型在污渍样本上得到的检测框贴合度好,能精确地检测出被遮挡目标,虽然在阴影样本上的检测框不够精准,但是减少了漏检的现象。

图8 小目标样本检测效果对比Fig.8 Comparison of detection effect on small target examples

图9 困难样本检测效果对比Fig.9 Comparison of detection effect on hard examples

图10 测试集上部分检测结果展示Fig.10 Display of some test results on the test set

4 结论

为了减少目标级标注成本,针对螺栓图像和弱监督模型本身的特点,提出一种基于改进PCL模型的输电线路缺销螺栓弱监督检测方法,得出以下结论。

(1)通道注意力的引入能突出螺栓特征,增强模型提取位置信息的能力,解决了螺栓特征表达不明显的问题,提升了小目标检测的检测性能。

(2)通过对交叉熵损失函数进行加权和,提高了正样本在损失值中的比重,挖掘出困难螺栓样本,使模型在训练过程中把更多的关注度放在螺栓上,提高模型对螺栓的学习能力。

(3)多任务学习思想使模型能学习到候选框与伪Ground Truth之间的映射关系,修正预先得到的边界框的位置和大小,进一步提升定位准确度。

通过对比实验,不论与微调后的模型相比,还是与其他模型相比,改进后PCL模型都表现出更优异的检测性能。

猜你喜欢
螺栓损失样本
洪涝造成孟加拉损失25.4万吨大米
螺栓拧紧失效分析及对策研究
两败俱伤
东京奥运会被螺栓“绊”住
规划·样本
人大专题询问之“方城样本”
随机微分方程的样本Lyapunov二次型估计
螺栓的诗意人生
损失
那些损失上百万的演员