用于端到端自动驾驶的多模态融合transformer
代码链接:端到端自动驾驶的多模态融合transformer
论文链接::https://arxiv.org/abs/2104.09224
摘要:如何将互补传感器的表示集成到自动驾驶中?基于几何的传感器融合已经显示出对物体检测和运动预测等感知任务的巨大希望。然而,对于实际驾驶任务,3D场景的全局上下文是关键(全局上下文是指不同对象之间的语义关系?),例如交通灯状态的变化可以影响几何上远离该交通灯的车辆的行为。因此,单独的几何可能不足以有效地融合端到端驾驶模型中的表示。在这项工作中,我们证明了基于现有传感器融合方法的模仿学习策略在高密度动态智能体和复杂场景的存在下执行不足,这需要全局上下文推理,例如处理在不受控制的交叉口处从多个方向迎面而来的交通。因此,我们提出了一种新型多模态融合变换器TransFuser,通过使用注意力机制整合图像和激光雷达表示。我们使用卡拉城市驾驶模拟器在涉及复杂情景的城市环境中实验验证了我们的方法的有效性。与基于几何的融合相比,我们的方法实现了最先进的驾驶性能,同时将碰撞减少了76%。
介绍
仅图像[16,8,41,3,42,64,53]和仅雷达的[46,23]方法最近显示了端到端驾驶的令人印象深刻的结果。然而,这些研究主要集中在有限的动态智能体场景中,并假设场景中其他智能体的行为接近理想。随着最近CARLA[21]版本中引入了不利场景,例如行驶红灯的车辆,不受控制的四路交叉口,或从遮挡区域出现的行人在随机位置穿过道路,仅图像方法表现不令人满意(表1),因为它们缺乏场景的3D信息。**虽然LiDAR由3D信息组成,但LiDAR测量通常非常稀疏(特别是在远距离处),需要额外的传感器来捕获LiDAR扫描中缺失的信息,例如交通灯状态。
虽然大多数现有的端到端驾驶方法都专注于单一输入模式,但自动驾驶系统通常配备摄像机和激光雷达传感器[21,47,25,59,17,26,48,1,62]。这就提出了一个重要问题:我们能否整合这两种模式的表示,以利用它们在自动驾驶方面的互补优势?我们应该在多大程度上独立处理不同的模式,我们应该采用什么样的融合机制来获得最大的效益?先前的研究工作主要驾驶的感知方面,例如2D和3D物体检测[22,12,66,9,44,31,34,61,33,37],运动预测[22,36,5,35,63,6,19,38,32,9]和深度估计[24,60,61,33]。这些方法专注于学习捕获3D场景的几何和语义信息的状态表示。它们主要基于图像空间和不同激光雷达投影空间之间的几何特征投影,例如鸟瞰图(BEV)[22,12,66,9,44,31,34,61,33]和俯视图(RV)[39,37,22,38,9,51]。信息通常从投影的2D或3D空间中每个特征周围的局部邻域聚合。
虽然这些方法比仅有图像的方法要好,但我们观察到其结构设计中的局部假设妨碍了它们在复杂城市场景中的表现(表1a)。例如,在交叉口处理交通时,自我车辆需要考虑多个动态智能体和交通灯之间的相互作用(图1)。虽然深度卷积网络可用于捕获单个模态内的全局上下文,但将它们扩展到多个模态或特征对之间的模型交互并不重要。为了克服这些限制,我们用transformer的注意力机制[54]将关于3D场景的全局上下文推理直接集成到不同模态的特征提取层中。我们考虑单视图图像和激光雷达输入,因为它们彼此互补,我们的重点是整合来自不同类型模态的表示。我们称之为最终的modelTransFuser,并将其集成到专为端到端驾驶而设计的自回归路点预测框架(图2)中。
贡献:(1)我们证明,基于现有传感器融合方法的模仿学习策略无法处理城市驾驶中的复杂情景,例如交叉口处的无保护转弯或从遮挡区域出现的行人。(2) 我们提出了一种新颖的多模态融合变换器(TransFuser),将3D场景的全局上下文合并到不同模态的特征提取层中。(3) 我们在涉及对抗情景(什么是对抗情景?)的复杂城市环境中通过实验验证了我们的方法,并实现了最先进的性能。
相关工作
多模态自主驾驶:最近的端到端驾驶多模态方法[58,65,51,3]表明,用深度和语义信息补充RGB图像有可能提高驾驶性能。Xiao等[58]从相机早期,中期和后期融合以及深度模态的角度探讨了RGBD的输入和观察的关键。Behl等[3]和Zhou等[65]证明了语义和深度作为驾驶的显式中间表示的有效性。在这项工作中,我们专注于图像和激光雷达输入,因为它们在表示场景方面是互补的,并且在自动驾驶系统中很容易获得。在这方面,Sobh等人[51]利用激光雷达和图像模态的后期融合架构,其中每个输入被编码在单独的流中,然后连接在一起。然而,我们观察到这种融合机制由于无法解释多种动态因素的行为而在复杂的城市情景中遭受高违规率(表1b)。因此,我们提出了一种新颖的多模态融合变换器,该变换器可有效地在特征编码期间的多个阶段集成来自不同模态的信息,从而改进后期融合方法的局限性。
用于物体检测和运动预测的传感器融合方法:大多数传感器融合工作考虑感知任务,例如物体检测[22,12,66,7,44,31,34,61,33,37]和运动预测[36,5,35,63,6,19,38]。它们在多视图LiDAR(例如鸟视图(BEV)和俯视图(RV))上操作,或者通过将LiDAR特征投影到图像空间或将图像特征投影到BEV或RV空间中来补充来自LiDAR的深度信息的相机输入。最接近我们的方法是ContFuse[34],它在图像和LiDAR BEV特征之间执行多尺度密集特征融合。对于LiDAR-BEV表示中的每个像素,它计算3D空间中局部邻域中的最近点,将这些相邻点投影到图像空间中以获得相应的图像特征,使用连续卷积聚合这些特征,并将它们与LiDAR-BEV功能。其他基于投影的融合方法遵循类似的趋势并且来自2D或3D空间中的局部邻域的聚合信息。然而,通过这些方法学习的状态表示是不够的,因为它们没有捕获3D场景的全局上下文,这对于在对抗场景中的安全控制是重要的。为了证明这一点,我们实施了一个基于多尺度几何的融合机制,受到[34,33]的启发,涉及图像到激光雷达和激光雷达到图像特征融合,用于在卡拉端到端驾驶并观察高复杂城市环境中的违规率(表1b)。为了克服这个限制,我们提出了一种基于注意力的多模态融合transformer,它结合了全局上下文推理并实现了卓越的驾驶性能。
自动驾驶的注意力:在车道更换驾驶[13],物体检测[11,32]和运动预测[32,50,49,28,15,30,29,56]的背景下,已经探索了注意力。Chen等[11]对学习的语义图采用了循环注意机制来预测车辆控制。Li等人[32]利用注意力通过将transformer模块集成到递归神经网络中来捕获参与者之间的时间和空间依赖性。SA-NMP[56]是一项并行工作,它学习从2D CNN提取的特征的注意掩模,对LiDAR BEV投影和HD地图进行操作,专注于动态智能体以进行安全的运动计划。Chen等人[13]利用分层深度强化学习框架中的注意力,专注于TORCS赛车模拟器中车道更换的周围车辆。它们结合了空间注意模块来检测图像中最相关的区域,并结合时间注意模块来加权不同的时间步长图像输入,从而使车道变化更平滑。然而,这些方法都没有考虑多种模态或编码3D场景的全局环境,这对于安全导航对抗场景是必需的。相比之下,我们展示了在挑战城市驾驶情景的不同模式之间进行特征融合的注意力的有效性。
方法
在这项工作中,我们提出了一种端到端驾驶架构(图2),其中包括两个主要组件:(1)用于集成来自多种模态(单视图图像和激光雷达)信息的多模态融合transformer,以及(2))自回归路点预测网络。以下部分详细介绍了我们的问题设置,输入和输出参数化以及模型的每个组件。
问题设置
我们考虑在城市环境中进行点对点导航的任务[23,45,46,8,16],其目标是完成给定的路线,同时安全地响应其他动态智能体并遵循交通规则。
模仿学习:我在这就不展开了,对我来说不重要。
全局规划:
输入输出参数设置
输入表示:在[45,23]之后,我们将LiDAR点云转换为具有固定分辨率的2D BEV网格上的2箱直方图。我们考虑在前32分钟内和16分钟内的点,从而包括32m×32m的BEV网格。我们将网格划分为0.125m×0.125m的块,结果分辨率为256×256像素。对于直方图,我们将高度维度离散为2个分箱,表示地面上/下方和上方的点。这导致尺寸为256×256像素的双通道伪图像。对于RGB输入,我们考虑FOV为100度的前置摄像机◦. 我们提取的前图像分辨率为400x300像素,我们裁剪到256x256,以消除径向失真的边缘。
输出表示:我们预测BEV空间中自我车辆的未来轨迹,以自我车辆的当前坐标系为中心。轨迹由2D路点序列表示。我们使用T=4,这是我们的逆动力学模型所需的默认路点数。
多模态融合transformer
我们的主要思想是利用transformer的注意力机制[54],将图像和激光雷达模态的纳入其中,因为它们具有互补性。transformer体系结构将由离散令牌组成的序列作为输入,每个令牌由特征向量表示。特征向量由位置编码补充以结合位置感应偏差。形式上,我们将输入序列表示为Fin∈ RN×Df,其中序列和每个令牌中的令牌数量由维度Df的特征向量表示。transformer使用线性投影来计算一组查询,键和值(Q,K and V),
图2:我们将单视图RGB图像和LiDAR BEV表示(第3.2节)视为我们的多模态融合transformer(TransFuser)的输入,该网络使用多个transformer模块来融合两种模态之间的中间特征映射。这种融合在整个特征提取器中以多个分辨率(64×64,32×32,16×16和8×8)应用,导致从图像和LiDAR BEV流输出的512维特征向量,其通过元素方式组合总和。这个512维特征向量构成了对3D场景的全局上下文进行编码的环境的紧凑表示。然后用MLP处理,然后将其传递给自动回归的路点预测网络。我们使用单层GRU,然后是线性层,其处于隐藏状态并预测差分自我车辆路线点{δwt}Tt=1,其在自我车辆的当前坐标系中表示。
4.实验
4.1实验结果
4.2注意力特征图可视化(有点意思!!!)
4.3 消融研究
在我们的默认配置中,我们为每个transformer模块使用每个分辨率1个transformer,8个注意层和4个注意头,并以4个分辨率进行融合。在这个实验中,我们在Town05短期评估设置中展示了多个尺度,注意层,共享或分离变压器和位置嵌入的消融。
多尺度融合是否必不可少?我们在1到4的尺度上显示结果,其中1表示在最后一个ResNet层中分辨率为8×8的融合,2表示在最后一个和倒数第二个ResNet层中分别为8×8和16×16的融合,并且类似于尺度3和4。当比例从4减少到1时,我们观察到整体性能下降(表2)。发生这种情况是因为ResNet中的不同卷积层学习有关输入的不同类型的特征,因此,多尺度融合可以有效地整合来自不同模态的这些特征。
是否需要多个transformer?我们测试了一个模型版本,该模型使用transformer的共享参数(表2中的共享transformer)并观察到DS的显着下降。这是直观的,因为ResNet中的不同卷积层学习不同类型的特征,而每个transformer必须专注于在每个分辨率下融合不同类型的功能。
是否需要多个注意层?我们在表2中报告TransFuser的1层和4层变体的结果。我们观察到,尽管1层变体的RC非常高,但其DS却明显较低。但是,当我们将注意力层数增加到4时,即使RC降低18%,该模型也可以维持其DS。这表明该模型在附加注意层时变得更加谨慎(什么意思?)。随着我们在默认配置中进一步增加到8,DS也会增加。这表明,多个注意层导致谨慎的驾驶因素。
**位置嵌入是否有用?**直观地说,我们期望可学习的位置嵌入有帮助,因为它对动态智能体之间的空间依赖性建模对于安全驾驶至关重要。这在表2中确实很明显,我们观察到在没有位置嵌入的情况下DS显著下降,即使RC增加了25%。
5.结论
在这项工作中,我们证明了基于现有传感器融合方法的IL策略在复杂的驾驶场景中遭受高违规率的困扰。为了克服这个限制,我们提出了一种新颖的多模态融合transformer(TransFuser),用于集成不同模态的表示。TransFuser使用注意力来捕捉全局3D场景环境,并专注于动态智能体和交通灯,从而在CARLA上实现最先进的性能。鉴于我们的方法灵活且通用,使用其他传感器(例如radar)进一步探索它或将其应用于其他体现的AI任务将是有趣的。