专栏感知纯视觉自动驾驶标准范式系列一:BEV(Bird's Eye Vi

纯视觉自动驾驶标准范式系列一:BEV(Bird's Eye Vi

巴山夜雨2026-03-03
23
0
在自动驾驶的纯视觉路线下(BEV+Occupancy+端到端Action),一套简洁而强大的技术链路逐渐成为行业共识:以多摄像头图像为输入,通过Transformer构建统一BEV(Bird's Eye View:鹰眼视角即鸟瞰图)特征空间,再由Occupancy占据网格完成稠密三维环境重建,最终直接输出车辆控制 Action,实现从感知、环境建模到决策动作的全链路一体化。
本系列会从原理、架构与技术关系出发,拆解BEV、Occupancy与Action如何协同,构成新一代纯视觉自动驾驶的核心范式。整条链路的流程图如下,本文重点介绍第一部分BEV。
图片

图 1 纯视觉处理全链条

BEV(Bird's Eye View:鸟瞰图)

(一)技术思想

我们还是找一篇相对比较新的BEV论文,该论文由南京大学、上海AI实验室以及香港大学的同学们共同完成,主要讲的就是BEV作为统一特征表示在自动驾驶的感知领域所起到的关键作用。

图片

图 2 BEVFormer总体介绍

基于多摄像头图像的3D视觉感知任务(包括3D检测地图分割)是自动驾驶系统的核心。在这项工作中,论文里提出了一个名为BEVFormer的新框架,它利用时空Transformer学习统一的BEV表征,以支持多种自动驾驶感知任务。
BEVFormer是首个基于纯摄像头(Camera-only)、利用Transformer架构构建统一BEV表征的框架,它的核心创新在于:
  • 首次将时空Transformer引入BEV感知,同时融合空间多视角信息与时间序列信息。

  • 提出了“BEV查询(BEV Queries)”的范式,通过预定义的网格状查询,直接从多摄像头图像中 “查找并聚合” 时空信息,生成统一的BEV特征图。

  • 在nuScenes测试集上取得了56.9% NDS的成绩,超越了此前的纯视觉 SOTA,并与激光雷达基线性能相当,证明了纯视觉方案的巨大潜力。

空间注意力(Spatial Attention)

每个BEV查询,通过空间交叉注意力cross attention,在当前时刻的多摄像头图像中,查找对应位置的视觉特征。

时间注意力(Temporal Attention)

每个BEV查询,通过时间自注意力self attention,与上一时刻的BEV特征进行交互,融合历史信息。

空间查询包含多个维度的信息,因此采用cross attention用于空间信息的聚合,而时间查询更像是一个时序序列,因此采用了self attention以循环方式融合历史BEV信息。从技术选型上,也非常合理,符合业务实际的场景与特点。

统一的BEV表征可以理解成自动驾驶系统里的一张“动态数字地图”,它是把所有传感器信息(多摄像头、甚至激光雷达、毫米波雷达)都融合成的一个自车视角下的2D俯视特征图,是后续所有感知、预测和决策任务的 “共同语言”。在下面第二部分Occupancy部分就会看到。

需要强调的是,BEV表征虽然是一张2D的结构化网格图,但是里面保存的并不是像素!而是高维特征向量,这些特征向量里面编码了和自动驾驶相关的所有细节信息,例如这个位置有没有车,有没有障碍物,有车的话,车速多少,方向是什么等等。而且,2D里面还隐含了3D的信息(如图1),用于后续Occupancy的3D还原。

如图3所示,这个统一表征是基础中的基础,除了上面提到的时空统一之外,还包含多传感器统一(论文里纯视觉只有Camera,但是架构是支持雷达的),特别是支持多任务统一,这种“柔性架构”的设计才是最重要的,一个架构直接把3D目标检测和图像分割两大重要任务都完成了。

图片

图 3 BEV统一表征

(二)技术架构

图片

图 4 BEVFormer总体架构

如图4所示,BEVFormer的编码器Encoder层由6个相同的Transformer块堆叠而成,每个块包含两个核心注意力层。整体架构其实还是比较简单易懂的,核心就是利用Encoder学习特征。

输入部分:

  • 多摄像头图像

    在时间戳t输入的多视角图像,经Backbone提取为Multi-Camera Features F_t,直接输入到空间交叉注意力。

  • BEV Queries Q

    预定义的网格状查询,代表自车周围的BEV空间位置。


  • History BEV B_{t-1}

    上一时刻的BEV特征图,用于时序融合。


编码器层:

除了时间和空间注意力之外,其他都是Transformer标准操作。

  • Temporal Self-Attention(时间自注意力)

    当前BEV查询与上一时刻的BEV特征交互,融合历史信息。


  • Add & Norm

    残差连接与层归一化。


  • Spatial Cross-Attention(空间交叉注意力)

    BEV查询与多摄像头图像特征交互,聚合空间信息。


  • Add & Norm

    残差连接与层归一化。


  • Feed Forward

    前馈网络,进一步变换和学习特征。


  • Add & Norm

    残差连接与层归一化。


输出部分:

  • 经过6个编码器层后,输出当前时刻的BEV特征Current BEV B_t。
  • 该特征图直接输入到Det & Seg Heads,用于3D检测、地图分割等下游任务。Det就是Detection,即3D检测,Seg就是Segmentation,即地图分割。

此外,论文里还提到了两个相关创新点被BEVFormer借鉴了,其实更像是一个优化的策略。DETR就是Detection Transformer,顾名思义,专门用来做目标识别的Transformer。而Deformable DETR就是可变形注意力,对应编码器层的Spatial Cross-Attention(空间交叉注意力)。

核心优化点就是,空间交叉注意力没有对整张图像做全局注意力,而是像 Deformable DETR一样,只在每个BEV查询对应的3D点反投影到图像上的局部区域(ROI)内采样特征,大幅提升效率。

至于Camera-based 3D Perception的BEV路线,核心思路就是先将图像特征转换为BEV特征,再从俯视视角预测3D框。这比直接基于2D图像检测基础上,直接预测3D框的效果要好很多,因为纯2D的检测结果,难以处理遮挡和深度模糊问题。

BEVFormer也正是在这一背景下,提出了时空Transformer的新范式,直接从多摄像头图像中生成统一的BEV表征,解决了传统方法在效率、精度和时序融合上的痛点。
图片

图 5 BEVFormer优化思想

空间交叉注意力(Spatial Cross-Attention, SCA)

SCA的核心是:每个BEV查询,只和“能看到它”的摄像头图像局部区域交互,从而避免全局注意力的巨大开销。

具体公式如下,里面涉及到的核心就是先3D采样(pillar-like query,见图4的右上角图b,就是在柱子的不同高度进行采样),然后将采样点投影到2D去判断坐标是否命中Query区域,即是否hit views,是的话就参与计算。这样,每个BEV查询就只与这些 “命中视图” 交互,大幅减少计算量。

下面的公式的意思就是,对所有命中视图|Vhit|和所有3D参考点Nref的可变形注意力DeformAttn结果取平均,得到最终的SCA空间交叉注意力输出。其实就是一个二层循环,首先遍历所有命中的坐标点|Vhit|集合,然后基于某个坐标点Vi,再去遍历所有采样的参考点i。

图片
时间自注意力(Temporal Self-Attention, TSA

BEVFormer设计了时间自注意力TSA,通过融合上一时刻的历史BEV特征,让当前的BEV表征更具时序鲁棒性。具体公式如下,TSA比SCA简单,这里就不再赘述了,感兴趣同学可以去论文里找细节。

图片

有一点需要强调一下,无论是SCA还是TSA都离不开Query,特别是在模型训练的阶段,有了Query的指引(比如“车正前方5米”、“车左侧3米”等),模型才能快速的学习到BEV表征,而且会和Query(坐标)相关联。下图6是BEV表征生成的总流程,我们清晰地看到Query在其中的作用,这和Transformer其实是一样的。


图片

图 6 BEV表征生成的总流程

(三)实验数据

按照惯例,直接贴出论文的实验结果,效果还是非常好的!

图片
图片

其实我们仔细想想,为什么BEV叫鸟瞰视图,就是它把三维信息通过“俯视”压缩成二维了(类似机械制图的俯视图),也就是把深度信息给融合到2D图片里面了,这为接下来Occupancy占据网络恢复3D空间,提供了丰富的信息来源。


图片

图 7 uniAD:统一自动驾驶全流程

我们今天介绍了BEV,下一次,我们介绍occupancy占据网格。

文章转载自公众号:AI 智安前沿

作者:Michael Yan

感知
前沿技术
评论0
0/1000