导读:
OpenEMMA,它是首个基于多模态大型语言模型的开源端到端框架。通过结合思维链推理过程,它在利用多种多模态大型语言模型时,相较于基线取得了显著改进。此外,它在各种具有挑战性的驾驶场景中展示了有效性、泛化能力和鲁棒性,提供了一种更高效、更有效的自动驾驶方法。
©️【深蓝AI】编译
本文由paper一作——Shuo Xing 授权【深蓝AI】编译发布!
论⽂题目:OpenEMMA: Open-Source Multimodal Model for End-to-End Autonomous Driving
论文作者:Aohan Zeng, Zhengxiao Du, Mingdao Liu, Lei Zhang, Shengmin Jiang, Yuxiao Dong, Jie Tang
论文地址:https://arxiv.org/pdf/2412.15208
论文源码:https://github.com/taco-group/OpenEMMA
1、背景介绍
自动驾驶(AD)技术的迅速发展得益于人工智能、传感器技术和高性能计算的进步。然而,现实世界中不可预测的道路使用者、动态交通模式和多样化环境条件给AD带来很多的挑战。应对这些复杂性需要复杂的推理能力,使自动驾驶系统能够理解上下文信息、预测用户意图并做出准确的实时决策。传统上,自动驾驶架构采用模块化方法,专门组件处理感知、地图绘制、预测和规划等不同方面。但是,尽管这种分隔有助于调试和优化各个模块,但由于模块间通信错误和僵化的预定义接口,往往导致可扩展性问题,这些接口难以适应新的或不可预见的条件。
另一方面,端到端系统直接从传感器输入中学习驾驶动作,绕过符号接口的需求,进行整体优化。然而,这些系统通常高度专业化,并在狭窄的数据集上训练,难以在多样和复杂的现实场景中有效泛化。同时,多模态大型语言模型(MLLMs)可以解决此类问题。它们通过在广泛数据集上的广泛训练,提供了新颖的方法,包括全面的世界知识和通过思维链推理等机制的高级推理能力。Waymo发布的EMMA模型就是这一趋势的典范,展示了在感知、决策和导航整合方面的重大进展。然而,EMMA是非开源的。
为了解决像EMMA这样的封闭源模型的局限性,作者推出了OpenEMMA,它是一个开源的端到端自动驾驶框架,旨在使用公开可用的工具和模型复制EMMA的核心功能。与EMMA类似,OpenEMMA处理前置摄像头图像和文本历史自我车辆状态作为输入。驾驶任务被框定为视觉问答(VQA)问题,采用思维链推理引导模型生成关键对象的详细描述、行为洞察和元驾驶决策。这些决策由模型本身直接推断,提供了生成路径点所需的重要上下文。为了缓解多模态大型语言模型在物体检测任务中的已知局限性,OpenEMMA还成了一个专门优化用于自动驾驶场景的3D边界框预测的YOLO微调版本,显著提高了检测准确性。此外,通过利用多模态大型语言模型的现有世界知识,OpenEMMA能够生成可解释的人类可读输出,用于场景理解等感知任务,从而提高透明度和可用性。完整的管道和支持的任务如图1所示。
▲图1 | OpenEMMA 框架概览©️【深蓝AI】编译
主要贡献如下:
2、方法精析
OpenEMMA是一个计算高效的端到端自动驾驶(AD)系统,基于预训练的多模态大语言模型(MLLMs),如图1所示,利用历史驾驶状态和视觉驾驶场景作为输入,预测未来轨迹,并检测交通参与者。
2.1 CoT用于端到端轨迹规划
借助预训练的MLLMs的强大能力,本文将链式思维(Chain-of-Thought: CoT)推理过程整合到端到端的轨迹规划过程中。由于MLLMs是通过人类可解释的知识进行训练的,本文的MLLMs也生成人类可解释的知识。与之前直接在局部坐标中生成轨迹的方法不同,本文生成两个中间表示:速度向量,表示车辆速度的大小,以及曲率向量,表示车辆的转向速率。这些表示旨在反映人类驾驶的方式:速度表示油门应该踩多大,而曲率表示方向盘应该转动多少。
给定速度和曲率向量,首先通过速度和曲率的乘积在每个时间步整合航向角:
然后,可以计算x和y方向的速度分量:
因此,最终在自我坐标系中的轨迹通过整合速度分量计算得出:
初始位置(x0, y0)作为输入提供。此外,对于数值积分,应用以下累积梯形规则:
其中是时间步长。这种方法通过将轨迹生成任务分解为人类可解释的组件,反映驾驶过程,提供了一条稳健且易于解释的规划路径。
阶段1:推理:过程使用驾驶场景的前摄像头图像和自我车辆过去5秒的历史数据(速度和曲率)作为输入,输入到预训练的MLLMs中。随后,设计特定任务的提示,引导MLLMs生成对当前自我驾驶场景的全面推理,涵盖以下几个方面:
意图命令:清晰阐述自我车辆在当前场景下的预期动作,例如是否会继续沿着车道左转、右转或直行。此外,还要说明车辆是否应保持当前速度、减速或加速。
场景描述:根据交通信号灯、其他车辆或行人的运动以及车道标记,对驾驶场景进行简要描述
主要物体:识别自我驾驶者需要关注的道路使用者,指定他们在驾驶场景图像中的位置。对于每个道路使用者,提供其当前行为的简要描述,并解释其存在对自我车辆决策过程的重要性。
阶段2:预测:通过结合链式思维推理过程和历史自我状态,促使MLLMs生成未来秒内的速度和曲率(2个轨迹点)。然后将这些预测整合以计算最终轨迹。
2.2 目标检测增强
自动驾驶(AD)中的一项关键任务是为道路上的物体检测3D边界框。然而,现有的预训练多模态大语言模型(MLLMs)在空间推理方面存在局限性,难以提供高质量的检测。为了解决这一挑战,并在不额外微调MLLM的情况下实现高检测精度,作者将一个外部的视觉模型集成到OpenEMMA中,有效地解决了检测任务。
OpenEMMA专注于使用前置摄像头进行物体检测,并处理来自单帧的数据,而不是一系列连续帧。这使得该任务属于基于单目相机的3D物体检测的范围。该领域的研究通常分为两类:深度辅助方法和仅基于图像的方法。深度辅助方法预测深度信息以辅助检测,而仅基于图像的方法完全依赖RGB数据进行直接预测。在这些方法中,我们选择了YOLO3D,因为它结合了可靠的准确性、高质量的开源实现和轻量化架构,便于高效的微调和实际集成。
YOLO3D是一种两阶段的3D物体检测方法,强制实施2D-3D边界框一致性约束。具体而言,它假设每个3D边界框都紧密包含在其对应的2D边界框内。该方法首先预测2D边界框,然后估计每个检测到的物体的3D尺寸和局部方向。3D边界框的七个参数——中心位置,尺寸以及偏航角——是基于2D边界框和3D估计共同计算得出的。
3、实验分析
在本节中,我们首先展示了用于端到端轨迹规划的实验,利用多种多模态大型语言模型(MLLMs)来展示OpenEMMA的有效性。此外,我们详细介绍了YOLO11n在自动驾驶(AD)场景中的实施和适应,强调其在OpenEMMA框架内的无缝集成。最后,我们展示了视觉结果,突显OpenEMMA在应对具有挑战性的自动驾驶场景中的能力,展示其在多种条件下的稳健性和有效性。
3.1 端到端轨迹规划
实验设置
实验在nuScenes数据集的验证集上进行,测试的模型包括GPT-4o,LLaVA-1.6-Mistral-7B(简称为LLaVA-1.6),Llama-3.2-11B-Vision-Instruct(简称为Llama-3.2)和Qwen2-VL-7B-Instruct(简称为Qwen2-VL)。为了比较,使用零-shot方法作为基线,仅依赖历史自我状态和驾驶场景图像,而不结合任何推理过程。此外,设置T=5,提示MLLM预测未来5秒内的轨迹。由于预算限制和可重复性的需要,GPT-4o的结果仅在有限的场景集上进行。
结果
表1总结了OpenEMMA在nuScenes数据集验证集的150个场景中的表现,具体以L2范数误差相对于真实轨迹进行评估。此外,如果未来轨迹的L2范数在第一秒内超过10,则预测被视为失败,失败率也包含在表中。
表 1 | 端到端轨迹规划实验结果
结果如下: 未经过微调的MLLMs在端到端轨迹规划中的整体表现不如基于微调的方法。OpenEMMA在L2范数误差和失败率方面均持续优于零-shot基线,证明了Chain-of-Thought推理过程在理解和分析复杂真实驾驶场景中的有效性。值得注意的是,当使用LLaVA-1.6-Mistral-7B作为主干时,OpenEMMA相较于零-shot基线表现出显著改善,而当使用Llama3.2-11B-Vision-Instruct作为主干时,在L2范数和失败率方面也有适度但明显的提升。然而,使用Qwen2-VL-7B-Instruct时,OpenEMMA的L2范数误差高于零-shot基线。这是因为OpenEMMA成功生成了许多零-shot基线失败的情况下的预测。尽管如此,它在这些具有挑战性的场景中仍然难以生成高质量的轨迹,导致L2范数误差总体上增加。此外,失败率的显著降低突显了OpenEMMA在处理困难情况下的稳健性和能力。
3.2 3D目标检测
作者将2D检测网络替换为YOLO11n。YOLO11n在nuImages数据集上进行了微调,图像下采样至640 × 360,并在COCO数据集上预训练的权重,并在单个RTX 4060Ti上训练网络300个周期。批量大小选择为50,使用SGD优化器,学习率为0.01,动量为0.937,权重衰减为0.0005。学习率在训练结束时线性下降至0.0001。最佳结果在第290个周期达到,mAP50为0.60316。3D估计网络的权重保持不变,使用Yolo3D库中的权重。图2展示了微调后的YOLO11n网络的2D边界框检测结果。3D边界框检测结果包含在主要演示视频中。
图 2 | YOLO 3D目标检测结果
3.3 可视化
图3展示了来自多种具有挑战性的驾驶场景的三个视觉示例,突显了OpenEMMA在多种条件下的稳健性和有效性。在这些场景中,GPT-4o被用作主干,不仅处理当前驾驶场景,还处理过去5秒(10帧)的视觉输入。所有其他设置与第3.1节中描述的一致。
图 3 | OpenEMMA预测可视化结果
图3a展示了OpenEMMA在自我车辆在指定车道内右转时的表现。OpenEMMA展示了其准确检测道路物体、规划平滑精确轨迹和遵守驾驶规则的能力,确保安全高效地通过转弯。
图3b展示了OpenEMMA在一个潜在不安全驾驶场景中的可视化,其中一辆车突然从急转弯进入当前车道。OpenEMMA迅速检测到风险因素并做出适当决策——刹车并保持安全距离,有效防止潜在碰撞。这个例子突显了OpenEMMA处理复杂驾驶情况的能力,展示了其强大的推理能力和在动态不可预测环境中确保安全的能力。
图3c展示了OpenEMMA在低光夜间条件下的表现。虽然OpenEMMA在这种具有挑战性的环境中可能偶尔会漏检某些物体,但它成功识别和检测出对安全导航至关重要的关键物体。此外,它准确理解自我车辆正在向左车道转移,并生成精确的轨迹规划以有效适应这一动作。这展示了OpenEMMA在处理能见度降低的复杂驾驶场景中的稳健性。
4、相关研究
4.1 端到端自动驾驶
自动驾驶领域的一个重要趋势是端到端系统的出现,这些系统通过无缝地在系统组件之间传递特征表示,从而提高了效率。这与传统方法形成对比,因为整个系统针对驾驶任务进行优化,从而通过共享主干提高了计算效率和一致性。这些端到端方法大致可以分为模仿学习和强化学习。在强化学习中,像Latent DRL、Roach和ASAPRL等模型优先增强决策能力。此外,像ScenarioNet和TrafficGen等模型专注于生成多样的驾驶场景,以提高系统在测试过程中的鲁棒性。
最近,多模态大型语言模型(MLLMs)已被整合到自动驾驶系统中。例如,LMDrive促进了自然语言交互和高级推理,使人车沟通更加直观。Senna更进一步,将MLLM与端到端系统结合,解耦高层规划与低层轨迹预测。在这些发展的基础上,由Gemini驱动的EMMA代表了一个重要的进步。这个视觉-语言模型将原始摄像头传感器数据转化为多样的驾驶特定输出,包括规划轨迹、感知物体和道路图元素,展示了MLLM集成在自动驾驶中增强功能和效率的潜力。
4.2 用于自动驾驶的MLLM
多模态大型语言模型(MLLMs)将大型语言模型(LLMs)的能力扩展到视觉领域。LLMs以其泛化能力、推理能力和上下文理解而闻名,提供了MLLMs构建的基础。使MLLM能够无缝处理文本和视觉信息的关键在于对齐视觉和文本嵌入。这是通过使用视觉编码器(如CLIP)将图像块转换为与文本令牌空间对齐的视觉令牌来实现的,从而为综合多模态理解开启了新的可能性。
MLLMs已广泛应用于现实场景,特别是在自动驾驶领域。GPT-Driver将规划输入和输出转化为语言令牌。通过利用GPT-3.5,它生成通过自然语言表示的坐标位置描述的驾驶轨迹。DriveVLM利用Chain-of-Thought(CoT)进行高级空间推理和实时轨迹规划。RAG-Driver引入了一种基于检索增强生成的新的上下文学习方法,以提高自动驾驶系统的泛化能力和可解释性。Driving-with-LLMs引入了一种新的范式,将对象级向量化数值模态与LLMs融合,采用两阶段的预训练和微调方法。DriveLM通过利用图结构的视觉问答(VQA)开发了一种端到端的MLLM在自动驾驶中的应用,涵盖感知、预测和规划等任务。
5、总结展望
总之,本文提出的OpenEMMA,它是一个基于多模态大型语言模型的开源、高效的端到端自动驾驶框架。OpenEMMA利用历史自我车辆数据和前置摄像头捕获的图像,采用Chain-of-Thought推理过程来预测自我车辆的未来速度和曲率,然后将其整合到轨迹规划过程中。此外,通过结合微调的外部视觉专家模型,OpenEMMA实现了对3D路面物体的精确检测。此外,所提出的OpenEMMA框架在零-shot基线之上显示出显著的改进,展示了其在各种具有挑战性驾驶场景中的有效性、泛化能力和鲁棒性。
作为基于现成预训练模型开发端到端自动驾驶框架的初步步骤,在推理过程中仅集成了基本的Chain-of-Thought推理。虽然这作为基础方法,但通过将更高级的推理技术(如CoTSC和ToT集成到框架中,仍有巨大的潜力可以提升框架的实用性,这可能为自动驾驶提供更有效的方法。
此外,由于当前MLLM的对象定位能力有限,在OpenEMMA中集成了微调的YOLO模型来处理对象检测任务,而不是仅依赖MLLM本身的能力。尽管这种方法提供了实际解决方案,但它突显了未来在MLLM方面的进步需求,以弥补空间推理和定位精度的差距。解决这些局限性对于实现一个真正统一的框架至关重要,该框架利用MLLM进行自动驾驶中的所有关键感知和推理任务。