复杂矿山环境下作业车辆的实时检测与跟踪

2022-11-19 08:34康高强刘世望熊群芳
控制与信息技术 2022年5期
关键词:轨迹车辆预测

康高强,林 军,刘世望,岳 伟,熊群芳,仝 皓

(中车株洲电力机车研究所有限公司,湖南 株洲 412001)

0 引言

智能感知是矿用卡车(简称“矿卡”)无人驾驶系统的基础功能,其包括路侧感知和车载感知两部分。路侧感知部分需具备在多尘、复杂气候条件下进行交通流量统计以及车辆入侵、停车、逆行、减速、换道等行为检测的能力。车载感知部分需精准感知车辆周界三维环境,为决策避障提供依据。矿卡无人驾驶系统通常采用多传感器融合技术进行精准感知。因为激光雷达不具备获取环境颜色和纹理等信息的能力,所以基于视觉对复杂多变矿山环境下的作业车辆进行稳定、实时的检测与跟踪变得尤为重要。

在深度学习技术崛起前,传统视觉分析技术通过人工方式选取或设计图像特征,结合机器学习方法进行目标检测与跟踪。主流的方法包括基于目标模型的建模方法和基于搜索的方法。基于目标模型的建模方法[1-4],即通过区域匹配、特征点跟踪、主动轮廓、光流法等对目标外观模型进行建模,依据模型特征在图像中寻找目标。文献[1]通过对特征点进行提取,将相邻帧之间的目标物特征匹配,完成跟踪定位任务。由于基于目标模型的方法需对完整图像进行处理,检测时间较长,因此出现基于搜索的方法[5]。其加入了卡尔曼滤波和粒子滤波预测算法,搜索接近预测值的目标,缩小搜索范围,提升了跟踪实时性。另一种基于搜索的方法为内核法,如mean-shift[6]算法是基于核函数沿梯度下降方向迭代,经过多次迭代收敛至新的目标位置,以此对目标进行连续的跟踪。由于人工选取或设计的图像特征鲁棒性较差,传统视觉分析技术更容易受到图像质量、异物遮挡及目标旋转等诸多因素的影响而导致实用性较差。特别是在复杂矿山环境下,由于车辆目标与图像背景相似度高,传统视觉分析技术无法有效区分车辆与背景。

深度学习为目标检测和跟踪提供了新的思路。通过卷积神经网络学习海量图像数据来提取特征,能够很好地克服人工选取特征方式的不足。文献[7]为克服异物遮挡、目标旋转和相机抖动因素带来的不良影响,提出了一种基于多级卷积滤波特征的跟踪算法。该算法利用分层学习法得到主成分分析特征向量,并使用巴氏距离来评估特征之间的相似性,最后结合粒子滤波算法实现目标跟踪。但由于其缺乏实时目标检测信息,跟踪误差得不到及时校正而逐渐扩大,导致跟踪稳定性和持续性较差。近年来,基于深度学习的“先检测,再跟踪”的目标跟踪框架逐渐成为主流,其首先使用检测模型获取目标边界框,然后根据前后帧的关系进行轨迹预测与跟踪。这类跟踪框架采用基于候选区域的检测框架[8]进行目标检测,然后在跟踪算法SORT(simple online and realtime tracking)[9]快速匹配的基础上加入深度学习特征,通过计算检测特征和跟踪特征的余弦距离来获取相似度度量,从而进行目标跟踪。经典的代表算法为DeepSORT(deep simple online and realtime tracking)[10],但其采用的检测网络结构复杂,层数较深,所以实时性较差。为了提升目标跟踪的实时性,文献[11]基于端到端的检测框架YOLOv3[12]提出一种融合车辆外观特征的目标检测跟踪方法,其通过计算当前目标的位置和状态进行匹配与跟踪。该方法在一定程度上提升了跟踪速度,但实时性仍然不能满足要求。基于深度学习的目标检测方法多用于同一类别的不同目标的跟踪,或是不区分类别的多个目标跟踪,而矿卡无人驾驶系统要求对多类别的作业车辆进行同时跟踪,加之矿区环境复杂,车辆目标与图像背景相似度高,因此对跟踪器提出了更高的要求。

针对以上问题,本文提出以轻量级骨干网络结合多尺度特征融合模块的车辆目标检测模型。该模型以基于距离的交并比(distance intersection over union,DIoU)[13]为车辆检测损失函数,采用K-means聚类回归候选框尺寸,通过轻量级骨干网络学习海量图像特征,并输出多尺度预测结果,有效解决了因车辆目标与图像背景相似而难以检测的问题,进一步提升了多类别作业车辆检测的实时性。在跟踪阶段,该模型将多类别作业车辆目标的图像特征作为相似性度量,并结合表征运动信息的马氏度量进行级联匹配,在卡尔曼滤波的作用下显著提升多类别作业车辆跟踪稳定性,从而实现复杂矿山环境下多类别作业车辆的实时检测与跟踪。

1 作业车辆检测模型

近年来,卷积网络作为大多数场景中目标检测模型的基本结构,其效果已经可以与人类视觉效果相媲美。主流的检测算法分为直接检测和间接检测2种。直接检测法的代表是YOLO(you only look once)[12],间接检测法的代表是Faster RCNN(faster region-based convolutional neural networks)[8]。Faster RCNN采用两步结构提取物体候选区域进行定位和识别;而YOLO直接输出位置和类别信息,无需候选区域。研究表明,间接检测法更耗时,而直接检测法更符合工程实际需要。

1.1 模型框架

充分考虑作业车辆检测实时性需求,本文的检测模型框架选用YOLO-mvd框架,如图1所示。该框架用于车辆定位识别,其首先通过Focus[14]结构对输入图像进行切片,生成304×304×12维的特征图;然后特征图被分割,执行卷积和串联操作。骨干网(Backbone)和颈部(Neckpart)采用跨层局部融合网络来缓解大量计算的问题,其将梯度变化整合到特征图中,以降低权重并保持准确率。颈部采用注意力集中网络和像素聚合网络(FAN&PAN)[13]结构进行多尺度特征层融合,并针对大、中、小3种尺寸目标构建了3层预测模块。

图1 矿区作业车辆检测模型Fig.1 Detection model of operating vehicles in mining area

1.2 模型损失函数

为了进行稳定的车辆目标框回归,避免模型训练发散,本文采用DIoU构建车辆框回归损失函数。DIoU考虑了预测框与真值框之间的距离、重叠率和比例因子,在不与车辆框重叠的情况下仍然可以为边界框提供移动方向。DIoU损失函数可以直接最小化两个车辆预测框之间的距离,将使用非极大值抑制算法对车辆预测框进行过滤,得到最终的车辆位置和类别。DIoU的计算公式如下:

式中:βDIoU——基于距离的预测框和真值框的交并比;βIoU——预测框和真值框的交并比;b,bgt——预测框和真值框的中心点;ρ——中心点之间的欧式距离;c——同时包括两框在内的矩形的对角线长度。

矿区作业车辆检测模型的损失函数主要由车辆框回归损失λcoord、目标置信度损失(λobj,λnoobj)和分类损失λcls组成:

式中:S2——网络结构中预测网格数量;B——每个网格预测的锚框数量;c∧i——计算网格中的第i个网格的锚框是否负责预测某个对象(若是,c∧i=1;否则,c∧i=0);ci——拟合值;p∧i,c——第i个网格中锚框所预测对象类别是否正确(若是,p∧i,c=1;否 则=0);pi,c——预测为正确对象类别的概率;σ——数据的分散程度,即标准差;Nclasses——检测的类别数。

1.3 候选锚框尺寸聚类

在传统目标检测方法中,一般是通过多尺度遍历滑窗或选择性搜索获取候选锚框然后再进行定位,或者是人工设定候选锚框大小进行位置回归,这两种方法效率低,效果差。为提升网络训练效率和检测精度,本文采用了K-means[15]聚类算法对矿区作业车辆图像进行分析,获得符合矿区车辆对象边界的候选框尺寸参数,将车辆的预测框交并比(IoU)作为衡量聚类效果的标准,具体步骤如下:

(1)将车辆真实边界框的宽和高提取为点(wn,hn),其中n∈{1,2,...,N};将边界框的中心点提取为(xn,yn),然后将所有的点组成样本集合。

(2)选取M组边界框(Wm,Hm)的点作为初始的聚类中心,m∈{1,2,...,M}。

(3)使用IoU度量样本集合中所有的点到初始聚类中心的距离d,并将这些点划分给与其距离最近的簇,d的计算公式如式(3)所示。

(4)计算m个聚类点簇的宽和高的均值,更新中心点位置,Nm表示第m个聚类簇中边界框的数量。

(5)重复步骤(3)和(4),直到边界框的中心点位置不再变化,则将m个聚类中心点的横纵坐标对应为候选框的宽和高。

2 作业车辆跟踪模型

2.1 作业车辆跟踪框架

本文采用与DeepSORT算法类似的跟踪框架。在得到作业车辆检测结果后,目标跟踪算法将根据物体运动信息和表观特征进行目标轨迹级联匹配,然后通过卡尔曼滤波实现实时跟踪。其算法流程如图2所示。

图2 作业车辆跟踪算法流程Fig.2 Flowchart of vehicle tracking algorithm

2.2 卡尔曼滤波跟踪

轨迹更新使用卡尔曼滤波器。该滤波器用匀速模型和线性观测模型,其观测变量为(u,v,γ,h),其中u和v代表目标的中心坐标,γ为纵横比,h为高度信息。对于每个轨迹t,计算与检测目标匹配的帧数at。at在卡尔曼滤波器预测期间递增,并在轨迹与检测目标再次匹配时被重置为0,轨迹t为确认状态。在轨迹与检测目标无法匹配时,轨迹t将被置为未确认状态。at超过预定义的最大帧数阈值Amax时,轨迹将从轨迹集合中删除。对于无法与现有轨迹相匹配的每个检测目标,卡尔曼滤波器会为该目标启动新的轨迹假设。这些新的轨迹将在前3帧中被假设归类为暂定轨迹。在3帧内未成功匹配到检测目标的暂定轨迹将被删除并终止对目标的跟踪。

2.3 车辆特征与运动信息级联匹配

通过卡尔曼滤波实现对轨迹的跟踪,其前提是需要将上次预测的多目标跟踪框架和检测算法生成的多个目标检测框进行匹配,得到需要的观测量和预测量。目标框的匹配使用匈牙利算法[16],并同时考虑车辆运动信息和车辆表观信息的关联。

2.3.1 车辆运动信息关联

马氏距离可以表征车辆跟踪预测框与目标检测框的运动信息关联,如式(5)所示。

式中:i——第i个轨迹;Si——检测位置与预测位置之间的协方差矩阵;yi——第i个跟踪轨迹的目标预测的位置;dj——第j个目标检测框位置。

马氏距离通过测量检测目标与目标轨迹平均位置的偏离程度来表示状态估计的不确定性。采用逆卡方分布的0.95分位数T作为阈值来过滤较弱的关联。过滤函数的定义如式(6)所示。

2.3.2 车辆表观信息关联

当目标运动不确定性较低时,马氏距离是一个很好的关联度量;但在实际中,相机如果遭遇剧烈抖动的情况时,会使马氏距离测量方法失效。因此,本文引入第2种关联方法,即采用余弦距离相似度来度量车辆外观特征关联度。为每个跟踪车辆目标构建一个库,求取每个跟踪车辆的特征向量rj,存储与每个跟踪车辆成功关联的时间最近的125帧车辆特征向量rk,i,即(其中,k表示帧数,最大值为125),则当前帧的第i个轨迹和第j个目标检测结果的外观关联度l(i,j)和设定阈值为t的过滤函数bi,j如下:

目标车辆的特征向量由车辆特征网络提取,网络参数如表1所示。采用残差网络(包含1个卷积层,1个最大池化层与6个残差模块),最终将维度为128的全局特征图在密集层中进行计算,通过正则化将特征投影为车辆特征向量。

表1 车辆特征提取网络参数Tab.1 Network parameters of vehicle feature extraction

2.3.3 级联匹配综合度量

马氏距离度量对于短期的预测和匹配效果很好,而余弦距离度量对于长时间丢失的轨迹而言比较有效。综合关联运动信息的马氏度量和关联外观特征信息的余弦度量,得到综合度量Ii,j和过滤函数bi,j:

式中:λ——权重系数。

只有在同时满足余弦度量和马氏度量时,关联才是正确的。对未确认的轨迹、未匹配的轨迹和未匹配的目标进行IoU匹配,再次使用匈牙利算法进行分配。成功匹配的轨迹参数被更新,未匹配的轨迹被删除,未匹配的目标被初始化为一个新的轨迹假设。

3 实验与分析

本文所提算法基于Pytorch框架实现,部署阶段使用C++编程语言。深度学习训练平台为NVIDIA 2080TI,实际运行计算平台为NVIDIA Jetson Xavier。

3.1 作业车辆检测实验与分析

采用被动红外相机获取视频图像,图像尺寸为514×640,帧率为20帧/s。本文使用每段时长为30 min的4段视频作为实验数据;并采用稀疏帧提取的方法构建了矿区作业车辆检测数据集,其中包含矿车、指挥车、电铲、推土机、挖掘机和其他工程车辆6大类检测数据。为了合理地进行网络模型训练与测试,本文按照8∶2的比例设置训练数据和测试数据。数据集如表2所示,训练样本图像尺寸为514×640×3,测试样本图像尺寸为514×640×3。

表2 车辆检测实验数据集Tab.2 Data set of vehicle detection experiment

在车辆检测实验中,使用平均准确率(mean average precision,mAP)@0.5-0.95[8]来评估检测精度,通过测量实验中每幅图像的平均处理时间来评估实时性。mAP@0.5-0.95表示在不同IoU阈值(0.5~0.95,步长为0.05)下平均准确率的均值。在训练过程中,采用与本文算法YOLO-mvd量级相近的经典算法YOLOv3-tiny和YOLOv5-small进行实验,并对3种算法设置相同的参数,样本批次大小均为64,均训练100个轮次。训练过程的可视化图如图3所示,图中横坐标为轮次数,纵坐标为各指标(Box Loss、Obj BCELoss、Cls BCELoss、Precision、Recall、mAP@0.5-0.95)对应的数值,其中Box Loss为目标框损失,Obj BCELoss为目标二值交叉熵损失,Cls BCELoss为类别二值交叉熵损失,Precision为精度,Recall为召回率。

图3 训练过程可视化图Fig.3 Visualization graphs of the training process

表3示出车辆检测模型测试结果。可以看出,本文所提出的YOLO-mvd的mAP最高,YOLOv5-small的实时性最高,而YOLOv3-tiny的mAP最低。总体而言,3种方法的实时性能是相似的,其中YOLO-mvd具有更强的检测准确性。

表3 车辆检测算法测试结果Tab.3 Test results of vehicle detection algorithms

3.2 作业车辆跟踪实验与分析

多目标跟踪的实验在测试视频中进行。本文选取多目标跟踪准确度(MOTA)、多目标跟踪精度(MOTP)、目标ID变化次数(IDS)和每帧图像处理时间作为多目标跟踪器的评价标准,MOTA与MOTP计算过程如式(11)和式(12)所示。

式中:βMOTA——多目标跟踪准确度;mt——t帧时刻漏检的数量;fpt——t帧时刻误检的数量;mme t——t帧时刻错误匹配的数量。

式中:δMOTP——多目标跟踪精度;ct——第t帧的目标和预测目标的匹配个数;dt,i——第t帧目标的对应位置与预测位置之间的距离。

将本文算法与经典的目标跟踪算法SORT、DeepSORT、车辆检测与跟踪算法(vehicle detection and tracking algorithm,VDTA)[11]进行实验比较,各算法性能如表4所示。

表4 多作业车辆跟踪测试对比Tab.4 Comparison of multi-operating vehicle tracking methods

实验结果表明,本文算法在MOTA、MOTP和IDS指标上均优于其他方法的。因为SORT算法没有使用深度外观特征,不需要进行深度卷积神经网络的计算,方法的实时性能最好。为了稳定跟踪车辆、减少目标身份标识号(identity document,ID)切换,本文算法采用与每个跟踪车辆成功关联时刻最近的125帧特征向量作为级联匹配的外观特征信息,并充分考虑了车辆被遮挡后再出现的情形,因而车辆ID变换次数最少。

本文算法在实际场景中的跟踪效果如图4所示。图中检测框上的曲线(检测框上方与检测框颜色相同的波浪线条)表示2个场景中不同车辆在连续几帧之间的跟踪轨迹。该算法相较于其他跟踪算法在稳定性上有明显提升,这得益于稳定的作业车辆检测模型以及考虑车辆运动信息与外观特征信息的级联匹配算法。

图4 实际场景中的作业车辆跟踪效果Fig.4 Tracking effects of the vehicle in the actual scene

4 结语

本文基于轻量级骨干网络YOLO提出了YOLOmvd的矿区作业车辆目标检测模型,并且对车辆的多目标跟踪算法进行了研究,得到如下实验结果:

(1)基于轻量级骨干网络YOLO结合多尺度特征融合模块进行目标检测,采用DIoU损失构建车辆框回归损失函数,通过K-means聚类车辆候选锚框,提升了作业车辆的实时检测性能。

(2)结合作业车辆运动信息与多层深度外观特征进行车辆级联匹配,基于卡尔曼滤波实现了多种作业车辆的多目标稳定实时跟踪。

实验测试结果表明,本文所提的方法能够适应矿区图像场景,可以有效完成复杂矿山环境下多作业车辆实时检测与跟踪任务。

由于矿区场景工作环境复杂多变,在光照和风沙影响下,YOLO-mvd模型的目标检测跟踪性能会有所降低。后续需在模型跟踪中研究时空注意力机制,重点关注感兴趣目标来进一步提升跟踪性能。

猜你喜欢
轨迹车辆预测
无可预测
选修2-2期中考试预测卷(A卷)
选修2-2期中考试预测卷(B卷)
轨迹
轨迹
轨迹
车辆
进化的轨迹(一)——进化,无尽的适应
不必预测未来,只需把握现在
冬天路滑 远离车辆