自动驾驶VLA模型技术解析与模型设计

1.前言

2025年被称为“VLA上车元年”,以视觉语言动作模型(Vision-Language-Action Model, VLA)为核心的技术范式正在重塑智能驾驶行业。VLA不仅融合了视觉语言模型(VLM)的感知能力和端到端模型的决策能力,更引入了“思维链”技术,实现了全局上下文理解与类人推理能力,革命性技术的落地将推动智能驾驶从“功能时代”迈向“体验时代”,并可能在未来两年内改写智能驾驶市场的竞争格局。2025年的智能驾驶:VLA上车元年

视觉语言动作模型(VLA)由 DeepMind 在 2023 年首次提出,应用于机器人领域,通过视觉与语言输入生成物理世界可执行的动作。VLA 模型被视为视觉语言模型(VLM)与端到端(End-to-End, E2E)技术的结合体,核心特性:

  • 多模态感知与决策:能够基于视觉与语言信息进行实时感知,通过“思维链”技术构建类人逻辑,推理复杂场景下的最优驾驶决策。
  • 全局上下文理解:能够理解长达数十秒的全局路况信息,这对于施工工区、潮汐车道等复杂场景尤为重要。
  • 系统透明性与可解释性:推理过程全程可求导,能够通过车载显示向用户解释驾驶逻辑,增强用户信任感。

随着城区NOA(Navigate on Autopilot)的普及,用户对智能驾驶体验的需求从“能用”转向“好用”。传统VLM或端到端方案虽然在感知与决策方面有了显著提升,但在复杂路况下仍存在局限:

  • 短视化问题:现有系统通常只能应对7秒内的路况推理,而在突发情况(如交通指挥手势)中表现不足。
  • 缺乏解释能力:用户对“为什么这么开”的需求未被充分满足,导致体验层面信任不足。
  • 决策全局性不足:面对动态复杂场景,传统方案难以统筹多重变量并实现安全优化。

2. 技术分析

谷歌在2024年11月份发表了一篇文章EMMA:面向自动驾驶的端到端多模态模型(EMMA: End-to-End Multimodal Model for Autonomous Driving),是比较典型的自动驾驶VLA模型,我们接下来分析其技术路线和模型设计。

论文地址:[2410.23262] EMMA: End-to-End Multimodal Model for Autonomous Driving

代码地址:https://github.com/taco-group/OpenEMMA/tree/main(第三方复现,谷歌未开源)

复现论文地址:https://arxiv.org/pdf/2412.15208

2.1 摘要

目前大语言模型较为成熟,因此无论是VLM或者VLA模型都是以大语言模型为基础的。MLLMs 拥有两大优势:一是训练数据来自大规模互联网,拥有广泛的“世界知识”;二是具备强大的推理能力(如 CoT chain-of-thought),这是现有驾驶模型难以具备的。EMMA 基于多模态大语言模型构建,能够直接将原始摄像头传感器数据映射为多种驾驶相关输出,包括规划轨迹、感知目标以及道路图结构等。为了最大程度利用预训练大语言模型的“世界知识”,EMMA 将所有非传感器输入(例如导航指令和自车状态)以及输出(如未来轨迹和三维坐标)统一表示为自然语言文本。通过将驾驶任务转化为视觉问答(VQA)问题,EMMA 能够在保留 Gemini 原有能力的基础上进行端到端的多任务驾驶决策。微调后,EMMA 能够生成未来轨迹、目标检测结果、道路结构等输出,并展现出可解释性和多任务能力。

从上图可以看出,EMMA的输入包括:

  • 高层指令(Router Command):例如 "左转"、"直行" 等导航目的。

  • 自车历史状态(Ego Vehicle History):以BEV格式的历史轨迹点表示。

  • 环视摄像头图像(Surround-view Camera Videos):多视角图像输入。

输出包括:

  • 未来自车轨迹(Ego Trajectory Prediction):用于运动规划,可转为实际控制命令。
  • 推理解释(Rationale Text):模型在做决策前生成的逻辑解释,包括场景描述、关键对象、对象行为和驾驶决策。
  • 其他模块能力:3D目标检测、道路图估计、场景问答(如“前方是否临时封闭?”)

模型的输入输出除了图像外,全部以自然语言文本格式生成,输入图像是单帧多摄像头组合,EMMA 没有使用相机的外参(extrinsics)或内参(intrinsics),也没有构建BEV特征图,而是通过大模型对上下文建模能力间接学习到的。这里感觉不太合适,因为不同的摄像头参数、车辆参数会导致图像不一致,简单点可以将摄像头的内外参作为prompt输入给模型,论文中的一些prompt参考形式如下:

这是来自前视摄像头的图像。该摄像头的参数如下:
- 内参矩阵 fx=1000, fy=1000, cx=640, cy=360;
- 相对于车辆坐标的位置为 (1.2m, 0.0m, 1.5m),方向为无旋转。
请根据该图像判断当前场景。
自车在过去3帧的状态为:
时刻-3:位置 (0.00, 0.00),速度 0.0 m/s,加速度 0.0 m/s²
时刻-2:位置 (1.50, 0.00),速度 5.0 m/s,加速度 1.0 m/s²
时刻-1:位置 (3.00, 0.10),速度 6.0 m/s,加速度 1.0 m/s²
导航提示:
- 当前处于城市快速路段,限速为100 km/h;
- 前方约300米有一个匝道口,将并入主路,请保持当前车速;
- 并线后继续直行,约1公里后准备右转下高速。

2.2 技术架构

EMMA 是建立在 Gemini 大模型之上,论文中提到使用的是Gemini 1.0 Nano-1(未开源),模型大小为1.8B左右。如果项复现论文,可以尝试前面提到的OpenEMMA中使用的开源模型,如LLaVA-1.6-Mistral-7B、LLaMA-3.2-11B-Vision、Qwen2-VL-7B等。这些模型采用相似的范式:首先是将图像进行编码,如CNN、ViT、CLIP-ViT(使用最为广泛,CLIP在大量图文对上训练),然后将图像编码特征通过MLP或者Q-Former映射到语言模型空间中的token,论文中采用了简单的MLP进行映射,然后结合图像特征token和文本token输入到LLM模型,LLM模型最终以文本的形式输出各个任务的结果,其数学公式可以表达为:

O = G(T, V)

其中:

G:Gemini 模型

T:自然语言提示(prompts)

V:图像或视频

O:自然语言输出

其结果输出均为文本,参考格式如下。在训练过程中,需要提供3D目标以及拓扑参数作为真值。另外,作为推理的R1-R4也是通过自动化方法构建标签。例如R1中场景描述可以通过数据记录log提取,R2通过感知模型获取,R3、R4通过记录的未来行驶轨迹对车辆行为进行描述,如前方车辆减速停止,前方红绿灯自车停车等待。

车辆 (12.50, -1.20, 1.10, 长4.2, 宽1.8, 高1.6, 朝向0.3rad)  
行人 (9.20, 3.10, 0.0, 长0.8, 宽0.6, 高1.7, 朝向0.0)
将 T 个未来轨迹点 (xt, yt) 转成浮点文本:
未来轨迹为:  
(3.00, 0.15), (5.80, 0.35), (8.50, 0.50), ...
R1 场景描述(天气、道路类型、交通)R2 关键物体(带坐标)R3 物体行为(静止、移动方向等)R4 驾驶决策(保持低速、刹车等)R1: 天气晴朗,道路为双向两车道,有人行道。  
R2: 行人 [9.2, 3.1],车辆 [12.5, -1.2]  
R3: 行人正准备过马路,车辆正在加速前行  
R4: 我应该减速观察,准备停车  

2.3 实验结果

实验1:预测未来 ego 轨迹

  • WOMD 上,EMMA 与 MotionLM、Wayformer 相当,在前 5s 内表现更优(ADE 1~5s)
  • nuScenes 上,EMMA 在 self-supervised 方法中表现最好,甚至超过部分 supervised 方法(比如 DriveVLM-Dual)

实验2:Chain-of-Thought 推理与数据扩

CoT 推理结构包括:

  • R1: 场景描述
  • R2: 关键目标位置
  • R3: 目标行为描述
  • R4: Meta driving decision

结果:
CoT 总体提升:+6.7%

R3(meta decision)+3.0%,R2(critical objects)+1.5%

R1 对性能中性,但提升了可解释性

实验3:感知任务实验(3D 目标检测、地图估计、场景理解)
感知任务:
3D Object Detection:在 WOD 上,与 BEVFormer、MV-FCOS3D++ 对比

Road Graph Estimation:预测 BEV 中的 lane graph polyline

Scene Understanding:识别是否有临时路障(如施工区、障碍物)

3D 检测结果(LET-Metric):
EMMA+ 相比 BEVFormer:

车辆 precision 提升 16.3%

pedestrian recall 与 MV-FCOS3D++ 持平

Road Graph:
动态采样、ego 对齐、shuffle target、加 padding、加分隔符等设计都显著提高性能

动态采样最重要:提升 40%~90% 精度

Scene understanding:
单任务 fine-tune 表现优于人类 baseline

2.4 结论

EMMA 在 nuScenes 数据集上的运动规划任务中实现了当前先进的性能,在 Waymo Open Motion Dataset(WOMD)上也取得了有竞争力的结果。同时,EMMA 在 Waymo Open Dataset(WOD)中也展现出较强的相机主导的 3D 目标检测能力。同时还发现,将 EMMA 共同训练在规划轨迹、目标检测和道路图任务上,可以在所有这三个领域带来性能提升,凸显了其作为通用模型在自动驾驶应用中的潜力。然而,EMMA 也存在一些局限性:它仅能处理少量图像帧、未集成准确的 3D 传感器如激光雷达或雷达,且计算开销较大。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/41523.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

OpenEuler linux samba部分目录无法访问的问题

ubuntu上没遇到过这个问题 换成openeuler这个系统后 出现 安装samba之后 部分目录无法访问的问题 vi /etc/selinux/config SELINUXenforcing,改为SELINUXpermissive。 改完之后重启 就可以了

游戏引擎学习第184天

"我们有所有的代码"α 我们将进行一个完整的游戏开发过程,并且会展示。我们从零开始编写引擎,所以我们涵盖的内容从最底层的代码到最高层次的模块都有。虽然我们不能说是“高层次high level”的内容,但我们确实拥有所有的代码&…

基于javaweb的SpringBoot雪具商城系统设计与实现(源码+文档+部署讲解)

技术范围:SpringBoot、Vue、SSM、HLMT、Jsp、PHP、Nodejs、Python、爬虫、数据可视化、小程序、安卓app、大数据、物联网、机器学习等设计与开发。 主要内容:免费功能设计、开题报告、任务书、中期检查PPT、系统功能实现、代码编写、论文编写和辅导、论…

vue数字公式篇 Tinymce结合使用(二)

继上一篇的数字公式 , 这次的功能是将公式能插入编辑器以及修改 1、Tinymce 自定义 LateX 按钮,打开公式编辑器窗口 LateX.vue window.tinymce.init({...//基础配置这里我就不写了setup(ed) {//自定义 LateX 按钮ed.ui.registry.addButton(LateX, {text:…

香蕉派 BPI-CM6 工业级核心板采用进迭时空K1 8核 RISC-V 芯片开发

BPI-CM6 产品介绍 香蕉派BPI-CM6是一款工业级RISC-V核心板,它采用SpacemiT K1 8核RISC-V芯片设计,CPU集成2.0 TOPs AI计算能力。8/16G DDR和8/16/32/128G eMMC。设计了板对板连接器,以增强稳定性,与树莓派CM4尺寸相同&#xff0c…

SpringBoot大学生竞赛管理系统设计与实现

一个用于管理大学生竞赛报名、信息查询与竞赛管理的系统,采用了现代化的SpringBoot框架进行开发。该系统的主要功能包括学生信息管理、教师信息管理、竞赛报名审核、竞赛信息管理等模块,适用于学校或教育机构进行竞赛活动的组织与管理。系统界面简洁&…

使用ucharts写的小程序,然后让圆环中间的空白位置变大

将ringWidth属性调小 extra: { ring: { ringWidth: 20, activeOpacity: 1.5, activeRadius: 10, offsetAngle: 0, labelWidth: 15, border: true, borderWidth: 0, borderColor: #F…

【MySQL】用户账户、角色、口令、PAM

目录 查看用户账户设置 连接 1.本地连接 2.远程连接 账户 角色 操作用户账户和角色 配置口令和账户有效期限 手工使口令过期 配置口令有效期限 PAM身份验证插件 客户端连接:使用 PAM 账户登录 在连接到MySQL服务器并执行查询时,会验证你的身…

力扣:回溯算法

组合I class Solution {List<List<Integer>> result new ArrayList(); // 所有结果集List<Integer> list new ArrayList(); // 当前结果集public List<List<Integer>> combine(int n, int k) {dfs(n, k, 1);return result;}public void dfs(i…

论坛系统测试报告

一、项目背景 为论坛系统项目设计并进行自动化测试。论坛系统由六个页面构成&#xff1a;用户登录页、用户注册页、个人中心页面、我的帖子页面、帖子编辑页、帖子列表页以及帖子详情页。 通过使用selenium工具来定位到web中的元素&#xff0c;对获取到的元素进行自动化测试等操…

husky的简介以及如果想要放飞自我的解决方案

husky 是一个 Git Hooks 管理工具&#xff0c;它的主要作用是 在 Git 提交&#xff08;commit&#xff09;、推送&#xff08;push&#xff09;等操作时执行自定义脚本&#xff0c;比如代码检查&#xff08;Lint&#xff09;、单元测试&#xff08;Test&#xff09;、格式化代码…

微信小程序pdf预览

1.示例图 2.代码 fileId&#xff1a;要预览的pdf文件的id viewsFiles(fileId) {wx.showLoading({title: 加载中...});var params {url: "/common/getFile/" fileId ,//后端提供的接口method: "GET",responseType: "arraybuffer",callBack: …

SpringCloud Stream:消息驱动的微服务架构设计

文章目录 引言一、Spring Cloud Stream基础概念二、核心组件和架构三、消息生产者实现四、消息消费者实现五、消息分组与持久化六、消息分区与扩展七、函数式编程模型八、错误处理与重试机制九、测试与监控总结 引言 在当今复杂的分布式系统环境中&#xff0c;微服务架构已经成…

六十天前端强化训练之第三十一天之Webpack 基础配置 大师级讲解(接下来几天给大家讲讲工具链与工程化)

欢迎来到编程星辰海的博客讲解 看完可以给一个免费的三连吗&#xff0c;谢谢大佬&#xff01; 目录 一、Webpack 核心概念解析 二、实战&#xff1a;多资源打包配置&#xff08;含完整代码&#xff09; 三、配置深度解析&#xff08;重点部分说明&#xff09; 四、效果演示…

深入理解K8s与Docker的关系:容器化技术的双雄

友情提示&#xff1a;本文内容由银河易创&#xff08;https://ai.eaigx.com&#xff09;AI创作平台gpt-4-turbo模型生成&#xff0c;仅供参考。 在现代云计算及微服务架构的发展中&#xff0c;Docker与Kubernetes&#xff08;K8s&#xff09;作为两大核心技术&#xff0c;被广泛…

nebula graph传统使用Docker进行项目发版

nebula graph传统使用Docker进行项目发版 1. nebula graph服务2. 搭建ES集群3. 注意事项3.1 图数据库的启动顺序3.2 模糊查询失效 1. nebula graph服务 1.在测试服务器中执行如下命令 docker commit 85b6e2b8xxx xxx_nebula_es:1.0.0.2执行docker images之后能看到新的镜像 x…

0322-数据库与前后端的连接、数据库表的增删改查

前端 <!DOCTYPE html> <html> <head> <meta charset"UTF-8"> <title>Insert title here</title> <script srcjs/jquery-3.7.1.min.js></script> <script> //jquaryajax发起请求 //传参形式不同 post用data{}…

matlab打开两个工程

1、问题描述 写代码时&#xff0c;需要实时参考别人的代码&#xff0c;需要同时打开2个模型&#xff0c;当模型在同一个工程内时&#xff0c;这是可以直接打开的&#xff0c;如图所示 2、解决方案 再打开一个MATLAB主窗口 这个时候就可以同时打开多个模型了 3、正确的打开方…

深度剖析HTTP协议—GET/PUT请求方法的使用-构造请求的方法

活动发起人小虚竹 想对你说&#xff1a; 这是一个以写作博客为目的的创作活动&#xff0c;旨在鼓励大学生博主们挖掘自己的创作潜能&#xff0c;展现自己的写作才华。如果你是一位热爱写作的、想要展现自己创作才华的小伙伴&#xff0c;那么&#xff0c;快来参加吧&#xff01…

SQL中体会多对多

我们可以根据学生与课程多对多关系的数据库模型&#xff0c;给出实际的表数据以及对应的查询结果示例&#xff0c;会用到JOINLEFT JOIN两种连接 1. 学生表&#xff08;students&#xff09; student_idstudent_name1张三2李四3王五 2. 课程表&#xff08;courses&#xff09…