FIERY翻译

摘要

驾驶需要与道路代理人互动并预测他们未来的行为,以便安全导航。
我们展示了 FIERY:一种单目相机鸟瞰图的概率未来预测模型。 我们的模型预测了动态代理的未来实例分割和运动,这些动态代理可以转换为非参数化的未来轨迹。 我们的方法通过直接从环绕 RGB 单目相机输入估计鸟瞰图预测,结合了传统自动驾驶堆栈的感知、传感器融合和预测组件。 FIERY 学会以端到端的方式仅从摄像头驾驶数据中对未来的固有随机性进行建模,而不依赖于高清地图,并预测多模态未来轨迹。 我们表明,我们的模型在 NuScenes 和 Lyft 数据集上的表现优于之前的预测基线。 代码和训练模型可在 https://github.com/wayveai/fiery 获得。

引言

迄今为止,基于相机的预测中的大部分工作要么直接在透视图坐标系 [1, 23] 中执行,要么使用由 HDmapping 系统生成的场景的简化 BEV 光栅表示 [28, 12, 10],例如 [29, 16]。 我们希望构建在正交鸟瞰图框架中运行的预测模型(由于规划和控制的好处 [34]),但不依赖于辅助系统来生成场景的 BEV 光栅表示。
自动驾驶汽车稳健感知系统的一个关键主题是早期传感器融合的概念,直接从图像和 LiDAR 数据生成 3D 物体检测,而不是寻求在每个传感器输入上合并独立物体检测器的预测输出。 从[50] 中的多个传感数据源联合学习一项任务,而不是分阶段的管道,已被证明可以提高物体检测等任务的感知性能。 我们通过直接从环绕 RGB 单目相机输入而不是多级离散任务管道估计鸟瞰图预测,在将感知和传感器融合与预测结合起来寻求类似的好处。
最后,传统的自动驾驶堆栈 [13] 通过推断动态代理的当前行为来解决未来的预测,而不考虑可能的交互。 他们依靠高清地图并使用道路连通性来生成一组未来轨迹。 相反,FIERY 学习以端到端的方式直接从摄像头驾驶数据预测道路代理的未来运动,而不依赖于高清地图。 它可以推理未来的概率性质,并预测多模态未来轨迹(参见博客文章和图 1)。
总结本文的主要贡献:

  1. 我们提出了第一个从单目相机视频鸟瞰图的未来预测模型。 我们的框架通过在鸟瞰图中预测未来的实例分割和运动来明确地推理多代理动态。
  2. 我们的概率模型预测了动态环境的似是而非的多模式未来。
  3. 我们展示了未来动态场景分割的定量基准,并表明我们学习的预测优于之前在 NuScenes [5] 和 Lyft [25] 数据集上自动驾驶的预测基线。

相关工作

来自相机的鸟瞰图表示。 许多先前的工作 [51, 47] 已经解决了将 2D 透视图像提升为鸟瞰图表示的固有不适定问题 [17]。 [35, 33] 专门处理了直接从图像生成语义 BEV 地图的问题,并使用模拟器获取地面实况。
最近的多传感器数据集,例如 NuScenes [5] 或 Lyft [25],通过从 3D 对象检测生成鸟瞰图语义分割标签,可以直接监督现实世界数据上的模型。 [39] 提出了一个贝叶斯占用网络,以直接从单目 RGB 图像预测 BEV 中的道路元素和动态代理。 与我们的方法最相似的是,Lift-Splat [37] 学习了像素上的深度分布,以将相机图像提升到 3D 点云,并使用相机几何将后者投影到 BEV。 Fishing Net [19] 解决了使用相机、雷达和 LiDAR 输入预测确定性未来鸟瞰图语义分割的问题。
未来预测。 未来预测的经典方法通常采用多阶段检测-轨迹-预测范式进行轨迹预测 [8, 20, 46]。 然而,这些方法容易出现级联错误和高延迟,因此许多方法已经转向端到端的方法来进行未来的预测。 大多数端到端方法在很大程度上依赖于 LiDAR 数据 [32, 11],通过合并高清地图 [7]、编码约束 [6] 以及融合雷达和其他传感器以提高鲁棒性 [43],显示出了改进。 与传统的多阶段方法相比,这些端到端方法速度更快,性能更高。
上述方法通过生成单个确定性轨迹 [7, 19] 或单个分布来模拟轨迹 [6, 11] 中每个航路点的不确定性来尝试预测未来。 然而,在自动驾驶的情况下,人们必须能够共同预测场景中演员的一系列行为。 从观察到的过去,有许多可能发生的有效和可能的未来 [21]。
其他工作 [8, 46, 36] 已经在概率多假设轨迹预测方面完成,但是都假设访问自上而下的栅格化表示作为输入。 我们的方法是第一个直接从原始相机视频输入预测多样化和合理的未来车辆轨迹的方法。

方法

3.1提升相机特征到3D
对于过去的每个时间步,我们使用 [37] 的方法从每个相机中提取图像特征,然后将它们提升并融合为 BEV 特征图。 特别地,每张图像都通过一个标准的卷积编码器 E(我们在我们的实现中使用 EfficientNet [45])来获得一组要提升的特征和一组离散的深度概率。 令 O t = {I t 1 , …, I t n } 是在时间 t 的 n = 6 个相机图像的集合。 我们用编码器对每张图像 I tk 进行编码: e kt = E(I tk ) ∈ R (C+D)×H e ×We ,其中 C 是特征通道的数量,D 是离散深度值的数量和 (H e , We e ) 特征空间大小。 D 等于 D min(最小深度值)和 D max(最大深度值)之间等距深度切片的数量,尺寸 D size = 1.0m。 让我们把这个特征分成两部分:e kt = (e kt,C , e kt,D ) 其中 e kt,C ∈ R C×H e ×W e 和 e kt,D ∈ R D×H e ×W e 。 一个张量 u kt ∈ R C×D×H e ×W e 由要提升的特征与深度概率的外积形成:
公式1
深度概率作为一种自我注意的形式,根据特征预测属于哪个深度平面来调制特征。 使用已知的相机内在和外在(相机相对于车辆重心的位置),来自每个相机(u 1 t , …, u nt )的这些张量在公共参考系中被提升到 3D (时间 t 时自我车辆的惯性中心)。
3.2投影到BEV
在我们的实验中,为了获得鸟瞰图特征,我们以 0.50m × 0.50m 的列离散空间,以 100m × 100m 的捕获尺寸围绕自我车辆。 沿垂直维度对 3D 特征求和以形成鸟瞰图特征图 x t ∈ R C×H×W ,其中 (H, W ) = (200, 200) BEV 特征的空间范围。
3.3学习时空表示
使用已知的过去自我运动(a 1 , …, a t−1 )将过去的鸟瞰图特征(x 1 , …, x t )转换为现在的参考系(时间t)。 a t−1 ∈ SE(3) 对应于从 t − 1 到 t 的自我运动,即自我车辆的平移和旋转。 使用空间变换器 [22] 模块 S,我们将过去的特征 x i 扭曲到现在的 i ∈ {1, …, t − 1}:
公式2
由于我们通过此操作丢失了过去的自我运动信息,因此我们将空间广播动作连接到扭曲的过去特征 x ti 。
然后,这些特征是时间模型 T 的输入,该模型输出时空状态 s t :
公式3
与 x tt = x t 。 T 是具有局部时空卷积、全局 3D 池化布局的 3D 卷积网络ers,并跳过连接。 有关时间模块的更多详细信息,请参阅附录 B。
3.4当前和未来分布
在[21]之后,我们采用条件变分方法来模拟未来预测的内在随机性。 我们引入了两种分布:当前分布 P 只能访问当前时空状态 st ,以及未来分布 F 还可以访问观察到的未来标签 (y t+1 , …, y t+H ),其中 H 是未来预测范围。 标签对应于未来的中心度、偏移量、分割和流量(参见第 3.6 节)。
我们将两个分布参数化为对角高斯分布,均值 μ ∈ R L 和方差 σ 2 ∈ R L ,L 是潜在维度。 在训练期间,我们使用来自未来分布的样本 η t ∼ 2 N (μ t,future , σ t,future ) 来强制执行与观察到的未来一致的预测,以及覆盖 Kullback-Leibler 散度损失的模式,以鼓励当前分布覆盖观察到的未来:
公式4
在推理过程中,我们从每个样本编码可能的未来的当前分布中采样 η t ∼ N (μ t,present , σ t,present )。
3.5 BEV未来预测
未来预测模型是一个卷积选通递归单元网络,输入当前状态st和在训练期间从未来分布F中采样的潜在代码ηt,或用于推理的当前分布P。
它递归地预测未来的状态
3.6未来实例分割与运动
结果特征是鸟瞰图解码器D的输入,该解码器具有多个输出头:语义分割、实例中心和实例偏移(类似于[9])以及未来实例流。对于j∈ {0,…,H}:
生成的特征是鸟瞰图解码器 D 的输入,该解码器具有多个输出头:语义分割、实例中心度和实例偏移(类似于 [9]),以及未来的实例流。对于 j ∈ {0, …, H}:
公式 1
对于未来的每个时间步 t + j,实例中心度表示找到实例中心的概率(见图 3b)。通过运行非极大值抑制,我们得到一组实例中心。偏移量是一个指向实例中心的向量(图3d),可以与分割图(图3c)一起使用,将相邻像素分配到最近的实例中心,形成鸟瞰图实例分割(图3c) 3f)。未来流(图 3e)是动态代理的位移矢量场。它用于通过比较时间 t + j 处的流扭曲实例中心和时间 t + j + 1 处检测到的实例中心并运行匈牙利匹配算法 [27] 来一致地跟踪实例。
附录 B 中给出了我们模型的完整描述。
3.7损失
对于语义分割,我们使用 top-k 交叉熵损失 [48]。由于鸟瞰图主要由背景主导,我们只反向传播前 k 个最难的像素。在我们的实验中,我们设置 k = 25%。中心度损失是2 距离,偏移和流量损失都是 1 距离。我们使用参数 γ = 0.95 以指数方式折扣未来的时间步长。

实验

4.1数据集
我们在 NuScenes [5] 和 Lyft [25] 数据集上评估我们的方法。 NuScenes 包含 1000 个场景,每个场景的长度为 20 秒,注释为 2Hz。 Lyft 数据集包含 180 个场景,每个场景的长度为 25 – 45 秒,注释为 5Hz。在这两个数据集中,相机装备覆盖了自车辆周围的完整 360° 视野,并且由 6 个相机组成,视野中有小的重叠。每个场景中的每个相机都可以使用相机内部函数和外部函数。
标签 (y t , …, y t+H ) 是通过将提供的车辆 3D 边界框投影到鸟瞰图平面中以创建鸟瞰图占用网格来生成的。有关详细信息,请参阅附录 B.2。所有标签 (y t , …, y t+H ) 都在当前的参考系中,并且是通过将标签与真实未来的自我运动进行转换而获得的
4.2指标
未来视频全景质量。我们想在以下两个方面衡量我们系统的性能:(i)识别质量:随着时间的推移,检测到实例的一致性如何。
(ii) 分割质量:实例分割的准确程度。
我们使用视频全景质量 (VQP) [26] 指标定义为:
公式 6
TP t 是时间步长 t 的真阳性集(正确检测到的真实情况实例),FP t 是时间步长 t 的假阳性集(与任何真实情况都不匹配的预测实例),以及 FN t 假阴性集在时间步长 t(未检测到的地面实况实例)。真阳性对应于预测的实例分割,它具有:(i)与地面实况的交集交叉(IoU)超过 0.5,以及(ii)实例随着时间的推移与基本事实一致的 id(正确跟踪)。
广义能量距离。为了衡量我们的模型预测多模态未来的能力,我们报告了广义能量距离 (DGED) [44](在附录 A.3 中定义)。
4.3训练
我们的模型采用了 1.0 的过去背景,并预测了 2.0 的未来。在 NuScenes 中,这对应于过去时间背景的 3 帧和未来 2Hz 的 4 帧。在 Lyft 数据集中,这对应于过去背景的 6 帧和未来5Hz的10帧。
对于过去的每一个时间步,我们的模型以 224×480 的分辨率处理 6 幅相机图像。 以 50 厘米分辨率输出输出 100 米×10 米 BEV 序列,从而生成空间尺寸为 200× 200的鸟瞰视频。使用Adam Optimizer,我们它的学习速率为3×10−4。我们在4个特斯拉V100 GPU上训练我们的模型,大小尺寸为12,以混合精确进行20个时间的训练。

结果

5.1与文献的比较
由于在鸟瞰图中预测未来的实例分割是一项新任务,我们首先比较我们的模型
我们还训练了一个模型,该模型将 1.0 秒的过去观察作为上下文 (FIERY),并注意到它比没有过去上下文的单一时间帧对应物实现了更高的交叉合并。这是由于我们的模型能够随着时间的推移积累信息并更好地处理部分可观察性和遮挡(见图 6)。定性地说,如图 5 所示,我们的预测更加清晰和准确。
最后,我们将我们的模型与 Fishing Net [19] 进行比较,其中作者预测了未来的鸟瞰图语义分割 2.0。 Fishing Net 提出了他们模型的两种变体:一种使用相机作为输入,一种使用 LiDAR 作为输入。 FIERY 的性能比相机和 LiDAR 模型都要好得多,这表明计算机视觉网络开始在预测任务中与 LiDAR 传感竞争。
5.2未来实例预测
为了比较我们模型在未来实例分割和运动预测方面的性能,我们引入了以下基线:
静态模型。模拟动态障碍的最简单方法是假设它们不会移动并保持静止。我们使用 FIERY Static 来预测当前时间步长(时间 t)的实例分割,并在未来重复这个预测。我们将此基线称为静态模型,因为它应该正确检测所有静态车辆,因为未来的标签在当前的参考系中。
外推模型。经典预测方法 [14, 15] 推断未来动态代理的当前行为。我们在过去的每个时间步上运行 FIERY Static 以获得一系列过去的实例分割。我们通过比较实例中心并运行匈牙利匹配算法来重新识别过去的实例。然后我们获得检测到的车辆的过去轨迹,我们在未来对其进行推断并相应地转换当前的分割。
我们还报告了我们提出的架构的各种消融结果:
• 没有时间背景。该模型仅使用当前时间步长的特征 x t 来预测未来(即我们将 3D 卷积时间模型设置为恒等函数)。
• 无转换。过去的鸟瞰图特征 (x 1 , …, x t ) 不会扭曲到当前的参考系。
• 没有未来的流量。该模型不预测未来流量。
• 没有展开。该变体不是递归地预测下一个状态 ŝ t+j 并解码相应的实例信息 ŷ t+j = D(ŝ t+j ),而是直接从 s t 预测所有未来的实例中心度、偏移、分割和流。
• 均匀深度。我们使用正交特征变换 [40] 模块从编码器 (e 1 t , …, e nt ) 中提取特征。这对应于将深度概率分布设置为均匀分布。
• 确定性。没有概率建模。
我们在表 2(在 NuScenes 上)和表 3(在 Lyft 上)报告了我们概率模型的平均预测结果(即我们将潜在代码 η t 设置为当前分布的平均值:η t = μ t,present )。
5.3分析
FIERY 在未来预测任务中大大优于静态和外推基线。图 4 显示了我们的模型从模型的不同部分获得的性能提升。
时间模型。 No temporal context 变体的表现类似于静态模型。这是可以预料的,因为该模型没有来自过去的任何信息,并且无法对道路代理的运动进行太多推断。
转换到当前的参考系 当我们不将过去的特征转换为现在的参考系时,性能会大幅下降。这可以通过时间模型在排除自我运动时更容易学习动态车辆之间的对应关系来解释。
过去的预测模型要么天真地将过去的图像提供给时间模型 [4, 21],要么完全不使用时间模型而只是简单地连接过去的特征 [31, 19]。我们相信,为了学习时间对应关系,过去的特征必须映射到一个公共参考框架,并输入到一个高容量的时间模型中,例如我们提出的 3D 卷积架构。
预测未来状态 在预测未来时,重要的是对其顺序性质进行建模,即时间 t + j + 1 的预测应以时间 t + j 的预测为条件。
No unrolling 变体从当前状态 st 直接预测所有未来的实例分割和运动,导致性能大幅下降。这是因为不再强制执行顺序约束,这与我们以递归方式预测未来状态的方法相反。
未来运动。学习预测未来运动允许我们的模型使用预测的流和比较实例中心来重新识别实例。我们的模型是第一个在动态代理的鸟瞰图中产生时间一致的未来实例分割的模型。如果没有未来的流量,预测不再在时间上一致,解释了性能的急剧下降。
将特征提升到 3D 使用完美的深度模型,我们可以直接将每个像素提升到 3D 空间中的正确位置。由于我们的深度预测是不确定的,我们改为在不同的可能深度位置提升特征并在每个位置分配一个概率质量,类似于 [37]。均匀深度基线使用正交特征变换来提升 3D 中的特征,方法是在所有深度位置设置均匀分布。我们观察到,与学习的深度加权相比,这种简单的提升表现更差。
现在和未来的分布。确定性模型手头有一项艰巨的任务。它必须满怀信心地输出哪个未来会发生,即使所说的未来是不确定的。在我们的概率设置中,模型在训练过程中受到未来分布的指导,该分布输出指示正确未来的潜在代码。它还鼓励当前分布覆盖未来分布的模式。这种范式允许 FIERY 预测准确和多样化的未来,我们将在第 5.4 节中看到。
关于理解学习潜在空间的结构和未来预测的时间范围的进一步分析可在附录 A 中找到。
5.4.概率建模
我们将我们的概率未来预测模型与以下基线进行比较:M-Head、Bayesian Dropout 和 Classical VAE(更多细节见附录 A.3)。我们在表 4 中报告了结果,并观察到我们的模型预测了最准确和多样化的未来。

结论

自动驾驶需要在多模式场景中做出决策,在这种场景下,世界的现状并不总是足以单独进行正确推理。因此,估计世界未来状态的预测模型——尤其是其他动态代理——是稳健驾驶的关键组成部分。我们提出了第一个从环绕 RGB 视频鸟瞰自动驾驶动态代理的预测模型。我们提出这是一个端到端的学习问题,其中我们的网络用变分分布对未来的随机性进行建模。我们证明了 FIERY 可以预测时间上一致的未来实例分割和运动,并且能够准确地对不同的未来进行建模。在未来的工作中,我们希望共同训练一个驱动策略,以根据未来的动作来调节未来的预测模型。

Published by

风君子

独自遨游何稽首 揭天掀地慰生平