自动驾驶可能是目前AI领域最让人兴奋的应用领域,近几年计算机视觉顶会出现了大量自动驾驶相关论文。激光雷达是自动驾驶车辆最常见的传感器,围绕点云数据的3D目标检测与多目标跟踪已经成为一大热门方向。
本文介绍一篇 ICCV 2021 收录的3D多目标跟踪论文:Exploring Simple 3D Multi-Object Tracking for Autonomous Driving ,不同于常见的 tracking-by-detection 类方法,该文探索出了一种端到端的简单且精确的3D多目标跟踪范式。这种端到端的新方法,有望引领该领域的新研究。
作者来自业内知名的自动驾驶公司轻舟智航、美国约翰霍普金斯大学
论文链接:https://arxiv.org/pdf/2108.10312.pdf
0
动机
3D多目标跟踪是自动驾驶感知模块的关键技术,因而在近年来吸引了学术界和产业界的持续关注。
在2D多目标跟踪领域中,tracking-by-detection是常用的跟踪方法,该方法首先在每一帧上得到检测框,然后匹配帧间的检测框来完成跟踪任务。基于这种方法,很多学者在研究如何更好地利用运动信息、外观特征来定义帧间检测框的匹配度。
对于3D多目标跟踪领域,tracking-by-detection的方法更是居于主导地位。最近有一些论文研究如何基于已有的3D目标检测算法通过优化数据关联(data association)来提高跟踪器性能,比如AB3DMOT、CenterPoint、PnPNet等。
基于tracking-by-detection方法最大的弊端是,启发式匹配步骤(heuristic matching step)通常需要人工设计匹配规则和调试相关参数。这在实际的工程应用中带来了诸多困难:
-
人工设计的规则受限于工程师的领域和先验知识,其效果往往不如基于数据驱动的方法好,后者可以通过机器学习从大量数据中自主学习发掘规律;
-
调试匹配规则参数时,往往费时费力。比如在无人驾驶场景中需要检测和跟踪多种类别目标(车、行人、两轮车等等),手动调参时,需要针对每一类别进行特定调试。
-
传统方法可扩展性比较差,容易重复劳动——这个数据场景调好的参数,可能在另一个数据场景效果不佳,需要重新调试。
论文标题中的“simple”即围绕以上三点,体现了轻舟智航非常注重底层技术能力,用“造火箭”替代“搭梯子” ,真正解决工程落地问题。
作者尝试在点云3D目标跟踪任务中去除启发式匹配步骤,如下图所示:
作者提出的方法SimTrack,可以替换传统的tracking-by-detection模式,用于点云3D目标一体化检测和跟踪。该方法可以很方便地与基于pillar或者voxel的3D目标检测算法结合。SimTrack将目标关联、dead object清除、new-born object检测集成在了一起,降低了跟踪系统的复杂程度。
01
总体结构
给定原始点云数据,首先使用pillar或voxel方法将其体素化(voxelize),然后使用PointNet提取每个pillar或voxel的特征,在backbone中使用2D或3D卷积操作得到鸟瞰图特征。在detection head中使用centerness map上的位置表示目标所在位置,除了输出centerness map外,detection head还输出目标尺寸和朝向等信息。
算法的总体结构如下图所示:
网络的输入端为多帧点云序列,记作,其中表示一帧无序(orderless)点云,表示坐标,表示反射率(reflectance),表示时间。
网络输出3个分支,其一为hybrid-time centerness map分支,用于检测目标在输入的多个点云中首次出现的位置;以方便读取目标的跟踪身份(tracking identity);其二为motion updating分支,预测目标在输入的多个点云中的运动偏移量,用来把目标由首次出现的位置更新到当前所在位置;其三为回归分支,预测目标的其他属性,比如尺寸和朝向等。
在推理时,首先将上一时刻推理得到的 updated centerness map 通过自车位姿(ego-motion)转换到当前坐标系下,然后将其与当前时刻的hybrid-time centerness map 融合,并进行阈值判断以去掉dead object;其次从上一时刻的updated centerness map读取跟踪身份到当前时刻的hybrid-time centerness map;最后使用motion updating分支输出的motion信息更新当前目标的位置,得到。
结合回归分支输出的目标属性信息,得到最终结果,如上图最右侧所示。在上图右侧框中,ID为1的目标表示dead object,它有比较低的置信度;ID为2~4的目标为检测并跟踪到的目标,ID为5的目标为新出现的目标(new-born object)。
在推理时,对于初始时刻的点云,只将该帧点云单独作为算法的输入,得到检测结果用于初始化 。
推理时的算法流程如下图所示:
02
Hybrid-Time Centerness Map
hybrid-time centerness map能够关联前一时刻与当前时刻的检测信息,同时还能滤除消失的目标,也可以检测新出现的目标。
使用第时刻和第时刻的点云数据作为网络输入,要求hybrid-time centerness map能够表示目标在输入点云序列中第一次出现的位置,使用中心点表示目标物体。
令和分别表示第帧和第帧目标位置的ground truth。
对于不同类型的目标,hybrid-time centerness map真值的构造策略如下:
-
对于在第时刻和第时刻均出现的目标,使用目标在时刻的位置构造centerness map真值。
-
对于在第时刻出现,但在第时刻消失的目标,将其看作负样本。
-
对于在第时刻没有,但在第时刻出现的目标,使用目标在第时刻的位置构造centerness map真值。
hybrid-time centerness map 结合下一节所描述的motion updating分支,可以直接关联当前时刻的检测结果和前一时刻的检测结果,从而构建起目标的跟踪身份。
03
Motion Updating Branch
为了达到跟踪目的,需要引入motion updating分支来估计输入多帧点云中目标的移动位置。令表示目标的中心点坐标,motion updating 分支用来回归第帧和第帧目标的位置偏差:。将该分支的结果作用于hybrid-time centerness map更新目标位置。
04
其他回归分支
其他回归分支用于输出目标高度、尺寸、朝向。对于朝向,在回归时使用。
05
损失函数
对于hybrid-time centerness map,使用focal loss,表示如下:
上式中的和为focal loss超参数,表示目标数量,和分别表示hybrid-time centerness map的真值和预测值。
对于motion updating 分支,使用标准的损失,表示如下:
上式中的表示motion map的真值,表示预测值。
对于其他回归分支,同样使用标准的损失,表示如下:
上式中的表示回归真值,表示预测值。
总体的损失函数为:
上式中的、和为用于控制loss重要程度的平衡系数。
06
实验
在实验时,使用PointPillars作为基于pillar的backbone,使用VoxelNet作为基于voxel的backbone,并分别在nuScenes和Waymo数据集上评估算法。
在nuScenes验证集和测试集上的测试结果如下表所示:
在Waymo验证集上的测试结果如下表所示:
在nuScenes验证集上可视化的跟踪过程如下图所示:
07
总结
这篇文章并没有使用传统的tracking-by-detection方法用于激光雷达点云3D多目标跟踪,而是构造了一个新的一体化检测和跟踪模型,从而避免了tracking-by-detection中启发式匹配步骤的手工设计和相关众多超参数的调试,保证了跟踪器的泛化性,提高了工程应用中开发效率。
相信这种端到端的3D多目标跟踪方法,会越来越受到业界的关注。这一方法的提出,也是轻舟智航打造“自动驾驶超级工厂”这一技术思路的重要体现。
这家公司一直很注重底层技术能力的搭建,目标是打造高度自动化的“自动驾驶超级工厂”,为了达到高度自动化的目标,其在今年的一篇CVPR论文中就开创性地将自监督学习应用在激光雷达感知方向,减少了对人工标注的依赖。
在规划控制技术中,轻舟智航则将传统机器人学技术和机器学习技术结合,既增强了人工智能技术的可解释性,又减少了工程师反复手动调参的操作,把工程师时间转化为机器时间。
他们目前正面向全球招聘研发工程师,有意愿投递简历的,这里送上内推码一枚——NTAF7g9 (点击阅读原文投递简历)
【轻舟智航火热招聘中】
轻舟智航(QCraft)是世界前沿的无人驾驶通用方案公司,在苏州、北京、深圳、武汉等多个城市部署落地了龙舟系列无人驾驶车,覆盖多类车型。首款无人驾驶小巴——龙舟ONE已成为国内布局城市最多的公开道路无人小巴。
轻舟智航创始团队均拥有近十年自动驾驶行业经验,核心团队成员来自Waymo、Tesla、Nvidia、Facebook等顶级公司。
如果你也想从乘客变为无人驾驶的缔造者,就快来加入 QCraft 吧!
本文仅做学术分享,如有侵权,请联系删文。
下载1
在「3D视觉工坊」公众号后台回复:3D视觉,即可下载 3D视觉相关资料干货,涉及相机标定、三维重建、立体视觉、SLAM、深度学习、点云后处理、多视图几何等方向。
下载2
在「3D视觉工坊」公众号后台回复:3D视觉github资源汇总,即可下载包括结构光、标定源码、缺陷检测源码、深度估计与深度补全源码、点云处理相关源码、立体匹配源码、单目、双目3D检测、基于点云的3D检测、6D姿态估计源码汇总等。
下载3
在「3D视觉工坊」公众号后台回复:相机标定,即可下载独家相机标定学习课件与视频网址;后台回复:立体匹配,即可下载独家立体匹配学习课件与视频网址。
重磅!3DCVer-学术论文写作投稿 交流群已成立
扫码添加小助手微信,可申请加入3D视觉工坊-学术论文写作与投稿 微信交流群,旨在交流顶会、顶刊、SCI、EI等写作与投稿事宜。
同时也可申请加入我们的细分方向交流群,目前主要有3D视觉、CV&深度学习、SLAM、三维重建、点云后处理、自动驾驶、多传感器融合、CV入门、三维测量、VR/AR、3D人脸识别、医疗影像、缺陷检测、行人重识别、目标跟踪、视觉产品落地、视觉竞赛、车牌识别、硬件选型、学术交流、求职交流、ORB-SLAM系列源码交流、深度估计等微信群。
一定要备注:研究方向+学校/公司+昵称,例如:”3D视觉 + 上海交大 + 静静“。请按照格式备注,可快速被通过且邀请进群。原创投稿也请联系。
▲长按加微信群或投稿
▲长按关注公众号
3D视觉从入门到精通知识星球:针对3D视觉领域的视频课程(三维重建系列、三维点云系列、结构光系列、手眼标定、相机标定、orb-slam3等视频课程)、知识点汇总、入门进阶学习路线、最新paper分享、疑问解答五个方面进行深耕,更有各类大厂的算法工程人员进行技术指导。与此同时,星球将联合知名企业发布3D视觉相关算法开发岗位以及项目对接信息,打造成集技术与就业为一体的铁杆粉丝聚集区,近2000星球成员为创造更好的AI世界共同进步,知识星球入口:
学习3D视觉核心技术,扫描查看介绍,3天内无条件退款
圈里有高质量教程资料、可答疑解惑、助你高效解决问题
觉得有用,麻烦给个赞和在看~