Skip to content

필사 모드: SOTA 自动驾驶感知解析 — BEV、Occupancy、端到端

中文
0%
정확도 0%
💡 왼쪽 원문을 읽으면서 오른쪽에 따라 써보세요. Tab 키로 힌트를 받을 수 있습니다.

引言

自动驾驶是人工智能所面对的最具挑战性的物理世界问题之一。它必须每秒数十次地把握周围数百米内的状况,预测其他车辆和行人的运动,规划安全的路径,并真正驱动车辆行驶。一次失误就可能危及生命,因此对精度与安全性的要求极高。

本文考察自动驾驶系统的最新架构,尤其是理解世界的感知(perception)阶段。内容涵盖 BEV(Bird's-Eye-View,鸟瞰视角)感知、occupancy network、视觉中心与激光雷达融合之争、端到端学习,直至世界模型。这一领域中商用系统的细节大多未公开,且变化极快,因此本文不断言某家公司的具体方案,而是围绕架构原理与已公开的概念谨慎展开。

自动驾驶技术栈概览

自动驾驶软件通常被理解为一条分为若干阶段的流水线。

[传感器]  摄像头 / 激光雷达 / 雷达 / GPS / IMU
   |
   v
[感知 Perception]  检测周围物体、车道线、把握 3D 结构
   |
   v
[预测 Prediction]  预测其他车辆/行人的未来运动
   |
   v
[规划 Planning]  决定安全高效的路径/行为
   |
   v
[控制 Control]  生成转向/加速/制动指令
   |
   v
[车辆驱动]

本文聚焦感知阶段。如果感知出错,后续的预测、规划、控制都会跟着偏离,因此感知是整体安全的基石。不过近来也出现了把这些阶段整合为一体的端到端方法,本文稍后一并讨论。

顺带一提,自动驾驶的"自动化等级"通常划分为若干阶段:从驾驶员全权操作,到系统在特定条件下负责驾驶、人类保持待命,再到条件之内几乎不需要人工介入。等级越高,对感知与判断精度的要求就越陡峭地上升。本文不断言某个具体产品处于哪个等级,而是聚焦于任何等级下都通用的感知技术原理。

大局观:感知表示方式的演进

在深入细节之前,先概览一下感知表示方式是如何一路演进的。

[感知表示方式的演进脉络]
 2D 检测(图像上的方框)
        ->
 3D 边界框(逐物体的 3D 方框)
        ->
 BEV(俯视统一地图)
        ->
 Occupancy(含高度的 3D 占用)
        ->
 端到端(感知-预测-规划一体化学习)

这条脉络有两大方向。其一,表示方式越来越趋向三维化、且不再受限于预定义类别。其二,从单独优化感知,转向了对整体驾驶目标一并优化。下面依次审视每个阶段。

感知的根本课题

从 2D 图像到 3D 世界

摄像头拍到的是三维世界投影到二维平面上的图像。而驾驶所需要的,是"那辆车在我前方 20 米、右侧 3 米"这样的三维空间信息。因此感知的核心课题之一,就是从 2D 图像还原出 3D 空间。

[多台摄像头图像(2D)]
 前、后、左、右等多个方向
        |
        |  各自的视角与畸变都不同
        v
[统一的 3D 空间表示]
 在同一坐标系下把握物体位置

由于多台摄像头朝向不同方向,把它们合并到同一个一致的坐标系中就变得至关重要。下面要看的 BEV 表示方式,正是优雅地解决了这个问题。

BEV 感知

什么是 BEV

BEV 即 Bird's-Eye-View,指从上方俯视的鸟瞰视角。在自动驾驶中,BEV 感知是把多台摄像头图像转换为一张俯视平面地图(top-down)来表示的方式。

[多方向摄像头图像]              [BEV 表示(俯视地图)]

  前方摄像头 ↑                        北
  左侧 →   车   ← 右侧    →       西 [自车] 东
  后方摄像头 ↓                        南
                              周围车辆/车道线布置在网格地图上

BEV 的优势很明确。规划与控制归根到底是"在地图上要去哪里"的问题,所以俯视地图形式能自然衔接到下一阶段。同时,由于把多台摄像头合并到同一坐标系,也能不重复、一致地处理物体。

从图像转换到 BEV

核心技术是把多台摄像头的 2D 特征搬到 BEV 网格上。目前已知有两大代表性方向。

[方向 A:正向投影(Lift-Splat 系)]
 为每个像素预测深度分布,将其提升(lift)到 3D
 再抛洒(splat)到 BEV 网格上

[方向 B:反向查询(注意力/Transformer 系)]
 BEV 网格上的每个格子通过注意力机制查询
 "我该看哪些摄像头像素",从而取回特征

方向 A 以 LSS(Lift, Splat, Shoot)系列著称,方向 B 则如 BEVFormer,由 BEV 查询通过 Transformer 注意力参考图像特征。两者的目标都是把多台摄像头融合为一个 BEV。

时间信息的利用

BEV 感知不仅融合同一时刻多台摄像头的信息,还会融合过去帧的信息以提升性能。因为处理物体的运动(速度)或短暂被遮挡的物体,都需要时间上下文。将多个时间点的 BEV 特征对齐叠加,有助于区分静止物体与运动物体、并估计速度。

Occupancy Network

方框还不够

传统的 3D 检测把物体表示为 3D 边界框——"这里有一辆车,那里有一个行人"。然而道路上有许多不属于预定义类别的物体。散落在路面上的货物、形状特殊的施工车辆、突出的树枝等,都很难用"汽车"或"行人"方框来表示。

[边界框方式]
 只把预定义类别(车、人等)以方框形式检测出来
 → 可能漏掉类别之外的物体或异形物体

[Occupancy 方式]
 把空间划分为 3D 网格(voxel)
 让每个格子预测"有物体/空"
 → 与类别无关,把握空间的占用情况

3D 占用表示

occupancy network 把周围空间划分为细小的 3D 网格单元(voxel),预测每个单元是否被占用(是否存在物体)。进一步地,还可能一并预测被占用的单元属于哪一类(车辆、道路、建筑等)。这样一来,即便是预定义类别之外的物体,也能知道"那里的空间被占住了",这有利于安全。

occupancy 也可以看作 BEV 的扩展。如果说 BEV 是俯视的 2D 平面地图,那么 occupancy 就是包含高度信息的 3D 占用地图。这一表示方式近来在感知研究中备受关注,据悉商用系统中也运用了类似概念。

视觉中心 vs 激光雷达融合

自动驾驶感知领域一个由来已久的争论是传感器配置,大体可分为两大阵营。

激光雷达融合方案

激光雷达(LiDAR)通过激光直接测距,获得精密的 3D 点云(point cloud)。许多自动驾驶公司都采用激光雷达、摄像头、雷达并用的多传感器融合方案。

[激光雷达融合方案]
 激光雷达(精密测距) + 摄像头(色彩/纹理) + 雷达(恶劣天气/速度)
 融合多种传感器的优势,实现稳健感知
 - 优点:距离信息精确,在暗环境中表现强
 - 缺点:激光雷达成本高,传感器标定(calibration)复杂

视觉中心方案

与之相对的,也有仅靠摄像头进行感知的视觉中心(vision-only)方案。特斯拉公开推行以摄像头为中心的方案,这一点广为人知。不过各家公司具体的传感器配置与算法细节会随时间变化、公开范围也有限,因此本文只讨论"视觉中心方案确实存在"这一事实及其概念层面的利弊。

[视觉中心方案]
 主要仅靠摄像头进行 3D 感知
 - 优点:降低传感器成本,类似人类的视觉方式
 - 缺点:无法直接测量深度,依赖估计
        (借助前面所述的 BEV/occupancy 还原 3D)

在视觉中心方案中,必须由神经网络从摄像头图像中估计深度与 3D 结构。正因如此,前面提到的 BEV 转换、occupancy 预测等技术就变得尤为重要。哪一方更优越难以断言,更公平的看法是:这是对成本、安全、可扩展性之间权衡的不同判断。

传感器的分工

自动驾驶所用的主要传感器各有所长、也各有所短。因此并用多种传感器,可以互相弥补彼此的弱点。

[主要传感器的特性]
 摄像头    :擅长色彩/纹理/标志识别,测距是间接的
            在黑暗/逆光/恶劣天气中较弱
 激光雷达  :擅长精密的 3D 测距
            受雨/雪/雾影响,成本高
 雷达      :擅长速度(多普勒)测量与应对恶劣天气
            分辨率低,形状识别较弱

例如,黑夜里摄像头较弱,但激光雷达和雷达可以弥补;暴风雪中激光雷达较弱,但雷达相对更耐受。视觉中心方案专注于摄像头,转而依靠前面所述的基于神经网络的 3D 还原(BEV、occupancy)来补足距离信息。哪种组合最优,取决于成本、安全目标与运行环境。

端到端学习

从流水线到一体化学习

前面介绍了感知-预测-规划-控制分离的流水线方案。这种方式便于各阶段独立开发和验证,容易理解,但存在局限:阶段之间会丢失信息,且各部件的优化目标可能与最终驾驶质量不一致。

因此,近来把从传感器输入到驾驶行为整体用一个神经网络学习的端到端(end-to-end)方案备受关注。

[传统模块化]
 传感器 → [感知] → [预测] → [规划] → [控制] → 行为
          各模块独立开发/验证

[端到端]
 传感器 → [一个大型神经网络] → 行为
          中间表示由学习形成
          (感知/预测/规划以可微分方式相连)

端到端的利弊

端到端的魅力在于:整体都朝着最终目标(安全舒适的驾驶)一并优化。它减少了中间阶段的信息损失,也无需人工逐条编写规则,而是从数据中学习行为。近期研究提出,将感知、预测、规划连接成一个可微分结构,同时保留可解释的中间表示(例如 BEV、occupancy),力图兼顾透明度与性能。

不过端到端也有难以解释与验证的缺点,在罕见的危险状况下难以说明系统为何如此行动。安全是这一领域的首要考量,因此可解释性问题是极其重要的课题。

举例来说,在模块化方案中,"感知漏检了行人,导致事故"这类问题容易定位到具体哪个阶段出了错。而在纯粹的端到端方案中,神经网络内部为何做出那样的判断则很难窥探。因此在实务中,相较于完全一体化的方案,业界更倾向于一种折中设计——保留感知与规划的中间表示以维持可验证性,同时对整体进行联合训练。

世界模型与仿真

为何需要仿真

如果只在真实道路上训练和验证自动驾驶,需要极其庞大的行驶里程,也无法故意制造危险状况。因此仿真必不可少。可以在虚拟环境中安全、反复地生成各种状况(恶劣天气、突然并线、罕见事故场景)来进行训练与验证。

世界模型

在此基础上更进一步的概念是世界模型(world model)。世界模型是一个经过学习的模型,用于预测"如果我这样行动,世界会如何变化"。也就是说,构建一个预测未来传感器观测或场景的生成模型,用它来做规划推演或增广数据。

[世界模型的作用]
 当前状态 + 假设的行动
        |
        v
[世界模型]  预测未来的场景/观测
        |
        v
预先模拟"采取这个行动会引发这种状况"
 → 用于规划推演、生成罕见状况数据

世界模型近来不仅在自动驾驶领域,在机器人等整个物理世界 AI 领域都是热门话题。不过预测并非总是准确,因此如何处理仿真与现实之间的差距(sim-to-real gap)仍是一大课题。

3D 重建与仿真技术

要提高仿真的真实感,需要把真实道路精密地还原为 3D。近来,3D 高斯溅射(3D Gaussian Splatting)、神经辐射场(NeRF)等 3D 重建技术在这一领域备受关注。

[3D 重建的用途]
 真实行驶影像(多个视角)
        |  3D 重建(高斯溅射/NeRF 系)
        v
 逼真的 3D 场景
        |  以新的视角/条件渲染
        v
 生成仿真数据(不同角度、不同天气等)

用这类技术把真实场景还原为 3D 之后,就可以在其中改变摄像机位置或添加物体,从而制造出新的状况。这可以与前面所述的世界模型、仿真相结合,用于增广罕见状况的数据。不过重建出的场景无法完美还原真实物理效果(反射、阴影、材质),因此与现实之间的差距仍需留意。

安全与长尾问题

自动驾驶中最难的不是常见状况,而是罕见状况。这被称为长尾(long-tail)问题。

[状况发生频率]
  多  |■■■■■■■■■  日常驾驶(直行、停车、变道)
      |■■■■
      |■■
  少  |■        罕见状况(路面异常物体、突发事故、
      |         特殊天气、无法预判的行人行为)
      +---------------------------------------------
             常见状况              罕见状况(长尾)

日常驾驶由于数据丰富,学习效果好,而罕见发生的危险状况数据稀少,学习困难。然而安全恰恰是由这些罕见状况决定的。像 occupancy 这样不受类别限制的表示方式、通过世界模型生成罕见状况、以及大规模数据采集,都是在努力缓解这一长尾问题。

此外,保障安全不仅需要感知性能本身,还需要系统层面的设计配合:在不确定时保守行动、多传感器相互校验、以及为人工介入留出余地。

传感器标定与坐标系

要把多个传感器合并到同一个 3D 世界中,必须准确知道每个传感器彼此的相对位置与安装方式。处理这一问题的就是传感器标定(calibration)与坐标系。

[坐标系的层级]
 摄像头坐标系(以各摄像头为基准)
        |  外参(位置/朝向)
        v
 车辆坐标系(以自车为基准)
        |  自我定位(localization)
        v
 世界坐标系(以地图为基准)

每个传感器都需要两类标定信息。内参(intrinsic)是摄像头镜头的焦距、畸变等摄像头自身特性;外参(extrinsic)是该传感器安装在车辆上的具体位置与朝向。这些信息若不准确,在把多台摄像头图像合并为 BEV 时,物体就会出现错位。因此精确的标定是感知质量背后隐藏的基石。

此外,自我定位(localization)——即知道自车此刻处在地图上的哪个位置——也很重要。仅凭 GPS 精度不足,需要将地图与传感器观测进行比对,或融合多个传感器,来精确估计位置。

感知输出所承载的信息

感知阶段传递给下一阶段的信息,远比简单的"物体列表"更丰富。归纳如下:

[感知输出所承载的内容]
 - 动态物体:车辆、行人、自行车的位置/大小/朝向/速度
 - 静态结构:车道线、停止线、人行横道、路缘
 - 信号/标志:红绿灯状态、限速标志
 - 自由空间:可通行区域(可用 occupancy 表示)
 - 不确定性:各项信息的置信度

其中最后一项不确定性尤为重要。如果感知诚实地表示"那里似乎有东西,但只有 60% 的把握",规划阶段就能据此保守应对。反之,如果感知在没有依据的情况下过度自信,就会导致危险的判断。因此最新的感知系统被设计为不仅输出结果,还一并输出该结果的置信度。

多目标跟踪

感知并不止步于某一瞬间的物体检测。还需要多目标跟踪(multi-object tracking),在帧与帧之间把"那辆车是不是刚才那辆车"连接起来。只有实现了跟踪,才能知道物体的速度与运动方向,进而才能进行预测。

[检测与跟踪]
 帧 t   :检测出物体 A、B、C
 帧 t+1 :检测出物体 A'、B'、C'
        |  把同一物体连接起来(数据关联)
        v
 轨迹:A 始终是 A,可估计速度/方向

跟踪的核心课题是数据关联(data association),即把前一帧的物体与当前帧的物体正确地配对。当物体短暂被遮挡(occlusion),或彼此靠得很近擦身而过时,配对就会变得困难。前面提到的 BEV 表示方式把多个时间点纳入同一坐标系处理,这对跟踪也有利。

衔接到预测与规划

如果说感知回答的是"现在什么东西在哪里",那么预测回答的就是"它接下来会如何运动"。预测其他车辆和行人的未来轨迹非常困难,因为人的意图具有不确定性,且多种可能性同时并存。

[预测中的不确定性]
 前车正在接近路口

 可能性 1:直行(概率较高)
 可能性 2:右转(转向灯已亮起)
 可能性 3:停车(等待信号)

 → 不断言唯一结果,而是以概率表示多种情景

因此,最新的预测模型不会只给出一个未来,而是给出多个可能的未来及其概率。规划阶段会综合考虑这些可能性,留出安全余量再确定路径。感知-预测-规划就这样如链条般环环相扣,由于前一阶段的不确定性会传导至后一阶段,每个阶段诚实地表达自身的不确定性就显得尤为重要。

数据集与基准

自动驾驶感知研究是在公开数据集与基准之上不断发展起来的。以下是几个代表性的例子。

[代表性公开数据集(概念)]
 - nuScenes  :多摄像头 + 激光雷达 + 雷达,3D 检测/跟踪
 - Waymo Open:大规模多传感器行驶数据
 - KITTI     :早期具有代表性的自动驾驶基准

这类数据集用多种传感器记录同一场景,并提供由人工标注的物体 3D 位置与类别。研究者可以在同一数据上公平地比较各自的方法。不过公开数据集可能偏向特定地区和条件,因此在其上表现良好,并不意味着在所有道路上都安全。前面提到的长尾问题在这里同样适用。

也存在量化感知性能的指标。在 3D 物体检测中,通常依据预测框与真值框的重叠程度来计算精确率与召回率,并常用综合了这两者的平均精度(mAP,mean Average Precision)。

[3D 检测评估的概念]
 预测框 vs 真值框
   - 若位置/大小/朝向足够吻合 → 判定为正确(TP)
   - 否则 → 误检(FP)或漏检(FN)
        |
        v
 精确率-召回率曲线 → 平均精度(mAP)
 (也常用同时考察距离误差、速度误差等的综合指标)

这类指标便于比较各种方法,但基准分数并不总是与真实道路上的安全性一致。尤其是罕见的危险状况在数据集中占比很少,难以在指标上充分体现。因此,指标应作为参考,而安全验证则须通过另一套严格的流程来处理。

比较:感知表示方式一览

表示方式形态优势注意事项
3D 边界框逐物体的方框清晰、易于处理对类别之外的物体较弱
BEV俯视 2D 地图与规划自然衔接缺乏高度信息
Occupancy3D 占用网格与类别无关,可应对任意形状计算量大
端到端表示学习得到的内部表示整体优化难以解释/验证

上表为概念层面的比较,实际系统往往会同时并用多种表示方式。

局限与注意事项

  • 准确性与信息公开:商用自动驾驶系统的具体规格大多未公开。与其断言某家公司的具体实现,不如围绕已公开的概念来理解,这样更为稳妥。
  • 长尾与安全:罕见的危险状况左右着安全,这仍是一个尚未解决的课题。
  • sim-to-real 差距:仿真与世界模型虽然强大,但无法完全消除与现实之间的差距。
  • 可解释性:端到端方案性能优异,但难以解释其行动原因,这对安全验证构成挑战。
  • 时效性:这一领域的 SOTA 与商用系统变化极快。本文旨在帮助理解架构原理,具体规格仍需以官方资料为准。
  • 社会接受度:除了技术性能之外,监管、责任归属、社会信任也是实际落地过程中的重要变量。

结语

自动驾驶感知的发展,始终围绕着从 2D 摄像头图像还原 3D 世界这一核心问题展开。从把多台摄像头合并为一张俯视地图的 BEV,到不受类别限制、表示空间占用情况的 occupancy,再到将整体统一优化的端到端,这条脉络一路延续下来。

需要记住的核心要点有三个。第一,感知的根本课题是从 2D 还原出 3D,而 BEV 与 occupancy 是实现这一点的强大表示方式。第二,视觉中心与激光雷达融合与其说是孰优孰劣的问题,不如说是对成本、安全、可扩展性做出的不同判断。第三,自动驾驶真正的难题不在于常见状况,而在于罕见的长尾状况,安全正是由此决定的。这一领域的具体规格变化很快,但这些原理与安全优先的态度将长期有效。

参考资料

현재 단락 (1/210)

自动驾驶是人工智能所面对的最具挑战性的物理世界问题之一。它必须每秒数十次地把握周围数百米内的状况,预测其他车辆和行人的运动,规划安全的路径,并真正驱动车辆行驶。一次失误就可能危及生命,因此对精度与安全...

작성 글자: 0원문 글자: 8,271작성 단락: 0/210