一种MobileNet-SSD的高铁隧道通信漏缆卡具检测方法
2021-07-27张云佐杨攀亮
张云佐,杨攀亮,王 蕾
(石家庄铁道大学 信息科学与技术学院, 河北 石家庄 050043)
0 引言
随着我国高速铁路的快速发展,高铁安全运营的重要性日益凸显。铁路移动通讯系统是保障铁路无线通信的重要环节,山区、隧道通信网络的覆盖主要依靠泄漏电缆和直放站。由于泄漏电缆长期经受列车高速行驶时产生的气压冲击以及各种环境的影响,容易产生松动和脱落[1-3]。一旦发生故障会对铁路的安全运营产生严重影响。为保证铁路移动通讯系统的安全运行,需要对泄漏电缆定期检查,主要是判断泄漏电缆卡具是否出现故障。泄漏电缆卡具检测是指在场景图像中指出卡具目标,其目的是利用目标检测技术对泄漏电缆卡具状态进行监测和分析,从而实现对卡具故障的检测和识别。
目标检测技术主要经历了三个阶段。第一阶段是传统模式,通过图片准备、区域选择、特征提取和分类器的方法进行目标检测。传统模式时间复杂度较高、冗余窗口多且对多变化的物体通用性较差[4-5];第二阶段是基于R-CNN的深度学习目标检测算法,主要包括:R-CNN[6],Fast R-CNN(ICCV2015)[7]和 Faster R-CNN(NIPS2015)[8],基于R-CNN的算法速度慢,实时性较差。第三阶段是基于回归方法的深度学习目标检测算法,主要包括:YOLO[9-10]和SSD[11],YOLO精度不高,而SSD以其速度快精度高的特点得到更广泛的应用。
结合泄漏电缆卡具目标特征和高铁安全的现实需求,本文主要研究基于MobileNet- SSD算法的卡具检测技术,进而实现对铁路隧道泄漏电缆卡具的检测,便于铁路管理部门对卡具的数量、状态等信息进行统计和监控。
1 本文算法
1.1 卡具检测模型
本文主要应用的是MobileNet-SSD[12-13]网络模型,该模型以Mobilenet为主体网络,将其中最后的全连接层改成卷积层,接着增加了4组卷积层来构造网络结构。这些层的大小逐渐减小且每个层用于预测检测的卷积模型不同,可以实现多尺度目标检测[9]。MobileNet-SSD网络结构如图 1所示。
在图1中,输入一张300×300×3的图像,通过深度可分离卷积操作可以得到大小不同的特征图(feature map)分别是 Conv11、Conv13、Conv14、Conv15、Conv16、Conv17,不同特征图所对应的特征不同,感受野不同,对应的默认框也不同。该模型可以在多个特征图上同时进行Soft-max分类和位置回归。
图1 M obileNet-SSD网络结构图Fig.1 Mob ileNet-SSD work structure
Mobilenet网络将经典的卷积操作转换为了深度卷积和1×1点卷积操作相结合。该网络取消了pooling层,而是通过调整卷积的步长达到降低特征图大小的目的。和传统VGG模型相比,它可以实现从通道级别上,减小整体网络模型计算量。
1.2 算法流程
算法的基本流程为:
(1)获取一定批次的卡具图片,及对应的真实框坐标和类标签;
(2)对图片进行预处理,将图片尺寸缩放为300×300;
(3)通过特征提取层提取特征,共 6层;
(4)生成 anchor,对每层特征图分别预测anchor的分类及坐标,并将特征图的anchor分类极坐标整合在一起;
(5)将所有的anchor与真实框按IOU配对,返回anchor对应的真实框坐标及分类标签;
(6) 分别计算每一个anchor的location loss和classification loss,由于正负样本不均衡,对loss进行困难样本挖掘,保证正负样本比例1∶3,并对loss标准化处理;
(7)采用非极大值抑制挑选出分类置信度最高的anchor。
1.3 loss函数
实验通过loss函数计算真实值与预测值的误差,使得每一个prior box回归到真实框的位置。
本网络模型中loss函数的表达式如式(1)所示,它主要用到了两项的加和,类别的置信度损失和对预测框的位置回归的损失[14-16]。
式(1)中,N是匹配的预测框的个数,x表示匹配了的框是否属于类别p,取值{0,1},l表示是预测框,g是真实值,c是指所框选目标属于类别p的置信度。
预测类别的置信度损失函数如式(2)所示:
预测框位置回归的损失函数如式(4)所示:
2 实验与分析
本实验在64位Win10系统计算机上完成,计算机的配置为:
CPU:Intel Core(i7-9750H),主频2.6 GHz,
内存:8.0 GB,
GPU:Nvidia GeForce GTX 1660 Ti。
在 TensorFlow 深度学习框架中完成了MobileNet-SSD算法的实现。
本次实验采用的数据集为高铁隧道现场采集的707张带有卡具的图片,其中532张图片作训练集,175张图片作测试集,将图像中所有的卡具归为一类,利用Python开发的提供图像标注的算法,将每个带标签的图像生成对应的 XML文件。训练的学习率为0.001,batch_size设置为16,共进行12010step。
2.1 训练步骤
Step.1 输入图片,将图片尺寸调整为300×300的尺寸大小;
Step.2 对特征层采用滑动窗口的方式使用卷积核做卷积计算;
Step.3 卷积处理时预测出不同长宽的边界框集合;
Step.4 设置阈值舍弃低于阈值的检测窗口;
Step.5 非极大值抑制消去多余窗口获得检测结果。主要目的是根据置信度大小,对所有检测框进行排序,输出置信度最高的检测框。
2.2 实验结果分析
在实验中,loss函数的变化趋势如图2所示,其中 localization_loss对应的是位置回归的 loss值,由图2可知,其在整体上呈现出下降趋势,并逐渐逼近于0。
图2 localiz ation_loss变化曲线Fig.2 localiz ation_loss curve
图3中,Classification_loss对应的是分类loss,其在整体上呈现震荡,主要是由于目标卡具有两种不同形态但将其全部归为一类卡具标签所引起的。
图3 classification_loss变化曲线Fig.3 classification_loss curve
两种卡具图像如图4所示。
图4 卡具图片Fig.4 Jig picture
图5对应的是整体loss的变化趋势,它由分类和回归 loss组成,其数值先降低,随后在 1.6附近震荡。这部分是由于网络模型结构所造成的,若要减小loss,则需调整网络结构。
图5 T italLoss变化曲线Fig.5 T otalLoss curve
目前计算平均目标检测算法的主要参数有mAP(Mean Average Precision,平均准确率均值)、AP(Average Precision,平均准确率)和 IOU(Inter-section Over Union,交并比)。其中 IOU是模型所预测的检测框和真实的检测框的交集和并集之间的比例,也称为 Jaccard 指数。精确度(Precision)是指在被判断为准确的图片中,真正判断准确的泄露电缆卡具的比例。召回率(Recall)是指被准确预测的样本占所有样本的比例。精确度、AP、mAP 和召回率的计算公式如公式(5)-(8)所示:
图6 mAP值基于0.5IOUFig.6 mAP value based on 0.5 IOU
图7 预测结果(a~d)Fig.7 Pr edicted results (a~d)
该实验结果表明:在高铁隧道泄漏电缆卡具目标检测任务中利用MobileNet-SSD算法可以很好的解决检测卡具的任务。
3 结论
本文基于MobileNet-SSD模型,对隧道内泄漏电缆卡具数据集进行训练,完成了卡具自动检测的任务,为卡具故障识别奠定了基础。该模型结合了YOLO算法的回归思想以及Faster R-CNN的anchor机制达到了识别速度快精度高的要求,对泄漏电缆卡具的智能检测有很大帮助。但该模型也具有一定的局限性:首先由于数据集的不足,本实验将两种类别的卡具归为一类进行处理对分类损失造成一定的影响,因此在接下来需要增加不同种卡具样本数量,实现对不同卡具的目标检测及分类,可以从一定程度上提高检测效果。其次,由于隧道内卡具背景差异较小,当背景发生较大变化时会对检测结果造成一定程度的影响。最后,增加样本的多样性,提高网络模型的鲁棒性对实现铁路隧道泄漏电缆卡具的智能检测至关重要,这也是下一步研究的主要方向。