基于机器视觉的高速铁路吊弦断裂与松弛故障监测
2021-09-25刘世望胡云卿
刘世望,胡云卿,林 军
(中车株洲电力机车研究所有限公司,湖南 株洲 412001)
0 引言
高速铁路接触网系统(overhead contact system,OCS)主要由接触线和支撑结构组成,负责将电能从变电站传输到列车,是牵引供电系统必不可少的部分。列车通过受电弓和接触线之间的滑动接触获得电力。支撑结构使接触线保持在一定的垂直高度位置,从而可与受电弓平稳地保持滑动接触,以确保稳定的电源供应。吊弦是支撑结构的重要组成部分,其故障(如断裂和松弛)会影响供电质量。目前,在铁路运营过程中,仍然采用人工方法检测吊弦、查找故障,这种检测方式效率低下且危险。因此,有必要自动监控吊弦状态,及时发现断裂和松弛故障,以指导维护工作,确保列车安全。
学者们已在OCS自动监测领域进行了大量研究。非接触式视觉检测方法是当前该领域的主流研究方向,其主要分为基于传统图像处理技术和基于深度学习技术两类,近年来已取得了显著成果。文献[1]提出一种基于双目视觉模块的OCS几何参数检测方法,其减少了车辆振动引起的检测误差。文献[2]将最大稳定的末端区域方法应用于轨道表面的缺陷检测。文献[3]首先使用角点匹配方法来提取绝缘子轮廓,然后再使用频谱聚类法来判断绝缘子故障。文献[4]基于吊弦的先验知识来获得吊弦的位置信息,并使用多层感知器对吊弦的故障进行分类。基于传统图像处理的视觉检查方法虽然已被广泛用于OCS自动检测领域[5-7],但由于难以解决复杂场景中的视觉检测问题,检测效果不佳。文献[8]基于信道注意模块(channel-wise attention module, CAM)构建了一个D3-Net,其由一个定位流和一个分类流组成。CAM获得的更具区分性的功能可以更好地处理类别的微小差异。在吊弦定位和故障分类方面,该方法优于传统的检测方法。文献[9]提出了一种多算法融合方法,并用Faster R-CNN算法定位吊弦,确定了吊弦的断裂和松弛状态;然后利用边缘拟合和弯曲缩放算法、霍夫变换算法实现对吊弦链松动、断裂等故障状态的检测。文献[10]提出了一种基于深度可分离卷积的吊弦故障检测方法,其是一种由受电弓、吊弦定位网络(dropper progressive location network, DPLN)和吊弦故障识别网络( dropper fault recognition network, DFRN)组成的两级网络(DPLN+DFRN)。基于深度学习的视觉检测已逐渐取代了传统的图像处理方法,并在OCS自动检测领域取得了较好的效果[11-13]。但是,上述方法的检测过程和网络结构较为复杂,或者实验测试图像过于理想化,没有涵盖各类场景。
目前,吊弦故障检测主要通过人工检查方法完成,而随着视觉技术发展,近年来自动化检测成为主要研究趋势。有两种典型的深度学习模型,一种是基于区域提名的目标检测算法(Faster R-CNN)[14-16],另一种是基于回归的算法(YOLO v3)[17-18],这两种方法在实时性能和准确性上各具优势。根据以上分析,现有方法无法处理复杂的场景,或者网络结构过于复杂,无法端到端地获得结果;同时,故障样本和正常样本的数量非常不平衡,这使得网络难以很好地分类。因此,本文提出了一种端到端的吊弦断裂和松弛故障监测方法,其根据吊弦的先验知识确定了用于吊弦故障检测的候选区域,基于特征金字塔网络和Mobilenet设计了端到端吊弦故障检测网络,并针对不平衡吊弦故障样本与正常样本的不平衡情况提出了数据增强和梯度协调两种训练策略。
1 吊弦断裂与松弛故障检测
OCS由工业相机模块执行监测。OCS在线监视设备(OCS online monitor, OOM)获取图像后,通过车辆或地面计算平台分析OCS的状态。OCS、受电弓和OOM之间的关系如图1所示。OOM和受电弓的相对位置是固定的,而受电弓则保持与接触线的滑动接触。
1.1 吊弦的先验知识以及其检测候选区域
根据高速铁路供电安全检测和监视系统(6C系统)的一般技术规范[19],OOM设备和受电弓的相对位置是已知的,并且保持不变;同时,接触线始终在受电弓的接触范围内,并且吊弦垂直连接到接触线(图1)。因此,在OOM获得的图像中,可以对处于候选区域的吊弦图像进行分析。 OCS图像的宽度和高度分别用W和H表示,图像用红色虚线等距隔开。可以发现,吊弦图像位于红色实线框内,因此选择红色实线框的图像作为吊弦故障检测的候选区域。本文随机选取1 000张OCS图像进行统计,发现99.8%的吊弦位于红色实线框区域。对于受电弓升弓和降弓这两种不同的运行工况,候选区域选择方法也是有效的,两种受电弓的运行条件如图2所示。
图2 吊弦候选区域选择示意Fig. 2 Dropper candidate region selection
1.2 吊弦故障检测网络
吊弦的断裂和松弛是本文要检测的故障。在获得吊弦候选区域之后,设计了一个端到端的吊弦故障检测网络(dropper fault detection network, DFDN),以精确定位吊弦并识别故障(图3)。DFDN中引用了YOLO v3的网络结构,其中包含两层特征金字塔网络进行多尺度预测。Mobilenet v3[20]中引入的bneckblock结构、压缩激励结构和深度可分离卷积在吊弦特征提取网络的构建中也得到了引用。吊弦故障检测步骤如下:
图3 吊弦故障检测网络示意Fig. 3 Dropper fault detection network
(1)将吊弦候选区域的图像大小调整为416×416×3。这是网络的输入大小,尽管这会使吊弦略微变形,但对检测结果的影响很小。
(2)将修改后的图像输入到吊弦特征提取网络,并通过卷积层、池化层和激活层等操作提取深层图像特征。
(3)将特征金字塔算法用于融合多层图像特征以获得多个预测模块。通常,浅层特征更有利于吊弦定位,而深层特征更有利于故障识别。
(4)假设预测模块的大小为G×G×B(其中,G×G代表预测网格的数量,B代表模块深度)。每个网格对应于3个锚框,包含吊弦坐标信息、吊弦置信度和两个故障类别的概率。
基于锚框的坐标,吊弦置信度和类别信息,可以根据式(1)~式(5)获得预测的吊弦位置、置信度和类别。
式中:(bx,by)——预测框的中心坐标;bw和bh——预测框的宽度和高度;σ——Sigmoid函数;(cx,cy)——网格的左上角坐标;pw和ph——候选锚框的宽度和高度;z(b)和z(s)——softmax函数中断裂和松弛状态的输入值;Pbk——吊弦断裂的概率;Psk——吊弦松弛的概率;Pr(d)——对应于网格中吊弦的概率;IoU(b,d)——预测框与真实框的交并比;Pr(d)*IoU(b,d)——前景概率;to——前景概率系数;tx和ty——网络预测中心点坐标;tw和th——宽度和高度预测偏移系数。
在吊弦图像特征提取网络中,采用压缩激励(SE)结构和深度可分离卷积的目的是为了提高网络的实时性并避免由于网络加深而导致的梯度消失等问题。该网络采用了两种激活函数,即H-Swish(HS)和ReLU6(RE),以增加网络的非线性拟合能力。吊弦图像特征提取网络的参数如表1所示,其中S表示网络步长,NL表示激活函数,Bneck block即图3中的BneckB。
表1 吊弦图像特征提取网络参数Tab. 1 Dropper feature extraction network parameters
1.3 吊弦样本不平衡的训练策略
由于吊弦故障样本的数量比正常样本少,导致分类器学习大量的正常特征而忽略故障特征,这将给故障分类任务带来巨大的困难。因此,本文提出了两种策略来解决样本不平衡的问题:
(1)策略一,数据增强。通过对正常吊弦样本进行欠采样、对故障样本进行过采样并手动生成更多故障样本来进行数据增强。该策略是通过增加故障样本的数量并减少正常样本的数量来平衡训练数据。
(2)策略二,梯度协调。利用梯度协调损失函数作为吊弦故障检测网络的损失。从梯度的角度来看,单个样本所贡献的梯度很小,但因正常样本的数量很大,正常样本所贡献的总梯度要比故障样本的大得多,因此网络不会很好地了解故障样本的特征。通过协调正常样本和故障样本的梯度贡献,可以克服样本不平衡训练的困难。
在对吊弦进行故障监测时,将吊弦状态分为正常、断裂和松弛3类。在图像分类任务中,交叉熵(cross entropy, CE)损失函数是经典的方法。在吊弦故障监测任务中的CE损失函数如下:
每个梯度间隔对应损失函数的权重值GD(g)为
其中:
式中:δε(kg,g)——确定样本是否属于该梯度间隔的函数;lε(g)——梯度间隔的长度;g——梯度分割值;gk——样本贡献的梯度值;ε——分段长度;N——样本总数。
令目标位置权重λcoord=5,目标不存在的权重λnoobj=0.5,目标存在权重λobj=1, 目标类别权重λcls=1。可以通过将损失权重值GD(g)来获得网络的分类损失(L3); 同时,利用中心点、宽度和高度的误差来计算网络的定位损失函数L1,利用有对象和无对象的置信误差来计算置信损失函数L2;网络总损失函数为Ltotal。
式中:x,y表示目标框的中心点坐标;w,h表示目标框的宽度和高度;上标“˄”用于表示期望值。
2 吊弦断裂与松弛检测实验
为验证本文所提检测方法的有效性,开展了吊弦断裂和松弛故障检测实验。实验环境描述如下:用于算法测试的人工智能计算平台为NVIDIA JetsonTX2,其包含256核NVIDIA Pascal GPU;用于网络训练的计算平台为NVIDIA Tesla V100,其包含NVIDIA Volta GPU。通过OOM设备采集实验图像,包括443个断裂样本和461个松弛样本,图像尺寸为1536×2048。根据样本不平衡训练策略,对样本进行了平衡处理,建立了包括10 000个正常样本、2 215个断裂样本和2 305个松弛样本的吊弦故障检测数据集,如表2所示。根据吊弦检测候选区域选择方法,获得了尺寸为682×768×3的候选区域图像,即训练图像。在网络训练过程中,图像大小被调整为416×416×3,然后输入到吊弦故障检测网络DFDN中。
表2 实验数据集Tab. 2 Experimental data-set
本文采用平均精度均值(mean average precision,MAP)来评估检测网络的准确性,并通过测量实验中每个图像的平均处理时间来评估其实时性能。MAP的计算过程如下:
式中:TP——由网络预测为正确的正确样本数量;FP——由网络预测为正确的错误样本数量;FN——由网络预测为错误的正确样本数量;R——召回率;P——准确率;PMA——平均精度均值,即MAP。
图4 训练过程可视化Fig. 4 Visualization of training process
在网络训练过程中,本文采用遗传算法进行超参数优化,其策略是先设置优化范围,然后随机初始化参数,训练并保存参数优化结果。在每一代的训练中,随机选取一组参数作为Top-k最佳超级参数,然后变异,再次训练,重复100次,得到最佳参数。本文对初始学习率(lr0)、周期学习率(lrf)、梯度下降加速动量(momentum)、权重衰减系数(weight_decay)、框损失系数(box)、分类损失系数(cls)、目标置信系数(obj)、图像平移系数(translate)和马赛克系数(mosaic)等9个超参数进行优化,结果如图5所示。
图5 模型超参数优化结果Fig. 5 Model hyper-parameter optimization results
动态可调的学习率已被应用于网络训练过程。每个训练批次的样本数量为32,并且训练了大约10 000个批次。图4示出训练过程中的损失和IoU曲线。可以看出,该曲线是在1 000批次之后绘制的,因为在前1 000批次中,损失非常大且IoU很小;在5 000批次之后,该曲线趋于稳定;约8 000批次后,训练效果得到进一步提升。
将经典的目标检测算法梯度直方图(histogram of oriented gradients, HOG)[7]与YOLO v3, YOLO v5[21],Faster R-CNN, DFDN进行了比较;同时,将DFDN与吊弦故障检测算法“DPLN + DFRN”[10]进行了比较,结果如表3所示。可以看出,DFDN拥有与YOLO V5相媲美的检测精度,同时实时性最佳。
表3 检测方法对比实验结果Tab. 3 Experimental result comparison of detection methods
3 结语
为了实现便捷、准确的吊弦断裂和松弛故障监测,本文提出了一种端到端的监测算法。它基于OCS-OOM受电弓的先验知识,获得了用于吊弦故障检测的候选区域,并使用由bneck-block结构、压缩激励结构和深度可分离卷积组成的骨干网络来提取吊弦图像的特征;然后,使用吊弦故障检测网络对吊弦进行定位和识别,并采取了两种策略来克服正常样品和故障样品的不平衡。该方法弥补了现有算法复杂、实时性差的缺点,提高了检测精度和监测实时性能,能较好地完成吊弦断裂和松弛检测任务。由于接触网图像背景变化复杂且目前故障样本较缺乏,单纯使用深度学习模型来提升吊弦故障检测精度十分困难,后续将结合霍夫变换及聚类算法来进一步优化吊弦故障检测模型。