一个很自然的困惑

前几天有个读者问我一个问题:

“VLA 模型(比如 Qwen3-VL)不是有视觉编码器(ViT)吗,它能理解图像内容,那为什么自动驾驶系统还需要感知模块(3D检测、BEV感知、占用网络)?VLM 自己看图像不就能知道环境了吗?”

这是个很好的问题。而且坦率说,不少刚接触这个领域的人都有这个困惑——毕竟 VLM 在图像问答上表现那么好,它认出"这是一辆车"、“前方是红灯”、“路上有行人"完全没问题。那感知模块是不是要被淘汰了?

这篇文章给一个明确的答案:

VLM 的视觉编码器替代不了感知模块。它们解决的是完全不同的问题。两者必须协同工作,而不是二选一。

下面我用最直白的方式说清楚这件事。


核心矛盾:VLM 看到的 vs 驾驶需要知道的

先来一个极简的对比。

VLM 视觉编码器(ViT)在做什么

VLM 的视觉编码器(比如 Qwen3-VL 用的 SigLIP ViT)做的是2D 语义理解。它把一张 RGB 图像切成 patch,每个 patch 提取一个特征向量。大规模预训练让它学会了识别图像里有什么:

  • “这是一辆红色小轿车”
  • “它好像在右转”
  • “路上有斑马线”
  • “天气是晴天”

这些都是语义层面的理解——回答"这是什么"的问题。

但这些信息是2D 的、像素空间的、没有度量尺度的。一个 patch 可能在图像的某个位置,但如果你问"这辆车离我几米?"、“它的速度是多少?"、“它是一个 3D 空间里的什么位置和朝向?",VLM 的视觉编码器根本回答不了

不是能力不够,是信息在编码阶段就已经丢失了

自动驾驶需要知道的

驾驶规划需要的是一组精确的 3D 度量信息

  • 那辆车的位置:(x=10.53m, y=2.17m, z=0m)
  • 朝向:相对于自车航向角 23 度
  • 尺寸:4.7m × 1.8m × 1.5m
  • 速度:5.2m/s,正在减速
  • 加速度:-0.3m/s²
  • 道路边界在哪、路面坡度多少、前方有没有被遮挡的区域

做碰撞检测的时候,你需要的是"这辆车 1.8 秒后会在 (x=15.8, y=2.5)",而不是"这辆车在图像右前方”。差 0.5 米就可能决定撞上还是安全通过。

这就像一个非常会看画的艺术家,你问他"这幅画里有什么"他给你讲得头头是道,但你让他测量画里一个人物的实际身高——他做不到。因为画本来就没有这个信息。

信息损失的源头

ViT 在处理图像时做了两次信息丢失:

  1. 3D → 2D 投影丢失:相机成像把 3D 世界投影到 2D 平面。深度信息(z 轴)在投影过程中丢失了。一张 2D 图像里,一个大物体在远处和一个小的物体在近处,看起来完全一样。
  2. Patch 化离散丢失:ViT 把图像切成 14×14 或 16×16 的 patch,每个 patch 被压缩成一个特征向量。几何细节进一步丢失。

看这个经典例子——为什么单目图像无法区分"远处的大物体"和"近处的小物体”:

3D→2D 投影丢失深度信息

VLM 可以识别出"有两辆车”,但它不知道怎么转换成 3D 度量坐标。

这里有一个更深层的问题:即使 ViT 通过某种方式"猜"出了深度(比如通过阴影、大小先验、消失点估计),这种猜测也是有偏的、概率性的、不可靠的。在驾驶场景中,一个错误的深度估计(比如把 10 米处的车误判为 5 米)可能直接导致碰撞。

而感知模块通过多视图几何约束(立体视觉)或主动传感器(LiDAR),直接测量深度而不是猜测深度。这是本质区别:一个是"推测",一个是"测量"。


那感知模块做了什么是 VLM 做不了的?

感知模块(3D 检测 + BEV 感知 + 占用网络)的核心能力是从 2D 图像重建 3D 几何

具体的差异对比:

维度VLM 视觉编码器感知模块(3D检测/BEV/Occupancy)
输入单张或多张 2D RGB 图像多相机 + LiDAR + Radar 数据
输出2D patch 特征序列结构化 3D 度量向量
能回答“这是车,在图像左下方”“这辆车在 (10.53, 2.17, 0),速度 5.2m/s”
数据类型语义特征(不可求导到度量)度量数值(可直接用于控制)
3D 几何精确重建
深度感知无(单目歧义)有(通过多视图几何+LiDAR监督)
速度感知有(时序关联+多普勒雷达)

核心技术差异用一句话说:

VLM 理解"是什么",感知模块理解"在哪、多快、多大、朝哪"。


感知模块内部:有 BEV 的 vs 没有 BEV 的

上面说的是"感知 vs VLM",但很多读者还会卡在感知模块自己内部的一个问题上:为什么有的感知有 BEV,有的没有?有 BEV 的是怎么做的,没有 BEV 的又是怎么做的?

简单回答:有 BEV 的是"先把多相机搬到一张俯视图上,再做检测";没有 BEV 的是"跳过俯视图,直接在 3D 空间里用稀疏 query 做检测"。 这是两种对"2D 图像如何变成 3D 信息"的不同答案。

有 BEV 的感知:BEVFormer 范式(稠密俯视图)

BEV 感知解决的核心难题是:下游模块(预测/规划/控制)都默认在统一的俯视坐标系里工作,但传感器给的是多路透视相机 2D 图。怎么把 2D 图像"搬"到俯视图上?

主流的 BEV 做法是 BEVFormer 范式——用 Transformer 注意力做"图像 → BEV"的端到端学习,而不是手写几何:

  1. 定义 BEV 网格(BEV queries):把自车周围的一块俯视区域离散成 $H \times W$ 的网格,每个网格点是一个可学习 query $Q_p$。每个 query 在几何上对应一个参考点——注意背后是柱状参考点(pillar),沿高度采样多个 3D 点,因为同一个 BEV 位置在不同高度可能是不同物体(头顶标牌 vs 地面锥桶);
  2. 空间交叉注意力(SCA):每个 BEV query 把自己的 3D 参考点投影到各相机图像上,用 deformable attention 只在投影点附近采样特征——就像一个"侦察兵"拿着自己的坐标去问各相机"你那边看到啥了";
  3. 时间自注意力(TSA):把历史帧的 BEV 也拉进来对齐融合(用自车运动做补偿),让检测能利用时序信息、判断运动;
  4. 统一表示上做多任务:BEV 特征出来后,一个特征图可以同时接 3D 检测头、地图头(车道线/路缘)、甚至占用头——这就是"统一俯视图"的价值:多任务共享一个表示

之前还有 LSS(Lift-Splat-Shoot)路线:先让网络给每个像素预测一个深度分布,再把像素"lift"成 3D 点云、“splat"投影到 BEV 上。BEVFormer 的注意力路线后来占了上风,因为不用显式预测深度。

一句话:BEV 感知 = “先重建一张鸟瞰图,再在鸟瞰图上做感知”。它的最大优点是统一表示——检测、地图、占用、规划全在同一个俯视图空间里协作。

没有 BEV 的感知:Sparse4D / DETR3D 范式(全稀疏 query)

BEV 范式很有效,但带着一个"算力原罪”:BEV 是稠密网格,算力随分辨率平方爆炸,且大部分格子是空地、算力浪费在没东西的地方。于是有了"全稀疏(Fully Sparse)“路线:

核心思想:路上有意义的东西本来就稀疏(几十辆车、几个行人、几条车道),为什么中间表示非要稠密?直接用一组稀疏的实例 query,从图像一路查到 3D 检测框。

以 Sparse4D 为例,它的做法是:

  1. 初始化稀疏 query:每个候选目标是一个 query(而不是网格),携带位置、尺寸、速度等属性,数量与场景目标数相当(而不是 $H \times W$ 个);
  2. 4D 关键点采样:每个 query 在 3D 空间里定义一组关键点,投影到多相机图像上采样特征——和 BEV 的 SCA 类似,但采样点是稀疏目标专属的,不铺满整个俯视图
  3. 循环时序融合:多帧之间不再对齐稠密 BEV,而是直接把锚框特征循环传给下一帧(复杂度 O(1)),天然支持跟踪(推理时分配 ID 即可);
  4. 直接出 3D 框:query 一路变形、聚合特征,最后回归出检测框,全程没有中间俯视图。

这条路线的好处:

  • 算力随目标数线性,而不是随分辨率平方;
  • 车端部署友好(Orin 这类芯片跑得动);
  • 时序融合天然便宜。

代价是:在做密集占据预测、栅格化可行驶区域这类"需要稠密表示"的任务时,不如 BEV 自然

两条路线怎么选?

维度BEV 范式(BEVFormer)全稀疏范式(Sparse4D)
中间表示稠密俯视图稀疏实例 query
算力随分辨率平方爆炸随目标数线性
多任务共享强(检测/地图/占用共享 BEV)偏弱(稠密任务不自然)
时序融合多帧 BEV 对齐(重)循环传锚框特征(O(1))
车端部署友好
典型代表BEVFormer、LSS、BEVDetSparse4D、DETR3D、SparseDrive

一个很关键的联系:这条"BEV vs 稀疏"的争论,和上面"感知 vs VLM"的争论是同构的——都是**“稠密统一表示 vs 稀疏按需表示”。VLM 用稠密的 patch token 覆盖整张图(类似 BEV 的"全覆盖”),而 DriveVLA-M0 用稀疏的结构检索键按需取信息(类似 Sparse4D 的"按需采样")。SparseOccVLA 甚至更进一步:用稀疏占用查询完全替代 ViT patch token** 作为 LLM 的唯一视觉输入——感知内部"稀疏化"的趋势,也正在蔓延到 VLA 架构里。


那为什么很多模型"没有感知",却表现还不错?

看到这里你可能会冒出一个更大的疑惑:很多论文(比如 DriveVLA-W0、ReCogDrive、SimWAM)输入就只是几路相机,连 LiDAR/Radar 都没有,也没有显式输出 BEV 或 occupancy——它们拿到的明明就是 2D 图像啊,ResNet/ViT 不也只是个"视觉特征提取器"吗?那感知到底是怎么做的?为什么分数还不错?

这个问题问得很准。我拆成两部分回答:它到底是怎么做到的,以及这算不算"感知"

第一步:先纠正一个直觉——“只有 2D 图像"不等于"只有 2D 信息”

相机拍的确实是 2D 投影,但 2D 图像序列里藏着的 3D 信息比你想的多。端到端模型不是只看一张静态图,它实际利用了这些线索:

  1. 多视角几何(multi-view geometry):NAVSIM 等数据集通常给 3 路甚至 8 路环绕相机。同一辆车会同时出现在多个相机画面里,它们的相对位置、成像大小差就是隐式的立体视差——模型可以在训练中隐式地学会"这个物体在两个视角里都出现,说明它大概在这个方位"。
  2. 多帧时间线索(temporal cues):输入通常是连续 4 帧(甚至更多)历史图像。同一个物体在前后帧里的位置移动,蕴含了运动信息(速度方向)和粗略深度(近处物体移动快、远处移动慢,这是运动视差 parallax)。这就是为什么端到端模型都要喂多帧——单帧确实不够,但 4 帧能给出一大堆隐式 3D 信号。
  3. 自车状态(ego state)作为"尺子":模型还拿到自车的速度、加速度、航向等状态。自车状态 + 图像里物体的图像位置,可以隐式换算相对距离——模型训练时会学会这种"用运动学搭桥"的对应关系。

一句话:端到端模型吃的不是"一张图",而是"多视角 + 多帧 + 自车运动"的复合信号,这里面有足量的隐式几何信息。 它没有显式输出深度,但它可以在特征里隐式地"估算"出规划需要的深度量级。

第二步:端到端训练会让"规划相关模式"自己浮现

ResNet/ViT 确实只是 backbone,但它不是孤立训练的——它和轨迹预测头一起被端到端监督。最终 loss 只关心"轨迹对不对"(L1 距离、碰撞率、PDMS),于是 backbone 会在梯度信号下自发地提取对规划有用的特征

  • 车道线、道路边界在哪(决定可行驶区域)
  • 前车在哪、多快(决定跟车距离和碰撞风险)
  • 红灯、停止线、路缘(决定是否该停)

这些正是"感知任务要提取的信息"——只不过它们没有被显式解码成 3D box 或 BEV 图,而是隐式地存在于特征向量里。换句话说:ResNet 不等于"没做感知",它只是把感知结果压缩进了对规划有用的 latent 表示里。 感知任务依然在做,只是不显式。

第三步:NAVSIM 这个基准本身对"显式感知"要求不高

还有一个很现实的因素——NAVSIM 的评估设计:

  1. 短时域规划:NAVSIM 只要求预测未来 3 秒左右的轨迹(约 8-10 个点),不要求输出完整的 3D 世界模型。它不考"你的 BEV 准不准",只考"你最终轨迹好不好"。
  2. PDM 打分看轨迹结果:评估器(PDM)是拿你输出的轨迹和专家/碰撞检查比较,不直接检查你的模型内部有没有生成显式 BEV。所以"没有 BEV 表示"不会被扣分。
  3. ego 状态和 route 是送分题:NAVSIM 直接把自车位置、速度、导航路线(route)喂给模型。这些信息解决了大量规划问题,模型不需要从零推理"我要去哪"。

所以很多模型"没有显式感知也能拿高分",有一部分原因是:基准测试本来就没强制要求显式感知。 这不代表它们真的感知得很好,只是基准没考这一项。

第四步:VLM 在这个故事里的真实角色

那 VLM(Qwen3-VL、InternVL 这类)又贡献了什么?它和 ResNet 的区别是:

  • ResNet/ViT 提取的是"规划用几何特征"——由端到端 loss 驱动,偏向几何/运动;
  • VLM 提供的是"语义先验"——“前面是施工区"“这是警车"“斑马线意味着让行”,这些知识来自互联网规模图文预训练,是纯感知模块给不了的。

但注意,VLM 并不自动解决空间精度问题。它增强语义理解,却可能牺牲精确空间几何——尤其当 VLM 的视觉塔是冻结的(只训后面的 adapter/规划头)时,它的 patch token 从没被"驾驶 loss"校正过,对 3D 度量的估计依然是"预训练时的直觉”。这也是为什么 Percept-WAM 要专门训练感知 token、Last-VLA 要请 VGGT 当"几何老师”。

所以结论是什么?——区分"感知任务"和"显式感知表示"

这是整篇文章最关键的一个区分,建议反复咀嚼:

感知任务重要 ≠ 显式感知表示重要。

  • 感知任务重要:模型必须能从图像里判断道路、车道、车辆、障碍物、可行驶区域——这一项没有任何模型能跳过,跳过了就撞车;
  • 显式感知表示不一定重要:不一定要输出 depth、3D boxes、BEV 或 occupancy map——这些只是"把感知结果摆出来"的形式,而不是"感知"本身。

用一句话总结:

“没有显式感知"不等于"没有感知”。端到端模型把感知的职责内化进了 backbone——它不做显式 BEV/occ,但它在 latent 里隐式地完成了感知任务。显式 BEV/occupancy 不是高分的必要条件,但感知能力本身是。

那这种"隐式感知"的边界在哪?

诚实地说,这种"全靠隐式"的路线有明显的短板,论文里也反复被验证:

短板表现
遮挡被遮挡的车看不到,没有显式 3D 推理就很难"脑补"出它还在那里
距离估计远距离/小目标距离误差大,多帧运动视差在静止物体上失效
跨视角目标对应多相机里同一辆车对不上,缺乏显式几何就靠猜
长尾障碍物训练里没见过的小物体(锥桶、坠落物)识别不稳
分布外场景换了城市、换了天气,隐式先验就可能失效

这就是为什么真正要量产(而不只是刷榜)的系统,仍然会要显式感知——BEV/occ 的价值不在"分数",而在可靠性和可验证性。而 2026 年的论文也正是在这两端之间找平衡:Percept-WAM 把显式感知内化进 VLM、DriveVLA-M0 用显式结构键做记忆检索、Last-VLA 用显式 3D 先验做蒸馏——它们都在补"隐式感知"缺失的那部分可靠性。


如果你还不信,做一个小实验就知道了

拿任意一张自动驾驶场景图(nuScenes 也好、自己拍也好),让 VLM(Qwen3-VL、GPT-4o、Claude 都行)回答这五个问题:

  1. 这辆车在自车坐标系下的 (x, y) 坐标是多少米?
  2. 这辆车的速度是多少 m/s?
  3. 这辆车 3 秒后会到哪个位置?
  4. 前面那辆车的宽度是多少米?
  5. 自车到前车的纵向距离是多少米?

VLM 对这五个问题要么答错、要么给范围估计(“大概 5-8 米”)。但它对"这辆车是什么颜色"这种语义问题可以 100% 答对。

这不是 VLM 的缺陷,这是信息通道的物理限制——你不可能从一个抹去深度信息的输入中恢复精确深度。


VLA 论文里到底用不用感知?——深入看 7 篇代表工作

我们直接看 2024-2026 最有影响力的 VLA 论文实际怎么做的。每一篇都能说清楚感知模块的具体角色。先看 7 篇"奠基性"的代表工作,下一节再盘点最近精读的一批 2026 新论文。

DriveVLM (2024) — 双系统架构,感知管度量,VLM 管推理

DriveVLM 是最早的驾驶 VLA 工作之一,由清华大学和多家车企联合发表。它的架构非常明确地分为两个系统:

  • System-1(快系统):传统感知 + 规划管线

    • 3D 目标检测(基于 BEVFormer 或类似架构)
    • BEV 特征构建(多相机融合到鸟瞰空间)
    • 轨迹规划(基于精确度量的碰撞检测 + 运动规划)
    • 延迟低、可实时、安全有保障
  • System-2(慢系统):VLM 推理引擎

    • 输入:多相机图像
    • 处理:ViT 提取 2D 语义特征 → LLM 推理 → 场景描述 + 推理链
    • 输出:高层驾驶建议(“前方有斑马线,注意减速”)
    • 延迟高(几百毫秒到几秒),但语义理解强

两者的协同方式:System-1 做实时规划,System-2 做语义监督。System-2 的输出不直接控制车辆,而是作为"语义约束"修正 System-1 的规划——比如 VLM 发现 “前方有一辆自行车可能在你的盲区”,System-1 的规划器因此增加横向安全距离。

关键结论:DriveVLM 是"感知做规划,VLM 做监督"的经典范式。VLM 不碰任何度量计算,只做语义增强。

DriveVLA-W0 (2025) — 感知 tokens 直接拼入 VLM 序列

DriveVLA-W0 走得更远:把 BEV 感知特征 token 化后,直接作为额外输入拼接到 VLM 的 token 序列里

具体的输入序列构造:

[[[CBpLErSVo]_mtp[otVk_ietTno__kp1ea]nt_c[1hB]_E1V[]_ptr[ooVkmiepTnt___p2ta]otkcehn__22][]BEV_t[o[VkpierTno__mpMpa]tt_ctho_kNe]n_K]
  • ViT patch tokens(约 256-1024 个):来自图像编码器,提供 2D 语义信息
  • BEV tokens(约 64-256 个):来自 BEV 感知模块的稀疏 query,携带精确的 3D 几何和度量信息
  • 文本 prompt tokens:用户指令(“直行通过路口”)

LLM(Qwen3-VL 或类似结构)在自注意力层中同时关注三种 token。这意味着 LLM 在做推理时,既能看到"这是一辆红色轿车"(语义),也能看到"它在 (10.53, 2.17),速度 5.2m/s"(度量)。

DriveVLA-W0 的消融实验非常说明问题:

DriveVLA-W0 消融实验

去掉感知 tokens → 碰撞率翻倍(3.2% → 8.7%)。去掉 ViT tokens → 语义理解能力下降但碰撞率仅微增。两者都用 → 最好。 这个消融实验是"感知模块不可或缺"的最直接证据。

SparseOccVLA (CVPR 2026) — 感知和推理在统一 query 空间融合

SparseOccVLA 是 2026 年的代表性工作,来自旷视和清华团队的联合研究。它的核心创新在于把感知和推理统一到同一个稀疏 query 空间中。

传统的 VLA 架构是"感知模块输出特征 → 作为 VLM 的输入",两个模块之间有一条清晰的边界。SparseOccVLA 说:不要这条边界,让感知 query 和推理 query 在同一个 Transformer 里交互

架构拆解:

  1. 图像编码层:ViT 提取多尺度 2D 特征
  2. 稀疏 query 初始化
    • 感知 query(~300 个):负责拟合 3D 检测框、占用网格、运动场
    • 推理 query(~64 个):负责场景理解、决策推理、规划
  3. 统一 Transformer 层(12 层):
    • 每层中,感知 query 通过可变形注意力从 2D 特征中采样 3D 信息
    • 推理 query 通过自注意力从感知 query 中获取 3D 上下文
    • 两种 query 在每层中充分交互
  4. 预测头
    • 感知头:检测框、占用概率、运动矢量
    • 推理头:决策 token、轨迹 token

SparseOccVLA 证明了感知和推理需要双向交互——推理需要感知的 3D 信息,感知也能从推理的语义理解中获益(比如"知道这是一辆警车"可以修正检测置信度)。

KnowVal (CVPR 2026) — 外部知识补足 VLM 盲区

KnowVal 从另一个角度验证了 VLM 在驾驶场景中的局限。它指出 VLM 有两个严重的盲区:

盲区 1:度量盲区 VLM 无法精确回答距离、速度、尺寸这类问题。这是根本性的,前面已经说清楚了。

盲区 2:知识盲区 VLM 在驾驶场景的"常识"上也是残缺的。比如:

  • 不知道卡车右侧盲区的具体范围(对驾驶规划至关重要)
  • 不知道某些非标准交通标志的含义
  • 不知道特定城市的道路规则差异(比如某个路口禁止掉头的特殊规则)
  • 不知道某些车型的制动距离特性(满载卡车 vs 空载卡车的刹车距离差异)

KnowVal 的做法是:显式构建驾驶知识图谱,把驾驶领域的专业知识(车辆动力学参数、交通规则、盲区范围、常见事故模式)编码成结构化知识,通过知识注入层与 VLM 的推理结果融合。

这再次说明:VLM 的视觉编码器连语义理解都不完整,需要外部知识补足,更不用说做 3D 度量了。

EMMA (Waymo/Wayve, 2025) — 在成熟感知堆栈上架 LLM

EMMA 是 Waymo(或者 Wayve,取决于你指哪一个)在 2025 年发表的工作。它的做法非常务实:

  • 使用 Waymo 成熟的自动驾驶感知堆栈(包括 3D 检测、BEV 融合、轨迹预测)
  • 把感知堆栈的结构化输出 token 化:检测框 token、轨迹 token、地图 token
  • 把这些 token 和图像 token 一起输入到一个 Gemini 风格的 LLM 中
  • LLM 在感知之上做"宏观推理":场景理解、行为预测、策略决策

EMMA 的核心设计原则是:不要让 LLM 学习的"世界"去拟合感知任务,让感知模块把 3D 世界压缩成 LLM 能理解的结构化表示。

这种做法的优势:

  • 安全:成熟感知堆栈经过了数十亿英里的验证
  • 效率:不需要端到端训练一个感知-VLA 巨模型
  • 可解释:感知输出是人类可读的结构化数据

LinkVLA (2025) — VLM 和感知用专用连接层融合

LinkVLA 提出了一个很有意思的观察:VLM 的 ViT 特征和感知模块的 3D 特征分布差异巨大,直接拼接会导致 LLM 难以对齐。于是它引入了一个专门的"连接层"(Linker)来做特征空间的对齐和映射。

Linker 做的事情:

  1. 把 ViT 的 2D 特征通过可变形注意力映射到 3D 空间
  2. 把感知模块的 3D 特征编码成和 VLM token 空间兼容的表示
  3. 两者在共享的 3D 空间中对齐后,再输入 LLM

LinkVLA 的核心结论:VLM 和感知的特征空间相差太大,不能简单拼接,需要一个专门设计的桥接层。

pi0 / GR-3 (2024-2025) — 通用机器人 VLA 的视角

虽然 pi0(Physical Intelligence)和 GR-3(Google DeepMind)是通用机器人领域的 VLA,不是自动驾驶专用的,但它们的架构设计同样能说明问题。

pi0 的架构:

  • 视觉编码器:SigLIP ViT(2D 语义)
  • 流匹配动作头:直接输出连续动作
  • 中间层:没有显式感知模块,只靠 ViT 特征 + LLM 推理

pi0 在操作任务上表现很好(抓取、放置、开抽屉等),因为这些任务对精确 3D 度量的要求远低于自动驾驶。但 pi0 在涉及空间精确度的任务上表现很差——比如"把杯子放在桌子的右上角"这种需要精确坐标的任务。

GR-3 做了类似的观察,引入了"空间推理层"来增强 VLA 的空间理解能力。这本质上是在 VLA 内部显式增加了感知模块的功能,从侧面印证了感知的必要性。


最新论文精读盘点:感知与 VLM 的十种协同方式

上面 7 篇是代表性老工作。最近我在博客里精读了一大批 2026 年的新论文(DriveVLA-M0、BrainWAM、Percept-WAM、SimWAM、CoWorld-VLA、ReCogDrive、AutoVLA、ST4VLA、Last-VLA、Qwen-VLA……),它们把"感知 vs VLM"这道题答出了十种不同的答案。每一种都值得单列出来对比。

① DriveVLA-M0(2026):感知变成"检索键",不进推理链

DriveVLA-M0 的立场最激进:感知模块根本不进 VLM 的推理链,而是变成记忆检索的"钥匙"

  • 一个 Retrieve Model(DINOv2 + Decoupled LoRA)从图像里提取结构键:Map 分支管静态路网、Agent 分支管动态交互;
  • 这些键用来从"失败记忆库"里检索结构相似的失败场景,再用 LoRA 测试时训练(TTT)逐场景纠正动作解码器;
  • 关键洞察:用语言特征当检索键反而拖后腿(PDMS 90.7 < 基线 91.0)——因为驾驶决策需要的是结构相似性(路怎么拐、车在哪条道),不是语义相似性(“都是车”)。感知提取的结构键(91.7→92.3)比 VLM 的语义键有用得多。

这是"感知(结构检索)> VLM(语义检索)“在驾驶场景的最直接证据:检索什么,决定了记忆有没有用。

② BrainWAM(2026):VLM 和预测模型"分居”,靠动作空间协调

BrainWAM 用一个反直觉的实验证明了不能把语义和动态简单地拼在一起

  • 它比较了 Tri-MoT(把 VLM 语义 token、视频预测 token、动作 token 全倒进同一个注意力锅)Dual-MoT(分居、各自配专属 FFN)
  • 结果 Tri-MoT 端到端性能甚至不如单独的 WAM(87.8 vs 88.1 PDMS)。原因:action token 对"好啃"的语义 token 过度关注,视频/预测 token 被边缘化——注意力失衡;
  • 于是 BrainWAM 用"大脑式分工":VLA 分支(语义)+ WAM 分支(预测)各自独立,中间靠 CAB(Callosal Action Bridge,模拟胼胝体)和 CIF(Cerebellar Intent Fusion,模拟小脑)在动作表示空间协调。

这提示感知/VLM 融合的关键不是"塞进同一层",而是在哪一层融合:原始 token 空间融合会失衡,动作空间融合更稳。

③ Percept-WAM(2026):感知直接"长进"VLM 里,共享骨架

Percept-WAM 主张感知是规划的底盘,应该长在 VLM 内部

  • 它指出 VLM 有三大空间硬伤:3D 定位漂移、时序不一致、置信度不可靠(LLM 过度自信);
  • 解法是在一个 VLM(InternVL2-8B)里长出三族 World Token:World-PV(透视 2D 感知)、World-BEV(鸟瞰 3D 感知,用 cross-attention 从 PV 特征"提"出 3D 表示)、World-Action(四组点级轨迹查询);
  • 感知结果成为持久的、可定位的世界状态,不是一次性中间变量——这正好回击了"VLM 看不准 3D"的批评:让 VLM 自己长感知能力,而不是让它依赖外部感知。

这是"感知内化"路线:不把感知模块挂在外面,而是让 VLM 的 token 直接承担感知职责,消融显示加 LiDAR 初始化 BEV 还能再 +8.2 mAP。

④ SimWAM(2026):视频预测(感知动态)只在训练期有用

SimWAM 回答了一个关键问题:世界模型的"未来感知"到底该放在训练期还是推理期?

  • 传统 WAM 走 imagine-then-act:推理时先生成未来帧再出轨迹,时延飙到秒级;
  • SimWAM 的答案是训练期用视频监督学动态先验,推理期把视频分支删掉——只用 Flow-GRPO 强化学习出轨迹;
  • 结果:NAVSIM PDMS 91.5,时延却回到纯 planner 量级。

对"感知 vs VLM"的启示:感知/预测这类"重活"的价值在训练期(喂信息),不在推理期(拖时间)。这和 DriveVLA-W0 的"世界模型换稠密监督"思路一致,但 SimWAM 更极致——干脆不上线。

⑤ ReCogDrive(2026):VLM 只做认知,轨迹交给扩散模型

ReCogDrive 把"不要让 VLM 直接出动作"这个原则推到极致:

  • VLM(认知)→ 扩散规划器(动作):VLM 只输出认知表征(关键目标、场景描述、驾驶推理、元行为),不碰轨迹;
  • 理由是轨迹不需要过文本 tokenizer 的"离散化瓶颈"——直接让连续扩散模型翻译认知表征;
  • 效果:相比文本 token 解码轨迹,推理速度提升 7.8×,轨迹平滑度提高 35%

这是"模态错配"的经典案例:VLM 的文本空间和动作的连续空间根本不是一个世界,中间必须有一个专门的"翻译器"(感知/规划器)

⑥ CoWorld-VLA(2026):在 VLM 隐空间锚定四个"专家维度"

CoWorld-VLA 的做法是在 VLM 隐空间里显式锚定四个语义轴(专家 token),让规划器有针对性地利用不同维度:

  • 它批评纯文本 CoT:把连续时空结构离散成文字会丢精细空间信息;
  • 也批评隐空间世界推理:隐变量难以直接作为动作生成的条件信号;
  • 解法:多源监督从 VLM 隐空间提取四种互补专家 token,每个对应自动驾驶一个知识维度,供分层扩散规划器使用。

这本质上是"在 VLM 内部重建感知的维度结构"——与其让 VLM 隐式包含所有信息,不如用外部监督显式地把感知维度"钉"出来。

⑦ Last-VLA(2026):用 3D 几何先验补 VLM 的空间盲区

Last-VLA(小米)直接把 VLM 的空间短板当作核心矛盾来打:

  • 它批评显式文本 CoT 的两个病灶:语义-感知脱耦(文字压丢视觉细节)和对语言先验的过度依赖
  • 解法是引入两个"物理老师":VGGT(3D 几何基础模型,提供度量几何先验:深度、占据结构、可行驶区域)+ Cosmos(动力学模型,提供动态先验),在训练期把物理知识"烤"进权重,推理期旁路;
  • 视觉瓶颈掩码禁止动作 token 直接看图像嵌入,把视觉信息全部逼进隐 CoT,让它成为决策的唯一信息通道。

这是"感知内化 + 知识蒸馏"路线:感知能力被蒸馏进 VLM 权重,推理时零额外开销。

⑧ ST4VLA(2026):给 VLM 补"空间接地"预训练

ST4VLA 回答"VLM 的空间先验能不能补"这个问题——能,但需要专门设计:

  • 诊断出 VLM 扩展到处具身任务的三大问题:空间接地坍塌(VLM+动作头拼接导致空间能力退化)、多模态优化冲突、分布外脆弱;
  • 解法是两阶段:先用点/框/轨迹三类空间预测任务做空间接地预训练,再用统一空间提示引导动作生成;
  • 效果:Google Robot 从 66.1 → 84.6,WidowX 从 54.7 → 73.2。

它和 Percept-WAM 呼应:VLM 的空间能力不是天生的,得靠显式的空间任务喂出来。 这也从侧面说明:感知不是 VLM 的冗余,而是 VLM 的必修课。

⑨ AutoVLA(2025):动作 token 化,让 VLM 自己开

AutoVLA 走"无显式感知"路线,但它给出了一个聪明的补偿:

  • 它把连续轨迹离散成 codebook 里的可行动作 token,让 VLM 自回归生成动作;
  • 好处是动作天然物理可行(每个原型来自真实人类驾驶),且能统一"思考+动作"在一个模型里;
  • 但它也承认:不是每个场景都需要深思熟虑——用 GRPO 强化微调在简单场景关掉多余的 CoT 推理。

这是"纯 VLM 驾驶"的乐观派:它不需要外部感知,但代价是感知能力(物理可行性、空间精度)被压缩进了动作 codebook——感知没有消失,只是被离散化了。

⑩ Qwen-VLA(2025):VLM 和动作专家"分工但同居"

Qwen-VLA 给出的是工程上最稳健的答案——认知主干 + 运动专家双模块解耦

  • 认知主干(Qwen3.5 VLM)做视觉-语言理解和推理,动作专家(单流 DiT Flow Matching,1.15B)管高频动作生成;
  • 关键洞察是训练不对称:VLM 已是强预训练,动作解码器是随机初始化,朴素联合训练既低效又不稳定——所以设计了 T2A→CPT→SFT→RL 四阶段渐进策略;
  • 消融显示:视觉-语言协同训练不干扰简单任务,反而提升复杂任务——互联网图文知识是真金白银的先验

它和 ReCogDrive 一样反对"VLM 直接出动作",但采用了更保守的架构(DiT 外挂),并证明了多模态先验对 VLA 是有用的——前提是别让它和动作空间打架。

十一张表收束

把上面的十种关系汇总成一张总表:

#模型年份感知角色一句话立场
1DriveVLA-M02026检索键感知变结构键,不进推理链,检索比语义靠谱
2BrainWAM2026平行分支语义与预测分居,动作空间协调
3Percept-WAM2026内部底盘感知长进 VLM,共享骨架
4SimWAM2026训练期老师动态预测只在训练期有用,推理期删掉
5ReCogDrive2026认知翻译器VLM 只认知,扩散模型翻译成动作
6CoWorld-VLA2026隐空间锚点在 VLM 隐空间显式钉出感知维度
7Last-VLA2026蒸馏老师3D 几何/动力学先验烤进权重,推理旁路
8ST4VLA2026预训练课程用空间任务补 VLM 的空间接地
9AutoVLA2025动作 codebook感知被离散化压缩进动作 token
10Qwen-VLA2025外挂专家认知与动作分工,DiT 别和 VLM 打架

三点规律浮现

  1. 没有一篇驾驶 VLA 敢真的抛弃感知——哪怕最"纯 VLM"的 AutoVLA,也把感知能力压缩进了动作 codebook;
  2. 2026 年感知的角色大幅演化了:从"外部输入"(DriveVLA-W0 拼 token)进化到"内部骨架"(Percept-WAM 长进 VLM)、“检索钥匙”(DriveVLA-M0)、“蒸馏老师”(Last-VLA)——感知并没有消失,而是换着姿势存在
  3. VLM 的语义先验被反复证明有用但不够:有用(Qwen-VLA 的 VL 协同、ReCogDrive 的认知表征),不够(DriveVLA-M0 的语义检索反效果、BrainWAM 的注意力失衡、ST4VLA 的空间坍塌)——感知补的正是 VLM 永远差的那一截:空间精度与结构。

VLA 论文芯片对比:感知模块的接入方式

我把上面讨论的论文按照感知模块的接入方式做了一个分类:

接入方式代表工作感知角色融合深度
独立双系统DriveVLM感知做规划,VLM 做语义监督弱融合(VLM 输出文本约束给规划器)
特征拼接DriveVLA-W0, EMMA感知特征 token 拼入 VLM 序列中融合(共享 attention 层)
统一 query 空间SparseOccVLA感知 query 和推理 query 在统一空间交互强融合(共享整个 Transformer)
桥接对齐LinkVLA专用连接层对齐感知和 VLM 特征中融合(专用桥接模块)
外部知识注入KnowVal外部知识图谱补足 VLM 盲区弱融合(后处理融合)
检索键(不进推理链)DriveVLA-M0感知提取结构键,检索失败记忆弱融合(检索结果经 TTT 注入解码器)
平行分支 + 动作协调BrainWAM语义/预测分支分居,动作空间协调中融合(CAB+CIF 动作级融合)
感知内化(长进 VLM)Percept-WAM, Last-VLA, ST4VLA感知作为 VLM 内部 token/预训练课程强融合(共享 VLM 骨架)
训练期老师SimWAM, DriveVLA-W0预测/感知只在训练期喂信息,推理旁路弱融合(知识蒸馏进权重)
认知-动作分工ReCogDrive, Qwen-VLA, CoWorld-VLAVLM 只认知,扩散/DiT 专家翻译动作中融合(显式分工 + 中间表征)
无显式感知pi0, GR-3(简化版), AutoVLA无独立感知,靠 ViT 直接学无感知(感知被压缩进动作 codebook)

有三点值得注意

  1. 2026 年的趋势是从"弱融合"走向"强融合"和"感知内化",而不是"去掉感知"
  2. 端到端的 VLA(无显式感知)只在机器人操作这种低精度场景可行,驾驶场景没有成功案例(AutoVLA 也要靠动作 codebook 兜底物理可行性)
  3. 感知在 2026 年出现了四种新姿势:检索键(M0)、平行分支(BrainWAM)、内部骨架(Percept-WAM)、训练期老师(SimWAM/Last-VLA)——感知没有消失,而是被重新分配

VLA 融合架构演进


2026 年的结论:感知 + VLA 融合,不是替代

我自己的理解是:2024-2026 年 VLA 的演进趋势非常清晰地告诉我们一个结论:

VLM 不替代感知,VLM 和感知融合。

阶段做法代表工作
2024传统感知 + 独立 VLM 推理DriveVLM
2025感知特征作为 token 拼接进 VLMDriveVLA-W0, EMMA
2025认知-动作显式分工ReCogDrive, Qwen-VLA, AutoVLA
2026感知和 VLA 在统一 sparse query 空间融合SparseOccVLA
2026感知内化:感知长进 VLM 骨架Percept-WAM, Last-VLA, ST4VLA
2026感知变检索键 + 测试时训练DriveVLA-M0
2026语义与预测分居 + 动作空间协调BrainWAM, SimWAM, CoWorld-VLA
2026+感知 + VLA + 世界模型三位一体VLA-World

趋势很明显:不是"去掉感知",而是"感知和 VLA 越融越深"——而且 2026 年感知被重新分配成四种角色(检索键 / 平行分支 / 内部骨架 / 训练期老师),每种都在证明同一个道理:VLM 单独扛不住驾驶的空间精度要求。

原因也很简单:

  1. 安全不能靠猜:驾驶的 safety-critical 特性要求度量级别的精确。VLM 的视觉编码器从设计上就不提供这个。
  2. 传感器更全、更便宜:LiDAR 价格降到 2800 元,4D 成像雷达成熟。有精确数据不用、非要从单张图像里猜深度,是反直觉的。
  3. 融合收益被反复验证:每一篇 VLA 论文的消融实验都证明:感知 + VLM > 只有 VLM > 只有感知(在语义理解维度)。

从传感器到规划轨迹的完整数据流

为了让你彻底看清楚,我按照当前 VLA 系统的实际架构,把完整数据流展开到最细粒度:

VLA 完整数据流管道

核心要点

  • 感知模块提供 3D 度量和碰撞检测,解决"安全"问题
  • VLM 的 ViT 提供语义理解,解决"智能"问题
  • 规划轨迹需要两者兼具:安全是底线,智能是上限

核心要点

  • 感知模块提供 3D 度量和碰撞检测,解决"安全"问题
  • VLM 的 ViT 提供语义理解,解决"智能"问题
  • 规划轨迹需要两者兼具:安全是底线,智能是上限

那什么场景下 VLM 的视觉编码器就够了?

有些场景确实不需要感知模块,VLM 的视觉编码器就够了:

  • 简单的机器人操作(比如"抓取红色的杯子"):位置的精确度要求低,语义理解主导。pi0 在这样的任务上表现很好。
  • 自动驾驶的数据标注辅助:VLM 辅助标注 2D 语义标签、描述场景、写数据报告。语义正确即可,不需要 3D 坐标。
  • 安全监控:发现异常事件(“有人在路边招手”、“前面有事故”),不需要精确位置,只需要触发告警。
  • 导航中的地标识别:“前面那个红色大楼右转”——语义识别为主,不需要厘米级精度。
  • 驾驶教练/分析系统:分析驾驶行为是否安全,给出语义反馈(“你变道时没有打转向灯”),不需要实时控制。

但对驾驶规划这个任务——需要精确到厘米级和毫秒级——感知模块是绕不过去的。


一个更大的问题:那未来的感知会被 VLM"吸收"吗?

这是这篇分析真正想触及的问题。

从 2024 到 2026,趋势不是"VLM 替代感知",而是"VLM 和感知融合"。那更远的未来呢?感知模块会不会最终被 VLM 的视觉编码器"吸收"——变成统一的端到端模型?

这个可能性不能说没有,但有几个根本性障碍:

障碍 1:训练数据的模态鸿沟

VLM 的视觉编码器是在 2D 图像上预训练的(ImageNet 分类、CLIP 对比学习、SigLIP 等)。它学到的表征是2D 语义空间中的分布。

感知模块需要的是3D 度量空间中的精确表征。要把 ViT 的表征空间从 2D 语义转移到 3D 度量,需要:

  1. 大规模 3D 标注数据(检测框、深度图、占用网格)
  2. 多传感器数据(相机 + LiDAR + Radar 联合训练)
  3. 度量级别的监督信号

目前没有任何一个 VLM 预训练数据包含这个级别的 3D 监督。即使以后的预训练数据包含更多 3D 信息,其占比也不可能超过 2D 数据(因为 2D 图像的获取成本比 3D 标注低了几个数量级)。

障碍 2:度量精度和模型容量之间的张力

假设我们真的训练了一个超大的视觉编码器,同时学会了 2D 语义和 3D 度量。一个根本问题依然存在:模型的输出空间中,“语义"和"度量"两种信息的表示成本不同

  • 语义信息可以压缩(“这是一辆红色的车"只需要几个 token)
  • 度量信息不能压缩("(x=10.53, y=2.17, θ=23°, v=5.2)“需要高精度数值表示)

如果用一个统一的 token 空间同时表示这两种信息,token 的数量和精度要求会被度量信息主导。这让模型的推理效率严重下降——因为大部分 token 都在做"精确位置编码"这个感知模块本来就能高效完成的事。

障碍 3:安全验证和模块化带来的工程优势

这是工程实践中最关键的一点:分解的模块更容易验证

  • 感知模块可以单独验证:3D 检测精度(mAP、NDS)、占用召回率
  • 规划器可以单独验证:碰撞率、舒适性指标
  • VLM 可以单独验证:场景理解准确率、推理链质量

如果合成了一个端到端模型,你只能验证最终输出(轨迹质量),找不到哪一步出了问题。在 safety-critical 的自动驾驶系统中,这种"黑盒可验证性"是不可接受的。

所以结论是?

短期(2026-2028):感知和 VLA 继续深度融合,但感知保持独立模块。 中期(2028-2030):可能出现"感知原生"的视觉编码器(在 3D 数据上预训练的 ViT),感知模块从独立变成一个内部的子网络。 长期(2030+):如果出现全新的视觉编码范式(比如原生 3D tokenizer + 因果预测预训练),感知可能被完整吸收进 VLA 的统一架构中。

但即使在最激进的长期愿景中,感知代表的功能(精确 3D 度量)不会被消除——只会被重新分配到模型的不同层。 驾驶的安全要求不会因为架构变化而降低。


一张图总结

VLA vs 感知架构对比

感知模块给 VLA 提供了"精确的 3D 骨骼”,VLM 给感知模块提供了"丰富的语义血肉”。把它们结合起来,自动驾驶系统才有了真正的驾驶能力。


个人想法

我一直在想一个问题:为什么会有"VLM 替代感知"这种直觉?

可能因为"认知"和"度量"在人类的感知中是合一的。我们人类看世界,不会刻意区分"我在做语义理解"和"我在做深度感知”——大脑的视觉皮层同时完成这两件事。所以我们会自然地觉得:“我看得懂画面,那我就知道距离和速度。”

但机器的视觉编码器(ViT)和大规模预训练 VLM 没有经历人类的视觉发育过程。人类视觉皮层在成长中通过双眼视差、运动视差、触觉反馈学会了 3D 感知。ViT 只是在 2D 图像上做对比学习/掩码重建——它从来没有真正"看到"过 3D 世界。

更有意思的是:即使人类的视觉系统,在缺乏深度线索的单张图像上也会犯错。你可以做一个简单的实验:拿一张照片,闭上一只眼,试着判断画面中物体的绝对距离。你会发现非常困难。人类是通过双眼视差 + 运动视差 + 先验知识来感知深度的,单张固定视角的图像本身就不够。

VLM 面临的是同样的问题。

这解释了为什么直到 2026 年,所有成功的工作都在做融合而不是替代

最近这一批论文精读又让我想得更深了一层。以前我以为答案是"感知 + VLM 融合",现在我觉得更准确的表述是:感知不会消失,但感知的形式会不断演化

回看 2026 年:DriveVLA-M0 把感知改造成"检索键",BrainWAM 把感知和语义"分居",Percept-WAM 把感知"长进"VLM,SimWAM 把感知"退居训练期",Last-VLA 把感知"蒸馏进权重",ST4VLA 把感知变成"预训练课程"……感知模块作为"一个独立的东西"在 2026 年已经不那么常见了,但感知承担的功能——把 2D 像素还原成 3D 结构——从未缺席。它只是换了六种姿势存在。

这让我想到一个类比:就像"特征工程"在深度学习早期非常重要,后来被表示学习吸收。感知模块很可能也在被 VLA 一步步"吸收"——但吸收的是实现形式,不是功能。 而功能之所以不能被吸收,是因为驾驶的物理约束(厘米级精度、毫秒级响应、可验证的安全)不会因为模型变大而放松。

所以我的最终结论是:别再问"VLM 能不能替代感知",改问"感知以什么形态存在于 VLA 里"——这个问题的答案,正是 2026 年每一篇论文精读的实质。

可能未来的某一天,某个下一代视觉编码器(原生 3D tokenizer?视频因果预测预训练?)会同时学会度量和语义。但现在的 ViT + CLIP/SigLIP 范式做不到。在做到之前,感知模块和 VLM 就是自动驾驶的两条腿——缺一条能走,但瘸。