APP下载

城市轨道交通小型障碍物检测

2021-11-01张轩雄

上海理工大学学报 2021年5期
关键词:障碍物粘贴卷积

张 林,沈 拓,2,张轩雄

(1. 上海理工大学 光电信息与计算机工程学院, 上海 200093;2. 同济大学 铁路基础设施和系统安全上海重点实验室, 上海 201804)

近年来,随着国内各个城市轨道交通的快速发展,自动化运营成为轨道交通的发展方向。自动检测列车前方的障碍物,从而提前制动,降低行车风险非常重要。因此,国内外专家采取了不同的方法来研究列车前方的障碍物检测。

列车运行轨道上的障碍物检测一直都是研究热点,早在20世纪90年代,日本在其新干线上使用相机作为图像采集工具,利用模板匹配的方法,检测列车前方的障碍物[1],但是,其需要依赖先验信息。之后,众多学者提出通过多数据融合的方案[2],提高障碍物检测的准确性。随着深度学习的发展,使用神经网络进行障碍物检测已经成为目标检测方向不可或缺的一个分支,在自动驾驶、行人检测等诸多场景都获得了大规模的应用[3-4]。虽然这些方法对于大型障碍物有着良好的检测准确率,但是,对于小型障碍物的检测很不理想。

本文针对小型障碍物检测效果不理想的问题,提出一种基于卷积神经网络(convolutional neural network, CNN )的检测算法。

1 数据采集及处理

1.1 数据采集

城市轨道列车的运行环境复杂多变,列车既可能运行在地面,也可能运行在隧道,同时还面临着雨雪、雾霾等恶劣天气的影响,所以,直接用其他通用的数据来训练模型不太合适。本文通过摄像机、网络爬虫等方式,建立特定的数据集来训练模型,并通过实验来比对各种数据集的效果。

通过以上多种方式,共采集图像3 812张。为了提升模型的泛化能力,数据集包含不同环境下的图像,例如:隧道内的图像、地面运行时的图像、光污染时的图像及雨雪雾霾天气下的图像,如图1所示。义大小型障碍物的标准[5],对数据集中大小型障碍

图1 不同环境下的轨道图像Fig. 1 Track images in different environments

在采集到的数据集中,依据COCO数据集定物的分布情况进行统计,统计结果如表1所示。

从表1中的统计结果来看,大小型障碍物在不同场景下的分布极不均匀,小型障碍物的数量非常少,小型障碍物对模型训练时的损失函数贡献小,导致小型障碍物的检测率低下[6]。所以,本文针对小型障碍物数量少的问题,利用数据增强策略,提升小型障碍物的数量。

表1 障碍物的分布Tab.1 Distribution of obstacles %

1.2 数据增强

小型障碍物检测性能低下,主要由两个原因导致[5]:a. 只有少数图片包含小型障碍物;b. 即使图中有小型障碍物,但是,小型障碍物在整幅图中的占比很小。针对这两大问题,采用过采样的方法,对图片中的小型障碍物进行过采样,同时利用复制、粘贴的方式,提升小型障碍物的数量。

针对小型障碍物样本数量非常少的问题,通过简单的复制、粘贴策略,改变粘贴规则的方式来模拟实际的场景,提升小型障碍物的检测率。针对图中所有的小型障碍物,在随机位置复制、粘贴多次,同时保留原始的样本。在对小型障碍物进行粘贴之前,需要对小型障碍物的状态作相应的规则限制。首先对待粘贴障碍物的大小进行随机的放大或者缩小20%,同时将待粘贴障碍物随机旋转15°;其次,粘贴到图中的障碍物不能覆盖到图中其他障碍物;最后,粘贴到图中的障碍物必须距图像边缘5个像素以上。部分图样粘贴效果如图2(a)和2(b)所示。

图2 粘贴后的效果图Fig.2 Pasted figure

在解决了小型障碍物数量少的问题之后,大小型障碍物样本不均的问题依然没有得到有效的解决。通过采样法来解决样本不均的问题,采样法不仅能从数据的角度改变模型的阈值,而且能改变模型收敛优化等一系列过程。常见的采样方法有欠采样和过采样两种[7]。欠采样通过在负样本中选取一些样本与正样本进行结合,从而弱化数据集中负样本带来的影响,但是,欠采样容易造成数据偏差、模型过拟合等一系列问题。过采样与欠采样正好相反,在正样本中选取一些样本与负样本进行结合,强调正样本所带来的影响,但是对于标记错误的正样本,会成倍地放大噪声。

针对以上问题,采用SMOTE (synthetic minority over-sampling technique) 算法[8],SMOTE属于过采样方法,SMOTE利用插值法为少数类人工合成新样本,然后加入到数据集中,从而解决样本分布不均的问题。SMOTE算法流程如下:

a. 针对少数类的样本x,以欧式距离(式(1))为标准计算该样本到同类样本xi的距离,获取其k个近邻样本;

b. 根据样本不平衡的比例,确定采样的倍率N,对于每一个少数类样本x,从其k个近邻中选取若干个样本,假设选取的近邻样本数为xn;

c. 对于每个样本选出的xn,分别与原样本按照式(2)构建新的样本xnew。

式中:L表示样本之间的欧式距离;l表示样本所在的维度;rand函数表示在数字0~1之间选择一个随机数。

经过SMOTE算法进行数据平衡之后,再次统计数据集中大小型障碍物的分布,结果如表2所示。

表2 采样结束后的障碍物分布Tab.2 Obstacle distribution after sampling %

从表2中可以清晰地看出,经过SMOTE和复制、粘贴策略之后,大小型障碍物样本的占比保持一致,同时不含障碍物的图片比例大幅下降,样本平衡良好。

2 特征融合

卷积神经网络是一种深度前馈式的神经网络,可以对图像特征信息进行有效提取,同时因其模型的复杂度低、权值参数少等特征,在图像信息提取上具有良好的效果。本文基于卷积神经网络提出自动化检测算法,并针对小型障碍物检测率低的问题作相应的算法改进。小型障碍物由于体积小,在特征提取的过程中信息容易丢失,导致模型对于小型障碍物的检测率不高。特征融合的主要目的就是在卷积神经网络提取小障碍物特征的过程中,使小型障碍物低层的位置信息和高层的语义信息相融合,从而提升小型障碍物的检测率。本文基于原始的Faster RCNN (fast region based CNN)骨干网络[9]加入FPN (feature pyramid network)网络[10],使得整个网络模型中,低层的特征拥有高层的语义,高层的特征拥有低层的位置信息,大大提升了小型障碍物的检测率。

2.1 Faster RCNN

卷积神经网络应用在目标检测领域从RCNN[11](region CNN)到Fast RCNN[12],再到Faster RCNN。RCNN算法预先找到图中可能出现目标的区域,即候选区域(region proposal),然后再进行目标检测,大大提升了目标检测率,但是,由于存在大量的重复计算,所以,RCNN的检测速度很慢。Fast RCNN针对RCNN每一个候选区域都要经过CNN进行特征提取,提出共享卷积层,直接输入一张图片,一次性提取所有的特征,在保证检测准确率的同时,大大提升了检测的速度。但是,Fast RCNN在挑选候选网络时,使用的是选择性搜索,非常耗时,这时Faster RCNN提出使用单独的一个区域候选神经网络(region proposal network,RPN)来找到候选框,并将RPN直接放在卷积层的后面,在保证检测精度的同时,大大提升了目标检测的速度,因此,整个Faster RCNN网络的性能取决于RPN网络的性能。

RPN网络的作用就是将区域候选的过程融合到Faster RCNN网络框架中,RPN网络和Faster RCNN网络共用卷积网络,减少网络整体的计算量。RPN网络提取候选区域的原理如图3所示。

图3 候选区域网络Fig.3 Region proposal network

RPN网络在卷积出来的特征层上建立滑动窗口,以图中的每个点为中心,提取出9个大小不同的候选框。利用滑动窗口进行特征提取之后,得到一个256维的特征向量,然后将此向量输入到全连接层,输出每个候选框分类的得分及每个候选框的坐标。

2.2 FPN网络

在卷积神经网络中,不同层级的神经元拥有不同大小的感受野。低层特征拥有更小的感受野,更加关注图片中的位置信息,相反高层特征拥有更大的感受野,更加关注图片的语义信息。小型障碍物在图片中占比较小,通过卷积神经网络提取到的语义信息有限,因此,需要更加关注低层的位置信息。而在原始的Faster RCNN网络框架中,对于目标的检测统一使用顶层特征显然不合适,所以,本文利用FPN网络融合小型障碍物的位置信息和语义信息,提升小型障碍物的检测率。

FPN网络主要分为两个部分,一部分是自下而上的卷积,另一部分是自上而下的采样和横向连接部分。自下而上的部分是主干网络Resnet卷积过程中的一部分。在Resnet中,本文将输出同样特征映射的多个层归类成一个阶段。在每个阶段里,最后一层拥有最丰富的特征信息,所以,选择最后一层作为每个阶段的特征输出。通过Resnet的框架结构,将整个特征金字塔分为5个部分,由于第一层卷积占用大量内存,所以,将它单独拿出来看,剩下的4个部分根据特征的输出分成4个部分{C2, C3, C4, C5},每一阶段相对于输入图片的步长分别是{4, 8, 16, 32}。

自上而下的部分使用上采样的方法将顶层的特征扩大到和自下而上部分同一阶段的大小,横向连接利用高层的语义信息和低层的位置信息,将多种特征信息融合起来,使得低层特征拥有高层的语义信息,高层特征拥有低层的位置信息。图4展示了特征金字塔网络的结构设计。

图4 特征金字塔网络Fig.4 Feature pyramid network

从图4中可以看出,对于顶层的特征,采用了一个上采样的方法来融合相关阶段的特征,然而不同层之间的通道维数不一致,所以,采用一个1×1的全卷积网络来降低通道的数目,使得不同层之间可以相互连接。针对上采样,采用了最近邻插值算法,算法公式为

式中:Xsrc和Ysrc分别是原始像素矩阵的索引;Xdst和Ydst是采样过后像素矩阵的索引;W和H是像素矩阵的大小。

公式完全基于图像的像素矩阵,为了消除上采样带来的重叠影响,另外采用了一个3×3的卷积神经网络,作用在特征融合的阶段,而且每一个阶段都有各自的回归器和检测器,从而达到多尺度的检测。

2.3 特征融合网络

在Faster RCNN的框架中,区域候选网络作为一个独立的检测器,使用一个3×3的滑动窗口在主干网络的特征层上抽取目标的特征,然后将抽取到的特征送入2个1×1的卷积网络中进行分类和回归。分类器负责区分图像中的背景和障碍物,回归器负责返回那些还有障碍物的区域。

针对FPN使用单一尺度的特征,将FPN和RPN进行结合,如图5所示,在每层增加一个3×3的卷积和一个1×1的卷积,并且低层的特征由高层特征采样得到。对于每一层,均采用独立的检测器和回归器,所以,在每个具体的层上面,不需要多种尺度的锚框,每一阶段的锚框的大小被固定,{P2, P3, P4, P5}阶段的锚框大小分别是{322, 642, 1282, 2562}个像素,每个阶段锚框的比例均是{1∶2, 1∶1, 2∶1}。所以,每一窗口至少有12个锚框。经过以上的改进,特征金字塔的每一个特征既拥有障碍物低层的位置信息,也拥有高层特征的语义信息,模型的性能得到了很大的改善。同时,本文使用场景不需要确定障碍物的具体类型,所以,将原Faster RCNN网络的细分类分支进行裁剪(如图5黄色区域),以此来达到加速检测的目的。

图5 特征融合网络结构图Fig.5 Structure diagram of feature fusion network

3 实验结果与分析

为了验证算法在不同环境下的有效性,在测试时选择不同环境下的多种图片,包括隧道环境、地表环境、轨道交叉口环境和雨雪雾霾等场景,通过对环境背景进行分类,分成白天和黑夜两大类。同时与当前主流的算法YOLOv3[13]及SSD[14]进行对比,验证实验的有效性。

3.1 实验环境

Faster RCNN采用公共的Resnet作为网络主干,使用随机梯度下降的方法,在ubuntu16.04系统,Intel i7 4核8线程的处理器、32 GB内存和Nvidia GTX1080TI显卡,CUDA9.0的GPU加速库环境下进行实验。整个训练过程是端到端的,每一批次只有一张图像,并且每一张图像只生成2 000个ROIs。训练的学习率设置为0.02,权重为0.000 1,动量为0.9,以此来加速收敛。

3.2 实验结果

通过不同环境下算法检测的准确性和算法检测的速度来衡量实验结果的有效性。不同算法的实验结果如表3所示。

表3 不同算法检测结果对比Tab.3 Comparison of detection results with different algorithms

从表3中不难看出,本文的算法在检测率上明显高于其他算法,同时也验证了小型障碍物在检测时融合位置信息和语义信息的有效性。但是,本文的算法在检测速度上明显低于其他算法,在以检测率为主的基础上,本文的算法依然具有一定的优势。

固定抽取4种不同环境的测试图片各20张,使用本文的算法检测,计算各个复杂环境下的检测率,实验结果如表4所示。从表4中可以直观地看出,待检测的图片存在噪声干扰时,算法的检测性能下降得较快。尤其在存在光污染的情况下,算法的检测性能直接降到原有的一半。实际检测的效果图如图6(a)和6(b)所示。

图6 检测结果图Fig.6 Results of detection

表4 算法在不同环境下的效果Tab.4 Effect of the algorithm in different environments

4 结束语

针对当前轨道列车前方障碍物检测,提出了使用卷积神经网络方法,有效地提升了检测列车前方障碍物的效率,为列车自动化运营提供了一种可行的途径。同时针对原有目标检测算法的小型障碍物检测率低的问题,提出特征融合策略,利用特征金字塔网络,将低层的位置信息和高层的语义信息进行结合,大幅提升了小型障碍物的检测率。但是,本文的方法也有不足,在检测速度上未能达到实时的要求,在后续的研究中将继续提升算法的性能。

猜你喜欢

障碍物粘贴卷积
基于全卷积神经网络的猪背膘厚快速准确测定
基于3D-Winograd的快速卷积算法设计及FPGA实现
一种并行不对称空洞卷积模块①
高低翻越
赶飞机
月亮为什么会有圆缺
A ski trip to Japan
What Would I Change It To
忙忙碌碌的人们