基于人机交互的免锚检测和跟踪系统设计
2022-12-01吴超吴绍斌李子睿孙冬
吴超,吴绍斌,李子睿,孙冬
(北京理工大学 机械与车辆学院,北京 100081)
0 引言
近年来,随着人工智能技术的发展及应用,无人系统在现代作战和国家安全领域中大显身手,成为重要的战斗力量之一[1]。而目标的检测和跟踪作为精准进行目标打击的基础,其重要性不言而喻。目前在真实的作战场景中,复杂的环境是目标检测和跟踪面临的主要挑战[2],如何能够高效、准确地检测和跟踪目标,已经成为提高实用性的关键。
激光雷达由于其出色的三维场景建模能力,一直广泛用于无人驾驶领域。目前,激光雷达的目标检测和跟踪算法可分为传统方法和基于深度学习的方法两种。传统激光雷达的障碍物检测与跟踪方法可以分为基于栅格单元分析的方法、基于检测-跟踪的方法。基于栅格单元分析的目标检测、跟踪方法是用栅格对目标进行表征,并通过栅格运动区分环境中的动态区域和动态区域[3-4]。基于检测-跟踪的动态目标检测方法,主要是对连续多帧检测到的目标进行数据关联,然后根据目标的位置变化检测动态目标,可以通过建立静态背景方法提取动态目标[5]。随着深度学习技术的发展,基于深度学习的方法逐渐成为主流。相比于传统方法检测,深度学习检测方法的泛化能力更强、准确率更高。基于深度学习的点云3D检测技术主要分为基于点(Point-Based)、基于体素(Voxel-Based)、基于相机和激光雷达融合(Camera-Lidar Fusion)3个方向[6]。Voxel-Based的3D目标检测将点云数据转化为体素类型,然后利用成熟的2D目标检测技术进行检测,例如Voxel-Net[7]、PointPillars[8]、CenterPoint[9]、3D-CenterNet[10]等。Point-Based的3D目标检测采用原始的点云数据作为特征输入,直接对每个点分类,例如PointNet[11]、PointNet++[12]、PointRCNN[13]、PVRCNN[14]等。基于Camera-Lidar Fusion的3D目标检测以相机的图片数据和激光雷达的点云数据为输入,结合图像的色彩、纹理特征和点云数据的几何特征进行融合,旨在增强加检测的准确性,如MV3D[15]、F-PointNet[16]、CrossFusion Net[17]等。目前基于Camera-Lidar Fusion的3D目标检测的融合还处于较低水平,具有显着的分辨率损失,而且点云和图像数据的时间和空间对准误差的消除、图像数据和点云数据视场角不一致的融合问题还亟待解决。此外相比于Voxel-Based的3D目标检测,Point-Based的3D目标检测没有任何的信息编码损失,准确率更高,但是由于点云数据量较大,实效性较差。如何在保证Point-Based框架准确率的前提下提高网络的效率,成为一个重要的研究方向。另外,现有跟踪算法需要在初始帧指定目标[18],只依靠无人系统自身的智能,往往不能适应瞬息万变战场环境,因此需要与指挥人员进行交互。
为提高越野环境中目标跟踪的准确率和效率,本文提出一种基于人机交互的免锚的目标检测和跟踪系统。本文工作主要有3个方面:1)为解决Point-Based框架的3D目标检测的效率问题,提出一种免锚(anchor-free)的目标检测网络结构。该网络使用高效的PointNet和MLPs结构,并设计了边界框关联层进行监督学习,这种策略的好处在于只需要在训练时使用,而在线检测时则不需要,有效地加快了检测效率。2)为提高跟踪的灵活性,使其能够适应复杂多变的战场环境,提出一套基于人机交互的目标跟踪方法。3)为提高检测目标和跟踪目标匹配的准确率,提出一种综合外观特征和运动特征的匹配方法。
如图1所示,本文提出的基于人机交互的免锚目标检测和跟踪系统由三部分组成,分别为检测系统、指挥系统和目标跟踪系统。目标检测系统以点云为输入,输出检测目标序列;指挥系统通过相机实时获取环境态势信息,根据检测系统的结果人机交互选择跟踪目标,然后生成外观模型下发给跟踪系统;跟踪系统利用指挥系统下发的外观模型和检测目标的外观模型进行匹配,基于卡尔曼滤波算法进行运动估计,获取目标的位置、速度和方向。
1 基于免锚的目标检测网络
检测系统如图1所示,本文提出一种基于免锚的两阶段检测网络。第1阶段为边界框定位网络,不同于现有的3D目标检测网络采用region proposal network(RPN网络)产生大量的边界框,然后在后处理阶段利用非极大值抑制算法(NMS)进行筛选。本文设计了高效的PointNet和MLPs网络结构并通过边界框关联层来监督网络学习相应的特征,直接回归若干个边界框,网络结构简单。而且边界框关联层只需要在训练阶段来监督网络学习,在线检测时不需要,在很大程度上解决了Point-Based网络的效率问题。第2阶段为边界框细化网络,其以第1阶段的结果为输入,回归出更精确的边界框。
1.1 目标边界框定位网络
1.1.1 边界框编码
1.1.2 目标边界框定位网络结构
如图1检测系统所示,边界框定位网络由两部分组成,第1部分为全局特征提取部分,可用PointNet或者PointNet++等网络进行特征提取,输出为1 024维的全局特征向量;第2部分为边界框回归部分,主要由MLP层(包括全连接层和非线性的激活函数Leaky ReLU)组成。其后为两个分支网络,一个分支输出H×2×3维的向量(H为预测的边界框个数),表征边界框的参数;另一个分支输出H×4维的向量,对目标框的置信度和边界框中物体的类别进行预测。
为监督网络学习合适的特征,需要将预测的边界框和真值边界框进行关联,受3D BoNet的启发,本文设计了边界框关联层。边界框关联层在训练的过程中监督网络学习相应的特征,其只增加训练的时间成本,不影响在线检测,其原理图如图3所示。
为计算Ci,j值,一般可用欧式距离或者两个边界框的交并比进行衡量,但为了更好地反映点在边界框中的分布,本文采用如下3个标准。
1)欧式距离
2)空间交并比
3)点的交并比
总的两边界框的代价值Ci,j为
假设关联矩阵为A,A∈RH×T,A的元素Ai,j为第i个预测边界框和第j个真值边界框之间的匹配关系。Ai,j=1,表示预测边界框和真值边界框匹配;Ai,j=0,表示不匹配。因此边界框关联问题可归纳为找到一个最优的关联矩阵A使得总的目标函数最小。对此问题进行建模,模型表示如下:
求解边界框关联问题(匈牙利匹配问题),可得出关联矩阵A,并根据关联矩阵A计算出网络损失函数。损失函数由两部分组成,一是预测边界框和真值边界框的损失值,二是预测的边界框的置信度和类别的损失值,总的损失函数Lt为
Lt=Lb+Ls+Lc
式中:Lb为预测边界框和真值边界框的损失值,其与Ci,j呈正比,
Ls为预测的边界框分数值的损失函数,
Ls中前半部分为匹配部分损失,后半部分为未匹配部分损失,pt为边界框的置信度;Lc为预测的边界框的类别的损失,为降低各类别不均衡性的影响,本文采用Focal Loss损失函数[20]。
1.2 边界框细化网络
1.2.1 边界框细化网络结构
由于边界框定位网络输出的边界框范围较大,需要进一步进行细化,为此提出边界框的细化网络。目标边界框细化网络结构如图4所示,其主要由T-Net网络(轻量化的PointNet网络)和PointNet回归网络组成。图4中,Δx、Δy、Δz为T-Net网络回归边界框定位网络输出边界框的中心和真值边界框中心的偏差,A表示A(add)层,C表示C(contact)层,h、w、l分别为边界框的长、宽、高,θ为航向角。
网络的输入为边界框定位网络输出的边界框中的点云,维度为m×c,m为点云点的个数,c为输入特征维度。然后平移变换层将点云由原来的雷达坐标系平移到以边界框中心的坐标系。T-Net网络回归边界框定位网络输出边界框的中心和真值边界框中心的偏差(Δx,Δy,Δz),然后利用A(add)层将偏差消除,最后C(contact)层将雷达坐标系下的坐标和真值边界框坐标系下的坐标值进行拼接。坐标变换原理图如图5所示。另外为精确地编码边界框,采用中心点(cx,cy,cz)、边界框的长宽高(h,w,l)和航向角θ共7个参数来表示边界框,最后利用PointNet网络直接回归这些参数。
1.2.2 损失函数
不同于之前网络用角度的差值或角度的正弦值之差来表示角度偏差,本文提出了用两个余弦值之差来表征角度差,相比于前两种方法,新方法能更好地反映两航向角之间的偏差。
Δθ=cosθg-cosθp
边界框中心点的回归损失用中心残差的欧式距离来衡量,长、宽、高和航向角的回归损失用l1距离来衡量。损失函数如下:
|Δli|+|Δwi|+|Δhi|+|Δθi|)
1.3 检测目标图片提取
3D目标检测输出为目标的边界框,并不能直接得到目标的图片,因此本文将点云投影到图像上,一个目标所有点云投影在图片上形成的最小二维框对应的图片即为检测目标的外观图片。如图6所示。
2 指挥系统
目前,主流的跟踪方法在理论研究中都有一个假设,即在第1帧就已经给出跟踪目标。但是对于复杂多变的战场环境而言,跟踪的目标需要跟踪战场局势进行实时调整,基于自动目标检测来提取初始信息并不能满足战场环境,因此本文搭建了一套指挥系统来实现指挥人员交互地选取目标,实现无人平台的协同作战。
2.1 指挥平台简介
智能技术的发展及军事化应用,“信息+智能”已经成为智能化作战指挥的特征[21]。本文提出的指挥系统主要由态势回传、人机交互、软硬件状态的反馈、信息下发四个部分组成,指挥软件如图7所示。态势回传部分利用无人平台上的传感器(相机)实时感知战场环境,通过电台进行实时回传,并在指挥软件上实时显示;人机交互部分是指指挥人员根据回传的战场态势,可以灵活地选定跟踪目标;软硬件状态反馈部分实时监测软硬件的状态;信息下发部分是将外观模型下发给无人平台跟踪系统,以便无人平台对跟踪目标进行锁定和跟踪。
2.2 基于人机交互的跟踪目标图片提取
为方便指挥人员进行跟踪图片选取,本文设置了两种交互操作:1)直接加载;2)单次点击。指挥软件的任务配置界面如图8所示。
1)直接加载
在指挥人员已经获取到跟踪目标的图片时,例如之前已经跟踪过的目标,可以直接通过“加载敌方目标”进行跟踪目标图片的加载。
2)单次点击
在未知跟踪目标的情况下,或者需要更换跟踪目标时,指挥人员可以从战场态势图中选取跟踪目标。对于跟踪算法,物体的外界矩形框是最常见的目标表示形式,人工框选目标的矩形区域也是最简单提取目标图片的方法,但是由于态势图中目标一直是在运动的,直接框选对指挥人员的反应时间要求苛刻,本文采用目标点击的方法进行跟踪目标选择,通过指挥软件直接点击“选择敌方目标”按钮,直接利用鼠标单击选择目标。
本文利用之前目标检测网络的结果在图像中提取检测目标的图片(详见1.3节)。然后根据鼠标点击的位置和检测目标的边界框进行匹配,若鼠标的位置在图片上某检测目标的区域内,则认为该检测目标图片为跟踪目标图片。
2.3 外观模型提取
外观模型的建立方法主要可分为两类,一类为传统的方法,主要根据图片的颜色,纹理和形状进行特征提取,其泛化能力和鲁棒性较差,另一类为基于神经网络的方法,神经网络具有强大的特征提取能力,不仅能提取常见的低维特征,如之前提到的形状,纹理,颜色等,还能提取一些高维特征,其鲁棒性和准确性都较高。
本文参考文献[22]提出的深度外观模型,其模型的网络结构如表1所示。其输入为目标的图片,输出为128维特征向量来表征系统的外观模型。
表1 深度外观模型网络结构表
3 目标跟踪系统
目标检测网络输出多个检测目标,为了对跟踪目标进行锁定,需用已知的跟踪目标的外观模型和检测目标的外观模型进行匹配。为表征检测目标X和跟踪目标Y的相似度关系,需要定义距离度量标准,常用的距离度量方法包括欧式距离度量、曼哈顿距离度量、余弦距离度量准则等。
本文提取检测目标序列和跟踪目标的外观模型,其为128维视觉特征向量。同一目标因光照强度和尺度变化都会对特征向量产生影响,欧式距离和曼哈顿距离会产生较大的变化,因此本文选择余弦距离来度量外观模型的相似程度。相似程度越高,距离值应该越小,因此定义外观模型之间的距离值为
对检测目标和给定的跟踪目标进行相似度度量,设定度量距离的阈值为T,检测目标小于度量阈值T,则被认为是跟踪目标。
3.1 目标状态的运动估计
对目标进行跟踪任务中,对目标运动状态的运动估计非常重要。目标的运动估计是将环境的测量信息转化为目标的运动学信息,便于无人平台进行决策和规划。但是实际测量存在不确定性和误差,为了消除这种不确定性和误差,并考虑车辆的曲线运动,本文建立了非线性的跟踪模型,采取扩展卡尔曼滤波算法实现车辆目标的运动估计。
扩展卡尔曼滤波器是标准卡尔曼滤波在非线性情形下的一种扩展形式,它是一种高效率的递归滤波器。其首先利用泰勒展开(取1阶导数)将非线性模型进行线性化,建立线性的状态方程和观测方程。状态方程通过建立系统的运动学模型来预测目标下一刻的运动状态,观测方程建立系统的观测模型,扩展卡尔曼滤波的主要思想就是将由先验估计的结果和观测的结果进行一个融合,其滤波过程如图9所示。
在目标跟踪中,匀转速运动模型是最常见、简单高效的模型之一,不管是目标做直线运动还是曲线运动都有一定的适应性,其假定在微小时间内目标的运动速度大小是不变的,角速度也是不变的,目标的位置估计由上一时刻的位置和速度大小和朝向决定。该模型一般以目标的位置、速度大小、车辆朝向、角速度作为状态量,为方便估计,一般将运动分解为x轴、y轴方向,px、py分别为x轴y轴方向的位置,vx、vy分别为x轴、y轴方向的速度,ω为旋转运动角速度,运动模型示意图如图10所示。
根据运动学建模可得
vk=vk-1,wk=wk-1
θk=θk-1+w·Δt
其扩展卡尔曼状态方程和观测方程如下:
式中:Wk和Vk分别表示系统过程噪声和测量噪声。
3.2 基于运动模型的模型匹配
基于外观模型的匹配通常能够从检测序列中锁定跟踪目标,但是如果对于目标序列中存在和跟踪目标较为相似的外观物体时,可能会产生误匹配。为降低误匹配率,本文采用运动模型对模型匹配进行约束。
为衡量预测边界框和观测边界框之间的距离,采用3D交并比(IOU)来表征。在满足外观模型匹配的条件下,若3D IOU的阈值大于0.5,则认为该目标为有效跟踪目标,否则为无效目标。IOU的计算公式如下:
式中:|A∩B|为边界框A和边界框B相交的体积;|A∪B|为边界框A和边界框相并的体积。
4 实验及结果
为验证本文算法的效果,首先利用KITTI数据集对3D目标检测网络进行训练和验证,然后利用实车平台进行实车验证。
4.1 目标检测网络的训练及结果
4.1.1 数据集
KITTI[23]数据集是目前自动驾驶最常用的数据集之一,它提供了时间戳对准后的相机和激光雷达数据,同时给出了激光雷达和相机的空间变换的标定参数。KITTI数据集的场景较为丰富,包含市区、乡村和高速公路等场景采集的图像数据,每张图像中最多达15辆车和30个行人,还有各种程度的遮挡与截断。为提高检测的效率,去除无用点,选取x、y、z的范围分别为[-40 m,40 m],[-1 m,3 m],[0 m,70 m]。
4.1.2 实验平台和训练参数设置
所提网络使用Pytorch深度学习框架,操作系统为Ubuntu16.04系统。实验平台为研华MIC-770工控机,具体配置如表2所示。
表2 工控机参数配置
在模型的训练过程中,主要设置的参数有学习率、学习率策略、训练轮数、批量训练数量、优化器等,具体训练参数如表3所示。
表3 模型训练参数
4.1.3 结果评估
算法的评测使用KITTI测试集,KITTI数据集根据目标的距离和遮挡将环境目标划分为Easy、Moderate、Hard共3种模式,在每种模式下统计检测的准确性。
可视化网络输出结果如图11所示,其中图11(a)为相机拍摄的图片,图11(b)为矩形框定位网络的结果可视化,图11(c)为边界框细化网络的结果可视化,绿色框为检测出来的目标边界框。由图11可知,矩形框定位网络很好地定位目标大致位置,并且经过边界框细化网络,目标的边界框变得更加精确。
为评估算法的准确率和效率(时间),将提出的算法和现有的算法按照同一评估标准进行比较,包括F-PointNet、MV3D、VoxelNet等准确性和算法耗时,结果如表4所示。在这些方法中,本文提取的方法用40 ms的时间代价(低于大部分算法)取得了较高的准确度。
表4 算法性能对比结果
4.2 外观特征匹配结果
外观特征匹配是目标跟踪的基础。本文通过开源的车辆重识别数据集Vehicle ReID(预留部分作为测试集)对深度外观提取网络进行训练。为验证外观匹配模型的可靠性和选取一个合适的外观相似度阈值T,本文在Vehicle ReID的测试集上进行统计学分析。分析结果如图12所示,其中图12(a)为同一目标不同位置和角度的相似度距离曲线,图12(b)为不同目标的相似度距离曲线。
通过分析可知,同一目标相似度的均值为0.06,均方差为0.049,不同目标相似度的均值为0.287,均方差为0.045,根据统计学的3σ准则(数值分布的概率为0.997 3),同一目标的3σ准则分布范围为(0,0.152 1),不同目标的3σ准则分布范围为(0.152,0.422),因此选择相似度外观阈值为0.152。为进一步验证算法的泛化性能,随机在KITTI数据集上选择一幅图片,如图13所示,衡量图片中目标和选定目标的外观相似度距离,车辆目标1的阈值远小于0.152,与给定的目标为同一目标,与实际情况相符。
4.3 实车实验
4.3.1 实验平台
实验平台采用北京理工大学智能车辆研究所的智能车平台,如图14所示。车上配备激光雷达、单目相机、GPS & 惯性制导系统、通信电台。
4.3.2 实验分析
首先进行目标检测试验,试验环境为草地环境,动态目标为车辆目标,动态目标不在相机视野内视为无效目标。试验总计采集有效目标2 658帧,目标检测的统计结果如表5所示。
表5 目标检测情况统计
从表5中可以看出,本文算法的检测准确率为91%左右,但也存在漏检和误检的情况,分析发现误检和漏检较多发生在距离车辆50 m后,主要原因为激光雷达在50 m后的点较少,算法难以检测出。
最后对本文算法的跟踪精度进行试验验证,因为需要前车的相对位置和速度的真值,所以尽量保证前车做匀速运动,速度为10 km/h,根据本车的速度(由惯性制导系统获得)和初始的相对距离计算出每一帧的相对距离,作为相对距离真值。实验结果如图15所示,其中图15(a)、图15(b)为相对距离和相对速度的结果曲线,图15(c)为本车的速度曲线。
5 结论
本文搭建了集目标检测、目标跟踪和指挥平台与一体的高效、准确的目标检测和跟踪系统。首先设计了免锚的目标检测系统,输出目标的边界框序列;然后指挥系统在此基础上人机交互地选择跟踪,跟踪系统将选择的目标外观模型和跟踪目标外观模型进行匹配,锁定跟踪目标,再通过卡尔曼滤波算法进行运动估计。得出主要结论如下:
1)在Point-Based目标框架的基础上,通过高效的PointNet、MLPs网络和边界框关联层(只增加训练时间成本,不增加在线检测时间成本)提高了检测的准确率和效率。
2)通过指挥系统和无人平台进行人机交互,实现了对目标的灵活选取,提高了系统的灵活性。
3)通过外观模型和运动模型互相补充来对跟踪目标进行匹配,提高了匹配的准确率。
4)实车试验表明,本文提出的基于人机交互的免锚检测和跟踪方法在精度和效率方面均能满足越野环境使用的要求。
由于本文只使用激光雷达数据进行目标检测,受激光雷达感知范围的影响,距离车辆50 m后的部分检测效果变差。后续可以将相机、激光雷达、毫米波等传感器进行融合,以提高检测和跟踪的准确性。