自动驾驶合集24

# 开源驾驶仿真平台推荐

沉寂快两年之后,终于开始重新更新知乎。这是对于开源驾驶仿真平台测评 - 2021 的更新、扩展与补充,也是个人工作的介绍和宣传。

本文的详细版本敬请期待 Choose Your Simulator Wisely: A Review on Open-source Simulators for Autonomous Driving。这篇论文中:

  1. 回顾了驾驶仿真器至今为止发展历史,预测了之后可能的发展趋势;

  2. 调研了截止2023年为止具有一定影响力的开源驾驶仿真器的维护状态、功能、性能、适用场景,基于用途,对现有驾驶仿真器进行了分类和推荐;

  3. 论证了目前开源驾驶仿真器中存在的关键问题,主要划分为真实性和仿真性能两大方面,讨论了这些关键问题的重要性,并调研了可能的解决方案。

论文目前处于Early Access状态,完整版估计要下个月才会上线。

动机

博士生涯之初,因为对CV不是那么感兴趣,我强转去研究驾驶决策算法,并一度沉迷强化学习。然而,在验证算法性能之前,找到合适的实验平台和benchmark是非常重要的。而调研过程中,我发现开源驾驶仿真器充斥着各式各样的问题,导致基于仿真验证的驾驶决策算法在投稿时容易因为不具有实用性遭到质疑。近年来,开源的驾驶仿真平台层出不穷,但是由于性能、维护状态等问题,它们不一定有让研究者能更轻松地在这个领域起步,反而是多了一个个需要亲自趟过的坑。

这种情况下,我们有必要对适用于自动驾驶相关任务的仿真器进行较为全面的调研,检查目前仍然值得使用的开源驾驶仿真器还有哪些,并讨论现有开源仿真器中存在的局限,从而有意识地避免由于相关方面的算法验证实验不够充分导致的质疑。另一方面,本文也可以视为对开源驾驶仿真器的开发者的建议,从用户的角度列举许愿了目前呼声较高的待解决的关键问题,有利于开发者们更有针对性地优化自己的仿真器。

历史

驾驶仿真器的发展历史与本篇博客的关联性不大,在此略过。

总览

筛选标准

在回顾仿真器历史和分类仿真器的过程中,由于商业仿真器在某些任务上具有开源仿真器不可比拟的优势——有些领域中甚至是商业仿真器独大的,因此我们必须将它们纳入调研范围。但是在推荐工具和讨论现有不足的环节,考虑本文主要面对的是广大资源体量较小的学术实验室和个人研究者(而且我也没有拿到那么多授权),所以会回退到仅讨论开源仿真器的状态。

因为近年来发布的仿真器数量较多,而我们人手有限,所以在调研过程开始前,设置了几条较为简单粗暴的基准来筛选候选仿真器,若有遗漏还请多多包涵:

  1. 商业仿真器的调研主要基于工业界合作方和专家推荐,需要该仿真器有可访问的官方网站;

  2. 开源仿真器的论文在google scholar上已有大于等于100的引用量;

  3. 开源仿真器的仓库有大于100的star;

考虑到手头资源的局限性,我们没有实际测试各个仿真器的硬件在环测试(Hardware-in-the-loop testing)能力,而是总结了软件所有者在网站/论文中自我声明的支持水平。

目前不同类型的仿真器大致情况如表所示。我们判定维护状态的方式是检查该软件在一年的时间内是否有进行过任何类型的更新,若没有则视为不再积极维护,若最近更新恰好是在一年左右,则标注为问号,一年以内有更新则视为正常维护状态。完整表格请见正式发表的论文。

常见开源/商用仿真器的状态一览

分类

本节对于上表中的仿真器类别定义进行简单的说明,并基于相关任务推荐开源仿真器(在正式论文中有更详细的表格列举不同类型仿真器的具体功能)。

仿真器分类与任务的关联

交通流仿真器

这类仿真器主要用于模拟大规模的车流在交通系统中的运行状态,它们的特征一般包括可以编辑的路网结构、微观交通流,并通常采用模式较为单一的驾驶行为模型操纵车辆。自动驾驶中研究车路协同、车队、联网智能车(Connected and Autonomous Vehicle, CAV) 相关的任务可以用到这类仿真器。这类仿真器中,目前还处于积极维护状态的热门开源仿真器只有SUMO。

传感数据仿真器

这类仿真器的目的是弥补真实数据中缺少极端天气样本,增强感知模型的泛化性。它们追求的是在各类不同光照、能见度、反光率等状态下,通过渲染或学习类方法生成高真实性的光学类感知数据(RGB图像、语义分割、实例分割、甚至是激光雷达)。因为这类仿真器的开发成本高、难度大,而实际收益较低,相关的开源仿真器已经基本停止维护。如果有利用仿真器生成训练/测试感知数据的需求,目前较为合适的选项是综合型仿真器CARLA。

驾驶决策仿真器

驾驶决策仿真器是指用途仅为验证驾驶决策算法的仿真器,它们与综合型仿真器的主要区别在于,为了节约开发成本,这些仿真器往往省略或简化了车辆动力学模型的建模,也无法生成真实的原始感知数据。大部分驾驶决策仿真器只提供了鸟瞰视角的语义分割数据,不过,相应地,在多智能体并行仿真、交通参与物行为模式模拟方面,它们往往有更好的表现。对于模仿学习算法的研究者来说,只要保证环境能够提供理想的环境感知结果,决策模型的运行基本可以脱离环境,所以选择仿真器时会有更大的自由度。除了VDrift,其他积极维护中的仿真环境基本都提供了原生的RL训练支持,所以也可以基于需求选择。MetaDrive作为一款轻量级的、有3D图像界面、可以无限生成交通场景的仿真器,在训练端对端的驾驶决策模型时较为推荐。

车辆动力学仿真器

这类仿真器主要模拟的是车辆的物理运动表现,早早在车辆设计工程中有所应用,因此历史悠久。在自动驾驶相关的任务中,车辆控制通常需要在高真实性的车辆动力学仿真器上验证。这类仿真器需要收集大量实车在各类极限状态下的行为数据,这意味着,如果没有与车辆制造商的紧密合作,想凭空建模一个准确的车辆物理模型是几乎不可能的。这类仿真器的开发也不出意外地被一些老牌商业软件所垄断。开源软件中,机器人学中常用的Gazebo是为数不多可用的选项,而基于Matlab的车辆动力学在学界的实践中也较为常见(工业界的请不要来得瑟了,卑微.jpg)。

综合型仿真器

综合型仿真器是能为多个自动驾驶相关任务提供仿真验证的软件。在Nvidia Drive Sim可能的开源之前,开源软件中,能够独占鳌头的工作,毫无悬念地是CARLA。

说起来也挺好笑的,前几年调研时看好的LGSVL和AirSim都转成Archive模式了,只能说仿真本身是真的难做 ಥ_ಥ

关键问题

目前开源仿真器普遍面临真实性、仿真效率方面的问题。这里提供对关键问题的简单描述,对于可能改进方法的调研请见论文。

真实性-感知数据

感知模块面临一大挑战是算法的泛化性。即使是物体检测这类基础任务,在极端天气时,感知模型的性能也会大幅度下降。通过收集真实数据确实可以解决这个问题,但是极端天气在现实中的出现往往非常随机,想创造相关的大规模数据集对时间和成本要求都很高。有必要充分发挥仿真器的优势,去生成更真实的不同模态的原始感知数据。

其实,在游戏开发领域,已经积累了大量渲染相关的技术基础,如果能在仿真器中应用这些技术自然是最好的。但考虑到游戏的图像渲染未必能在真实性上达到要求,另外一种思路是仿真器提供原生接口,允许接入基于学习的图像生成/风格处理类型的算法,访问三维建模,并直接对其进行处理。

真实性-交通场景

交通场景中主要可以分成几个部分:静态的地图和交通标志、随时间规律变化的交通规则(指红绿灯等)、和随机性强的交通参与物。地图和交通规则主要是在自动构建方面存在瓶颈,影响了仿真器的发展,这个之后会说明。而影响交通场景真实性的主要因素是交通参与物的行为模型。前几年,大部分仿真器中要么提供基于统一规则的行为模型,仅在参数上有一定多样性;要么直接规避掉这个问题,只提供记录回放功能。近年来,InterSim,TBSim的出现反应了相关问题在逐渐得到重视,但仍然需要进一步的研究。

真实性-车辆模型

车辆模型的真实性一直是阻碍基于仿真器验证的自动驾驶系统直接上实车的拦路虎。正如前文提到的,独立的研究者们想要分头解决这个问题是不现实的,理想主义的情况下,要么等待车辆制造商良心发现,公布他们的核心机密,或者大家可以基于手头的实车,共享一些实体个例实验车辆的运行记录,创建符合某种社区规范的公共数据集。事实上,在现实中这两种模式都基本是幻想,这边也就做做梦。

仿真效率-数据准备-格式不一致性

现在很多开源仿真器对于公开轨迹数据集、地图格式的支持还有所不足,导致研究者们反复造轮子,或者为了使用特定的数据集/地图格式而在某几个仿真器之间跳来跳去。这极大地拖慢了仿真数据的准备过程。

仿真效率-数据准备-手动地图标注

目前的地图标注过程中仍有大量手工劳动的成分,OpenDRIVE地图如此,三维高精地图更是如此。这对于批量创造多样化的交通场景来说是一个瓶颈。近年来,快速自动构建地图的算法在大力发展,NeRF基本可以说是无人不晓,但是NeRF在数据格式和粒度方面显然都还无法达到工程要求,需要进一步发展。

仿真效率-运行速度

因为开源仿真器的开发者大部分是在为爱发电,势单力薄,在仿真软件的性能、远程/分布式部署、并行运算等方面显然难以做到尽善尽美。甚至有一部分开源仿真器不一定能够实时运行,想要以现实的多倍速加速训练和测试过程更是相当困难,但这往往是用户需求最强烈的问题,所以有必要进行优化。

仿真效率-迁移-HIL测试

开源仿真器与商业软件的一大差距也在于对HIL测试的支持。从表格中可以看出,有这一功能的开源仿真器寥寥无几。不过这主要是一个工程问题,搭建和维护HIL测试的接口都需要大量人力物力,只能说,用户在进行仿真测试的时候,需要注意被测算法往往距离上实车存在差距,并在描述实验设计时需要注意防范可能的漏洞。

开源仿真器联合宣传

以下是与正文有关的广告环节~

这些描述均为我带着个人感情色彩的一家之言,并没有被任何期刊正式收录,所以请仔细甄别,自行判断信息价值。

Tactics2D

这是我正在开发的驾驶策略仿真器。沿袭我们朴素型决策模型研究者的风格,提供BEV视角的语义分割图作为环境反馈,除此之外,还添加了单线激光雷达的感知结果。

github链接:https://link.zhihu.com/?target=https%3A//github.com/WoodOxen/tactics2d

  1. 疯狂的轨迹数据集兼容:如果大家有对其他数据集的解析需求,欢迎提issue~

  • Argoverse;

  • DLP泊车场景数据集 (这位作者人超好,帮忙写了个自动下载数据的脚本,指路数据的下载网址;

  • INTERACTION

  • LevelX系列(highD, inD, rounD, uniD, exiD):这两天因为数据提供方要求,移除了数据集中的原始数据样本,但我自己标注的地图应该很快会重新放出来

  • NuPlan

  • Waymo Motion Open Dataset(地图处理还有一些bug要修)

  1. 花式地图格式兼容:V1.0.0中会提供对OSM,Lanelet2标注风格OSM,OpenDRIVE的解析支持。基于现在为数不多的用户的反馈,之后计划添加地图&场景导出为SUMO路网的支持。

  2. 泊车/赛车场景生成:自制了一个无限生成泊车场景的RL环境,还基于Gym-box2d优化了一下CarRacing,打算继承维护。

  3. 基于log replay的可交互场景生成:通过加载上述数据集中的场景,随机选取车辆作为决策模型控制的代理,并对其他场景内车辆注入行为模型,在代理车辆影响log轨迹时接管车辆并进行交互。

  4. 高度自定义性:你几乎可以自定义交通场景中的任何部件——交通参与物、地图元素、环境的奖惩函数、新的行为模型导入。我们非常欢迎新功能的加入。目前智能体交互模块还没调试好,打包发布的流程也还在测试,预计在这个月底前正式发布V1.0.0版本。欢迎大家早早关注,加入discord社群来帮忙内测 QAQ。

MetaDrive

这是 @Blackmore 大神主导开发的仿真器,是一份非常nb的工作,唯一的缺点是我的仿真器在某些方面的性能干不过他的,只好灰溜溜去开发其他特色,避免成为竞品(手动狗头)。

github链接:https://link.zhihu.com/?target=https%3A//github.com/metadriverse/metadrive

特色:

  1. 非常轻量级,多智能体模式下仿真效率非常高,我拿2080的显卡,跑30 agent的场景,还能保持20Hz的运行速度。

  2. 无限的交通场景生成:Open-Source Platform for Large-Scale Traffic Scenario Simulation and Modeling

  3. 支持远程部署和并行计算。

  4. 还有很多其他功能,欢迎大家自行探索。

Tactics

显然,这是Tactics2D的兄弟。很不幸的是,它的完成度非常低,在我博士毕业之前,基本不要指望它能发布。   whaosoft aiot http://143ai.com

它的建设目标是一个高真实度但是轻量级的三维仿真器,能够满足对极端天气的传感数据模拟需求,内带拖拽式地图编辑功能(参考city skyline),基于感知数据自动生成3D高精地图(这一部分将由我明年入学的学弟主导进行,可想而知这个仿真器的开发周期),也会提供对于一些冷门类型,如二截式拖挂车的动力学模型仿真。

它的最大特色同样也包括了高度的自定义性,我打算尽可能地保持软件本身的鲁棒性,允许它接入各式各样的渲染后处理模型、交通参与物行为模型、动力学模型。作为理想主义的神经病,我真的在考虑围绕Tactics搭建一个类似Steam创意工坊的平台,允许大家共享各式各样的车辆、标志、道路类型参数——说不定最后你就是通过Steam下载它。

因为这个项目的常驻开发者只有我一个人,前面三年我只设计好了整个系统的架构,搞明白了开发它需要哪些方面的专业知识,功能实现目前还是鸡零狗碎的,只做了极端天气和动力学模型。如果有对这个项目感兴趣的朋友,非常欢迎私信我,大家一起来堆城堡~

gitlab链接:https://link.zhihu.com/?target=https%3A//github.com/WoodOxen/tactics

# LiDAR4D会是LiDAR重建的答案么

尽管神经辐射场(NeRFs)在图像新视角合成(NVS)方面取得了成功,但激光雷达NVS的发展却相对缓慢。之前的方法follow图像的pipeline,但忽略了激光雷达点云的动态特性和大规模重建问题。有鉴于此,我们提出了LiDAR4D,这是一种用于新的时空LiDAR视图合成的LiDAR-only的可微分框架。考虑到稀疏性和大规模特征,进一步设计了一种结合多平面和网格特征的4D混合表示,以实现从粗到细的有效重建。此外引入了从点云导出的几何约束,以提高时序一致性。对于激光雷达点云的真实重建,我们结合了ray-drop概率的全局优化,以保持cross-region模式。在KITTI-360和NuScenes数据集上进行的大量实验证明了我们的方法在实现几何感知和时间一致的动态重建方面的优越性。

开源地址:https://github.com/ispc-lab/LiDAR4D

总结来说,本文的主要贡献如下:

  • 提出了LiDAR4D,这是一种用于新的时空LiDAR视图合成的LiDAR-only的可微分框架,它重建动态驾驶场景并端到端生成逼真的LiDAR点云。

  • 介绍了4D混合神经表示和从点云导出的运动先验,用于几何感知和时间一致的大规模场景重建。

  • 综合实验证明了LiDAR4D在具有挑战性的动态场景重建和新颖视图合成方面的SOTA性能。

相关工作回顾

激光雷达仿真。CARLA等传统仿真器基于物理引擎,可以在手工制作的虚拟环境中通过光线投射生成激光雷达点云。然而,它有多样性限制,并且严重依赖昂贵的3D资产。与真实世界的数据相比,domain gap仍然很大。因此,最近的几项工作通过在仿真之前从真实数据重建场景,进一步缩小了这一差距。LiDARsim重建网格表面表示,并使用神经网络来学习光线下降特性。此外,值得注意的是,还有其他表面重建工作,如NKSR,可以将激光雷达点云转换为网格表示。尽管如此,这些显式重建工作对于在大规模复杂场景中恢复精确的曲面来说是麻烦的,这进一步导致点云合成的精度下降。相反,PCGen直接从点云进行重建,然后以类似光栅化的方式进行渲染并进行第一次峰值平均。尽管它更好地保留了原始信息,但渲染点云仍然相对嘈杂。此外,上述所有这些显式方法仅适用于静态场景。相反,我们的方法通过时空神经辐射场隐式重建连续表示,实现了更高质量的真实点云合成,摆脱了静态重建的局限。

神经辐射场。最近基于神经辐射场的大量研究在新视图合成(NVS)任务中取得了突破和显著成就。基于MLP、体素网格、三平面、向量分解和多级哈希网格的各种神经表示已被充分用于重建和合成。然而,大多数工作都集中在以目标为中心的室内小场景重建上。随后,几部作品逐渐将其扩展到大型户外场景。尽管如此,神经辐射场通常在RGB图像输入的情况下存在几何模糊性。因此,DS-NeRF和DDP-NeRF在提高效率之前引入了深度,URF还利用激光雷达点云来促进重建。在本文中,我们使用新的混合表示和神经激光雷达场来重建激光雷达NVS的大规模场景。

用于激光雷达NVS的NeRF。最近,一些研究开创了基于神经辐射场的激光雷达点云新视图合成的先河,大大超过了传统的仿真方法。其中,NeRF-LiDAR和UniSim需要RGB图像和LiDAR点云作为输入,并在具有光度损失和深度监督的情况下重建驾驶场景。随后,可以通过神经深度渲染生成新的视图LiDAR点云。在仅使用LiDAR的方法中,LiDAR-NeRF和NFL首次提出了可微分LiDAR-NVS框架,该框架同时重建了深度、强度和raydrop概率。然而,这些方法仅限于静态场景重建,并且不能处理诸如移动车辆之类的动态目标。尽管UniSim确实支持动态场景,但它在很大程度上受到3D目标检测的地面实况标记以及重建前背景和动态目标解耦需求的限制。相反,我们的研究专注于仅用于动态场景重建和新颖时空视图合成的激光雷达输入,而无需RGB图像或地面实况标签的帮助。值得注意的是,NFL对激光雷达的详细物理建模做出了重大贡献,如光束发散和二次返回,这与我们的正交,可能有利于所有激光雷达NVS工作。

动态场景重建。大量的研究致力于扩展神经辐射场,以涵盖动态场景重建。一般来说,动态NeRF可以大致分为两组。一种是通过连续变形场将坐标映射到规范空间的可变形神经辐射场。虽然变形场和辐射场的解耦简化了优化,但建立准确的远距离对应仍然具有挑战性。另一个是时空神经场,它将时间视为构建4D时空表示的额外维度输入。因此,可以灵活地将外观、几何结构和运动同时建模为连续的时变函数。之前的大多数工作都集中在室内相对较小的位移上,而自动驾驶场景中的大规模车辆移动则更具挑战性。此外,我们的工作也是首次将动态神经辐射场引入激光雷达NVS任务。

详解LiDAR4D

本节从新型激光雷达视图合成的问题公式和NeRF的初步问题开始。在此之后,提供了我们提出的LiDAR4D框架的详细描述。

问题公式。在动态驾驶场景中,给定收集的激光雷达点云序列,以及相应的传感器姿态和时间戳作为输入。每个单个激光雷达帧Si包含3D坐标x和1D反射强度ρ的K个点。

LiDAR4D概述

根据神经辐射场,我们提出的LiDAR4D将点云场景重建为隐式连续表示。与RGB图像具有光度损失的原始NeRF不同,我们重新定义了基于激光雷达的神经场,称为神经激光雷达场。如图2所示,它专注于对激光雷达点云的几何深度、反射强度和光线下降概率进行建模。对于大规模动态驾驶场景,LiDAR4D将粗分辨率多平面特征与高分辨率哈希网格表示相结合,实现高效有效的重建。然后,我们将其提升到4D,并将时间信息编码引入到新的时空视图合成中。为了确保几何感知和时间一致的结果,我们还引入了从点云导出的显式几何约束。最终,我们预测每条光线的raydrop概率,并使用运行时优化的U-Net执行全局细化,以提高生成真实性。

4D Hybrid Planar-Grid Representation

图3说明了我们提出的新的混合表示如何将4D空间分解为平面和哈希网格特征,这些特征进一步细分为静态和动态特征。与室内小物体的重建不同,大规模自动驾驶场景对特征的表示能力和分辨率提出了更高的要求。然而,TiNeuVox等密集网格表示由于其立方体增长的复杂性,对于大规模场景是不可缩放的。因此,我们遵循K平面,将场景空间分解为多个正交平面中的特征组合,以大幅减少参数量。平面特征可以如下获得:

其中密集网格G将通过散列映射被进一步压缩到有限的存储器中以用于参数缩减。类似地,在三线性插值和级联之前,4D坐标被投影到静态(xyz)和动态(xyt,xzt,yzt)多级哈希网格中,其中使用Hadamard乘积来乘以动态特征。

然而,值得注意的是,纯哈希网格表示仍然存在视觉伪影和噪声重建结果(如图4所示),这阻碍了精确对象几何结构的构建。有鉴于此,我们采用低分辨率的多平面特征进行整体平滑表示,并采用高分辨率的哈希网格来处理更精细的细节,最终在大规模场景重建中实现高精度和高效率。

Scene Flow Prior

为了增强当前4D时空表示的时间一致性,我们进一步引入了用于运动估计的流MLP。它将编码的时空坐标作为输入,并构建从坐标场R4到运动场R3的映射。

Neural LiDAR Fields

Ray-drop Refinement

在激光测距过程中,一部分发射的光线不会反射回传感器,这被称为光线下降特性。事实上,激光雷达的射线降受到各个方面的显著影响,包括距离、表面特性和传感器噪声。与LiDAR-NeRF中一样,ray-drop预测是直接用逐点MLP头来完成的,这本质上是有噪声和不可靠的。为了解决这个问题,我们使用具有残差的U-Net来全局细化ray-drop掩模,并更好地保持跨区域的一致图案。它以LiDAR4D的全射线下降概率、深度和强度预测为输入(与之前的工作不同),并通过二进制交叉熵损失细化最终掩模,如下所示:

Optimization

对于LiDAR4D的优化,总重建损失是深度损失、强度损失、ray-drop损失、流量损失和精细化损失的加权组合,可以形式化为:

实验

LiDAR4D在KITTI-360和NuScenes上展开实验。

限制

尽管LiDAR4D在大量实验中表现出了非凡的性能,但点云的远距离车辆运动和遮挡问题仍然是悬而未决的问题。与静态对象相比,动态对象的重建仍然存在显著差距。此外,前景和背景可能难以很好地分离。此外,基于真实世界的数据集,NVS的定量评估仅限于自车轨迹,不允许新的空间和时间视图合成的解耦。

结论

本文重新审视了现有激光雷达NVS方法的局限性,并提出了一个新的框架来应对三大挑战,即动态重建、大规模场景表征和逼真合成。我们提出的方法LiDAR4D在大量实验中证明了其优越性,实现了大规模动态点云场景的几何感知和时间一致性重建,并生成了更接近真实分布的新时空视图LiDAR点云。我们相信,未来更多的工作将集中在将激光雷达点云与神经辐射场相结合,探索动态场景重建和合成的更多可能性。

# 如何利用transformer有效关联激光雷达-毫米波雷达-视觉特征

自动驾驶的基础任务之一是三维目标检测,而现在许多方法都是基于多传感器融合的方法实现的。那为什么要进行多传感器融合?无论是激光雷达和相机融合,又或者是毫米波雷达和相机融合,其最主要的目的就是利用点云和图像之间的互补联系,从而提高目标检测的准确度。随着Transformer架构在计算机视觉领域的不断应用,基于注意力机制的方法提高了多传感器之间融合的精度。分享的两篇论文便是基于此架构,提出了新颖的融合方式,以更大程度地利用各自模态的有用信息,实现更好的融合。

TransFusion:

主要贡献

激光雷达和相机是自动驾驶中两种重要的三维目标检测传感器,但是在传感器融合上,主要面临着图像条件差导致检测精度较低的问题。基于点的融合方法是将激光雷达和相机通过硬关联(hard association)进行融合,会导致一些问题:a)简单地拼接点云和图像特征,在低质量的图像特征下,检测性能会严重下降;b)寻找稀疏点云和图像的硬关联会浪费高质量的图像特征并且难以对齐。

因此,此论文提出一种激光雷达和相机的融合框架TransFusion,来解决两种传感器之间的关联问题,主要贡献如下:

  • 提出一种基于transformer的激光雷达和相机的3D检测融合模型,对较差的图像质量和传感器未对齐表现出优异的鲁棒性;

  • 为对象查询引入了几个简单而有效的调整,以提高图像融合的初始边界框预测的质量,还设计了一个图像引导查询初始化模块来处理在点云中难以检测到的对象;

  • 不仅在nuScenes实现了先进的三维检测性能,还将模型扩展到三维跟踪任务,并取得了不错的成果。

模块详解

图1 TransFusion的整体框架

为了解决上述的图像条件差以及不同传感器之间的关联问题,提出了一个基于Transformer的融合框架——TransFusion。该模型依赖标准的3D和2D主干网络提取LiDAR BEV特征和图像特征,然后检测头上采用两层transformer解码器组成:第一层解码器利用稀疏的点云生成初始边界框;第二层解码器将第一层的对象查询与图像特征相关联,以获得更好的检测结果。其中还引入了空间调制交叉注意力机制(SMCA)和图像引导的查询初始化策略以提高检测精度。

Query Initialization(查询初始化)

LiDAR-Camera Fusion

如果一个物体只包含少量的激光雷达点时,那么只能获得相同数量的图像特征,浪费了高质量的图像语义信息。所以该论文保留所有的图像特征,使用Transformer中交叉注意机制和自适应的方式进行特征融合,使网络能够自适应地从图像中提取位置和信息。为了缓解LiDAR BEV特征和图像特征来自不同的传感器的空间不对齐问题,设计了一个空间调制交叉注意模块(SMCA),该模块通过围绕每个查询投影的二维中心的二维圆形高斯掩模对交叉注意进行加权。

Image-Guided Query Initialization(图像引导查询初始化)

图2 图像引导查询模块

实验

数据集和指标

nuScenes数据集是一个用于3D检测和跟踪的大规模自动驾驶数据集,包含700、150和150个场景,分别用于训练、验证和测试。每帧包含一个激光雷达点云和六个覆盖360度水平视场的校准图像。对于3D检测,主要指标是平均平均精度(mAP)和nuScenes检测分数(NDS)。mAP是由BEV中心距离而不是3D IoU定义的,最终mAP是通过对10个类别的0.5m, 1m, 2m, 4m的距离阈值进行平均来计算的。NDS是mAP和其他属性度量的综合度量,包括平移、比例、方向、速度和其他方框属性。。

Waymo数据集包括798个用于训练的场景和202个用于验证的场景。官方的指标是mAP和mAPH (mAP按航向精度加权)。mAP和mAPH是基于3D IoU阈值定义的,车辆为0.7,行人和骑自行车者为0.5。这些指标被进一步分解为两个难度级别:LEVEL1用于超过5个激光雷达点的边界框,LEVEL2用于至少有一个激光雷达点的边界框。与nuScenes的360度摄像头不同,Waymo的摄像头只能覆盖水平方向的250度左右。

训练 在nuScenes数据集上,使用DLA34作为图像的2D骨干网络并冻结其权重,将图像大小设置为448×800;选择VoxelNet作为激光雷达的3D骨干网络。训练过程分成两个阶段:第一阶段仅以激光雷达数据作为输入,以第一层解码器和FFN前馈网络训练3D骨干20次,产生初始的3D边界框预测;第二阶段对LiDAR-Camera融合和图像引导查询初始化模块进行6次训练。左图是用于初始边界框预测的transformer解码器层架构;右图是用于LiDAR-Camera融合的transformer解码器层架构。

图3 解码器层设计

与最先进方法比较

首先比较TransFusion和其他SOTA方法在3D目标检测任务的性能,如下表1所示的是在nuScenes测试集中的结果,可以看到该方法已经达到了当时的最佳性能(mAP为68.9%,NDS为71.7%)。而TransFusion-L是仅使用激光雷达进行检测的,其检测的性能明显优于先前的单模态检测方法,甚于超过了一些多模态的方法,这主要是由于新的关联机制和查询初始化策略。而在表2中则是展示了在Waymo验证集上LEVEL 2 mAPH的结果。

对恶劣图像条件的鲁棒性

以TransFusion-L为基准,设计不同的融合框架来验证鲁棒性。其中三种融合框架分别是逐点拼接融合激光雷达和图像特征(CC)、点增强融合策略(PA)和TransFusion。如表3中显示,将nuScenes数据集划分成白天和黑夜,TransFusion的方法在夜间将会带来更大的性能提升。在推理过程中将图像的特征设置为零,以达到在每一帧随机丢弃若干图像的效果,那么在表4中可以看到,在推理过程中某些图像不可用时,检测的性能会显著下降,其中CC和PA的mAP分别下降23.8%和17.2%,而TransFusion仍保持在61.7%。传感器未校准的情况也会大大影响3D目标检测的性能,实验设置从相机到激光雷达的变换矩阵中随机添加平移偏移量,如图4所示,当两个传感器偏离1m时,TransFusion的mAP仅下降0.49%,而PA和CC的mAP分别下降2.33%和2.85%。

消融实验

由表5 d)-f)的结果可看出,在没有进行查询初始化的情况下,检测的性能下降很多,虽然增加训练轮数和解码器层数可以提高性能,但是仍旧达不到理想效果,这也从侧面证明了所提出来的初始化查询策略能够减小网络层数。而如表6所示,图像特征融合和图像引导查询初始化分别带来4.8%和1.6%的mAP增益。在表7中,通过在不同范围内精度的比较,TransFusion与仅激光雷达的检测相比,在难以检测的物体或者遥远区域的检测的性能都得到了提升。

结论

设计了一个有效且稳健的基于Transformer的激光雷达相机3D检测框架,该框架具有软关联机制,可以自适应地确定应该从图像中获取的位置和信息。TransFusion在nuScenes检测和跟踪排行榜上达到最新的最先进的结果,并在Waymo检测基准上显示了具有竞争力的结果。大量的消融实验证明了该方法对较差图像条件的鲁棒性。

DeepInteraction:

主要贡献:

主要解决的问题是现有的多模态融合策略忽略了特定于模态的有用信息,最终阻碍了模型的性能。点云在低分辨率下提供必要的定位和几何信息,图像在高分辨率下提供丰富的外观信息,因此跨模态的信息融合对于增强3D目标目标检测性能尤为重要。现有的融合模块如图1(a)所示,将两个模态的信息整合到一个统一的网络空间中,但是这样做会使得部分信息无法融合到统一的表示里,降低了一部分特定于模态的表示优势。为了克服上述限制,文章提出了一种新的模态交互模块(图1(b)),其关键思想是学习并维护两种特定于模态的表示,从而实现模态间的交互。主要贡献如下:

  • 提出了一种新的多模态三维目标检测的模态交互策略,旨在解决以前模态融合策略在每个模态中丢失有用信息的基本限制;

  • 设计了一个带有多模态特征交互编码器和多模态特征预测交互解码器的DeepInteraction架构。

图1 不同的融合策略

模块详解

多模态表征交互编码器 将编码器定制为多输入多输出(MIMO)结构:将激光雷达和相机主干独立提取的两个模态特定场景信息作为输入,并生成两个增强后的特征信息。每一层编码器都包括:i)多模态特征交互(MMRI);ii)模态内特征学习;iii)表征集成。

图2 多模态表征交互模块

图3 多模态预测交互模块

实验

数据集和指标同TransFusion的nuScenes数据集部分。

实验细节 图像的主干网络是ResNet50,为了节省计算成本,在输入网络之前将输入图像重新调整为原始大小的1/2,并在训练时冻结图像分支的权重。体素大小设置为(0.075m,0.075m,0.2m),检测范围设为X轴和Y轴是[-54m,54m],Z轴是[-5m,3m],设计2层编码器层和5层级联的解码器层。另外还设置了两种在线提交测试模型:测试时间增加(TTA)和模型集成,将两个设置分别称为DeepInteraction-large和DeepInteraction-e。其中DeepInteraction-large使用Swin-Tiny作为图像骨干网络,并且将激光雷达骨干网络中卷积块的通道数量增加一倍,体素大小设置为[0.5m,0.5m,0.2m],使用双向翻转和旋转偏航角度[0°,±6.25°,±12.5°]以增加测试时间。DeepInteraction-e集成了多个DeepInteraction-large模型,输入的激光雷达BEV网格尺寸为[0.5m,0.5m]和[1.5m,1.5m]。

根据TransFusion的配置进行数据增强:使用范围为[-π/4,π/4]的随机旋转,随机缩放系数为[0.9,1.1],标准差为0.5的三轴随机平移和随机水平翻转,还在CBGS中使用类平衡重采样来平衡nuScenes的类分布。和TransFusion一样采用两阶段训练的方法,以TransFusion-L作为仅激光雷达训练的基线。使用单周期学习率策略的Adam优化器,最大学习率1×10−3,权衰减0.01,动量0.85 ~ 0.95,遵循CBGS。激光雷达基线训练为20轮,激光雷达图像融合为6轮,批量大小为16个,使用8个NVIDIA V100 GPU进行训练。

与最先进方法比较

表1 在nuScenes测试集上与最先进方法的比较

如表1所示,DeepInteraction在所有设置下都实现了最先进的性能。而在表2中分别比较了在NVIDIA V100、A6000和A100上测试的推理速度。可以看到,在取得高性能的前提下,仍旧保持着较高的推理速度,验证了该方法在检测性能和推理速度之间实现了优越权衡。

表2 推理速度比较

消融实验

解码器的消融实验

在表3(a)中比较了多模态交互预测解码器和DETR解码器层的设计,并且使用了混合设计:使用普通的DETR解码器层来聚合激光雷达表示中的特征,使用多模态交互预测解码器(MMPI)来聚合图像表示中的特征(第二行)。MMPI明显优于DETR,提高了1.3% mAP和1.0% NDS,具有设计上的组合灵活性。表3(c)进一步探究了不同的解码器层数对于检测性能的影响,可以发现增加到5层解码器时性能是不断提升的。最后还比较了训练和测试时采用的查询数的不同组合,在不同的选择下,性能上稳定的,但以200/300作为训练/测试的最佳设置。

表3 解码器的消融实验

编码器的消融实验

从表4(a)中可以观察到:(1)与IML相比,多模态表征交互编码器(MMRI)可以显著提高性能;(2) MMRI和IML可以很好地协同工作以进一步提高性能。从表4(b)中可以看出,堆叠编码器层用于迭代MMRI是有益的。

表4 编码器的消融实验

激光雷达骨干网络的消融实验

使用两种不同的激光雷达骨干网络:PointPillar和VoxelNet来检查框架的一般性。对于PointPillars,将体素大小设置为(0.2m, 0.2m),同时保持与DeepInteraction-base相同的其余设置。由于提出的多模态交互策略,DeepInteraction在使用任何一种骨干网时都比仅使用lidar基线表现出一致的改进(基于体素的骨干网提高5.5% mAP,基于支柱的骨干网提高4.4% mAP)。这体现了DeepInteraction在不同点云编码器中的通用性。

表5不同激光雷达主干网的评估

结论

在这项工作中,提出了一种新的3D目标检测方法DeepInteraction,用于探索固有的多模态互补性质。这一关键思想是维持两种特定于模态的表征,并在它们之间建立表征学习和预测解码的相互作用。该策略是专门为解决现有单侧融合方法的基本限制而设计的,即由于其辅助源角色处理,图像表示未得到充分利用。

两篇论文的总结:

以上的两篇论文均是基于激光雷达和相机融合的三维目标检测,从DeepInteraction中也可以看到它是借鉴了TransFusion的进一步工作。从这两篇论文中可以总结出多传感器融合的一个方向,就是探究更高效的动态融合方式,以关注到更多不同模态的有效信息。当然了,这一切建立在两种模态均有着高质量的信息。多模态融合在未来的自动驾驶、智能机器人等领域都会有很重要的应用,随着不同模态提取的信息逐渐丰富起来,我们能够利用到的信息将会越来越多,那么如何将这些数据更高效的运用起来也是一个值得思考的问题。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值