【CV论文精读】【BEV感知】BEVFormer:通过时空Transformer学习多摄像机图像的鸟瞰图表示

【CV论文精读】BEVFormer Learning Bird’s-Eye-View Representation from Multi-Camera Images via Spatiotemporal Transformers
BEVFormer:通过时空Transformer学习多摄像机图像的鸟瞰图表示
在这里插入图片描述
在这里插入图片描述
图1:我们提出了BEVFormer,这是一种自动驾驶的范式,它应用Transformer model和时间结构从多摄像头输入中生成鸟瞰(BEV)特征。BEVFormer利用查询来查找空间/时间空间,并相应地聚合时空信息,因此有利于感知任务的更强表示。

0.论文摘要与作者信息

摘要

3D视觉感知任务,包括基于多摄像头图像的3D检测和地图分割,对于自动驾驶系统至关重要。在这项工作中,我们提出了一个称为BEVFormer的新框架,它通过时空Transformer学习统一的BEV表示,以支持多个自动驾驶感知任务。简而言之,BEVFormer通过预定义的网格形状的BEV queries与空间和时间进行交互,从而利用空间和时间信息。为了聚集空间信息,我们设计了空间交叉注意力,每个BEV query从跨摄像机视图的感兴趣区域中提取空间特征。对于时间信息,我们提出时间自注意力来循环融合历史BEV信息。我们的方法在nuScenes测试集上实现了新的56.9%的NDS指标,比以前的SOTA高出9.0分,与基于激光雷达的基线的性能相当。我们进一步表明,BEVFormer显著提高了低能见度条件下物体速度估计和召回的准确性。
代码位置:

https://github.com/fundamentalvision/BEVFormer

作者信息

李志琦 1,2∗
王文海 2∗
李弘扬 2∗
谢恩泽 3
司马崇昊 2
路通 1
乔宇 2
代季峰 2

1 南京大学
2 上海人工智能实验室
3 香港大学

1.研究背景

3D空间中的感知对于自动驾驶、机器人等各种应用至关重要。尽管基于激光雷达的方法取得了显著进展[43,20,54,50,8],但基于相机的方法[45,32,47,30]近年来吸引了广泛关注。除了部署成本低之外,与基于激光雷达的相机相比,相机还具有检测远距离物体和识别基于视觉的道路元素(例如,交通灯、红绿灯)的理想优势。在自动驾驶中,对周围场景的视觉感知有望从多个摄像头给出的2D线索中预测3D边界框或语义图。最直接的解决方案是基于单目框架[45,44,31,35,3]和跨相机后处理。这种框架的缺点是,它单独处理不同的视图,无法跨摄像机捕捉信息,导致性能和效率低下[32,47]。

作为单目框架的替代,一个更统一的框架是从多摄像机图像中提取整体表示。鸟瞰图(BEV)是周围场景的常用表示,因为它清楚地呈现了物体的位置和比例,并适用于各种自动驾驶任务,如感知和规划[29]。尽管以前的地图分割方法证明了BEV的有效性[32,18,29],但基于BEV的方法在3D对象检测中并未显示出优于其他范式的显著优势[47,31,34]。潜在的原因是3D对象检测任务需要强大的BEV特征来支持精确的3D边界框预测,但是从2D平面生成BEV是不存在稳定的唯一解。生成BEV特征的流行BEV框架基于深度信息[46,32,34],但这种范式对深度值或深度分布的准确性很敏感。因此,基于BEV的方法的检测性能会受到复合误差的影响[47],不准确的BEV特征会严重影响最终性能。因此,我们有动机设计一种不依赖于深度信息的BEV生成方法,并且可以自适应地学习BEV特征,而不是严格依赖于3D先验。Transformer model使用注意力机制来动态聚集有价值的特征,在概念上满足了我们的需求。

用BEV特征执行感知任务的另一个动机是BEV是连接时间和空间的理想桥梁。对于人类的视觉感知系统来说,时间信息在推断物体的运动状态和识别遮挡物体方面起着至关重要的作用,视觉领域的许多工作已经证明了使用视频数据的有效性[2,27,26,33,19]。然而,现有的最先进的多摄像机3D检测方法很少利用时间信息。重大挑战是自动驾驶是时间关键的,场景中的对象变化很快,因此简单地堆叠交叉时间戳的BEV特征会带来额外的计算成本和干扰信息,这可能并不理想。受递归神经网络(RNNs)[17,10]的启发,我们利用BEV特征递归地传递从过去到现在的时间信息,这与RNN模型的隐藏状态具有相同的精神。

为此,我们提出了一种基于Transformer model的鸟瞰(BEV)编码器,称为BEVFormer,它可以有效地聚合来自多视角相机的时空特征和历史BEV特征。从BEVFormer生成的BEV特征可以同时支持多个3D感知任务,如3D物体检测和地图分割,这对于自动驾驶系统是有价值的。如图1所示,我们的BEVFormer包含三个关键设计,即(1)网格形状的BEV queries,通过注意力机制灵活地融合空间和时间特征,(2)空间交叉注意力模块,从多摄像机图像中聚合空间特征,以及(3)时间自注意力模块,从历史BEV特征中提取时间信息,这有利于运动物体的速度估计和严重遮挡物体的检测,同时带来可忽略的计算开销。借助BEVFormer生成的统一特征,该模型可以与不同的特定任务头协作,如可变形DETR[56]和mask decoder[22],用于端到端的3D对象检测和地图分割。

我们的主要贡献如下:
• 我们提出了BEVFormer,这是一种时空Transformer model编码器,可以将多摄像机和/或时间戳输入投影到BEV表示中。通过统一的BEV功能,我们的模型可以同时支持多种自动驾驶感知任务,包括3D检测和地图分割。
•我们设计了可学习的BEV queries以及空间交叉注意力层和时间自注意力层,分别从交叉摄像机中查找空间特征和从历史BEV中查找时间特征,然后将它们聚合成统一的BEV特征。
•我们根据包括nuScenes[4]和Waymo[40]在内的多个具有挑战性的基准对提议的BEVFormer进行了评估。与现有技术相比,我们的BEVFormer始终实现了改进的性能。例如,在可比的参数和计算开销下,BEVFormer在nuScenes测试集上实现了56.9%的NDS,比以前的最佳检测方法DETR3D[47]高出9.0分(56.9%比47.9%)。对于地图分割任务,我们还实现了最先进的性能,在最具挑战性的车道分割上比Lift-Splat[32]高出5.0多分。我们希望这个简单而强大的框架可以作为后续3D感知任务的新基线。

2.相关工作

2.1 基于Transformer model的2D感知

最近,一个新的趋势是使用Transformer model来重新制定检测和分割任务[7,56,22]。DETR[7]使用一组object queries直接由交叉注意力decoder生成检测结果。然而,DETR的主要缺点是训练时间长。可变形DETR[56]通过提出可变形注意力解决了这个问题。与DETR中普通的全局注意不同,可变形注意与感兴趣的局部区域相互作用,只对每个参考点附近的K个点进行采样并计算注意结果,从而提高了效率并显著缩短了训练时间。可变形注意机构通过以下方式计算:

在这里插入图片描述

其中 q , p , x q, p, x q,p,x分别表示queries、参考点和输入特征。 i i i是注意力头的索引, N h e a d N_{head} Nhead表示注意头的总数。 j j j是采样的key的索引, N k e y N_{key} Nkey是每个头的总采样key的数量。 W i ∈ R C × ( C / H h e a d ) W_i ∈ \mathbb{R}^{C×(C/Hhead)} WiRC×(C/Hhead) W i ′ ∈ R ( C / H h e a d ) × C W^′_i ∈ \mathbb{R}^{(C/Hhead)×C} WiR(C/Hhead)×C是可学习权重,其中C是特征维数。 A i j ∈ [ 0 , 1 ] A_{ij} ∈ [0, 1] Aij[0,1]是预测的注意力权重,并通过 ∑ j = 1 N k e y A i j = 1 ∑^{N_{key}}_{j=1} A_{ij} = 1 j=1NkeyAij=1进行归一化。 ∆ p i j ∈ R 2 ∆p_{ij} ∈ \mathbb{R}^2 pijR2是参考点p的预测偏移。 x ( p + ∆ p i j ) x(p + ∆p_{ij}) x(p+pij)表示位置 p + ∆ p i j p + ∆p_{ij} p+pij处的特征,其通过双线性插值提取,如Dai等所述[12]。在这项工作中,我们将可变形注意力扩展到3D感知任务,以有效地聚集空间和时间信息。

2.2 基于摄像机的3D感知

以前的3D感知方法通常独立执行3D目标检测或地图分割任务。对于3D目标检测任务,早期的方法类似于2D检测方法[1,28,49,39,53],其通常基于2D边界框来预测3D边界框。王等[45]遵循先进的2D检测器FCOS[41]并直接预测每个目标的3D边界框。DETR3D[47]在2D图像中投影可学习的3Dqueries,然后对相应的特征进行采样,用于端到端的3D边界框预测,而无需NMS后处理。另一种解决方案是将图像特征转换为BEV特征,并从自上而下的视图预测3D边界框。方法利用来自深度估计[46]或分类深度分布[34]的深度信息将图像特征转换为BEV特征。OFT[36]和ImVoxelNet[37]将预定义的体素投影到图像特征上,以生成场景的体素表示。最近, M 2 B E V M^2BEV M2BEV[48]进一步探索了基于BEV特征同时执行多个感知任务的可行性。

实际上,从多摄像机要素生成BEV要素在地图分割任务中得到了更广泛的研究[32,30]。一种简单的方法是通过逆透视映射(IPM)将透视图转换为BEV[35,5]。此外,Lift-Splat[32]基于深度分布生成BEV特征。方法[30,16,9]利用多层感知器学习从透视图到BEV的翻译。PYVA[51]提出了一种将前视单目图像转换为BEV的交叉视图Transformer model,但这种范式不适用于融合多摄像机特征[42]考虑到全局注意力机制的计算成本。除了空间信息之外,先前的工作[18,38,6]也通过堆叠来自几个时间戳的BEV特征来考虑时间信息。堆叠BEV特征将可用的时间信息限制在固定的持续时间内,并带来额外的计算成本。在这项工作中,所提出的时空Transformer model通过考虑空间和时间线索来生成当前时间的BEV特征,并通过RNN方式从先前的BEV特征中获得时间信息,这只带来很少的计算成本。

3.BEVFormer

将多摄像头图像特征转换为鸟瞰(BEV)特征可以为各种自动驾驶感知任务提供统一的周围环境表示。在这项工作中,我们提出了一个新的基于Transformer model的BEV生成框架,它可以通过注意机制有效地聚合来自多视角相机的时空特征和历史BEV特征。

3.1 总体架构

如图2所示,BEVFormer有6个编码器层,每个编码器层都遵循transformers[42]的传统结构,除了三个定制的设计,即BEV queries、空间交叉注意李和时间自注意力。具体来说,BEVqueries是网格形状的可学习参数,旨在通过注意力机制从多摄像机视图查询BEV空间中的特征。根据BEV queries,空间交叉注意力和时间自注意力是与BEV queries一起工作的注意力层,用于从多摄像机图像中查找和聚合空间特征以及从历史BEV中查找和聚合时间特征。

在这里插入图片描述

图2 BEVFormer的整体架构。(a)BEVFormer的编码器层包含网格形状的BEV query、时间自注意力和空间交叉注意力。(b)在空间交叉注意力中,每个BEV query仅与感兴趣区域中的图像特征交互。(c)在时间自注意力中,每个BEV查询与两个特征交互:当前时间戳处的BEV查询和前一时间戳处的BEV特征。

在推理过程中,在时间戳t处,我们将多个摄像机图像馈送到主干网络(例如,ResNet-101[15]

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

量子-Alex

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值