DRIVEVLM: 大视觉语言模型和自动驾驶的融合

24年2月清华和理想汽车的论文“DRIVEVLM: The Convergence of Autonomous Driving and Large Vision-Language Models”。

自动驾驶在城市环境中的一个主要障碍是理解复杂而长尾的场景,例如具有挑战性的路况和微妙的人类行为。DriveVLM是一种利用视觉语言模型(VLM)增强场景理解和规划能力的自动驾驶系统。DriveVLM集成了用于场景描述、场景分析和分层规划的思维链(CoT)模块的独特组合。此外,认识到VLM在空间推理和繁重的计算需求方面的局限性,提出DriveVLM Dual,一种将DriveVLM的优势与传统自动驾驶流水线协同的混合系统。DriveVLM Dual实现了强大的空间理解和实时推断速度。在nuScenes数据集和SUP-AD数据集上进行大量实验,在复杂和不可预测的驾驶条件下超过了现有方法。

如图是DriveVLM和DriveVLM Dual的流水线。DriveVLM接受图像序列作为输入,并通过思维链(CoT)机制输出场景描述、场景分析和分层规划结果。DriveVLM Dual进一步融合了传统的3D感知和轨迹规划模块,实现空间推理能力和实时轨迹规划。

DriveVLM首先是一系列图像由大型视觉语言模型(VLM)处理,执行特殊的思维链(CoT)[47]推理,从而得出驾驶规划结果。大型VLM包括视觉Transformer编码器[14]和大语言模型(LLM)。视觉编码器产生图像tokens;则基于注意的提取器将这些tokens与LLM对齐;最后,LLM执行CoT推理。CoT过程可分为三个模块:场景描述、场景分析和分层规划。

尽管VLM擅长识别长尾目标和理解复杂场景,但它们往往难以准确理解目标的空间位置和详细运动状态。更糟糕的是,VLM的巨大模型尺寸导致了高延迟,阻碍了它们实时响应自动驾驶的能力。为了应对这些挑战,提出了DriveVLM Dual,这种方法涉及两个关键策略:结合3D感知进行关键目标分析,以及高频轨迹细化。DriveVLM Dual是一款混合系统,结合了DriveVLM和传统的自动驾驶流水线,实现两全其美。它将3D感知结果作为语言提示,增强3D场景理解能力,并通过实时运动规划器进一步细化轨迹路径点。

添加图片注释,不超过 140 字(可选)

一个全面的数据挖掘和标注流水线,构建所提出任务的场景理解规划(SUP-AD)数据集。具体来说,从大型数据库中进行长尾目标挖掘和富有挑战性的场景挖掘来收集样本,然后从每个样本中选择一个关键帧,并进一步进行场景注释。

长尾目标挖掘。根据真实世界的道路目标分布,首先定义长尾目标类别的列表,如形状怪异的车辆、道路碎片和横穿道路的动物。接下来,用基于CLIP的搜索引擎来挖掘这些长尾场景,该引擎能够使用来自大量日志集合的语言查询来挖掘驾驶数据。然后,进行手动检查,过滤出与指定类别不一致的场景。

具有挑战性的场景挖掘。除了长尾目标,还对具有挑战性的驾驶场景感兴趣,在这些场景中,自车的驾驶策略需要根据不断变化的驾驶条件进行调整。这些场景是根据记录的驾驶动作变化来挖掘的。

关键帧选择。每个场景都是一个视频片段,识别要注释的“关键帧”至关重要。在大多数具有挑战性的场景中,关键帧是在需要显著改变速度或方向之前的时刻。在综合测试的基础上,选择这个关键帧比实际机动早0.5s到1s,以确保决策的最佳反应时间。对于不涉及驾驶行为更改的场景,选择与当前驾驶场景相关的帧作为关键帧。
场景标注。用一组标注器来执行场景注释,包括场景描述、场景分析和规划,但可以从车辆的IMU记录中自动标记的路点除外。为了方便场景注释,制作一个视频标注工具,具有以下功能:(1)注释者可以来回滑动进度条来回放视频的任何部分;(2) 在注释关键帧时,标注器可以在图像上绘制边框和语言描述;(3) 注释者可以在注释驾驶规划时从行动和决策候选者列表中进行选择。每个注释都由3个标注器仔细验证准确性和一致性,确保了模型训练的可靠数据集。

如图是作者建立的SUP-AD数据集标注例子:

添加图片注释,不超过 140 字(可选)

这是所提出的用于构建场景理解和规划数据集的数据挖掘和标注流水线(如上);从数据集中随机抽样的场景示例(如下)展示了数据集的多样性和复杂性。

添加图片注释,不超过 140 字(可选)
如图是DriveVLM一个输出结果例子:识别前方缓慢行驶的车辆,并为变道超车提供驾驶决策。
在这里插入图片描述

### 自动驾驶视觉语言模型的数据标注方法与工具 #### 数据标注的重要性挑战 在自动驾驶领域,为了训练出精确的环境感知模型,需要量高质量的标注数据作为监督学习的输入。数据标注涉及将原始传感器数据(如点云、图像等)中的目标对象(如车辆、行人、障碍物等)及其属性(如三维边界框、类别等)人工标记出来[^2]。 #### 标注方法概述 针对不同类型的传感器数据应用场景,存在多种标注方法: - **手动标注**:由人类专家逐帧或逐张图片进行精细标注,虽然精度高但耗时费力。 - **半自动标注**:利用预先训练好的检测模型生成初步候选区域,再经由人工审核修正。这种方法可以在一定程度上减少人力投入并加快进度。 - **自动化标注**:完全依赖计算机算法完成整个流程,在某些特定条件下可以实现高效作业,但对于复杂场景下的准确性仍有待提高。 #### 特定于视觉语言模型(VLM)的标注技术 对于像DriveVLM这样的视觉语言模型而言,除了常规的目标识别外还需要特别关注以下几个方面来构建有效的训练集: 1. **多模态信息关联** 需要在同一时间戳下同步采集来自摄像头其他传感器的信息,并建立它们之间的对应关系。例如,当一辆汽车出现在视频流里时,应该同时记录LiDAR测得的距离以及雷达反射强度等相关参数。 2. **语义理解增强** 不仅要指出物体的位置范围,还要描述其上下文含义。比如区分正在过马路还是停留在斑马线上的行人;判断前方红绿灯的状态变化趋势等等。这类高层次的理解有助于提升模型对未来事件预测的能力。 3. **交互意图捕捉** 关键在于捕捉道路上其他参与者的行为模式及其潜在影响因素。通过对静态属性\(C_s\)、运动状态\(C_m\) 特定行为 \(C_b\) 的综合考量,可以帮助系统更好地理解应对复杂的交通状况[^5]。 #### 常见使用的工具介绍 目前市面上已经有一些成熟的解决方案可用于支持上述各项任务: - **Anno-Mage**: 这是一款基于 RetinaNet 架构开发而成的半自动标注平台,擅长处理规模图像分类问题。尽管默认配置只涵盖了 MS COCO 定义的对象种类,不过用户可以根据实际需求调整内部逻辑甚至扩展新的功能模块[^3]。 - **LabelBox/Scale AI/Dataturks**: 提供云端服务形式的产品组合,允许团队协作开展项目管理工作的同时也具备强的API接口便于集成第三方应用服务。特别是后者还专门推出了面向无人驾驶行业的定制版界面设计,极地方便了开发者快速上手操作[^4]。 ```python import labelbox as lb client = lb.Client("<api_key>") project = client.get_project("<project_id>") for row in project.export_labels(): print(row['data']) ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值