自动驾驶汽车要在我们这个混乱的世界中穿行,仅有 GPS 和规则是远远不够的——它必须能够看到理解其周围环境的丰富三维细节。除了检测汽车和行人,它还应该能识别出它们所占据的空间、地形的轮廓、人行道的位置以及头顶的树冠。这就是三维语义占据预测 (3D Semantic Occupancy Prediction) 的核心: 构建一个完整的、带标签的三维环境地图。

传统上,激光雷达 (LiDAR) 是完成这项任务的首选技术。LiDAR 传感器发射激光束,直接捕捉周围环境的三维点云。然而,LiDAR 价格昂贵,而且数据可能稀疏,尤其是在远距离或被遮挡区域。摄像头则价格低廉、无处不在,并且能捕捉到激光雷达所缺失的丰富纹理和颜色信息。但挑战在于,二维图像是三维现实的扁平切片——如何可靠地恢复缺失的那一维,是一个难题。

最近的论文《Tri-Perspective View for Vision-Based 3D Semantic Occupancy Prediction》提出了一种新方法来克服这一挑战。作者引入了三视角视图 (Tri-Perspective View, TPV) 这一全新的三维表示方法,并提出了一个高效的、基于 Transformer 的模型 TPVFormer 来构建它。结果令人瞩目: 仅用摄像头图像,TPVFormer 就能生成密集、准确的三维语义地图——有时比训练时使用的稀疏激光雷达数据更全面。

一张图表,展示了 TPVFormer 如何将环视摄像头的 RGB 图像作为输入,并预测出详细的三维语义占据地图,然后与真值进行比较。预测地图在汽车、植被和可行驶路面等多种物体上都展现了令人惊叹的细节。

图 1: 基于视觉的占据预测流程。TPVFormer 接收 RGB 输入,并利用稀疏的激光雷达监督预测所有体素的语义占据情况。

在本文中,我们将探讨 TPV 背后的动机,解析其设计,剖析 TPVFormer 的架构,并审视实验结果,这些结果表明,在全场景理解方面,视觉可能足以与激光雷达相媲美。


表示三维空间: 现有方法

为了理解 TPV 的创新之处,我们先看看自动驾驶中常用的两种场景表示方法:** 体素网格 (Voxel Grids)** 和 鸟瞰图 (Bird’s-Eye-View, BEV)

体素网格: 三维像素方案

最直接的三维场景表示方法是将其划分为均匀的立方体——即体素 (voxels)。每个体素存储一个特征向量,描述其内容: 空闲空间、汽车的一部分、一棵树、道路等。

体素网格表现力强,能保留完整的三维细节。点 \((x, y, z)\) 的特征就是包含该点的体素的特征:

\[ \mathbf{f}_{x,y,z} = \mathbf{v}_{h,w,d} = \mathcal{S}(\mathbf{V}, \mathcal{P}_{vox}(x, y, z)) \]

然而,体素网格的计算成本极高。一个 100 米 × 100 米 × 8 米 的场景,若分辨率为 20 厘米,将包含 \(500 \times 500 \times 40 = 10{,}000{,}000\) 个体素。其立方复杂度 \(O(HWD)\) 使高分辨率体素在实时自动驾驶中难以应用。

鸟瞰图 (BEV): 扁平化世界

考虑到大多数驾驶相关物体都在地面附近,许多系统会压缩高度维度,转而使用 BEV: 一种俯视的二维网格图。

在 BEV 中,每个二维单元格代表一个覆盖所有高度的垂直“柱”。点 \((x,y,z)\) 映射到 BEV 特征 \(\mathbf{b}_{h,w}\):

\[ \mathbf{f}_{x,y,z} = \mathbf{b}_{h,w} = \mathcal{S}(\mathbf{B}, \mathcal{P}_{bev}(x, y)) \]

BEV 将复杂度降低到 \(O(HW)\),并且适合检测地面目标等任务。但它丢失了高度信息——树枝和它下方的地面会落在同一单元格——限制了精细的场景理解。

问题是: 我们能否既保留体素级别的表达力,又具备 BEV 的高效性?

Voxel、BEV 与本文提出的 TPV 表示比较。Voxel 网格是完整的三维立方体,BEV 是单一的二维地平面,而 TPV 使用三个正交平面来表示车辆周围的三维空间。

图 3: 体素网格细节全但计算成本高;BEV 高效却丢失高度信息。TPV 引入三个正交平面,实现平衡的表示。


三视角视图 (TPV): 观察场景的三个窗口

作者的解决方案是用三个正交特征平面表示三维场景:

  1. 俯视 (HW 平面) — 类似 BEV 地图。
  2. 侧视 (DH 平面) — 从驾驶员一侧观看。
  3. 前视 (WD 平面) — 从车头方向观看。

形式化:

\[ \mathbf{T} = [\mathbf{T}^{HW}, \mathbf{T}^{DH}, \mathbf{T}^{WD}] \]

其中:

  • \(\mathbf{T}^{HW} \in \mathbb{R}^{H \times W \times C}\)
  • \(\mathbf{T}^{DH} \in \mathbb{R}^{D \times H \times C}\)
  • \(\mathbf{T}^{WD} \in \mathbb{R}^{W \times D \times C}\)

存储复杂度为 \(O(HW + DH + WD)\),仍为二次方。

获取点 \((x,y,z)\) 的特征:

  1. 投影: 将点分别投影到 \((h,w)\)、\((d,h)\) 和 \((w,d)\) 坐标。
  2. 采样: 用双线性插值从各平面采样 \(\mathbf{t}_{h,w}\)、\(\mathbf{t}_{d,h}\)、\(\mathbf{t}_{w,d}\)。
  3. 聚合: 将它们相加: \[ \mathbf{f}_{x,y,z} = \mathcal{A}(\mathbf{t}_{h,w}, \mathbf{t}_{d,h}, \mathbf{t}_{w,d}) \]

这样,TPV 能为每个三维点分配唯一特征,高效地恢复类似体素的表达能力。


TPVFormer: 将视觉信息映射到 TPV 空间

TPV 很强大,但如何用二维图像特征填充这些平面?答案是 TPVFormer,一个为此目的设计的 Transformer 编码器。

TPVFormer 的整体架构。它接收多摄像头图像,经过主干网络提取特征,对 TPV 平面进行图像交叉注意力提升,并进行跨视图融合。最后,预测头生成语义占据。

图 4: TPVFormer 架构: 多摄像头主干、图像交叉注意力提升二维特征、跨视图混合注意力融合平面,以及预测头。

TPV 查询 (Queries)

TPVFormer 为每个平面网格单元定义一个查询 (query)——可学习参数,代表场景中对应的空间区域。

图像交叉注意力 (ICA): 从二维提升到三维

对于每个 TPV 查询:

  1. 确定其在真实场景中的柱状区域。
  2. 沿柱体在三维空间采样参考点。
  3. 用相机标定将这些点投影到各环视图像。
  4. 可变形注意力 (deformable attention) 高效采样并聚合周围图像特征。

数学表达:

\[ \operatorname{ICA}(\mathbf{t}_{h,w}, \mathbf{I}) = \frac{1}{|N_{h,w}^{val}|} \sum_{j \in N_{h,w}^{val}} \operatorname{DA}(\mathbf{t}_{h,w}, \mathbf{Ref}_{h,w}^{pix,j}, \mathbf{I}_j) \]

其中 \(DA\) 是可变形注意力,在有效摄像头 \(N_{h,w}^{val}\) 上聚合。

跨视图混合注意力 (CVHA): 融合多视角

ICA 后,每个平面的信息相互独立。CVHA 允许查询关注其他平面对应区域,例如俯视图可从侧视图获取高度信息,从而形成一致的三维上下文。

TPVFormer 堆叠多个模块:

  • 前期:** 混合交叉注意力模块** (ICA + CVHA)。
  • 后期:** 混合注意力模块** (仅 CVHA) 精炼特征。

最终得到三个语义丰富且相互一致的平面。


实验: TPVFormer 的测试与评估

作者在 nuScenesSemanticKITTI 两个数据集上,针对三个任务测试了 TPVFormer:

1. 基于视觉的三维语义占据预测

TPVFormer 用稀疏激光雷达标签训练,仅使用摄像头图像作为输入。测试时,为所有体素预测标签。

训练与测试流程示意图。模型用 TPVFormer 创建 TPV 平面,训练用稀疏激光雷达监督,测试时进行密集预测。

图 2: 训练时用稀疏激光雷达标签,测试时进行密集语义占据预测。

定性结果

预测结果密集、连贯且几何准确——常能捕捉稀疏激光雷达遗漏的物体。

四个街景的定性对比: 摄像头输入与对应密集语义预测。TPVFormer 能识别汽车、人行道、植被以及自行车等稀有类别。

图 5: TPVFormer 的密集预测结果展现了超越稀疏激光雷达真值的细节。

TPV 一大优势是可在任意分辨率下查询,无需重新训练。分辨率越高,细节越丰富:

从 50×50×4 到 400×400×32 不同分辨率对比;高分辨率展现更清晰的物体形状。

图 6: 高分辨率预测可捕捉汽车和卡车等物体更精细的几何。


2. 激光雷达分割 (nuScenes)

任务是为给定激光雷达点预测语义标签——推理时不使用激光雷达,仅用图像查询。

表 1: TPVFormer-Base (摄像头输入) mIoU 达到 69.4,与基于激光雷达的 PolarNet 相当。

表 1: nuScenes 测试集激光雷达分割结果。TPVFormer 仅用摄像头就具备与激光雷达模型相当的竞争力。

TPVFormer-Base 的 69.4 mIoU 与 PolarNet 基于激光雷达的性能齐平——这是纯视觉方法首次做到。一项消融实验显示,TPV 显著优于 BEVFormer (验证集 68.9 对 56.2) ,凸显其优势。

表 4: TPVFormer 在相似分辨率下持续优于 BEVFormer,验证了三平面方法的有效性。

表 4: 分辨率/特征维度消融实验——TPVFormer 持续优于 BEVFormer。


3. 语义场景补全 (SemanticKITTI)

从 RGB 输入生成占据与语义标签的密集体素预测。

表 2: TPVFormer 在基于摄像头的方法中取得最佳 mIoU (11.26),超越 MonoScene,且效率更高。

表 2: 语义场景补全结果——TPVFormer 树立了新的摄像头方法基准。

TPVFormer 达到 11.26 mIoU,超越 MonoScene 的 11.08,同时参数更少 (6.0M vs 15.7M) 、计算量更低 (128G vs 500G FLOPS) 。


结论: 迈向视觉优先的三维感知

从六个摄像头视角生成的密集三维语义占据预测;自车居中。

图 7: 预测可视化: TPVFormer 基于摄像头输入为自车周围每个体素建模。

核心要点:

  1. TPV 兼顾平衡: 同时具备体素表达力与接近 BEV 的效率,实现精细细节而无立方成本。
  2. 视觉可媲美激光雷达: TPVFormer 的纯视觉性能已与强激光雷达基线相当,为更廉价、更灵活的感知方案打开大门。
  3. 稀疏到稠密的泛化: 虽训练于稀疏标签,TPVFormer 仍能预测密集高质量占据——对现实可扩展性至关重要。

TPVFormer 表明,重新思考三维表示方法可释放强大的视觉感知潜力。结合三种互补视角,TPV 能构建更完整的场景图——预示着未来自动驾驶汽车将像人眼一样,仅凭摄像头也能在三维中“看”得如此丰富。