BEV最新综述 | 学术界和工业界方案汇总!优化方法与tricks(上)

简介: 本调查回顾了关于BEV感知的最新工作,并对不同解决方案进行了深入分析。此外,还描述了行业中BEV方法的几个系统设计,介绍了一整套实用指南,以提高BEV感知任务的性能,包括相机、激光雷达和融合输入。最后,论文指出了该领域未来的研究方向,希望本报告能为社区提供一些信息,并鼓励更多关于BEV感知的研究工作。

学习感知任务的鸟瞰图(BEV)中的强大表示法是一种趋势,并引起了工业界和学术界的广泛关注。大多数自动驾驶常规方法是在前视图或透视图中执行检测、分割、跟踪等。随着传感器配置变得越来越复杂,集成来自不同传感器的多源信息并在统一视图中表示特征变得至关重要。BEV perception继承了几个优势,如在BEV中表示周围场景直观且融合友好;并且在BEV中表示对象对于后续模块最为理想,如在规划和/或控制中。BEV感知的核心问题在于:(a) 如何通过从透视图到BEV的视图转换来重建丢失的3D信息;(b) 如何在BEV网格中获取GT;(c) 如何制定pipelines,以纳入来自不同来源和view的特征;(d) 如何适应和推广算法,因为传感器配置在不同场景中有所不同;


本调查回顾了关于BEV感知的最新工作,并对不同解决方案进行了深入分析。此外,还描述了行业中BEV方法的几个系统设计,介绍了一整套实用指南,以提高BEV感知任务的性能,包括相机、激光雷达和融合输入。最后,论文指出了该领域未来的研究方向,希望本报告能为社区提供一些信息,并鼓励更多关于BEV感知的研究工作。


领域介绍



自动驾驶中的感知识别任务本质上是对物理世界的三维几何重建。随着传感器的多样性和数量越来越复杂,自动驾驶系统的装备也越来越复杂,以统一的视角表示不同视图中的特征至关重要。众所周知的鸟瞰图(BEV)是一种自然而直接的候选视图,可作为统一表示。与二维视觉领域中广泛研究的前视图或透视图相比,BEV表示具有若干固有优点。首先,它没有2D任务中普遍存在的遮挡或缩放问题。可以更好地解决具有遮挡或交叉交通的车辆识别问题。此外,以这种形式表示对象或道路元素将有利于方便后续模块(如规划、控制)的开发和部署。


基于输入数据,论文将BEV感知研究主要分为三个部分:BEV camera、BEV激光雷达和BEV fusion,下图描述了BEV感知家族的总体图,具体地,BEV camera指示用于从多个环绕相机检测或分割3D目标的视觉或以视觉为中心的算法;BEV激光雷达描述了从点云输入的检测或分割任务;BEV fusion描述了来自多个传感器输入的融合机制,如相机、激光雷达、GNSS、里程计、高清地图、CAN总线等;

640.png


当谈到BEV感知研究的动机时,需要检查三个重要方面。


1.意义


BEV感知是否会对学术界和/或社会产生真正和有意义的影响?众所周知,与基于激光雷达或融合的解决方案相比,基于视觉的解决方案存在巨大的性能差距,例如,截至2022年8月提交时,仅视觉与激光雷达之间的第一排名方法差距超过了nuScenes数据集上NDS的20%,Waymo基准的差距甚至超过30%。这自然促使我们研究视觉解决方案是否能够超越或等同于激光雷达方法。从学术角度来看,设计基于camera的pipelines以使其优于激光雷达的本质在于更好地理解从2D外观输入到3D几何输出的视图转换过程。如何像在点云中那样将相机特征转换为几何表示,对学术界产生了有意义的影响。从工业角度考虑,将一套激光雷达设备纳入SDV的成本很高。此外基于camera的pipelines可以识别长距离物体和基于颜色的道路元素(如交通灯),这两种激光雷达方法都无法实现。


2.空间


BEV感知中是否存在需要大量创新的开放性问题?BEV感知背后的要点是从camera和激光雷达输入中学习鲁棒和可概括的特征表示,这在激光雷达分支中很容易,因为输入(点云)具有这样的3D特性。在相机分支中,这是非常重要的,因为从单目或多视图设置中学习3D空间信息是困难的。虽然看到有人试图通过姿势估计[9]或时间运动[10]来学习更好的2D-3D对应关系,但BEV感知背后的核心问题需要从原始传感器输入进行深度估计的实质性创新,特别是对于相机分支。另一个关键问题是如何在pipelines的早期或中期融合特征,大多数传感器融合算法将该问题视为简单的对象级融合或沿blob channel的朴素特征连接。这可能解释了为什么由于相机和激光雷达之间的未对准或不准确的深度预测,某些融合算法表现不如仅使用激光雷达的解决方案。如何对齐和集成多模态输入的特征起着至关重要的作用,从而为创新留下了广阔的空间。


论文主要回顾了近年来BEV感知研究的全貌,详细阐述了BEV感知文献的综合分析,涵盖了深度估计、视图转换、传感器融合、域自适应等核心问题。介绍并讨论了几种重要的BEV感知工业系统级设计。除了理论贡献外,我们还提供了一本实用的操作指南,用于提高各种BEV感知任务的性能。


数据集和Metrics



1.数据集


论文介绍了一些流行的自动驾驶数据集和常用的评估指标。下表总结了BEV感知的主要基准统计数据。通常,数据集由各种场景组成,每个场景在不同的数据集中具有不同的长度。总持续时间从几十分钟到几百小时不等。对于BEV感知任务,3D边界框标注和3D分割标注至关重要,高清地图配置已成为主流趋势,其中大部分可以用于不同的任务。


640.png

2.Metrics


LET-3D-APL:在仅camera的3D检测中,使用LET-3D-APL代替3D-AP作为度量。与三维联合交集(IoU)相比,LET-3D-APL允许预测边界框的纵向定位误差达到给定公差。LET-3D-APL通过使用定位亲和力缩放精度来惩罚纵向定位误差。LET-3D-APL的定义在数学上定义为:

640.png


mAP:类似于2D目标检测中的AP度量,但匹配策略被从IoU替换为BEV平面上的2D中心距离。AP是在不同的距离阈值下计算的:0.5米、1米、2米和4米。通过平均上述阈值中的AP来计算mAP:


NDS:nuScenes检测分数(NDS)是几个指标的组合,mAP、mATE(平均平移误差)、mASE(平均标度误差)、mAOE(平均方位误差)、mAVE(平均速度误差)和mAAE(平均属性误差)。通过使用上述度量的加权和来计算NDS。mAP的权重为5,其余为1:


640.png


BEV感知方法



如下表所示,近年来BEV感知文献汇总。在输入模式下,“L”表示激光雷达,“SC”表示单相机,“MC”表示多相机,“T”表示时间信息。在任务下,“ODet”用于3D对象检测,“LDet”用于三维车道检测,“MapSeg”用于地图分割,“Plan”用于运动规划,“MOT”用于多对象跟踪。深度监督意味着仅camera模型使用稀疏/密集深度图来监督模型。在数据集下,“nuS”代表nuScenes数据集,“WOD”代表Waymo开放数据集,“KITTI”代表KITTI数据集,“Lyft”代表Lyft 5级数据集,“OpenLane”代表OpenLane数据集,“AV”代表Argosse数据集,“Carla”代表Carla模拟器,“SUN”代表SUN RGB-D数据集,“ScanNet”代表ScanNet室内场景数据集。


640.png


1.基于Camera的BEV


只有camera的3D感知吸引了学术界的大量关注,因为与基于激光雷达的3D感知相比,这是一个未解决的问题,因此值得探索。核心问题是2D图像自然不保留3D信息,因此当从2D图像中不准确地提取深度信息时,难以获得对象的精确3D定位。仅camera的3D感知可分为三个领域:单相机设置、stereo设置和多camera设置,它们有不同的技能来解决深度问题。


视图转换


最近的研究集中于视图转换模块[3、4、10、26、46、47、48、50、55、58],其中3D信息是根据2D特征或3D先验假设构建的。从二维特征构造三维信息通常表示为深度估计或cost volume。从3D先验假设构造3D信息通常被表示为采样2D特征以通过3D-2D投影映射构造3D特征,视图变换在仅camera 3D感知中起着至关重要的作用,因为它是构建3D信息和编码3D先验假设的主要模块。大体上,它可以分为两个方面,一是利用2D特征构造深度信息并将2D特征“提升”到3D空间,另一个是通过3D到2D投影映射将2D特征编码到3D空间。我们将第一种方法命名为2D-3D,第二种方法称为3D-2D。下图给出了通过这两种方法执行视图转换的概要路线图:

640.png


从2D到3D,基于LSS的方法[5、45、46、48、56、63、95]根据2D特征预测每个像素的深度分布,而立体视觉方法[64、96]沿着由成本体积构建的平截头体散布2D特征。

从3D到2D,基于单应矩阵的方法[4,26,47,55,85,112]假定稀疏的3D采样点,并通过摄像机参数将其投影到2D平面。基于纯网络的方法[106、107、108、109、110]使用MLP或transformer隐式建模从3D空间到2D平面的投影矩阵。


LSS[56]引入了2D-3D方法,其中预测2D特征上每个网格的深度分布,然后通过相应的体素空间深度“提升”每个网格的2D特征,并执行基于激光雷达的下游任务方法。这一过程可以表述为:

640.png


请注意,这与伪激光雷达方法[92、93、94]非常不同,伪激光雷达的深度信息是从预训练的深度估计模型中提取的,过程发生在2D特征提取之前。在LSS[56]之后,还有另一项工作遵循了将深度公式化为按bin-wise分布的相同思想,即CaDDN。CaDDN使用类似的网络来预测深度分布(分类深度分布),将体素空间特征压缩到BEV空间,并在最后执行3D检测。LSS[56]和CaDDN之间的主要区别在于,CaDDN使用深度地面真相来监督其分类深度分布预测,因此,由于具有从2D空间提取3D信息的优越深度网络。

当我们声称“更好的深度网络”时,它实际上是在学习路面和透视图之间在特征级别的隐式投影。这一轨迹来自后续工作,如BEVDet及其时间版本BEVDet4D、BEVDepth、BEVFusion和其它。请注意,在stereo设置中,通过强先验更容易获得深度值/分布,其中一对摄像机(即系统的基线)应该是恒定的。这可以公式化为:

640.png


LIGA Stereo和DSGN等立体方法利用了这种强大的先验,并与KITTI排行榜上基于激光雷达的替代方案不相上下。


第二个分支(3D到2D)可以追溯到三十年前,当时逆透视映射(IPM)通过有条件地假设3D空间中的对应点位于水平面上,制定了从3D空间到2D空间的投影。这种变换矩阵可以从相机的内外参数中数学推导。一系列工作[99、100、101、102、103、104、105]应用IPM以预处理或后处理的方式将元素从透视图变换为鸟瞰图。


在视图变换的背景下,OFTNet[42]首先引入了3D-2D方法,即从3D到2D的特征投影,其中将2D特征投影到体素空间(3D空间)。它基于这样的假设:从相机原点到3D空间中的特定点,深度分布沿光线是均匀的。这种假设适用于自动驾驶中的大多数场景,但当涉及起伏道路时,有时会中断。同时,许多BEV地图分割工作[106、107、108、109、110]利用多层感知器或transformer架构[111]来隐式地建模3D-2D投影,而无需摄像机参数。最近,3D-2D几何投影和神经网络的组合变得流行[4,26,47,55,85,112],受特斯拉发布其感知系统技术路线图[6]的启发。请注意,transformer架构中的交叉注意)

640.png


为了获得稳健的检测结果,BEVFormer[4]利用transformer中的交叉关注机制来增强3D-2D视图转换的建模。


BEV和透视法的讨论


在仅camera3D感知的开始,主要焦点是如何从透视图(即2D空间)预测3D对象定位。这是因为2D感知在该阶段得到了很好的发展,如何为2D检测器配备感知3D场景的能力成为主流方法[61、81、82、117、118、119、120、121、122、123、124、125、126、127、128、129]。后来,一些研究达到了BEV表示,因为在这种观点下,很容易解决3D空间中具有相同尺寸的对象由于与相机的距离而在图像平面上具有非常不同的尺寸的问题。这一系列工作[42、45、64、92、96]要么预测深度信息,要么利用3D先验假设来补偿相机输入中3D信息的损失。虽然最近的基于BEV的方法[3、4、5、46、48、95、130]已经风靡了3D感知世界,但值得注意的是,这一成功主要得益于三个方面。第一个原因是nuScenes数据集[7],它具有多摄像机设置,非常适合在BEV下应用多视图特征聚合。第二个原因是,大多数仅使用相机的BEV感知方法从基于激光雷达的方法[43、44、66、83、84、131、132、133、134、135]中获得了大量帮助,其形式为检测头和相应的损失设计。第三个原因是,单目方法的长期发展[81、82、117、120、121、136、137]使基于BEV的方法蓬勃发展,成为处理透视图中特征表示形式的良好起点。核心问题是如何从2D图像中重建丢失的3D信息。为此,基于BEV的方法和透视方法是解决同一问题的两种不同方法,它们并不相互排斥。


2.基于LiDAR的BEV


在特征提取部分,主要有两个分支将点云数据转换为BEV表示。根据pipilines顺序,将这两个选项分别称为前BEV和后BEV,指示主干网络的输入是来自3D表示还是来自BEV表示。如下图所示,BEV激光雷达感知的一般流程。主要有两个分支将点云数据转换为BEV表示。上分支提取3D空间中的点云特征,提供更准确的检测结果。下分支提取2D空间中的BEV特征(原始点云转换),提供更高效的网络。


640.png


原文首发微信公众号【自动驾驶之心】:一个专注自动驾驶与AI的社区(https://mp.weixin.qq.com/s/NK-0tfm_5KxmOfFHpK5mBA

相关文章
|
机器学习/深度学习 编解码 自然语言处理
深度学习进阶篇[9]:对抗生成网络GANs综述、代表变体模型、训练策略、GAN在计算机视觉应用和常见数据集介绍,以及前沿问题解决
深度学习进阶篇[9]:对抗生成网络GANs综述、代表变体模型、训练策略、GAN在计算机视觉应用和常见数据集介绍,以及前沿问题解决
深度学习进阶篇[9]:对抗生成网络GANs综述、代表变体模型、训练策略、GAN在计算机视觉应用和常见数据集介绍,以及前沿问题解决
|
机器学习/深度学习 编解码 人工智能
深度学习应用篇-计算机视觉-语义分割综述[6]:DeepLab系列简介、DeepLabV3深入解读创新点、训练策略、主要贡献
深度学习应用篇-计算机视觉-语义分割综述[6]:DeepLab系列简介、DeepLabV3深入解读创新点、训练策略、主要贡献
深度学习应用篇-计算机视觉-语义分割综述[6]:DeepLab系列简介、DeepLabV3深入解读创新点、训练策略、主要贡献
|
机器学习/深度学习 人工智能 编解码
一文梳理视觉Transformer架构进展:与CNN相比,ViT赢在哪儿?(1)
一文梳理视觉Transformer架构进展:与CNN相比,ViT赢在哪儿?
586 0
|
机器学习/深度学习 计算机视觉 容器
清华大学提出ACmix | 这才是Self-Attention与CNN正确的融合范式,性能速度全面提升(一)
清华大学提出ACmix | 这才是Self-Attention与CNN正确的融合范式,性能速度全面提升(一)
680 0
|
机器学习/深度学习 设计模式 计算机视觉
清华大学提出ACmix | 这才是Self-Attention与CNN正确的融合范式,性能速度全面提升(二)
清华大学提出ACmix | 这才是Self-Attention与CNN正确的融合范式,性能速度全面提升(二)
510 0
|
机器学习/深度学习 存储 缓存
VLDB 2022最佳研究论文:克服通信挑战,新框架SANCUS实现GNN高效训练
VLDB 2022最佳研究论文:克服通信挑战,新框架SANCUS实现GNN高效训练
100 0
|
机器学习/深度学习 编解码 数据可视化
一文梳理视觉Transformer架构进展:与CNN相比,ViT赢在哪儿?(2)
一文梳理视觉Transformer架构进展:与CNN相比,ViT赢在哪儿?
349 0
|
机器学习/深度学习 存储 并行计算
用什么tricks能让模型训练得更快?先了解下这个问题的第一性原理
用什么tricks能让模型训练得更快?先了解下这个问题的第一性原理
102 0
|
机器学习/深度学习 并行计算 PyTorch
用什么tricks能让模型训练得更快?先了解下这个问题的第一性原理(2)
用什么tricks能让模型训练得更快?先了解下这个问题的第一性原理
129 0
|
机器学习/深度学习 人工智能 自动驾驶
AAAI 2022 | 在图像级弱监督语义分割这项CV难题上,字节跳动做到了性能显著提升
AAAI 2022 | 在图像级弱监督语义分割这项CV难题上,字节跳动做到了性能显著提升
133 0