作者 | 派派星 编辑 | CVHub
点击下方卡片,关注“自动驾驶之心”公众号
ADAS巨卷干货,即可获取
点击进入→自动驾驶之心【BEV感知】技术交流群
Title: MetaBEV: Solving Sensor Failures for BEV Detection and Map Segmentation
Paper: https://arxiv.org/pdf/2304.09801.pdf
Code: https://github.com/ChongjianGE/MetaBEV
导读
自动驾驶车辆中的感知系统通常接收来自多模传感器的输入,例如 LiDAR
和相机。然而,在真实应用中,传感器失效和故障会导致感知系统预测能力下降,从而危及自动驾驶的安全性。
本文提出了一种鲁棒性自动驾驶感知系统框架 MetaBEV
,其可以处理六种传感器损坏和两种传感器缺失的情况。该框架首先通过模态特定编码器处理多个传感器的信号,然后初始化一组稠密的 BEV
查询 (Query
),称为 MetaBEV
。然后,这些查询被 BEV Evolving
解码器迭代处理,该解码器从 LiDAR
、相机或两种模态中选择性地聚合深度特征。更新后的 BEV
表示还用于多个 3D
预测任务。
此外,本文还引入了一种新的 结构,用于缓解多任务联合学习中不同任务的性能下降。我们在 nuScenes
数据集上进行了大量实验,包括 3D
目标检测和 BEV
地图分割任务。实验表明,MetaBEV
在完整/单模态上都比先前的方法表现出更好的性能。如图1所示,在传感器失效的情况下,MetaBEV
的预测结果还是非常接近 GT
,并且显著优于 BEVFusion
。此外,MetaBEV
在规范感知和多任务学习设置中表现出色,在 nuScenes
BEV
地图分割方面实现了 70.4%
的 mIoU
,刷新了现有的最新成果。
创作背景
自动驾驶系统感知周围环境是实现自主驾驶的基本能力。为了提高感知精度,之前的研究在模块设计、训练范式、多模态输入等方面做出了重大努力。其中,多传感器融合策略展示了在实现更强感知能力方面的显著优势,因此在学术界和工业界都受到广泛探索。虽然大部分工作关注单一任务上理想多模态输入的最优性能,但它们无意中忽略了在实际应用中不可避免的传感器失效问题,进而导致了性能下降。
传感器失效问题可以拆解为以下两个挑战:
1. 特征不对齐
现有的融合方法通常利用卷积神经网络和特征级联进行融合。像素级位置相关性被强制赋予,从而导致多模态特征不对齐,特别是在引入几何相关噪声的情况。这个问题可以归因于 CNN
的固有特性,在建模长距离依赖和对输入特征的自适应关注方面的限制。
2. 过度依赖完整模态
以往的工作生成融合的 BEV 特征使用查询索引或通道级融合方式。查询索引方法通常依赖于 LiDAR
和 2D
相机特征进行相互查询,而通道级融合方法则不可避免地涉及元素级操作进行特征合并。这两种融合策略严重依赖完整的模态输入,并在遇到像 LiDAR
缺失或相机缺失等传感器失效问题时导致感知性能下降,因此在实际应用中受到非常大的限制。
对此,本文提出了 MetaBEV
,该方法通过模态任意 (modality-arbitrary
) 和任务不可知学习 (task-agnostic learning
)来解决特征不匹配和完整模态依赖问题,使用统一的鸟瞰图 (BEV
) 表示空间。
此外,我们发现模态相关方法的主要瓶颈在于缺乏设计,使融合模块能够独立地融合不同的模态。因此,本文提出了一个模态任意的 BEV-Evolving
解码器,它利用跨模态注意力将可学习的 MetaBEV
查询与单个相机 BEV
特征、LiDAR-BEV
特征或两者相关联,消除模态缺失而导致的性能瓶颈。
最后,我们应用了一些任务特定的头部 (Head
) 结构来支持不同的 3D
感知预测。MetaBEV
在六个传感器失效和两个传感器缺失情况下都表现出更强的鲁棒性。MetaBEV
还将 结构与其相结合,以缓解 3D
检测和 BEV
地图分割任务在使用相同训练权重时的任务冲突。MetaBEV
在 nuScenes
数据集上实现了最先进的性能。
方法
本文提出了一种新的基准模型,旨在解决 3D
目标检测和 BEV
地图分割任务中的传感器失效问题。与现有的依赖完整传感器输入的感知方法相反,本方法是通过参数化的 meta-BEV
查询 (Query
) 连接不同的模态,并执行跨模态注意力来集成相机和 LiDAR
的语义和几何表示。整个 Pipeline
包括一个多模态特征编码器,带有跨模态可变形注意力的 BEV-Evolving
解码器和任务特定的头部,如图3所示。
BEV Feature Encoder Overview
MetaBEV
在 BEV
空间生成融合的特征,因为其能够将具图像特征和 LiDAR
特征统一表示。此外,BEV
特征的规则性有助于有效地集成各种先进的任务头,这可以使许多感知任务受益。
相机/ LiDAR 到 BEV
我们基于最先进的感知方法 BEVFusion
构建了多模态特征编码器,它采用多视图图像和 LiDAR
点云对作为输入,并通过深度预测和几何投影将相机特征转换为 BEV
空间。
BEV-Evolving Decoder
BEV-Evolving
解码器主要由三个部分组成:跨模态注意力层、自注意力层和即插即用的 块。跨模态注意力层和自注意力层用于融合任意模态,而 块则用于缓解任务冲突。
跨模态注意力层
跨模态注意力层用于实现多模态传感器融合。
该结构首先利用一组密集的 BEV Query
,与相应的位置编码 (Position Embedding
) 一起构成 meta-BEV
,然后将其与相机 BEV
特征和 LiDAR BEV
特征进行相关性计算,从而实现多模态融合。为了提高计算效率,使用了可变形注意力 ,并引入了模型特定的 MLP
层,以处理任意输入。该融合机制可层层递进地执行,实现捕捉来自相机和 LiDAR
模态的语义和几何信息。
自注意力层
自注意力层用于建模查询之间的内部关系。
首先,我们将模态特定的 MLP
“降级" 为统一的 MLP
层。此外,为了充分建模 Query
之间的内部相关性,我们将 meta-BEV
作为 的输入计算自注意力。为了平衡性能与计算效率,在 BEV-Evolving
解码器中只组合了两个自注意力层。
通过建模模态之间和查询之间的关系,最终输出融合的 BEV
特征用于 3D
预测。实验证明,将内部和外部关系相结合的混合设计,能够全面地对融合 BEV
特征进行建模,从而有利于各种任务的有效实现。
块
块用于多任务学习。
该模块采用混合专家 (MoE
) 的方式,在 BEV-Evolving
块中将 MLP
层与 MoE
结合。我们提出了 和 两种方式。
采用路由函数将输入的 token
分配给其所属的专家,并通过 MLP
层对 token
进行处理,E
为专家总容量。在稀疏的 R
下,每个 token
只能路由到前 t
个专家,大量的专家保持不活动。
则采用 E
= 任务数量和 R
= 1 的简化版本,即 token
可以直接通过任务特定的 FFN
网络进行处理,然后通过任务融合网络进行合并。这种方法通过使路由器选择适当的专家,有利于多任务训练和推断,并通过将不同的梯度分配给不同的专家来减轻任务之间的冲突。
传感器失效的应对策略
为了模拟传感器损坏和完全缺失的情况,我们定义了一系列传感器故障类型,包括:
受限LiDAR视野 (
LF
);物体缺失 (
MO
);光束减少 (
BR
);视野缺失 (
VD
);视野噪声 (
VN
);障碍物遮挡 (
OO
)。
此外,我们还通过 Missing Camera (MC)
和 Missing LiDAR (ML)
这两种极端情况评估了 MetaBEV
模型。
转换模态训练
转换模态训练用于 MetaBEV
模型中的多模态数据处理。
MetaBEV
使用 BEV-Evolving
块中的模态特定模块来灵活地处理相机特征、LiDAR
特征或两者的组合。转换模态训练方案可以在训练过程中随机选择上述任意一种模态进行输入,从而模拟真实世界的条件,提高 MetaBEV
在自动驾驶中的实用性。此外,该方案只需要使用一个预训练权重集合即可进行部署。
实验
对于
3D
目标检测任务,MetaBEV
在使用相机模态时取得了出色的性能,并与使用LiDAR
和多模态的最新方法相当。在BEV
地图分割任务中,MetaBEV
实现了70.4%
的mIoU
,创造了新的SOTA
。
MetaBEV
在相机模态下表现优异,在LiDAR
和多模态下表现与最先进的方法相当。此外,MetaBEV
在BEV
地图分割上取得了新的最佳表现,超过了以前的最佳模型和第二优方法。当缺少LiDAR
时,MetaBEV
在NDS
和mAP
上提高了35.5%
和17.7%
,当缺少相机时,MetaBEV
在NDS
上超过BEVFusion
1.7%
和49.5%
的mIoU
。
通过引入
MoE
架构的用于多任务学习,性能都得到了不同程度的提升,其中H-MoE
架构 提升更为显著。
图6展示了
MetaBEV
在各种传感器故障情况下的3D
预测结果。在相机完全缺失的情况下,BEVFusion
几乎无法生成地图分割,而MetaBEV
仍能产生令人满意的结果。此外,对于传感器故障,MetaBEV
比BEVFusion
更加鲁棒。例如,当View Noise
出现时,BEVFusion
往往会忽略一些目标(例如第一行中的车辆和第四行中的行人),而MetaBEV
几乎能够覆盖所有在真实场景中的目标。
总结
本文提出了一种自动驾驶感知新框架 MetaBEV
,旨在解决鸟瞰图 (BEV
) 3D
检测和地图分割中的传感器故障问题。该方法将模态特定层集成到跨模态注意力层中以增强融合过程,不仅在全模态输入上的表现优异,而且 MetaBEV
能够有效缓解传感器信号被损坏或丢失而导致的性能显著下降问题。此外,本文还介绍了使用 来处理任务之间的潜在冲突。
虽然本文采用了可变形注意力来提高效率,但与轻量级解决方案相比,它不可避免地会导致网络参数略微增加。尽管如此,缓解传感器故障的好处非常明显,额外的计算开销可能是可以接受的。
视频课程来了!
自动驾驶之心为大家汇集了毫米波雷达视觉融合、高精地图、BEV感知、传感器标定、传感器部署、自动驾驶协同感知、语义分割、自动驾驶仿真、L4感知、决策规划、轨迹预测等多个方向学习视频,欢迎大家自取(扫码进入学习)
(扫码学习最新视频)
国内首个自动驾驶学习社区
近1000人的交流社区,和20+自动驾驶技术栈学习路线,想要了解更多自动驾驶感知(分类、检测、分割、关键点、车道线、3D目标检测、Occpuancy、多传感器融合、目标跟踪、光流估计、轨迹预测)、自动驾驶定位建图(SLAM、高精地图)、自动驾驶规划控制、领域技术方案、AI模型部署落地实战、行业动态、岗位发布,欢迎扫描下方二维码,加入自动驾驶之心知识星球,这是一个真正有干货的地方,与领域大佬交流入门、学习、工作、跳槽上的各类难题,日常分享论文+代码+视频,期待交流!
【自动驾驶之心】全栈技术交流群
自动驾驶之心是首个自动驾驶开发者社区,聚焦目标检测、语义分割、全景分割、实例分割、关键点检测、车道线、目标跟踪、3D目标检测、BEV感知、多传感器融合、SLAM、光流估计、深度估计、轨迹预测、高精地图、NeRF、规划控制、模型部署落地、自动驾驶仿真测试、产品经理、硬件配置、AI求职交流等方向;
添加汽车人助理微信邀请入群
备注:学校/公司+方向+昵称