当前位置: 首页 > news >正文

【论文阅读】OpenDriveVLA:基于大型视觉语言动作模型的端到端自动驾驶

慕尼黑工业大学和慕尼黑大学的研究人员开发了OpenDriveVLA,一个端到端自动驾驶框架,它将视觉-语言模型与3D环境感知和轨迹规划相结合,在nuScenes数据集上实现了最先进的性能,同时通过分层跨模态对齐实现了自然语言命令的解释。

简介

传统上,自动驾驶技术依赖于模块化系统,这些系统将感知、预测和规划分离成不同的组件。虽然这种方法有效,但可能会导致模块之间的误差传播,并且难以应对需要综合推理的复杂场景。大型语言模型(LLM)和视觉语言模型(VLM)的最新进展已经显示出理解复杂场景和做出高级决策的潜力,但将它们直接应用于自动驾驶提出了重大挑战。

OpenDriveVLA 训练概览

图 1:OpenDriveVLA 模型的多阶段训练过程的概述,展示了如何通过分层特征对齐、驾驶指令微调、智能体-环境-自我交互和轨迹规划来集成视觉、语言和动作能力。

来自慕尼黑工业大学和慕尼黑路德维希-马克西米利安大学的研究人员开发了 OpenDriveVLA,这是一种新颖的端到端自动驾驶框架,集成了视觉、语言和动作能力。该模型旨在利用大型视觉语言模型的强大推理能力,同时解决它们在自动驾驶领域的主要局限性:动态 3D 环境中较差的空间推理能力,在安全关键应用中不可接受的幻觉,以及平衡推理速度与规划有效性的需求。

架构概述

OpenDriveVLA 代表了与现有采用视觉语言模型的自动驾驶方法的一次重大背离。虽然之前的工作已经探索了使用 VLM 进行场景描述、高级决策制定或直接从 2D 视频预测动作,但 OpenDriveVLA 创建了一种更集成的方法,该方法明确地对 3D 空间和交互进行建模。

该架构由几个关键组件组成:

  1. 一个 3D 视觉感知模块,用于从多视角图像中提取结构化的环境 tokens
  2. 一种分层视觉-语言对齐机制,用于将视觉 tokens 投影到语言模型的嵌入空间中
  3. 一个语言模型(基于 Qwen 2.5-Instruct),它将视觉感知与驾驶知识相结合
  4. 一个轨迹规划模块,用于生成驾驶动作作为路点的序列

以下说明了将 VLM 融入自动驾驶的三种主要方法:

VLM 集成方法

图 2:特征对齐方法,其中 VLM 用于问答/解释,而规划则单独处理。

VLM 高级决策

图 3:使用 VLM 提供指导单独规划模块的高级决策。

端到端 VLA 方法

图 4:OpenDriveVLA 的方法,使用端到端的视觉-语言-动作模型,该模型直接处理规划。

多阶段训练方法

OpenDriveVLA 采用多阶段训练流程,以有效整合视觉、语言和动作能力:

  1. 阶段 1:分层特征对齐 - 通过专门的投影器将视觉标记与文本描述对齐。
  2. 阶段 2:驾驶指令微调 - 该模型在精选的驾驶指令问答数据集上进行训练,涵盖感知、预测和推理。
  3. 阶段 2.5:智能体-环境-自我交互 - 引入条件智能体运动预测任务来建模动态交互。
  4. 阶段 3:轨迹规划微调 - 该模型学习以路点序列的形式生成驾驶轨迹。

这种渐进式训练策略使模型能够构建日益复杂的能力,同时保持视觉感知和语言理解之间的对齐。

3D 视觉环境感知

OpenDriveVLA 的一项关键创新在于其 3D 视觉感知方法。与主要在 2D 图像上运行的模型不同,OpenDriveVLA 将特征提升到鸟瞰图 (BEV) 空间,以更好地建模空间关系。此过程包括:

  1. 使用预训练的 ResNet-101 从多视角图像中提取多尺度 2D 特征
  2. 将这些特征聚合和提升到 BEV 空间
  3. 采用三个专门的查询模块来提取结构化环境标记:
    • 全局场景采样器:捕获整体场景上下文
    • 智能体查询转换器:专注于车辆和行人等动态智能体
    • 地图查询转换器:提取有关道路和车道等静态地图元素的信息

这种结构化的视觉感知方法为可靠的空间推理奠定了基础,解决了传统 VLM 应用于自动驾驶时的关键限制。

分层视觉-语言对齐

为了弥合视觉感知和语言理解之间的差距,OpenDriveVLA 采用了一种分层视觉-语言对齐机制。这包括:

  1. 将提取的视觉标记投影到预训练 LLM 的词嵌入空间中
  2. 对不同类型的视觉信息(场景、智能体、地图元素)使用特定于标记的投影器
  3. 通过对比学习将每个视觉标记与相应的文本描述对齐

这种方法确保了语言模型可以有效地理解和推理视觉信息,从而在感知和高级推理之间创建无缝集成。

智能体-环境-自我交互

自动驾驶的一个关键方面是理解自我车辆、其他智能体和环境之间的动态交互。OpenDriveVLA 通过以下方式解决此问题:

  1. 一项条件智能体运动预测任务,其中模型预测每个检测到的智能体的未来运动
  2. 基于视觉嵌入、场景上下文、地图结构和自我车辆状态的交互显式建模
  3. 将这种交互理解集成到轨迹规划过程中

此组件有助于模型更深入地了解交通动态,从而实现更具预测性和适应性的驾驶行为。

端到端轨迹规划

OpenDriveVLA 的最终目标是以轨迹的形式生成适当的驾驶动作。这是通过以下方式实现的:

  1. 将未来的驾驶动作表示为路点序列
  2. 将路点标记化为可由语言模型处理的离散文本标记
  3. 使用 LLM 自回归生成标记化轨迹
  4. 将生成过程置于视觉感知标记、自我状态和高级驾驶命令的条件下
  5. 将生成的标记解码回数值路点

这种方法使模型能够利用语言模型强大的推理能力,同时保持轨迹规划所需的精度。该模型可以解释不同的命令并生成适当的轨迹,如下例所示:

命令解释示例

图5:示例展示了OpenDriveVLA如何解释不同的驾驶命令并生成相应的轨迹,同时为其决策提供解释。

实验结果

OpenDriveVLA 在 nuScenes 数据集上进行了评估,该数据集是自动驾驶研究的标准基准。 结果表明:

  1. 在开环轨迹规划中表现出最先进的性能,优于现有的自回归语言模型和端到端驾驶模型
  2. 以较小的 0.5B 参数版本表现出具有竞争力的性能,突出了模型的效率
  3. 在驾驶相关问答任务中表现出卓越的性能,始终优于之前的语言增强驾驶模型和通用多模态基线

消融研究证实了以下方面的重要性:

  • 用于精确轨迹规划的视觉输入
  • 用于调整驾驶行为的高级命令
  • 用于预测未来轨迹的历史状态信息

定性示例展示了模型的能力:

  • 解释不同的驾驶员命令并生成相应的轨迹
  • 为其驾驶决策提供解释
  • 与其他方法相比,生成更稳定和适应性更强的轨迹

场景理解示例

图6:OpenDriveVLA 场景理解能力的示例,展示了多视角摄像头输入和为“保持前进”命令生成的轨迹。

与现有方法的比较

OpenDriveVLA 代表了将语言模型与自动驾驶集成方面的进步,主要体现在以下几个方面:

  1. 与 VLM 标注/问答方法相比:虽然这些方法使用 VLM 来描述场景或回答有关驾驶场景的问题,但它们并不直接生成驾驶动作。OpenDriveVLA 将感知、推理和动作生成集成在一个模型中。

  2. 与 VLM 高级决策相比:一些方法使用 VLM 来做出高级决策(例如,“在路口右转”),这些决策会告知单独的规划模块。OpenDriveVLA 直接生成详细的轨迹计划,从而实现更细致的控制。

  3. 与没有语言能力的端到端模型相比:传统的端到端驾驶模型直接从传感器数据学习到动作,但缺乏语言模型的推理能力。OpenDriveVLA 集成了语言理解,以实现对复杂驾驶场景进行更复杂的推理。

  4. 与其他 VLA 模型相比:虽然最近的一些工作探索了用于驾驶的视觉-语言-动作模型,但 OpenDriveVLA 对 3D 空间以及智能体-环境-自我的交互进行显式建模,代表了一种更全面的自动驾驶任务方法。

局限性和未来工作

尽管取得了令人鼓舞的结果,但 OpenDriveVLA 仍存在一些局限性,这些局限性为未来的研究指明了方向:

  1. 闭环评估:目前的评估仅限于开环规划。未来的工作应该在闭环仿真环境中评估该模型,以评估其在交互式交通场景中的鲁棒性。

  2. 幻觉缓解:虽然分层感知方法有助于减少幻觉,但还需要进一步研究以开发更强大的方法来确保安全关键型应用中的可靠性。

  3. 计算效率: 完整模型需要大量的计算资源。虽然 0.5B 版本在资源受限的应用中显示出潜力,但仍需要进一步优化才能进行实时部署。

  4. 显式推理: 将显式的链式思考推理融入规划过程可以增强模型处理复杂场景的能力,并为其决策提供更好的解释。

结论

OpenDriveVLA 代表了将大型视觉语言模型应用于自动驾驶的一个重大进步。通过整合 3D 视觉感知、分层视觉语言对齐和端到端轨迹规划,该模型解决了现有方法的主要局限性,同时利用了大型语言模型的强大推理能力。

在轨迹规划和驾驶相关问答任务方面的最先进性能证明了这种方法的潜力。随着自动驾驶技术的不断发展,在像 OpenDriveVLA 这样的统一模型中整合视觉、语言和行动能力,为实现更强大、可解释和可靠的自动驾驶系统提供了一条有希望的道路。

作者表示有意发布他们的代码,这将促进该快速发展领域的进一步研究和开发,从而可能加速实现真正有能力的自动驾驶系统。

http://www.dtcms.com/a/395071.html

相关文章:

  • Redis 缓存更新策略与热点数据识别
  • 新手小白——Oracle新建表完成题目
  • 如何让百度快速收录网页如何让百度快速收录网页的方法
  • Bugku-1和0的故事
  • 微硕WINSOK N+P MOSFET WSD3067DN56,优化汽车智能雨刷系统
  • DeviceNet 转 Profinet:西门子 S7 - 1500 PLC 与欧姆龙伺服电机在汽车焊装生产线夹具快速切换定位的通讯配置案例
  • 探索鸿蒙应用开发:构建一个简单的音乐播放器
  • 人脸识别(具体版)
  • 4.10 顶点光源
  • 深度学习---PyTorch 神经网络工具箱
  • 第九篇:静态断言:static_assert进行编译期检查
  • 第10讲 机器学习实施流程
  • tablesample函数介绍
  • 机器学习-单因子线性回归
  • android pdf框架-14,mupdf重排
  • 借助VL模型实现一个简易的pdf书签生成工具
  • 78-数据可视化-折线图
  • 静默安装 Oracle Database 21c on CentOS 7.9
  • DINOv3详解+实际下游任务模型使用细节(分割,深度,分类)+ Lora使用+DINOv1至v3区别变换分析(可辅助组会)
  • Linux编译SRS并测试RTMP流
  • 【完整源码+数据集+部署教程】遥感温室图像分割系统: yolov8-seg-slimneck
  • Apache 生产环境操作与 LAMP 搭建指南
  • 11种数据库类型详解:数据库分关系数据库、非关系数据库、时序数据库、向量数据库等
  • UVa12180/LA4300 The Game
  • Kafka 核心原理、架构与实践指南
  • Tesollo展示灵巧手自动化精准测量系统
  • 11MySQL触发器实战:用户操作日志审计系统
  • 【深度学习计算机视觉】06:目标检测数据集
  • visual studio 2019离线安装
  • 【Unity笔记】Unity 模型渲染优化:从 Batching 到 GI 设置的完整指南