【论文阅读】清华&理想汽车 DriveVLM :自动驾驶与VLM大模型的融合
1、背景与方法简介
清华大学交叉信息院赵行老师研究组MARS Lab与理想汽车合作,提出了一种基于大模型的高阶自动驾驶的全新方案DriveVLM。DriveVLM以视觉语言大模型为基础,并与端到端模型实现双系统,在复杂和驾驶场景中表现出色。模型在理想Mega上部署运行,是首个部署上车的自动驾驶大模型。
城市环境中自动驾驶的主要障碍是理解复杂的 Long-tail 场景,例如具有挑战性的道路条件和微妙的人类行为。DriveVLM 集成了用于场景描述、场景分析和分层规划的推理模块的独特组合。此外,认识到 VLM 在空间推理和繁重计算要求方面的局限性,提出一种混合系统 DriveVLM-Dual,可选择将 DriveVLM 与传统 3D 感知和规划模块集成,例如 3D 物体检测器、占用网络和运动规划器,使系统能够实现 3D 接地和高频规划能力。这种双系统设计类似于人脑的慢速和快速思维过程,可以有效地适应驾驶场景中不同的复杂性。 在 nuScenes 数据集和 SUP-AD 数据集上的实验证明了 DriveVLM 和 DriveVLM-Dual 在处理复杂且不可预测的驾驶条件方面的功效。最后,将 DriveVLM-Dual 部署在量产车辆上,验证其在现实自动驾驶环境中的有效性。
2、DriveVLM实现
DriveVLM 的整体流程如下图所示。图像序列由视觉语言模型(VLM)处理,以执行特殊的思想链(CoT)推理,从而得出驾驶规划结果。 DriveVLM 的架构涉及视觉转换器编码器和大型语言模型 ( LLM )。视觉编码器产生图像标记;然后基于注意力的提取器将这些标记与LLM对齐。推理过程可以分为三个模块:场景描述、场景分析和分层路径规划(Hierarchical Planning)。而 DriveVLM-Dual 进一步融合了传统的3D感知和轨迹规划模块,实现空间推理能力和实时轨迹规划。
2.1、Scene Description
场景描述模块用于识别驾驶环境和关键对象。
1、环境描述。 天气、路况等驾驶环境对驾驶难度的影响比较大。因此,模型首先描述驾驶环境 E ,包括几个条件:
其中,Weather 涵盖从晴天到下雪的各种条件,影响能见度和牵引力。Time 区分白天和夜间,因能见度变化而影响驾驶策略。Road ,道路类型,例如城市或高速公路,根据道路类型选择不同驾驶策略。Lane,车道条件,关注当前车道定位和可能的操作,这对于安全驾驶决策至关重要。
2、关键对象识别。 除了环境条件外,自动驾驶场景中的各种物体也会显著影响驾驶行为。 与传统的自动驾驶感知模块检测特定范围内的所有物体不同,作者受到人类驾驶过程中认知过程的启发,只专注于识别最有可能影响当前场景的关键物体。 每个关键对象,表示为 Oc ,包含两个属性:对象类别 c 及其图像上的近似边界框坐标 b(x1,y1,x2,y2) 。 类别和坐标被映射到大模型模态中相应的 language 𝑡𝑜𝑘𝑒𝑛_𝑖𝑑,能够无缝集成到模块中。 此外,利用预训练的视觉编码器,DriveVLM 可以识别传统 3D 物体探测器无法识别的长尾关键物体,如道路中不明物体的碎片或动物等。
2.2、Scene Analysis
在传统的自动驾驶流程中,预测模块通常专注于预测物体的未来轨迹。先进视觉语言模型的出现使作者能够对当前场景进行更全面的分析。场景级分析总结了所有关键对象以及环境描述。该摘要提供了对场景的全面了解,并输入到以下规划模块中。
关键对象分析。 DriveVLM 在三个方面表征关键对象:静态属性 Cs ,运动状态 Cm ,以及特定的行为 Cb 。 静态属性 Cs 描述物体的固有属性,例如路边广告牌或装载超标货物的卡车,这对于预防和引导潜在危险至关重要。 运动状态 Cm 描述物体在一段时间内的动态,包括位置、方向和动作——这些特征对于预测物体的未来轨迹以及与自我车辆的潜在交互至关重要。 特殊行为 Cb 指的是可能直接影响自我车辆的下一次驾驶决策的物体的特殊动作或手势。 现实中,不需要模型分析所有对象的所有三个特征。实际上,只有一个或两个特征适用于关键对象就足够了。最后,DriveVLM 根据上述特征,预测每个关键物体对自我车辆的潜在影响 I。
2.3、Hierarchical Planning
上述 Scene-Level 摘要与路线、自我姿势和速度相结合,形成规划 Prompt。 最后,DriveVLM 分三个阶段逐步生成驾驶计划:Meta-Actions、决策描述和轨迹航点。
Meta-Actions A 。 Meta-Actions,表示为
决策描述 D 。 决策描述 D 阐明了自车应采用的更细粒度的驾驶策略。它包含三个要素: 动作 𝒜 , 主体 𝒮 、和持续时间 𝒟 。动作 𝒜 与 Meta-Actions A 有关,例如“转弯”、“等待”或“加速”。主体 𝒮 指交互对象,例如行人、交通信号灯或特定车道。持续时间 𝒟 指操作时间,指定应执行多长时间或应开始的时间。
轨迹航点 W 。 建立决策描述 D 后,下一阶段生成相应的轨迹航点。这些航点,表示为:
它们描绘了车辆在未来某个时间段内的路径,并有预定的时间间隔 Δ𝑡。 将这些航点数字映射为 language tokens,用于自回归生成。
2.4、DriveVLM-Dual
为了缓解 VLM 中高延迟以及不精确的空间和运动理解的挑战,作者提出了 DriveVLM-Dual,这是 DriveVLM 与传统自动驾驶系统之间的合作。这种新颖的方法涉及两个关键策略:结合 3D 感知进行关键对象分析,以及高频轨迹细化。
集成 3D 感知。 用
在 3D 数据中没有相应匹配的关键对象被标记为
在场景分析模块中,对于
高频轨迹细化。 为了实现实时、高频的推理能力,将其与传统规划器集成,形成慢速双系统,将 DriveVLM 的先进功能与传统规划方法的效率相结合。 从 DriveVLM 获得低频轨迹后,表示为
此细化步骤确保 DriveVLM-Dual 生成的轨迹能够实现更高的轨迹质量,并且可以满足实时要求。两个分支以慢-快的方式异步运行,其中传统自动驾驶分支中的规划器模块可以选择性地接收来自VLM分支的轨迹作为附加输入。
3、数据集
为便于场景标注,研究组还开发了一个视频标注工具,能够比较方便的针对特定标注内容进行对应的标注和检查。SUP-AD数据集中某个场景关键帧的标注结果如下图所示:
在人工智能的三驾马车中,数据是生产原料,算力是基础设施,算法则是大模型的逻辑表示。为提升数据质量和DriveVLM大模型准确度,研究组提出了一个全面的数据挖掘和标注流水线,并构建了包含超40个场景类别的自动驾驶数据集SUP-AD(scene understanding for planning-autonomous driving)。下面的流程图解释了构建场景理解和规划数据集的数据挖掘和标注方法。列举了一些从数据集中随机抽取的场景示例图片,展示出了数据集的多样性和复杂性。
4、实验
使用 Qwen-VL 作为默认的大型视觉语言模型,它在问答、视觉定位和文本识别等任务中表现出卓越的性能。它总共包含 9.6B 参数,包括视觉编码器(1.9B)、Vision-Language Adapter(0.08B)和大型语言模型(Qwen,7.7B)。图像大小调整为分辨率 448×448 在被视觉编码器编码之前。在训练过程中,作者随机选择当前时间的图像序列 T s, T−1 s, T−2,T−3 s 作为输入。所选图像确保包含当前时间范围并遵循升序时间顺序。
DriveVLM 的定性结果如下图所示。在下面的第一张图中,DriveVLM 可准确预测当前的场景条件,并针对接近作者的骑车人做出深思熟虑的规划决策。在第二张图中,DriveVLM有效地理解了前方交警的手势,向本车发出继续前进的信号,并且还考虑了右侧骑三轮车的人,从而做出明智的驾驶决策。这些定性结果证明了该大模型具有理解复杂场景并制定合适驾驶计划的卓越能力。图片中的橙色曲线代表模型在接下来 3 秒内计划的未来轨迹。
5、最终部署
在配备两个 OrinX 处理器的理想 Mega 自动驾驶车辆上部署 DriveVLM-Dual,在 OrinX-1 上配备高频端到端驱动系统,在 OrinX-2 上配备 DriveVLM。这两个系统异步运行和协作。此外,根据 Orin 优化了 DriveVLM,在 OrinX 上实现了 410 毫秒的平均推理速度。
Base LLM:由于车辆硬件的内存和带宽有限,无法使用过大的LLMs来维持实时推理。因此,选择参数少于40亿的模型。实验表明,在Orin架构上,“宽而浅”的Qwen系列(更宽和更少的层)模型在推理速度上优于“窄和深”模型(更窄和更多的层)。
Visual Encoder:高分辨率图像对于自动驾驶中的细粒度视觉理解至关重要。与用作视觉编码器的基本ViT模型相比,作者探索了几种选择,包括不同的GridPatch策略和PE(位置嵌入)插值。最终,为了实时推理,选择了更简单的带 PE 插值的 SigLIP-L-384 模型,通过原始 384 分辨率 PE 插值和附加卷积层微调参数来实现高分辨率输入。
Vision Token Compression:为了解决高分辨率图像增加的计算负载,实现了 LDPNetv2,以在不影响性能的情况下将图像标记的数量减少 75%。此外,通过在 LDPNetv2 中用卷积层替换平均池化层来增强性能。
Video Input:在自动驾驶场景中,需要更多的时间上下文来准确评估物体运动变化。作者采用短期记忆库策略,将历史帧中的视觉特征临时存储在特征队列中。在映射到LLM之前,仅提取当前时刻的特征并将其与多个历史帧融合。除了基本的时空Pooling之外,还添加了 SE 块来执行多个时间帧的加权融合。
Speculative Sampling:推测采样通过抢先生成可能的输出来加速推理。 这种方法减少了生成预测的延迟,在不大幅降低准确性的情况下显著提高了速度。作者测试了两种推测采样方法: Medusa 和与作者专为 OrinX 芯片设计的 Eagle 推理框架。 与 Medusa 的 2.17 倍解码延迟相比,Eagle 的解码延迟速度提高了 2.7 倍,使车辆的实时部署变得可行。
部署结果:
下图中,DriveVLM 识别前方缓慢移动的车辆,并提供变道超车的驾驶决策。
下图中,DriveVLM准确识别了非常规车辆的类型和倒下的树木,展示了其识别长尾物体的能力
下图展示出DriveVLM 准确捕捉到了交警示意继续行驶的手势。
【论文阅读】清华&理想汽车 DriveVLM :自动驾驶与VLM大模型的融合