点击下方卡片,关注“自动驾驶之心”公众号
戳我-> 领取自动驾驶近15个方向学习路线
今天自动驾驶之心为大家分享UC伯克利最新的工作—UniDrive!首个跨不同相机配置的通用3D视觉感知算法模型。如果您有相关工作需要分享,请在文末联系我们!
自动驾驶课程学习与技术交流群事宜,也欢迎添加小助理微信AIDriver004做进一步咨询
论文作者 | Ye Li等
编辑 | 自动驾驶之心
写在前面&笔者的个人理解
以视觉为中心的自动驾驶系统由于能够使用相机等部署经济型传感器实现感知算法模型性能的提升而受到了来自工业界和学术界的广泛关注。以视觉输入的感知算法通过由2D图像信息来重建3D空间信息实现了3D目标的检测任务。这种由2D空间到3D空间的信息转换对于使自动驾驶车辆能够了解周围环境、检测目标并安全导航至关重要。先前的来自学术界和工业界的相关研究通过利用 BEV空间表示来处理 2D到3D空间的信息转换,实现了卓越的3D目标感知能力。最近,许多基于视觉的3D栅格占用预测算法进一步提高了感知模块对于动态和混乱驾驶场景的理解,突破了研究领域的界限。因此,基于视觉的感知系统已成为可扩展自动驾驶的主要解决方案之一。
尽管基于视觉的自动驾驶技术取得了令人兴奋的进展和非常不错的成绩,但目前仍然存在一个关键的限制:这些基于视觉的感知算法模型对于相机的配置变化比较敏感,体现在相机的内参和外参两个方面。自动驾驶模型通常依赖于经过良好校准的相机传感器设置,即使不同车辆或平台的摄像头参数出现了轻微偏差,也会显著降低模型的感知性能,如下图所示。

由于算法模型缺乏对传感器变化的鲁棒性,因此在没有大量重新训练或手动调整的情况下,已经训练好的算法模型很难在不同车辆平台之间实现很好的泛化和鲁棒性。因此,当遇到相机配置发生变化时,就需要为每辆车重新训练一个单独的新感知算法模型,这就会消耗大量的计算资源。因此,实现跨摄像头配置的泛化对于以视觉为中心的自动驾驶的实际部署至关重要。
考虑到上述提到的相关问题,我们提出了UniDrive算法模型,用于解决在多摄像头配置下提高感知算法模型的泛化性。此外,我们提出的算法模型可作为现有 3D 目标感知方法的即插即用模块,用于提高感知算法模型对其相机参数变化的鲁棒性。我们在CARLA框架中以不同的相机配置下来训练和验证我们提出的算法模型,相关的实验结果证明我们提出的算法模型在不同的相机配置下,可以显著降低算法模型感知性能的下降,同时保持跨不同传感器设置的适应性。
文章链接:https://arxiv.org/pdf/2410.13864
网络模型架构&技术细节
在详细介绍本文提出的算法模型细节之前,下图展示了我们提出的UniDrive算法模型的整体网络结构,如下所示。

通过上图可以看出,为了解决训练好的算法模型在不同相机配置之间的可转移性问题,我们设计了一种通用表示,将来自不同相机配置的图像转换为统一的空间表示,然后再输入到深度学习网络当中。为了实现这一点,我们提出了一种虚拟相机投影方法,它重新投影视图从原始的相机到统一的一组虚拟相机的配置,其中是虚拟相机的个数。图像被表示为,其中和是图像的大小,代表的是虚拟相机的视角。我们将和记作虚拟相机的内参和外参。这种虚拟配置可作为训练和推理的标准化坐标系,使模型能够在不同的物理相机设置中一致运行。
虚拟相机映射
在这一部分中,我们采用虚拟相机映射的方法将来自多个相机视图的点投影到虚拟相机视图上,这个过程的目标是学习一种转换函数,用于以做小的误差将来自相机的图片映射到虚拟相机当中。
Ground-aware Assumption:对于虚拟视角下的一个像素坐标,它在虚拟相机坐标系下的3D坐标是是根据图像中像素的位置和深度假设计算得出的。假设相机的高度是,相机的焦距是和,主点是。我们首先将所有像素投影到地面,以计算虚拟相机框架中 3D 坐标的初始假设

计算到光学中心的欧几里得距离,然后我们比较欧几里得距离和阈值的关系,如果距离小于阈值,与图像中相应像素相连的点被假定在地面上,。如果欧几里得距离大于设定的阈值,我们假设这些点位于一个圆柱形表面上,与相机光学中心的距离为固定的 D0。在这种情况下,3D 坐标计算方式如下

Point-wise Projection:一旦在虚拟相机坐标系下的3D坐标被计算出来,我们利用外参将点转换到世界坐标系中。接下来,我们使用原始相机外参的逆矩阵将点从世界坐标系转换到原始的相机坐标系下。最后,我们使用其内参矩阵将该点投影回原始相机二维图像平面上。这提供了原始视角下的像素坐标与虚拟相机视角下的像素坐标的对应关系。我们将表示为基于到虚拟相机光学中心 的欧几里得距离,从第 i 个原始视图中的从到 的投影变换矩阵。
Image-level Transformation:我们将逐点的映射转换到整张图像上,对于第个虚拟视角上的每一个像素,我们计算基于映射矩阵的第个原始相机视角相应的像素坐标。第个原始相机的整张图片被warp到了虚拟视角下。
Blending Multiple Views:由于单个虚拟视图中的每个像素可能都有来自各个原始视图的对应像素,因此在将每个原始视图转换为虚拟视图后,我们将所有转换后的图像合并以形成最终的输出图像。这种混合是通过计算所有投影视图的加权和来实现的

其中,是总体的权重,是第个原始视角的混合权重。权重可以基于诸如原始视图和虚拟视图之间的角距离或相机的接近度等因素。我们在下面的伪代码中介绍了详细的计算过程。

虚拟相机映射误差
为了评估虚拟相机投影方法在 3D 物体检测任务中的准确性,我们提出了一种基于虚拟和原始相机视图之间的角度差异的加权投影误差度量。该方法考虑了角度偏差和与相机光学中心的距离,以提供更稳健的误差评估。
Angle Computation:给定一个 3D 边界框信息的驾驶场景,对于每个 3D 边界框,我们使用相机的内参和外参将每个角点转换到原始相机坐标系当中。然后,我们使用warp的逆过程来找到每个角点在虚拟相机视图中的对应像素。我们计算相对于虚拟相机光学中心的俯仰角和偏航角。

接下来,对于相同的角点,我们直接投影到虚拟视图,然后俯仰角和偏航角的计算如下

Angle Error Calculation:对于每个角点,我们计算原始相机投影和虚拟相机中对应点之间的角度误差。我们使用每个角点与原始相机光学中心的距离作为权重。3D 边界框的总体误差是通过将其八个角点的加权误差相加得出的。我们将所有 3D 边界框的投影误差相加,以计算总投影误差。

优化虚拟相机配置
给定一组多相机系统,我们的目标是设计一个统一的虚拟相机配置,以最小化所有原始相机配置的重新投影误差。为了实现这一点,我们采用基于协方差矩阵自适应进化策略的启发式优化来找到一组优化的虚拟相机配置。
Objective Function:给定具有不同多摄像头配置的多个驾驶感知系统,所有系统的总误差表示为。我们的目标是通过基于 CMA-ES 的优化方法迭代采样和更新虚拟相机参数,从而最大限度地减少误差。
Optimization Method:我们的优化策略首先定义一个多元正态分布,整个的优化过程可以用数学形式表示如下。

其中,是最佳方案的数量,是根据解决方案性能决定的权重。跟踪成功优化步骤方向的演化路径更新为

其中,是是更新协方差矩阵的学习率。协方差矩阵 C 定义相机配置的分布形状,每次迭代时都会进行如下调整

类似地,步长的演化路径也会更新,然后全局步长也会调整,以平衡探索和利用:

我们在下面的算法中给出了详细的优化过程

实验结果&评价指标
在本次实验中,我们采用了自动驾驶汽车中几种常用的摄像头配置情况,这些配置具有不同的摄像头数量、位置和视野。这些摄像头的配置情况可以用下图进行说明,我们还包括 nuScenes 数据集的原始配置,其中包含五个 70° 摄像头和一个 110° 摄像头。

我们进行了相关的实验来验证我们提出的UniDrive算法模型的有效性,相关的实验结果如下表所示。


通过上表的实验结果可以看出,我们展示了BEVFusion和 UniDrive 的 3D 目标检测结果。这些模型在一种相机配置上进行训练,并在其他不同的相机配置上进行测试。表 1相关的实验结果表明,BEVFusion算法模型在跨相机配置任务上部署时的性能会大幅下降,在其他配置上几乎无法使用。如表 2 的实验结果所示,我们使用即插即用的UniDrive 框架训练模型。与 BEVFusion相比,检测性能得到显着提高。我们的方法在跨相机配置任务上仅经历很小的性能下降。
此外,为了更加直观的展示我们算法模型的有效性,我们在下图中展示了更多模型检测结果,全面展示了我们框架的有效性。

此外,为了证明优化在 UniDrive 中的重要性,我们在上图中比较了优化的虚拟摄像头配置和直观配置之间的感知性能。直观的虚拟摄像头配置将所有摄像头置于车顶的中心。如图所示,虽然与 BEVFusion相比,直观设置(未优化)也显着改善了跨摄像头配置感知性能,但它对某些配置表现出明显的偏好,而对其他配置的表现不佳。相比之下,优化的虚拟摄像头参数表现出更大的适应性,在各种配置中表现出相对一致的性能。这对于自动驾驶中多个多摄像头感知系统的并发开发至关重要。
我们也验证了摄像头高度对于模型性能的影响。摄像头垂直位置的变化会显著影响感知性能,因为不同高度的摄像头会捕捉具有不同几何特征的图像。我们专门针对 1.6 米、1.4 米、1.8 米和 2.5 米的不同摄像头高度进行了实验。我们在1.6 米上训练模型,并在其他配置上进行测试。如下图所示。面对不同的摄像头高度,BEVFusion的性能大幅下降超过 10%。相比之下,UniDrive 在不同摄像头高度上的性能显著提高,表现出增强的稳健性,性能仅下降 3.0%。

结论
在本文中,我们提出了UniDrive算法框架,用于增强以视觉为中心的自动驾驶模型在不同摄像头配置中的泛化能力。在CARLA 中的大量实验验证了我们提出的UniDrive的有效性以及强大的泛化能力。此外,我们的框架不仅可以作为现有 3D 感知模型的即插即用模块,而且为更通用、更可扩展的自动驾驶解决方案提供了可能。
『自动驾驶之心知识星球』欢迎加入交流!重磅,自动驾驶之心科研论文辅导来啦,申博、CCF系列、SCI、EI、毕业论文、比赛辅导等多个方向,欢迎联系我们!
① 全网独家视频课程
端到端自动驾驶、仿真测试、自动驾驶C++、BEV感知、BEV模型部署、BEV目标跟踪、毫米波雷达视觉融合、多传感器标定、多传感器融合、多模态3D目标检测、车道线检测、轨迹预测、在线高精地图、世界模型、点云3D目标检测、目标跟踪、Occupancy、CUDA与TensorRT模型部署、大模型与自动驾驶、NeRF、语义分割、自动驾驶仿真、传感器部署、决策规划、轨迹预测等多个方向学习视频(扫码即可学习)
② 国内首个自动驾驶学习社区
国内外最大最专业,近4000人的交流社区,已得到大多数自动驾驶公司的认可!涉及30+自动驾驶技术栈学习路线,从0到一带你入门自动驾驶感知(端到端自动驾驶、世界模型、仿真闭环、2D/3D检测、语义分割、车道线、BEV感知、Occupancy、多传感器融合、多传感器标定、目标跟踪)、自动驾驶定位建图(SLAM、高精地图、局部在线地图)、自动驾驶规划控制/轨迹预测等领域技术方案、大模型,更有行业动态和岗位发布!欢迎扫描下方二维码,加入自动驾驶之心知识星球,这是一个真正有干货的地方,与领域大佬交流入门、学习、工作、跳槽上的各类难题,日常分享论文+代码+视频

③【自动驾驶之心】技术交流群
自动驾驶之心是首个自动驾驶开发者社区,聚焦感知、定位、融合、规控、标定、端到端、仿真、产品经理、自动驾驶开发、自动标注与数据闭环多个方向,目前近60+技术交流群,欢迎加入!扫码添加汽车人助理微信邀请入群,备注:学校/公司+方向+昵称(快速入群方式)
④【自动驾驶之心】全平台矩阵