陈 永,卢晨涛,王 镇
(兰州交通大学 电子与信息工程学院,甘肃 兰州 730070)
随着我国铁路建设的快速发展,铁路的运营安全备受关注,异物侵入铁路限界会严重影响高速铁路行车安全[1]。在夜间等低照度环境下,铁路区域不够明显,侵入铁路异物的特征不够清晰,给异物检测造成极大困难。利用红外成像系统抗干扰能力强、不易受恶劣环境影响的特点,开展弱光环境下铁路异物侵限检测,能够有效弥补可见光设备在能见度低等条件下无法正常工作的不足,从而更好地保障铁路的全天候异物侵限检测。但不同于可见光彩色RGB图像,红外成像后存在信噪比低、色彩缺失、边缘模糊、纹理细节缺失等问题[2],导致对红外弱光环境下铁路异物的检测难度增大。
传统的红外目标检测研究方法主要有模板匹配法、变化鲁棒性检测、背景差分法等[3-5],大多依赖于先验特性及人工设计进行目标特征提取,检测结果缺乏语义信息,对红外场景目标的检测效果并不理想[6]。近年来,随着机器学习和深度学习算法的兴起,基于神经网络的红外目标检测取得了较大进展。Li等[7]针对铁路不同异物场景,提出了一种改进的单向多框检测器 (Single Shot Multibox Detector,SSD)模型,通过添加多区域块的特征提取机制增加局部上下文信息,提高了铁路异物侵限中小目标检测的准确率。Chen等[8]采用Faster R-CNN检测算法获得检测候选区域,然后使用MOT的数据关联方法将检测到的对象关联为轨迹,提升了红外目标的检测稳定性。赵兴科等[9]设计使用轻量化网络YOLOv3检测网络模型,采用MobileNetv2作为特征提取网络,并使用BASNet生成显著图,通过通道替换和像素级加权融合两种方案将热红外图像与其对应的显著图进行融合增强,提升了交通场景下红外目标检测模型的速度。
综上所述,现有的深度学习方法大多采用多尺度特征提取方法,但存在不能充分利用层间语义信息的问题,导致在红外弱光环境下铁路异物侵限检测时存在目标特征提取不充分、检测精度低的问题。针对以上问题,本文在Mask R-CNN检测模型的基础上,提出一种红外弱光环境下的多尺度密集注意力铁路异物检测方法。首先,改进设计密集连接的多尺度FPN金字塔特征提取网络,加强对特征图的利用,提高红外弱光环境下目标的检测精度。其次,引入CBAM注意力机制并改进ResNet-FPN网络结构,提高对弱光红外目标区域的关注度,突出红外弱光环境下的目标特征,使得弱光环境下铁路异物检测语义分割更准确。然后,改进k-means算法,重新预设锚点框大小,以提升锚点框对目标区域定位的准确性。最后,采用铁路红外数据集及现场实验进行算法性能测试,实验结果表明,本文方法在红外弱光环境下可以更加准确地检测出铁路异物,并实现了铁路限界区域的准确划分,在主客观评价方面均优于对比方法。
弱光环境下红外图像对比度更低,纹理等细节信息缺乏,极易丢失目标细节信息[10]。现有深度学习方法在红外图像目标检测时,一般通过一系列卷积核提取图像单尺度特征,比较适合纹理细节信息丰富的可见光图像,在对红外图像进行检测时,容易出现红外图像特征提取能力弱、检测精度低等问题。为此本文在Mask R-CNN[11]检测模型的基础上,提出一种弱光环境下多尺度密集注意力的铁路异物检测方法,其整体网络结构见图1。
图1 整体网络结构
首先通过本文提出的密集连接CBAM-ResNet-FPN特征提取网络,利用密集连接结构充分提取特征信息,并结合注意力CBAM机制增强特征图的有用信息,从而提高被检测红外目标的关注度。然后,在区域建议网络RPN中采用改进k-means算法重新预设锚点框来提高对目标区域建议的准确性。最后,通过全连接层和全卷积网络实现对铁路异物的语义分割及检测,从而达到对铁路异物侵限检测的目的。通过本文提出的方法,不但可以获得铁路异物检测的高准确率,而且还可以获得目标像素级的语义分割。
原始FPN与本文密集连接FPN对比见图2。原始Mask R-CNN是一种在Faster R-CNN基础上提出的掩码型区域目标检测卷积神经网络,采用多尺度金字塔FPN结构进行目标特征提取,通过不同分支同时实现目标检测和目标分割等任务,见图2(a)。然而金字塔特征层次法存在不能充分利用层间语义信息的缺点,易导致小目标对象漏检[12]。同时,原始FPN网络对分辨率较低的红外目标图像的轮廓和边缘信息特征提取能力较弱,尤其是夜间红外图像目标特征不够明显,导致特征提取困难,影响了铁路异物检测的准确率,给高速铁路行车安全监控造成了巨大的隐患。因此,本文借鉴DenseNet[13]密集连接思想,通过建立不同特征层之间的连接关系,在FPN网络的基础上设计实现了从低维特征到高维特征的密集强连接,如图2(b)所示,以便更加充分利用特征图信息。
图2 原始FPN与本文密集连接FPN对比
在原始FPN中,如果所在特征图位于l层,那么就会有1个自上而下的连接和1个对应的横向连接特征图进行融合,即
Xl=Hl+Xl-1
(1)
Xl=Hl+(X0+X1+…+Xl-1)
(2)
相比于原始FPN网络,本文采用密集连接和横向连接进行特征融合,图2(b)中右侧特征图的输入将由对应的横向连接和前面每一层的输入得到,可以充分利用不同尺度的特征信息,从而将不同尺度特征间的信息进行融合,更好地利用高层和底层的特征信息,更有利于获得丰富准确的特征图。
夜间铁路异物侵限检测时,由于物体的红外辐射率差别不大,从而导致红外弱光环境下红外图像细节不够清楚[10]。为了提高弱光环境下目标检测的针对性,本文采用注意力机制抑制无用信息,而将检测重心放在感兴趣区域,有助于从弱光红外图像等复杂场景中迅速感知视觉显著性目标。为了更好地提取特征图的空间信息和通道信息,将CBAM注意力机制[14]引入到Mask R-CNN的FPN特征提取网络中,用于更好地对红外图像重要特征信息进行提取。CBAM原理示意图见图3。首先将输入的特征图,通过通道注意力机制模块,得到通道信息增强的通道注意力特征图;然后将增强后的特征图输入到空间注意力机制模块中,对空间域信息进行相应的变换,从而实现对关键信息的提取,最终得到信息增强的特征图。
图3 CBAM原理示意图
采用CBAM机制对红外图像进行显著性特征检测时,需要定义中间层的特征图F,F∈RC*H*W,其中C、W、H分别为特征图的通道数、宽度、高度。首先CBAM将会推理得到一个一维的通道注意力权重MC∈RC*1*1,通过该值与输入的特征图相乘得到F′。然后CBAM继续推断出一个二维的空间注意力权重MS∈R1*H*W。最后利用F′与MS相乘得到最终的特征图F″。计算过程为
F′=MC(F)⊗F
(3)
F″=MS(F′)⊗F′
(4)
为了说明本文引入CBAM注意力模块的效果,下面进行加入CBAM注意力模块后可视化热力图比较实验,将注意力特征图与输入原图进行空间映射,得到相应的注意力热力图。红外注意力特征热力图对比效果见图4。在热力图中越偏红色说明该区域对于最终检测结果的贡献越大,蓝色说明越小。从图4比较实验可以看出,本文结果明显优于未加注意力机制的结果,说明通过本文方法增加注意力机制以后,对于夜间弱光环境下的铁路被检测区域和检测目标可以准确地予以聚焦和关注,而且对于干扰等信息进行了有效抑制,能够有效提高对目标通道和空间信息的聚焦能力。
图4 红外注意力特征热力图对比效果
弱光夜视环境下铁路异物检测时,当远距离成像后,红外图像背景强度一般很高,空域背景变化复杂,而要检测的目标强度相对而言较弱,容易淹没在较强的背景杂波里,给目标检测带来很大困难,传统的级联深度模型难以实现有效检测[12]。为了充分提取待检测红外图像的目标特征,本文提出采用改进的ResNet-FPN网络结构进行特征提取,采用自下至上、密集连接、横向连接等方法进行特征提取网络结构连接,并在特征图连接中间穿插注意力机制CBAM模块进行特征图有用信息增强。改进ResNet-FPN网络结构见图5。
图5 改进ResNet-FPN网络结构
图5中采用自下至上连接的方式逐层进行特征提取,以便获得更多的细节特征信息。首先得到低层边缘等特征信息,然后再逐步得到较高层语义等特征信息。自下至上连接的方式采用ResNet作为骨干网络,由五部分构成,对应残差模块输出表示为{C1,C2,C3,C4,C5}。其中每一层的分辨率不断变为原先的1/2,分别对应于下采样的步长为2、4、8、16、32,选择C2、C3、C4、C5这4层信息作为FPN的特征图进行后续运算。
在提取红外图像高层语义特征后,为了充分利用高层语义特征,采用密集连接将高层的语义特征也传递给底层特征,使得底层特征也具有较高语义信息,从而更加有效地利用特征图。每层密集连接的输入均汇集之前所有层的输出,对前面每一层进行上采样融合。图5中,C5通过CBAM注意力机制模块增强有用特征信息,再经过1×1的卷积整合通道数得到M5特征图。M4特征信息由M5和对应的融合了CBAM模块的横向连接信息融合得到,以此类推,M3特征信息由M4、M5的特征信息和对应的融合了CBAM模块的横向连接信息融合得到,M2特征信息由M3、M4、M5的特征信息和对应的融合了CBAM模块的横向连接信息融合得到。采用密集连接方式可以更加充分地利用高层和底层的特征信息,以便获得特征信息更加准确的特征图。
最后,对自下而上生成的特征图和密集连接生成的特征图采用横向连接进行融合,并通过1×1的卷积操作通道降维,最终得到特征更丰富的多尺度信息特征图。整个过程可以表示为
(5)
式中:f1×1()为1×1的卷积;fCBAM()为CBAM模块处理;函数f2up()、f4up()、f8up()分别为2倍、4倍、8倍上采样操作;⊕为对应元素相加的融合操作。最后,为了消除上采样的混叠效应[15],对每个融合结果采用3×3的卷积核进行卷积操作,从而得到最终的P2、P3、P4、P5层特征。
由于原始Mask R-CNN目标边界框预测时采用的是大小为{(128×128),(256×256),(512×512)}、长宽比例为{(1∶1),(1∶2),(2∶1)}的9个锚点框,预训练采用的COCO数据集分类对象尺寸差异较大,而在铁路异物侵限检测中多以长而窄的矩形为主,这就使得原始Mask R-CNN预选框会出现某一尺度未能有效利用的情况,因此本文采用k均值聚类算法对原始锚点框进行改进。
传统k-means算法在类间相似性计算时一般采用欧氏距离度量,但在检测算法中,像素级的欧式距离计算导致运算量较大,且无法实现对目标的有效语义分割。为了度量锚点框的相似性,可以通过计算锚点框与k-means聚类中心框的相似度进行比较,当锚点框与聚类中心框的形状相似度越大时,其共有相交的比例越大,该指标可以用交并比IoU进行衡量。交并比可以衡量锚点框和聚类框之间的重合程度,其值越大,表示锚点框与聚类中心框越相近。因此本文采用含有交并比的距离度量进行聚类,其公式为
d(b,o)=1-IoU(b,o)
(6)
(7)
式中:bpred为预测框;btruth为实际框;d(b,o)为预测框b和聚类中心o之间的距离,其值的范围在0~1之间。通过k-means算法对锚点框进行重新优化,得到适合铁路异物侵限数据的预设锚点框,求得平均聚类结果为{(11,59)、(14,66)、(17,99)},{(38,67)、(50,98)、(60,190)},{(67,178)、(100,168)、(224,150)}。预设锚点框作用范围比较见图6。
图6 预设锚点框作用范围比较
从图6可以看出,原始预设锚点框不能很好适应铁路异物图像目标,铁路区域锚框及远处行人锚点框均无法有效实现对于待检测目标的拟合,造成后期特征图计算量增大,见图6(a);而采用本文方法重新聚类后,可以看出锚点框比例大小符合铁路异物图像目标的形状特点,较好地对被检测对象进行选择,如图6(b)所示,改进后可以生成更优的目标候选区域。
损失函数设计与Mask R-CNN类似,包括分类损失Lclass、边界框坐标回归损失Lbox、分割损失Lmask三部分[11]。总损失函数L为
L=Lcalss+Lbox+Lmask
(8)
Lclass、Lbox定义为
(9)
(10)
掩码损失函数为平均二值交叉熵损失函数,计算公式为
(11)
所有侵入铁路限界、妨碍铁路系统安全正常运行的物体均可视为侵限异物,包括行人、车辆、动物、落石等。将上述异物类型收集形成铁路异物检测数据集。首先选取FLIR公司发布的红外交通数据集中夜间红外数据作为FLIR异物数据集,并利用红外摄像机在铁路现场实地拍摄夜间铁路红外图像,使用labelme工具进行图片标记,制作成弱光环境下铁路数据集,共计6 500张图片。将其中70%作为训练集,用于模型的训练;30%作为测试集,用于验证模型的泛化能力。夜间红外数据集示例见图7,包括FLIR数据集和本文现场拍摄制作的数据集。
图7 夜间红外数据集示例
为了验证本文算法的有效性,进行对比实验。硬件配置为Intel(R) Core i7-9700K CPU@3.6 GHz,64.0 GB RAM,NVIDIA GeForce GTX 1660。模型训练时,学习率设为0.001,batch-size=32,epoch=100。经过两次迁移训练:第一次在FLIR数据集上进行训练,增强模型对红外图像目标的识别定位能力;第二次在自制的夜间红外铁路数据集上进行,增强模型对铁路场景目标检测的鲁棒性和泛化能力。本文模型在TensorBoard损失函数可视化结果训练变化见图8。
从图8可以看出,随着训练周期的迭代,本文模型逐步趋于平稳收敛。
图8 本文模型损失函数变化
为了说明本文方法的有效性,针对近景、远景小目标、穿越铁轨、遮挡、多目标等弱光红外图像进行铁路异物侵限检测实验,并与文献[7-9]以及原始Mask R-CNN[11]方法进行对比。不同算法在弱光红外铁路场景下的检测结果见图9。图9中对比算法检测结果局部放大见图10,为部分误检或漏检的情况。
图9 不同算法在弱光红外铁路场景下的检测结果
图10 对比算法检测结果局部放大
图9中五列分别为近景、远近景穿越铁轨、远景小目标、遮挡、多目标等典型弱光铁路异物侵限场景。从实验结果可以看出:对于近景和远近景穿越铁轨,5种方法均能实现基本检测功能。其中,文献[7]采用改进SSD的方法,通过添加多区域块的特征提取机制增加局部上下文信息提高检测精度,但在目标框铁路区域的选择定位上没有Faster R-CNN准确,如图9(b)中的第4幅,标记3号与标记4号目标之间出现误检,局部放大图见图10(a)。文献[8]采用Faster R-CNN在识别铁轨时具有较高的精度,但在遮挡和远景多目标检测中出现了漏检现象,如图9(c)中的第4幅,标记为2号的遮挡目标未能有效检测,局部放大图见图10(b)。文献[9]采用改进YOLOv3的方法具有较好的检测结果,但因为该方法采用轻量化网络进行红外目标检测,特征提取能力不足,导致其检测准确率低于文献[8]Faster R-CNN方法;另外,YOLOv3在远景小目标实验中出现了漏检现象,如图9(d)中的第3幅,标记2号目标之间出现漏检,局部放大图见图10(c)。Mask R-CNN存在未能彻底对铁路区域进行分割的问题,如图9(e)中第1幅中的近景行人,局部放大图见图10(d),以及第5幅中仍有大量铁轨区域未能准确进行分割。本文算法相较于比较方法,具有更高的检测精度,对出现的铁路和行人都做到了准确的识别;相较于原始Mask R-CNN检测结果,本文算法的图像边缘掩膜处理效果更好,如图9(f)第5幅所示。由此可见,本文方法能够完整地实现对该铁路区域的分割,同时具有更加准确的掩膜处理能力。
为了验证本文算法对其他常见铁路异物检测的有效性,在红外弱光环境下对常见铁路异物(石头、动物、人和自行车)进行了现场检测实验,检测结果见图11。从图11中可以看出,本文算法在夜间弱光场景下能够正确地划分出铁路限界区域,取得了良好的检测效果。铁路异物限界区域的划分,对于保障行车安全具有重要的意义。其中,图11(a)中对于并不明显的石块小目标能够实现准确的检测;图11(b)中同样对于动物也可以准确检测;图11(c)中较好地对自行车和被遮挡的行人也做出了准确的检测。
图11 常见铁路异物检测结果
为了进一步验证本文算法在现实复杂铁路场景应用的有效性,选取了一段铁路道口视频进行现场测试,红外视频测试结果见图12。图12中,待检测场景环境复杂,存在较多随机干扰因素,且红外图像中存在较多噪声等影响。
图12 红外视频测试结果
由图12可见,本文算法能够较好地检测出铁路区域,对该视频序列中的铁路区域能够有效实现语义分割划分,在夜间弱光环境下具有较好的检测效果;对于视频序列中出现的行人、汽车和农用车辆等铁路异物均取得了较好的检测结果,如图12(d)和图12(e)所示,行人之间、车辆之间发生相互遮挡现象,本文方法均能有效检出;图12(c)中农用车辆穿越铁轨区域时也实现了准确检测;图12(j)中行人运动过程中使目标尺度发生改变,而本文算法能够对目标进行准确的检测。以上实验表明:本文算法在弱光低照度复杂铁路场景下,能够实现目标的有效检测,具有较好的检测结果。
为了评估本文算法的铁路异物侵限检测性能,分别计算不同算法在测试集上的精确率P、召回率R、精确率和召回率的调和平均数F1值、像素准确率PA值。PA值越大,表示掩码位置越准确;精确率越高代表模型的误检率越低;召回率越高代表模型的漏检率越低。不同算法在异物侵限测试集上的测试结果对比见表1。
表1 不同算法在异物侵限测试集上的测试结果对比
从表1可以看出,文献[11]的Mask R-CNN算法在检测精度方面仅低于本文方法,而高于Faster R-CNN、YOLOv3和SSD算法。在5种方法中,本文算法检测精度最高,精确率较Mask R-CNN提高了3%左右,召回率提高了6%左右,目标的检测能力得到提升。此外,在像素准确率方面,PA值提升了8%左右,掩膜的位置更加准确。从以上定性和定量评价实验可以得出:本文具有较高的红外目标检测精度,可以有效实现对弱光环境下铁路异物及铁路钢轨区域的检测。
在对不同比较方法性能对比分析后,为了验证不同模块对本文模型的有效性,分别从模型空间大小、均值平均精度mAP、检测时间指标3个方面进行消融实验,以得到不同模块对于本文模型重要性的定量分析。不同网络模块在红外铁路异物测试集上的测试结果对比见表2。
表2 不同网络模块在红外铁路异物测试集上的测试结果对比
从表2 测试结果对比可以看出:在基准模型上仅嵌入CBAM模块后,网络模型大小增加6 MB,平均精度均值mAP提升4%左右,验证了CBAM模块的有效性;在增加了密集连接模块后,模型大小几乎没有变化,其原因是密集连接并没有新增卷积层,仅在已有基础特征图上进行融合运算,不会增加模型大小,而检测性能指标mAP由88.24%提升至90.15%;同时,在测试检测时间方面,相较于基准模型的检测时间,嵌入模块后检测时间要略低于基准模型,但差距不大;此外,在基准模型上同时嵌入CBAM和密集FPN模块后,平均精度mAP可以达到94.36%,比基准模型提高了6%左右。通过上述消融实验可以发现,通过CBAM模块和密集连接FPN模块可以增强红外弱光下目标特征,提高了弱光环境下铁路异物检测的性能。
在以上主干网络模块消融实验的基础上,进一步对CBAM横向连接个数对模型的影响进行分析。横向连接中CBAM模块个数消融实验分析结果见表3。从表3中可以看出,在嵌入第一个CBAM模块后,模型大小增加了1.5 MB,但准确率提升最为明显,达到91.05%;当分别嵌入2个、3个CBAM模块后,模型在准确率上略微有所提高,但检测时间也有所增加;而每一层都嵌入CBAM模块的连接方式,即嵌入4个CBAM模块后,此时模型的准确率最高,检测时间变化不大。
表3 横向连接中CBAM模块个数消融实验分析结果
为了验证本文所提k-means聚类方法预设锚点框对检测模型的影响,分别采用固定锚点框和加入聚类锚点框两种策略对网络进行训练与测试。加入聚类优化锚点框后的模型测试结果对比见表4。原始Mask R-CNN算法中采用固定anchors大小尺度的方法来预设锚点框,而本文根据红外铁路异物数据集的特点采用改进k-means聚类的方法获得预设锚点框,对比两种策略实验结果可发现:选用本文聚类优化锚点框的方式,可以有效缩短训练时间,加速网络收敛,对于平均检测精度均值而言,约有1%的性能提升。分析其原因为采用聚类方法能够更好地将被检测对象进行选择,使得复杂背景对框定目标的干扰减少,从而更加准确地得到目标候选区域,加快网络收敛时间,提高算法的检测精度。
表4 加入聚类优化锚点框后的模型测试结果对比
为了提高夜间铁路异物检测能力,针对红外弱光环境下铁路异物侵限检测时存在目标特征提取不充分、检测精度低的问题,在Mask R-CNN检测模型的基础上,提出一种红外弱光环境下的多尺度密集注意力铁路异物检测方法。结果表明:
(1) 本文方法通过改进设计密集连接的多尺度FPN金字塔网络,促进了不同尺度特征间的信息融合,更好地利用了高层和底层的特征信息,提高了红外弱光环境下的铁路异物检测精度。
(2) 引入CBAM注意力机制并改进ResNet-FPN网络结构后,提高了对目标区域的关注度,突出了红外弱光环境下的目标特征,使得弱光环境下铁路轨道区域分割效果更好。同时,改进k-means算法来重新预设锚点框大小,可以提升锚点框对目标区域定位的准确性。
(3) 通过铁路红外数据集及现场实验,表明本文方法具有较高的检测精度,精确率可达89.24%,较Mask R-CNN召回率提高了6%,像素准确率提升了8%,能够在红外弱光环境下更加准确地检测出铁路异物。