点击下方卡片关注“自动驾驶之心”公众号作者 | Haozhuang Chi等编辑 | 自动驾驶之心本文只做学术分享如有侵权联系删文自动驾驶前沿信息获取→自动驾驶之心知识星球今天给大家介绍一篇来自南洋理工大学 AutoMan Lab 自动驾驶智能座舱的世界模型工作Driver-WM。论文标题Driver-WM: A Driver-Centric Traffic-Conditioned Latent World Model for In-Cabin Dynamics Rollout论文链接https://arxiv.org/abs/2605.05092代码链接https://github.com/fisher75/Driver-WM项目主页https://fisher75.github.io/haozhuangchi.github.io/driver-wm/Driver-WM 总览从传统 DMS 和车外世界模型到面向座舱内驾驶员未来动态行为的世界模型图 1Driver-WM 将驾驶员从“被监测对象”推进为可以进行未来动态 rollout 的主体。一句话总结Driver-WM自动驾驶世界模型不应该只预测车外场景、道路、车辆和交通参与者怎么变化也应该预测座舱内驾驶员未来会如何反应。更具体一点Driver-WM 把驾驶员从“被监测对象”变成了一个可以 rollout 的动态系统。给定同步的座舱内视频和车外交通观测模型在 latent space 里预测未来驾驶员状态并解码成未来骨架轨迹同时用驾驶员行为、情绪、交通上下文和车辆状态这些语义任务做辅助正则。这件事听起来像是从 DMS 往前迈了一步但其实它和传统 DMS 的差别非常大。DMS 主要回答“驾驶员现在是不是分心、疲劳、看路”。Driver-WM 要回答的是“如果车辆接下来减速、变道或者遇到交通变化驾驶员未来会不会伸手、转头、重新接管动作会怎么发展”。对于 L2/L3 这种人车共驾系统这个问题非常关键。因为很多安全风险并不来自系统完全看不懂路而是来自接管时机、接管准备度和驾驶员反应之间的错位。如果您对自动驾驶世界模型、人机共驾和驾驶员建模方向感兴趣也欢迎加入「自动驾驶之心知识星球」。为什么需要一个驾驶员中心的世界模型过去几年自动驾驶世界模型发展很快。从 GAIA、DriveDreamer 到各类 latent world model大家讨论的重点大多是外部世界车道线怎么变化周围车辆怎么运动未来场景怎么生成规划策略怎么在世界模型里做 rollout。问题是真实 L2/L3 系统里还有一个不能忽略的主体人。传统车外世界模型默认驾驶员是后处理风险项或者干脆不进入预测状态。座舱内 DMS 则通常只做识别输出一个当前状态标签比如分心、疲劳、打电话、看路、情绪状态等。但真实人车共驾并不是这样的。车辆动作会反过来影响驾驶员。平顺减速、突然刹车、车道变化、交通拥堵都会改变驾驶员接管速度、手部动作、头部姿态和注意力迁移。也就是说驾驶员不是静态标签而是一个会被外部交通触发的动态系统。Driver-WM 的核心切入点就在这里把车外交通上下文作为条件把座舱内驾驶员状态作为需要预测的未来动态。这也解释了为什么它不是再做一个识别模型。识别模型可以告诉我们“此刻驾驶员是否注意”但无法告诉系统“接下来这个动作会不会让驾驶员更容易接管”。Driver-WM 则希望给规划和人机交互一个更前瞻的反馈。Driver-WM 的方法Driver-WM 方法框架图 2Driver-WM 的双流 latent world model 框架。车外多视角交通上下文通过 gated causal injection 影响座舱内驾驶员 latent rollout最终解码为骨架轨迹和辅助语义预测。Driver-WM 的整体结构可以概括成一句话双流 latent 表征加上外部到内部的门控因果注入。输入端模型使用冻结的 Qwen3-VL 视觉语言特征作为状态接口。车内视频形成 internal latent车外多视角视频形成 external latent。AIDE 数据集里车外包含 front、left、right 三个视角模型会加入 view embedding再对多视角外部特征做池化。这一步的意义是把原始图像压缩成一个紧凑的语义 latent space。Driver-WM 不直接生成未来像素而是在 latent space 里做长期状态预测最后再解码成驾驶员骨架关键点。Driver-WM 最关键的模块是Gated Causal Injection。它并不是把车内外特征简单拼接也不是做一个对称融合而是明确规定信息流方向车外交通上下文影响车内驾驶员动态。模型先用 cross-attention 从外部历史中提取上下文摘要再通过一个向量 gate 控制外部信息注入内部状态的强度。这点很重要。因为外部交通并不是每一帧、每一个维度都应该同等影响驾驶员。普通巡航时驾驶员可能基本不动突然刹车或变道时手部和上身反应才会更明显。gate 的作用就是让模型学习这种“什么时候注入、注入多少、影响哪些维度”。此外Driver-WM 强调 time-causal。未来预测时模型每一步只能访问当前及过去的车内外历史不能偷看未来帧。论文里还做了数值验证把不可见未来外部后缀替换成噪声或置零预测骨架张量最大变化只有 5e-7 量级。从系统定位看Driver-WM 不是一个端到端 L2/L3 规划器而是一个面向人因安全规划的感知原语。它给下游规划或风险模块提供的不是“直接打方向盘”的动作而是一组紧凑的驾驶员未来反应线索。这个面向规划的接口可以概括为未来骨架序列、驾驶员行为与情绪状态概率以及模型不确定性。下游模块可以从这些输出里进一步提取手部运动风险、头部和躯干注意力迁移、高动态反应风险以及非正常驾驶员状态风险。当前论文采用的是约 3.3 Hz 下的 5 步预测 horizon。实际系统里它可以像普通感知模块一样以滑动窗口方式连续运行把驾驶员未来几秒的反应趋势作为 takeover timing、告警策略或者安全减速策略的输入。为什么预测骨架而不是生成车内视频这里有一个很工程化的选择Driver-WM 不做像素级视频生成而是预测 HALPE-136 2D skeleton。这并不是降级而是把问题对准了 L2/L3 真正关心的变量。驾驶员接管相关的关键动作往往体现在头部、上身、手部和姿态变化上。骨架轨迹比像素更稳定也更容易做长期 rollout 和定量评估。尤其是手部关键点对分析驾驶员反应非常重要。在 AIDE 上Driver-WM 使用 3 秒 clip每个 clip 均匀采样 10 帧采用 5→5 协议给定前 5 帧观测预测后 5 帧未来。模型预测 HALPE-136 关键点也就是 26 个身体关键点、68 个面部关键点和 42 个手部关键点。除了骨架监督Driver-WM 还挂了四个辅助语义头驾驶员行为 DBR、驾驶员情绪 DER、交通上下文 TCR、车辆状态 VCR。注意这些标签只作为监督目标不作为 rollout 条件输入避免标签泄露。从工程部署角度看目前 Driver-WM 输出的是归一化 2D keypoints。要把它接入真实车辆还需要座舱相机标定、去畸变、内外参以及稳定的 ROI 或车辆坐标系映射。如果要得到 metric 3D 量可以进一步结合座椅和座舱先验、单目 lifting或者深度/多视角座舱传感器。效率上Driver-WM 更像一个轻量 rollout head而不是每次都要重新跑重型生成模型的模块。实际部署时如果 VLM 特征可以缓存或流式复用后端主要承担的是时序状态更新、门控注入和骨架解码。此外模型输出还可以进一步扩展出不确定性估计。它不等于车规级置信度校准但对于下游风险模块来说知道“哪些预测更不确定”本身就是有价值的安全信号。实验结果静态指标好看不等于真的会预测反应Driver-WM 在 AIDE 的 5→5 因果 rollout 上报告了几类指标MPJPE、d-nMPJPE、PCK0.05以及四个语义任务的 Macro-F1。主模型结果如下All MPJPE 为 71.47 pxd-nMPJPE 为 3.24%PCK0.05 为 71.66。语义任务上DBR F1 为 68.07DER F1 为 72.61TCR F1 为 90.15VCR F1 为 68.34。论文 Table 1AIDE 5→5 rollout 主结果图 3arXiv v1 论文中的主结果表。它同时报告了整体 MPJPE、High-Motion 子集、PCK 以及四个语义任务的 Macro-F1。这里有一个很值得注意的现象Zero-Velocity baseline 在整体 MPJPE 上看起来反而很强All MPJPE 是 52.89 px。这不是因为它真的理解了驾驶员反应而是因为自然驾驶数据里大量片段运动很小。直接复制最后一帧姿态就能在 L2 类指标上占便宜。论文把这个现象叫作 inertia effect。简单说普通 clip 里驾驶员不怎么动复制上一帧就能拿到不错的平均误差。但自动驾驶安全真正关心的是高动态、强反应的尾部场景。因此 Driver-WM 额外定义了 High-Motion 子集也就是测试集中未来窗口关节位移排名前 10% 的 60 个 clip。这个子集更能反映驾驶员真实反应能力。在 High-Motion tail 上Zero-Velocity 会随着预测 horizon 变长快速退化而 Driver-WM 能明显缓解 motion-only baseline 的长时误差累积。论文里给出的一个代表性数字是在最后一个预测步 h5 上Driver-WM 的 MPJPE 为 155.82而 Zero-Velocity 是 178.62。这也说明驾驶员建模不能只看平均误差。平均误差很容易被大量静态片段掩盖真正有价值的是模型能否在反应动作出现时预测出手部、头部和上身未来怎么变。High-Motion 子集上的 horizon-wise MPJPE 曲线图 4在 High-Motion tail 上Zero-Velocity 到长 horizon 明显退化Driver-WM 在最后预测步保持更低误差。从机制上看Driver-WM 的收益也不应只归因于视觉语言 backbone。更关键的是它把“车外交通”建模成外生刺激把“车内驾驶员动态”建模成响应状态并用 learned gate 控制外部信息什么时候、以多强的程度进入车内 rollout。进一步看Driver-WM 的输出天然可以服务于安全相关风险排序。它预测的不只是未来骨架还包括驾驶员语义状态和不确定性这些信号可以帮助下游模块判断哪些片段更可能出现高动态反应或接管风险。这里先保留定性讨论具体数值应以正式论文版本同步后的结果为准。消融实验外部交通上下文到底有没有被用上Driver-WM 的一个核心主张是驾驶员未来动态需要车外交通上下文。如果只看常规平均 MPJPE这一点有时并不明显。原因还是低运动片段太多模型即使不看车外也可能通过复制或均值回归拿到不错的平均误差。但语义和干预结果会把这个差异放大。在消融中去掉外部上下文后TCR F1 从 90.15 直接掉到 26.39VCR F1 也掉到 14.00。这说明外部语义确实需要车外流提供信息。论文 Table 2Driver-WM 消融实验图 5arXiv v1 论文中的消融表。去掉外部上下文会显著削弱交通上下文和车辆状态相关语义去掉 pose head 后模型仍能分类但无法做未来骨架 rollout。更关键的是测试时干预。论文直接在训练好的 Driver-WM 上做 intervention把外部上下文移除、换成别的 clip、做时间偏移、丢掉一个外部视角或者直接把注入路径关掉。结果很直观。移除车外特征时最终 horizon 的骨架偏差 Δh5 达到 15.208 px手部偏差 ΔHands 为 12.937。关闭注入路径时影响更大ΔAll 为 89.641Δh5 为 116.751ΔHands 为 95.666。强行全量注入也不是好事。把 λ_CA 设为 1 之后ΔAll 为 26.733过注入到 2 时ΔAll 进一步到 43.015。这说明两个点。外部交通上下文确实在影响驾驶员 rollout。但外部信息不能无脑注入必须通过 learned gate 做时间变化的调节。论文 Table 3Driver-WM 测试时干预实验图 6arXiv v1 论文中的测试时干预表。关闭注入路径会带来最大的 rollout 偏差尤其体现在手部相关关节上强制注入和过注入也会破坏预测稳定性。上面这张表衡量的是“干预后 rollout 相对 factual rollout 变了多少”。从定性上看它支持了 gated injection 的必要性移除车外上下文、关闭 gate、强行全量注入、过度注入都会改变驾驶员未来动作趋势。也就是说外部信息不是“有就硬塞进去”最好而是需要随时间和状态自适应注入。论文还做了因果性检查确认 causal-prefix decoding 下模型不会偷看未来。这个细节很关键因为 Driver-WM 的目标是面向未来部署的预测模块而不是离线视频理解模型。Driver-WM 干预可视化与高动态预测曲线图 7左侧展示 factual、替换外部上下文和关闭注入路径后的骨架变化右侧展示 High-Motion 子集上不同 horizon 的误差趋势。可视化同一个车内片段换掉车外上下文会怎样Driver-WM 的项目主页和论文里给了很适合公众号展示的可视化。最直观的是 filmstrip模型把未来 5 步预测骨架直接叠加在真实车内视频帧上对比 factual rollout 和去掉外部上下文后的 rollout。结果能看到车外上下文被移除后未来窗口里的手部和上身轨迹会出现明显不同。这种差异不是视频生成 artifact因为可视化直接叠加骨架到真实帧上。Driver-WM filmstrip 可视化真实未来帧上的骨架 rollout 与干预对比图 8未来帧 f6 到 f10 上的骨架叠加结果。Driver-WM factual rollout 与去掉外部上下文后的 rollout 在手部和上身轨迹上出现明显差异。补充材料里还有一个 optional frozen renderer 的可视化可以把 GT、Driver-WM factual rollout、do Ext empty 和 do λ_CA0 放在同一个 5 帧序列里看。这个素材很适合做第二个视频或动图用来解释“干预不是概念图而是能改变预测动作趋势”。补充材料中的 5 帧 renderer 可视化图 9补充材料中的 5 帧 renderer 对比展示 GT、Driver-WM factual rollout、移除外部上下文和关闭注入路径后的动态差异。这篇工作怎么看Driver-WM 最有价值的地方不是把某个 recognition benchmark 刷高一点而是把车内驾驶员纳入了自动驾驶世界模型的 rollout 体系。过去我们讲世界模型更多是在讲“世界怎么变化”。但对于 L2/L3人其实也是世界的一部分而且是会反过来影响安全闭环的一部分。车外场景变化会影响驾驶员反应驾驶员反应又会影响接管、告警、减速和规划策略。Driver-WM 把这个链条从“识别当前状态”推进到“预测未来反应”。这对真实系统有几个潜在意义。系统可以更早判断驾驶员是否会顺利接管而不是等 DMS 报警之后再处理。规划器可以选择更容易让驾驶员重新进入控制环的动作比如提前减速、选择更安全的车道或者调整 takeover request 的时机。人机共驾的逻辑也可以从规则式阈值逐步走向基于未来反应的预测式决策。当然这篇工作也还处在研究阶段。它在 AIDE 上验证了 5→5 短时 rollout、骨架预测、语义辅助和测试时干预但要进入真实车规系统还需要更长 horizon、更复杂驾驶场景、更强泛化和更严格的人因验证。还有一个现实限制是AIDE 没有同步 CAN/IMU所以当前 Driver-WM 主要依赖视觉交通上下文。如果未来能拿到车速、方向盘角、制动、加速度、yaw rate 等 ego-state 信号这些信号可以作为额外 external tokens 或 gate inputs例如把条件写成。这会让模型更接近真实车辆闭环因为驾驶员反应往往不仅由“看见了什么”决定也由车辆当前正在怎么动决定。但方向很清楚自动驾驶世界模型不能只模拟车外也要模拟车内的人。写在最后Driver-WM 提供了一个很值得关注的视角在 L2/L3 时代人不是一个被动监控对象而是闭环系统中的动态主体。如果说传统 DMS 解决的是“驾驶员现在是什么状态”那么 Driver-WM 试图解决的是“在接下来的交通变化中驾驶员会如何反应”。这个问题一旦被建模很多人机共驾策略就不再只是规则而可以变成可预测、可干预、可评估的动态过程。从更长远看车外世界模型和车内驾驶员世界模型可能会逐渐汇合形成真正面向人车共驾的统一世界模型。自动驾驶之心求点赞求分享求喜欢