24年3月论文“LeGo-Drive: Language-enhanced Goal-oriented Closed-Loop End-to-End Autonomous Driving“。
现有的视觉-语言模型(VLM)根据其丰富的场景理解能力估计长期轨迹航路点或一组控制动作,作为闭环规划的反应式解决方案。然而,这些估计是粗略的,并且是主观的,因为“世界理解”可能会由于感知错误而产生次优决策。
本文介绍LeGo Drive,通过基于给定的语言命令估计目标位置来解决此问题,作为端到端设置的中间表示。估计的目标可能落在一个不理想的区域,导致规划不足。因此,采取以端到端的方式训练架构,从而共同迭代细化目标和轨迹。
如图所示:所提出的方法LeGo-Drive在单个前向摄像头图像上用导航指令-“停车”在左前方公交车站附近查询估计一个目标位置,并将其与基于可导优化器的规划器耦合,该规划器联合优化轨迹和目标位置。(左图)提出的架构与联合端到端训练的梯度流一起显示。(右上图)目标改进:从初始估计的绿色位置到改进的红色位置。(右下图)与基线方法生成的红色轨迹相比,绿色的轨迹输出造成改进的目标位置。
为开发智能驾驶智体,本文采取一个数据集创建和标注策略,该智能驾驶智体集成来自CARLA模拟器以视觉为中心的数据,并与导航指令相结合。假设智体被部署必要的特权信息来执行成功的闭环导航。
数据集
:以前的工作如Talk2Car数据集[8],主要侧重于通过标注目标参考的边框来理解场景。进一步的工作,如Talk2Car RegSeg[19],旨在通过标注可导航区域的分割掩码来加入导航。通过各种驾驶操作来扩展这些数据集,包括车道变化、速度调整、转弯、其他目标或车辆的超车或停车、通过十字路口导航以及在人行横道或交通信号灯处停车,将在这些数据集上演示闭环导航。创建的LeGo-Drive数据集包括4500个训练数据和1000个验证数据。用复杂和简单的命令注释来呈现结果、基线比较和消融工作。
模拟设置
:LeGo-Drive数据集收集过程由两个阶段组成:1)使用摄像头传感器数据同步记录驾驶智体的状态,然后是交通智体,以及2)使用导航指令解析和注释收集的数据。以10 FPS的速度记录数据,并且为了避免连续帧之间的冗余,以10m距离间隔过滤数据点。对于每帧,用基于规则的专家智体收集自我智体的状态,即位置和速度、前后方向都有50米范围的自我通道、前RGB摄像头图像和交通智体状态(位置和速度),所有这些都在自车坐标系。数据集在6个不同的城镇中不同,涵盖各种不同的环境,代表具有不同车道配置、交通密度、照明和天气条件的各种驾驶场景。此外,数据集包括在户外场景中通常观察到的各种目标,例如公共汽车站、食品摊(food stalls)和交通信号灯。
语言命令注释
:每帧都用对应于目标区域分割掩码的适当导航命令手工进行标注,覆盖一系列驾驶场景。考虑3种不同的命令类别:1)。以目标为中心的命令,指在当前相机帧中可见的目标,2)。车道操纵命令,这是特定于与车道变更或车道内调整相关操作的指令,以及3)复合命令,连接多个指令以模拟真实驾驶场景。利用ChatGPT API生成具有相似语义的不同变体。如表显示了来自数据集的示例指令示例。值得注意的是,没有纳入误导性的指令。这种能力在场景推理模型中是必不可少的,目前不考虑。
如图所示,该架构由两个主要部分组成:
-
1) 目标预测模块,接受前视图像 I 和相应的语言命令 L = {l0,...,lk},其中 li 是单词token,k 是命令的长度 ; 生成或预测分割掩码 M 后跟目标位置 gˆi ,并且,
-
2) 可微分规划器,生成轨迹 T ,该轨迹针对估计目标和轨迹优化器参数进行联合优化,从而在端到端训练时将所需位置坐标 gˆi 改进为可导航位置 gˆi* 。
为了对给定的导航命令进行编码,用 CLIP [18] token化器对语言命令进行token化,并将其传递给 CLIP 文本编码器以获得文本嵌入 T。为了从给定的前置摄像头图像中获取图像特征,用 CLIP 图像编码器 ResNet-101 主干网。众所周知,分层特征有利于语义分割;因此,在 ResNet 主干的第 2、3、4 层之后提取不同的视觉特征 Vi ,其中 i ∈ {2, 3, 4}。每个 Vi 都通过卷积块 ConvBlocki,将它们变成相同的通道大小、高度和宽度。
为了从图像和文本特征中捕获多模态上下文,进一步使用 DETR [4] 架构中采用的Transformer编码器。所有特征T、V2、V3、V4都被展平,文本特征分别与不同的Vi连接获得多模态特征Mi。然后,Mi 被单独传递到 Transformer 编码器,其中多头自注意层有助于不同类型特征之间的跨模态交互,获得 Xi 作为与 Mi 形状相同的编码器输出。
有两个解码器头,每个解码器头分别用于分割掩码预测和目标点预测任务。为了预测分割掩模,Xi 进行进一步的重塑和重组操作,将其重塑为 RC×H×W,从而得到 Zi。对于分割掩码预测,将所有层 Zi 堆叠为形状 RC+C+C×H×W 。