专栏算法工具链bevformer算法模型详细解读

bevformer算法模型详细解读

Vincent2025-12-09
89
0

BEVFormer:基于鸟瞰图的时空特征融合框架

1. 研究背景与动机

1.1 从3D到4D:引入时序维度的必要性

传统的BEV(Bird's Eye View,鸟瞰图)特征可以视为三维空间表征。然而,自动驾驶场景的本质是一个动态过程,单纯的空间信息无法充分描述环境的演变规律。
时序信息的价值:
运动预测:通过历史轨迹推断未来位置
速度估计:基于连续帧计算物体运动速度
遮挡处理:利用时间连续性补全被遮挡的目标
意图推断:从历史行为模式推测交通参与者的未来动作

因此,将BEV特征扩展到4D空间(3D空间+时间维度)成为提升感知能力的关键方向。

1.2 多源时序特征融合面临的挑战

在构建4D特征表示时,需要解决以下核心问题:

  1. 自车运动补偿(Ego-Motion Compensation)

问题:车辆持续运动导致不同时刻的坐标系不一致
解决:需要将历史帧特征变换到当前帧坐标系
2. 传感器时间同步(Temporal Alignment)
问题:不同传感器采样频率不同,存在时间偏移
解决:时间戳对齐与插值策略
3. 空间坐标统一(Spatial Alignment)
问题:多视角相机、多传感器具有不同的坐标系
解决:统一映射到BEV参考坐标系
4. 学习化对齐机制
传统方法:手工设计几何变换规则
现代方案:通过可学习模块自动学习对齐策略

1.3 BEV表示的核心优势

设计理念:
BEV特征空间相当于在"上帝视角"下重建环境的统一表征,其关键特性包括:

可配置的空间范围

根据任务需求自定义感知区域(如50m×50m)
灵活调整空间分辨率与计算成本的平衡

规则化的网格结构

将连续空间离散化为均匀网格
网格精度(如0.5m/格)直接影响定位准确度

任务无关的通用表示

检测、分割、预测等下游任务共享同一特征
实现端到端的多任务学习

效率与精度的权衡

挑战:高分辨率BEV需要巨大计算量
方案:BEVFormer通过稀疏注意力机制破解这一难题

1.4 BEVFormer的技术创新

核心贡献:
纯视觉方案:无需激光雷达,仅依赖环视相机
双重注意力:空间交叉注意力 + 时序自注意力
三重优化:计算复杂度、特征映射、空间分辨率
框架特点:
空间注意力(Spatial Cross-Attention):实现图像到BEV的特征投影
时序注意力(Temporal Self-Attention):融合历史帧信息
可变形注意力(Deformable Attention):降低计算复杂度

这一设计成为后续BEV方法的标准范式。

1.5 数据组织形式

输入张量维度解析:

关键设计考量:

  • 多帧队列(T):通过时间冗余提升鲁棒性
  • 环视覆盖(N=6):实现360°全方位感知
  • 纯视觉方案:不依赖激光雷达等其他传感器

2. 方法论总结

BEVFormer的创新在于将Transformer架构引入BEV特征构建,通过空间-时间解耦的注意力机制,在保持计算效率的同时实现了高质量的4D特征融合。其设计思想为后续研究(如BEVFormer v2、BEVDet系列)奠定了基础。

技术路线:

Description

2.6 时序融合

自动驾驶系统输入的是时间上连续的数据,比如视频流。因此,如何充分利用时序上的信息,一直以来都是感知方向的研究热点。对于2D图像序列(也就是视频流)来说,相机的运动会导致每帧图像都位于不同的透视坐标系之下。时序融合的核心是要找到不同帧数据之间的空间对应关系,这种对应关系在透视坐标系下难以进行有效的建模,对应的视觉特征也很难进行融合。因此,在2D视觉感知中,时序融合通常会在决策层进行,比如在单帧目标检测的基础上进行目标跟踪,或者采用OpticalFlow来建模多帧之间的关系。

与透视视图不同,在BEV视图下进行时序融合有着天然的优势。这是因为相机和目标的运动在BEV坐标下都是Homogenous的。举例来说,假设一个目标在两帧之间移动了1米的距离,那么无论这个目标在BEV坐标下的什么位置,这个距离都是1米。而在图像坐标下,这个距离(也就是像素距离)则依赖于目标在图像的具体位置:近处距离大,远处距离小。

在BEV坐标下,我们可以通过简单的平移和旋转(根据自车运动信息)来对齐不同帧的BEV坐标系,这就给特征层的时序融合打开了方便之门。此外,在BEV坐标下,目标的运动建模也非常直观,因此目标级别的融合相对比较容易,比如基于卡尔曼滤波或者基于稀疏query的目标跟踪

2.背景

2.1 为什么视觉感知要用bev?

相机图像描述的是一个2D像素世界,然而自动驾驶中利用相机感知结果的后续决策、路径规划都是在车辆所处的3D世界下进行。由此引入的2D和3D维度不匹配,就导致基于相机感知结果直接进行自动驾驶变得异常困难。
这种感知和决策规划的空间维度不匹配的矛盾,也体现在学开车的新手上。倒车泊车时,新手通过后视镜观察车辆周围,很难直观地构建车子与周围障碍物的空间联系,容易导致误操作剐蹭或需要尝试多次才能泊车成功,本质上还是新手从2D图像到3D空间的转换能力较弱。基于相机图像平面感知结果进行决策规划的自动驾驶AI,就好比缺乏空间理解力的驾驶新手,很难把车开好。

实际上,利用感知结果进行决策和路径规划,问题还出现在多视角融合过程中:在每个相机上进行目标检测,然后对目标进行跨相机融合。如2021 TESLA AI Day给出的图1,带拖挂的卡车分布在多个相机感知野内,在这种场景下试图通过目标检测和融合来真实地描述卡车在真实世界中的姿态,存在非常大的挑战。

为了解决这些问题,很多公司采用硬件补充深度感知能力,如引入毫米波雷达或激光雷达与相机结合,辅助相机把图像平面感知结果转换到自车所在的3D世界,描述这个3D世界的专业术语叫做BEV map或BEV features(鸟瞰图或鸟瞰图特征),如果忽略高程信息,就把拍扁后的自车坐标系叫做BEV坐标系(即鸟瞰俯视图坐标系)。
但另外一些公司则坚持不引入深度感知传感器,他们尝试从本质入手,基于视觉学习得到从图像理解空间的能力,让自动驾驶AI系统更像老司机,例如TESLA。Elon Musk认为:人类不是超人,也不是蝙蝠侠,不能够眼放激光,也没安装雷达,但是通过眼睛捕捉到的图像,人类反复练习就可以构建出对周围世界的3D空间理解能力从而很好地掌握驾驶这项能力,那么要像人一样单纯利用眼睛(相机)进行自动驾驶就必须具备从2D图像平面到3D自车空间(BEV)的转换能力。
传统获取BEV map/features的方法有局限性,它一般是利用相机外参以及地面平面假设,即IPM(Inverse Perspective Mapping)方法,将图像平面的感知结果反投影到自车BEV坐标系。Tesla以前的方案也是这样,然而当车辆周围地面不满足平面假设,且多相机视野关联受到各种复杂环境影响的时候,这类方法就难以应付。

针对IPM方法获取BEV遇到的困难,TESLA自动驾驶感知负责人Andrej Karparthy的团队直接在神经网络中完成图像平面到BEV的空间变换,这一改变成为了2020年10月发布的FSD Beta与之前Autopilot产品最显著的差别。TESLA利用transformer生成BEV Featrues,得到的Features通道数是256(IPM方法最多保留RGB3个channel),这样能极大程度地保留图像信息,用于后续基于BEV Features的各种任务,如动、静态目标检测和线检测等。

2.2 生成BEV视角的方法有哪些?为何选用Transformer呢?

把相机2D平面图像转换成BEV视角的方法有两种:视觉几何方法和神经网络方法。

视觉几何方法:基于IPM进行逐像素几何投影转换为BEV视角,再对多个视角的部分BEV图拼接形成完整BEV图。此方法有两个假设:1.路面与世界坐标系平行,2.车辆自身的坐标系与世界坐标系平行。前者在路面非平坦的情况下并不满足,后者依赖车辆姿态参数(Pitch和Roll)实时校正,且精度要求较高,不易实现。

神经网络方法:用神经网络生成BEV,其中的关键要找到合适的方法实现神经网络内部Feature Map空间尺寸上的变换。

实现空间尺寸变换的神经网络主流操作有两种方法,如图2所示:MLP中的Fully Connected Layer和Transformer Cross Attention(图片引用自《超长延迟的特斯拉AI Day解析:讲明白FSD车端感知》)。

DescriptionDescription

TESLA在2021年AI Day上仅介绍了用Transformer转换BEV Features的技术思想,并未披露更多实现细节。论文BEVFormer充分研究了TESLA的技术思想后,利用Transformer融合图像的时、空特征,得到BEV Features,与TESLA的关键方法、实现效果都非常接近。BEVFormer既通过论文披露了详尽方法,又在2022年6月开源了工程,接下来就围绕BEVFormer介绍如何通过Transformer获取BEV Features。

3. Method/Strategy——BEVFormer

3.1 Overall Architecture

如下图3所示:BEVFormer主体部分有6层结构相同的BEVFormer encoder layers,每一层都是由以transformer为核心的modules(TSA+SCA),再加上FF、Add和Norm组成。BEVFormer encoder layer结构中有3个特别的设计:BEV Queries, Spatial Cross-attention(SCA)和Temporal Self-attention(TSA)。其中BEV Queries是栅格形可学习参数,承载着通过attention机制在multi-camera views中查询、聚合的features。SCA和TSA是以BEV Queries作为输入的注意力层,负责实施查询、聚合空间features(来自multi-camera images)和时间features(来自历史BEV)的过程。

下面分步骤观察BEV完整模型的前向推理过程:
Description
Description

3.2 BEV Queries

BEVFormer采用显性定义BEV的方式,BEV Queries就是其中的显性BEV features。

可从3个概念循序渐进地认识/理解BEV Queries:BEV平面 → BEV 感知空间 → BEV Queries。

Description
Description

3.3 SCA: Spatial cross-attention

如上图(b)所示,作者设计了一种空间交叉注意力机制,使 BEV queries 从多个相机的image Features中提取所需信息并转换为BEV Features。

每个BEV栅格的query在image features的哪些范围提取信息呢?这里有3个方案:

一、从image features的所有点上提取信息,即global attention。

二、从BEV栅格在image features的投影点上提取信息。

三、从BEV栅格在image features的投影点及其周围取信息,即deformable attention。

由于使用了多尺度图像特征和高分辨率 BEV 特征(200x200),如果采用方案一 global attention ,会带来无法负担的计算代价(显存和计算复杂度)。但是,方案一完全用不到相机内外参,这算是它独有的优势。

方案二依赖非常精确的相机内、外参,且不能充分利用image features上的局部区域信息。

Description
Description

3.4 TSA: Temporal self-attention

Description
Description
笔记: attention weights 的值小于1,相当于设置了遗忘门。
综合3.3和3.4节,观察6个 BEVFormer Encoder Layers的完整结构会发现, BEV query 既能通过 spatial cross-attention 聚合空间特征,又能通过 temporal self-attention 聚合时序特征,这个过程会重复多次,让时空特征融合能够相互促进,最终得到更好的融合BEV features。
Description
Description
算法工具链
技术深度解析前沿技术
评论0
0/1000