Nuscenes SOTA!BEVFormer v2: 通过透视监督使流行的图像Backbones适应BEV识别!

点击下方卡片,关注“自动驾驶之心”公众号

ADAS巨卷干货,即可获取

点击进入→自动驾驶之心【多传感器融合】技术交流群

后台回复【多传感器融合综述】获取图像/激光雷达/毫米波雷达融合综述等干货资料!

论文主要思路

作者提出了一种具有透视监督的新型鸟瞰图(BEV)检测器,它收敛更快,更适合目前的图像主干网络。现有的SOTA BEV检测器通常与某些深度预训练的主干网(如VoVNet)相连,阻碍了图像backbones和BEV检测器之间的协同作用。为了解决这一限制,论文优先考虑通过引入透视空间监督来简化BEV检测器的优化方案。为此提出了一种两级BEV检测器,其中来自透视头部的proposal被输入鸟瞰头部,用于最终预测。为了评估模型的有效性,作者进行了广泛的消融研究,重点是监督的形式和拟议检测器的通用性。所提出的方法在传统和主流图像主干上得到了验证,并在大规模nuScene数据集上获得了新的SOTA结果,代码将很快发布。

领域背景

鸟瞰图(BEV)识别模型可以自然地将来自多个传感器的部分原始观察整合到统一的整体3D输出空间中。典型的BEV模型建立在图像backbone上,然后是视图转换模块,该模块将透视图像特征提升为BEV特征,BEV特征编码器和一些特定于任务的头部对其进行进一步处理。尽管在设计视图转换模块和将不断增加的下游任务列表纳入新的识别框架方面付出了很大的努力,但BEV模型中的image backbone的研究受到的关注要少得多。作为一个尖端和高要求的领域,将modern图像backbones引入自动驾驶是理所当然的。令人惊讶的是,研究界选择坚持VoVNet来享受其大规模深度预训练。这项工作中,作者专注于释放modern图像特征提取器的全部功能,用于BEV识别,为未来研究人员探索该领域更好的图像主干设计打开大门。然而,仅仅使用那些没有经过适当预训练的modern backbone并不能产生令人满意的结果。例如,ImageNet预训练的ConvNeXt XL主干与DDAD-15M预训练的VoVNet-99在3D对象检测方面的性能不相上下,尽管后者的参数是前者的3.5倍。论文将适应现代图像主干的斗争归因于以下问题:1)自然图像和自动驾驶场景之间的领域差距。在一般2D识别任务中预训练的主干无法感知3D场景,尤其是估计深度。2) 当前BEV检测器的复杂结构。

为了克服上述在使modern图像主干适应BEV识别方面的困难,论文在BEVFormer中引入了透视监督,即来自透视视图任务的额外监督信号,并直接应用于主干。它指导backbone学习2D识别任务中缺少的3D知识,并克服了BEV检测器的复杂性,极大地促进了模型的优化。具体来说,在主干上构建了透视3D检测头,它将图像特征作为输入,并直接预测目标对象的3D边界框和类标签。该透视头的损失(表示为透视损失)作为辅助检测损失添加到从BEV头导出的原始损失(BEV损失)中,两个检测头用其相应的损失项进行联合训练。此外,论文发现很自然地将两个检测头组合成一个两级BEV检测器BEVFormer v2。由于透视头是成熟的,它可以在透视视图中生成高质量目标proposal,将其用作第一阶段proposal。作者将它们编码为目标查询,并将它们与原始BEVFormer中的可学习目标一起收集,形成混合目标查询,然后将其输入第二阶段检测头以生成最终预测!

由于在自动驾驶系统中的巨大成功,鸟瞰(BEV)目标检测最近受到了更多的关注[17,22,26,28,30,36,43]。包括OFT[30]、Pseduo LiDAR[36]和VPN[26]在内的早期作品揭示了如何将透视特征转换为BEV特征。OFT[30]率先采用从2D图像特征到3D BEV特征的转换来进行单目3D检测。伪激光雷达[36],顾名思义,通过单目深度估计和相机内部原理创建了伪点云,并随后在BEV空间中对其进行处理。VPN[26]是第一个将多视图相机输入融合到自顶向下视图特征图中进行语义分割的。现代方法享受了通过2D-3D视图转换提供的来自不同透视视图传感器的特征的集成的便利,LSS[28]通过在BEV pilliar特征汇集期间引入潜在深度分布,扩展了OFT。此外,与OFT中的单个图像相比,LSS汇集了六个surround图像。与LSS中的2D到3D提升或OFT中的3D到2D投影不同,CVT[43]利用了相机感知的位置编码和密集的交叉关注来桥接透视图和BEV视图特征。PETR[22]设计了一种没有显式BEV特征构造的方法。透视特征图与3D位置嵌入特征图进行元素明智的融合,并将后续的DETR风格解码器应用于目标检测。BEVFormer利用空间交叉关注进行视图转换,利用时间self-attention进行时间特征融合,BEVFormer的完全基于transformer结构使其BEV特性比其他方法更通用,易于支持非均匀和非规则采样网格。此外,如SimpleBEV所示,多尺度可变形注意力[44]在所有提升策略中都表现出色。因此,我们选择基于BEVFormer构建检测器,以利用前面提到的优势。除了已发表的作品,由于该领域的流行,还有许多并发的作品。BEVDet为训练引入了丰富的图像级和BEV级增强。BEVStereo[14]和STS[38]都采用了时间立体范式,以获得更好的深度估计。PolarFormer[11]提出了一种非笛卡尔3D网格设置。SimpleBEV[7]比较了不同的2D-3D提升方法。与主要探索探测器设计的现有工作不同,本论文专注于将现代图像主干应用于BEV识别模型。

辅助损失在单目3D目标检测中普遍存在,因为大多数方法[15,21,27,31,33,34,41]都建立在2D检测器上,如RetinaNet和FCOS。但这些辅助损失很少为2D监督赋予任何明确的意义。MonoCon通过利用多达5种不同的2D监督,最大限度地利用了2D辅助。至于BEV检测器,BEVDepth利用LiDAR点云来监督其中深度网络。MV-FCOS3D++引入了透视监督来训练其图像主干,但检测器本身仅受BEV损失的监督。SimMOD[42]将2D辅助损失用于其单目proposal head。与以前的方法不同,本文的方法采用了端到端的透视监督方法,而不使用额外的数据,如LiDAR点云!

BEVFormerv2整体结构

Nuscenes SOTA!BEVFormer v2: 通过透视监督使流行的图像Backbones适应BEV识别!_第1张图片

如图1所示,BEVFormer v2主要由五个组件组成:图像主干、透视3D检测头、空间编码器、改进的时间编码器和BEV检测头。与原始BEVFormer相比,除了空间编码器外,对所有组件进行了更改。具体而言,BEVFormer v2中使用的所有图像主干均未使用任何自动驾驶数据集或深度估计数据集进行预训练。引入透视3D检测头以促进2D图像主干的适配,并为BEV检测头生成目标proposal。为了更好地结合长期时间信息,采用了一种新的时间BEV编码器。BEV检测头现在接受一组混合对象查询作为输入。将第一阶段的proposal和学习的对象查询相结合,以形成第二阶段的新的混合对象查询。

透视监督

论文首先分析鸟瞰模型的问题,以解释为什么需要额外的监督。典型的BEV模型保持附于BEV平面的栅格形状特征,其中每个栅格聚集来自多视图图像的对应2D像素处特征的3D信息。它基于BEV特征预测目标对象的3D边界框,将这种对BEV特征的监督称为BEV监督。以BEVformer为例,它使用编码器结构来生成和利用BEV特征。编码器为BEV平面上的每个网格单元分配一组3D参考点,并将其作为2D参考点投影到多视图图像上。之后,它对2D参考点周围的图像特征进行采样,并利用空间交叉关注将它们聚合到BEV特征中。解码器是一个可变形DETR[44]头部,它通过少量固定的对象查询预测BEV坐标中的3D边界框。

图2显示了3D到2D视图转换和DETR头部引入的BEV监督的两个基本问题:

1)对图像特征的监督是隐含的,该损失直接应用于BEV特征,而在3D到2D投影和图像特征的仔细采样之后,该损失变为间接损失。

2)对图像特征的监督很少,只有少数由对象查询参与的BEV网格造成了损失。因此,只有这些网格的2D参考点周围的稀疏像素才能获得监督信号!

Nuscenes SOTA!BEVFormer v2: 通过透视监督使流行的图像Backbones适应BEV识别!_第2张图片

因此,在训练期间出现了不一致性,即BEV检测头依赖于包含在图像特征中的3D信息,但它对于骨干如何编码这些信息提供了充分的指导。以前的BEV方法没有严重地受到这种不一致性的影响,他们甚至可能没有意识到这个问题。这是因为它们的主干要么具有相对较小的尺度,要么已经用单目检测头进行了3D检测任务的预训练。与BEV头相比,透视3D头对图像特征进行逐像素预测,为适应2D图像主干提供更丰富的监控信号。论文将对图像特征施加的监督定义为透视监督。如图2所示,与BEV监督不同,透视检测损失直接且密集地应用于图像特征。假设透视监督明确指导backbone感知3D场景并提取有用信息,例如目标的深度和方向,克服了BEV监督的缺点,因此在使用现代图像backbone训练BEV模型时至关重要!

Perspective Loss

正如前一节所分析的,透视监督是优化BEV模型的关键。在BEVformer v2中,通过辅助透视损失引入透视监督。具体地,透视3D检测头构建在主干上,以检测透视图中的目标对象。论文采用类似FCOS3D的检测头,它预测3D边界框的中心位置、大小、方向和投影中心度。该头部的检测损失(表示透视损失为Lpers)作为BEV损失Lbev的补充,有助于主干的优化,整个模型都以总目标进行训练:

Nuscenes SOTA!BEVFormer v2: 通过透视监督使流行的图像Backbones适应BEV识别!_第3张图片

Ravamped Temporal Encoder

BEVFormer使用反复的时间自关注来结合历史BEV特征,但是时间编码器没有利用长期时间信息,简单地将重复步骤从4增加到16不会产生额外的性能增益。本文通过使用简单的warp和连接策略重新设计了BEVFormer v2的时间编码器。给定不同帧k处的BEV特征,首先根据参考帧变换矩阵将作为线性地warp到当前帧中, 然后沿着信道维度将先前的BEV特征与当前BEV特征连接起来,并使用残差块进行降维。为了保持与原始设计相似的计算复杂性,作者使用相同数量的历史BEV特征,但增加了采样间隔。除了受益于长期时间信息,新的时间编码器还解锁了在离线3D检测设置中利用未来BEV特征的可能性。

两级BEV检测器

虽然联合训练两个检测头提供了足够的监督,但我们从不同的角度分别获得了两组检测结果。论文没有采用BEV头部的预测并丢弃透视头部的预测或通过NMS启发式地组合两组预测,而是设计了一种新的结构,将两个头部集成到两级预测管道中,即两级BEV检测器。BEV头部中的对象解码器(DETR解码器)使用一组学习的嵌入作为对象查询,通过训练学习目标对象可能位于何处。然而,随机初始化的嵌入需要很长时间来学习合适的位置,此外在推理过程中,所有图像的学习对象查询都是固定的,这可能不够准确,因为对象的空间分布可能会变化。为了解决这些问题,透视头部的预测通过后处理进行过滤,然后融合到解码器的对象查询中,形成两个阶段的过程。这些混合对象查询提供了高分数(概率)的候选位置,使BEV头部更容易在第二阶段捕获目标对象。稍后将描述具有混合对象查询的解码器的细节。应当注意,第一阶段proposal不一定来自透视检测器,例如来自另一个BEV检测器,但实验表明,只有透视视图的预测对第二阶段BEV头有帮助。

带有混合对象查询的解码器

为了将第一阶段proposal融合到第二阶段的对象查询中,基于BEVformer中使用的可变形DETR解码器修改BEVformer v2中BEV头部的解码器,解码器由堆叠的交替self-attention层和交叉关注层组成,交叉注意力层是一个可变形的注意力模块,它将以下三个元素作为输入:

(1) 内容查询,用于生成采样偏移和注意力权重的查询功能;(2) 参考点,值特征上的二维点作为每个查询的采样参考;(3) value特征,要参加的BEV特征。

在最初的BEVFormer中,内容查询是一组学习的嵌入,参考点是通过一组学习到的位置嵌入中的线性层来预测的。在BEVformer v2中,作者从透视头部获得proposal,并通过后处理选择其中的一部分。如图3所示,所选方案的BEV平面上的投影框中心被用作每个图像参考点,并与位置嵌入生成的每个数据集相结合。每图像参考点直接指示BEV平面上对象的可能位置,使解码器更容易检测目标对象。然而,由于遮挡或出现在两个相邻视图的边界处,透视头可能无法检测到一小部分对象,为了避免丢失这些对象,论文还保留每个数据集的原始参考点,以通过学习空间先验来捕获它们。

实验

数据集

nuScenes 3D检测基准由1000个多模式视频组成,每个视频的持续时间约为20秒,关键样本的注释频率为2Hz。每个样本由覆盖整个360度视野的6个摄像头的图像组成。视频分为700个用于训练、150个用于val和150个用于test,检测任务包含10个对象类的1.4M个带注释的3D边界框。nuScenes使用地平面上的中心距离计算四个不同阈值上的平均精度(mAP),它包含五个真正的正度量,即ATE、ASE、AOE、AVE和AAE,分别用于测量平移、比例、方向、速度和属性误差。此外,它还通过将检测精度(mAP)与五个真阳性指标相结合来定义nuScenes检测分数(NDS)。

表1是BEVFormer v2相比于其它SOTA方法的性能提升:

Nuscenes SOTA!BEVFormer v2: 通过透视监督使流行的图像Backbones适应BEV识别!_第4张图片

表3是nuScenes上不同2D图像主干的透视监督结果,透视监督很明显可以提点!!!

Nuscenes SOTA!BEVFormer v2: 通过透视监督使流行的图像Backbones适应BEV识别!_第5张图片

表4是在不同的训练阶段,仅使用BEV监督以及透视和BEV监督的模型进行比较,模型在nuScenes上进行评估,所有模型都在没有时间信息的情况下进行训练:

Nuscenes SOTA!BEVFormer v2: 通过透视监督使流行的图像Backbones适应BEV识别!_第6张图片

表5是BEVFormer v2中透视 Head和BEV Head的不同选择的比较,模型在nuScenes上进行评估:

Nuscenes SOTA!BEVFormer v2: 通过透视监督使流行的图像Backbones适应BEV识别!_第7张图片

一些消融实验:

Nuscenes SOTA!BEVFormer v2: 通过透视监督使流行的图像Backbones适应BEV识别!_第8张图片

参考

[1] BEVFormer v2: Adapting Modern Image Backbones to Bird's-Eye-View Recognition via Perspective Supervision

往期回顾

首篇!无相机参数BEV感知!(北航、地平线)

Nuscenes SOTA!BEVFormer v2: 通过透视监督使流行的图像Backbones适应BEV识别!_第9张图片

自动驾驶之心】全栈技术交流群

自动驾驶之心是首个自动驾驶开发者社区,聚焦目标检测、语义分割、全景分割、实例分割、关键点检测、车道线、目标跟踪、3D目标检测、BEV感知、多传感器融合、SLAM、光流估计、深度估计、轨迹预测、高精地图、规划控制、模型部署落地、自动驾驶仿真测试、硬件配置、AI求职交流等方向;

Nuscenes SOTA!BEVFormer v2: 通过透视监督使流行的图像Backbones适应BEV识别!_第10张图片

添加汽车人助理微信邀请入群

备注:学校/公司+方向+昵称

自动驾驶之心【知识星球】

想要了解更多自动驾驶感知(分类、检测、分割、关键点、车道线、3D目标检测、多传感器融合、目标跟踪、光流估计、轨迹预测)、自动驾驶定位建图(SLAM、高精地图)、自动驾驶规划控制、领域技术方案、AI模型部署落地实战、行业动态、岗位发布,欢迎扫描下方二维码,加入自动驾驶之心知识星球(三天内无条件退款),日常分享论文+代码,这里汇聚行业和学术界大佬,前沿技术方向尽在掌握中,期待交流!

Nuscenes SOTA!BEVFormer v2: 通过透视监督使流行的图像Backbones适应BEV识别!_第11张图片

你可能感兴趣的:(Nuscenes SOTA!BEVFormer v2: 通过透视监督使流行的图像Backbones适应BEV识别!)