MTR++

category
type
status
slug
date
summary
tags
password
icon
MTR++: Multi-Agent Motion Prediction with Symmetric Scene Modeling and Guided Intention Querying" 的研究论文,该论文由 Shaoshuai Shi、Li Jiang、Dengxin Dai 和 Bernt Schiele 共同撰写。

摘要:

这篇论文提出了一个名为 Motion TRansformer (MTR) 的框架,用于解决自动驾驶系统中的运动预测问题。MTR 框架利用了 Transformer 编码器-解码器结构,并引入了可学习的意图查询(intention queries),以高效准确地预测未来轨迹。通过为不同的运动模式定制意图查询,MTR 框架在减少对密集目标候选集的依赖的同时,提高了多模态运动预测的性能。该框架包括两个关键过程:全局意图定位和局部运动细化。此外,论文还介绍了一个高级的 MTR++ 框架,它扩展了 MTR 的能力,可以同时预测多个代理的多模态运动。MTR++ 通过对称上下文建模和相互引导的意图查询模块,促进了多个代理之间的行为交互,从而生成符合场景的未来轨迹。实验结果表明,MTR 框架在运动预测基准测试中达到了最先进的性能,而 MTR++ 框架在预测多个代理的准确多模态未来轨迹方面表现出更高的性能和效率。

1. 引言

运动预测是自动驾驶系统中的一个核心任务,它需要准确预测交通参与者的未来行为。这一任务因代理的多模态行为和周围环境的复杂性而变得具有挑战性。为了解决这些挑战,以往的研究探索了不同的策略来编码复杂的场景上下文。MTR 框架通过引入可学习的意图查询来改进轨迹预测,这些查询通过指向相同区域的一组潜在轨迹来提高效率。
notion image
  1. 子图 (a)
      • 展示了 MTR++ 框架能够同时预测多个代理(如车辆、行人等)的未来轨迹。这意味着 MTR++ 可以处理更复杂的交通场景,其中涉及多个相互作用的代理。
  1. 子图 (b)
      • 强调了 MTR++ 在推理速度和内存效率方面的优势,特别是当处理大量感兴趣的代理时。这表明 MTR++ 在保持高性能的同时,还能更快地处理数据并使用更少的计算资源。
  1. 子图 (c)
      • 显示了 MTR++ 框架在总体性能上超越了 MTR 框架和其他所有方法。这可能是指在一些评估指标上,如预测准确性、多模态预测能力等,MTR++ 都表现得更好。

2. MTR 多模态运动预测

MTR 框架采用了新颖的 Transformer 编码器-解码器架构,通过迭代运动细化来预测多模态未来运动。框架介绍了编码器网络用于场景上下文建模,以及具有意图查询的运动解码器网络,用于预测多模态轨迹。
notion image
  1. 使用多边线编码器处理代理的历史轨迹和道路信息,转化为token特征。
  1. 通过transformer编码器层和局部自注意力机制,理解场景中的上下文信息。
  1. 利用可学习的意图查询在变换器解码器层中进一步细化和预测代理的未来轨迹。

2.1. 场景信息的 Transformer 编码

 
采用类似point net 编码的方式,通过多层感知机(MLP)和最大池化操作后得到的代理(agents)和地图(map)的特征。
然后把这两串node给concat起来: 
同时为了确认node的位置,制造了每个node的位置序列  . 和上一个node序列一一对应。其中agent的位置使用当前帧的位置,地图元素的话使用整个polyline的中心位置。
Scene Context Encoding with Local Transformer Encoder
使用局部Transformer编码器进行场景上下文编码。场景上下文的局部结构对运动预测至关重要。例如,两条平行车道之间的关系对于模拟变道行为是必不可少的,但在全局连接的图上使用注意力机制会平等对待所有车道关系。因此,我们通过使用局部注意力将先验知识纳入上下文编码器,这更好地保留了局部结构,并且更节省内存。
对上一步所有node采用了多头自注意力机制,每一个node都会concat上位置信息的positional encoding。因为我们没有必要考虑离这个node太远的node,所以提前计算出每个node附近的k个node: Ω . 然后就是用Q去K里找对与附近node间的weight。然后去V那里做加权。整个过程就是标准的Transformer基础block,只不过对于KV的选取采用了附近的node来节省算力。
用transformer的另一个好处是,即使地图很大,对于每一个局部来说,都会再次提取每个node的特征给Q,K,V,这里对于所有node来说都是共享权重的,相比直接Dense融合,参数量会更少。
这样的block可以做多次,最后会得到 .于是再把这个结果拆分为agent的历史特征和地图特征两部分:  .
Dense Future Prediction for All Agent
处理agent间的交互,此论文不止考虑了历史轨迹的交互,还会侧重未来轨迹mode间的交互。
直接接一个MLP来给出未来的位置和速度。输出是3个维度,3个维度分别是agent数目,未来时刻,位置速度xy。
获得未来轨迹后,会再次encode,采用和第一步里一样encoder。最后获得未来轨迹的特征. 然后再把未来特征和历史特征给concat起来,过三个MLP,的带新的agent特征。
这个做法算是一个辅助任务,通过未来轨迹重新放到agent feature里来监督最后的预测结果,能提升model别的部分的性能。最后infer的时候自然不会使用这部分代码。

2.2 利用意图查询进行意图解码

为了促进多模态运动预测,MTR框架利用基于tansformer的运动解码网络,该网络结合了之前编码的场景上下文特征。作者引入了意图查询的概念,通过联合优化全局意图定位和局部运动细化,促进多模态运动预测。如

可学习的意图查询

为了高效且精确地确定代理的潜在运动意图,我们提出了可学习的意图查询,通过使用不同的意图查询来减少未来轨迹的不确定性,针对不同的运动模式。具体来说,对于每个类别,我们通过在训练数据集中的地面真实(GT)轨迹端点上使用k-means聚类算法来生成k个代表性意图点。每个意图点都体现了一个隐含的运动模式,考虑了运动方向和速度。给定单个焦点代理的意图点,我们将每个意图查询建模为特定意图点的可学习位置嵌入.
值得注意的是,每个意图查询负责预测特定运动模式的轨迹,这稳定了训练过程,并促进了多模态轨迹预测,因为每种运动模式都拥有自己的可学习嵌入。由于它们的可学习和自适应属性,我们只需要最少数量的查询(例如,在我们的设置中为64个查询)就可以有效地定位意图。
带有意图查询的场景上下文聚合 这些意图查询被视为tansformer解码器层的可学习查询嵌入,用于从编码的代理特征和地图特征中聚合上下文特征。具体来说,在每个tansformer解码器层中,我们1.为了简化运动解码器的说明,我们通过使用新的概念意图查询简化了运动查询对的两个组件。
获得query后,就可以进行transformer了。首先先在同一agent的不同intention间做self-attention来交换mode间的信息,即每一个intention作为query去所有K个intention里找权重再加权。
此外,对于每个意图查询,我们引入了动态地图收集策略,通过查询轨迹对齐的局部区域中的地图特征来提取细粒度的轨迹特征。地图token的键和值被限制在局部区域,通过收集中心最接近当前意图查询预测轨迹的多边形线来实现。由于代理的行为在很大程度上受到道路地图的影响,这种局部运动细化策略使迭代运动细化能够持续关注最新的局部上下文信息。
全局意图定位
计算每个intention的概率。所有mode的特征经过一个MLP,获得k个概率,里面应该还会有softmax来确保总概率加起来为1。
局部动作精调
计算每个intention具体的轨迹。所有mode的特征经过一个MLP,获得[K, T, 5]的结果,对应的是每个mode未来T帧的轨迹,5中存的是二维高斯分布的参数 ,就是未来点的位置及不确定度。
由于查询内容特征将不断地传播到下一个transformer解码器层,作为新的查询内容特征,通过不断地从编码器网络聚合场景上下文特征,可以通过多个堆叠的变换器解码器层迭代地细化预测的未来轨迹。

2.3 基于高斯混合模型的多模态预测

对Global Intention Localization和Local Movement Refinement结果的使用对于每一帧,都预测了K个位置,因为同时会预测不确定度,所以其实就是预测了K个高斯分布, 同时还有每个高斯分布的概率p。如果把这些分布都混合起来,组成一个混合高斯分布(使用概率来加权)。
实际预测的时候,直接拿每个高斯分布的mean来当对应时刻的点的坐标就行了。(GMM概念上是混合了的高斯分布,但实际使用时就是多个单高斯分别算一下,并没有真正意义上混起来,对于靠近的高斯和远离的高斯其实没有做区分)
Training Loss:GMM部分的loss采用距离gt最近的mode的mean来计算,计算了gt在对应mode的高斯函数里的概率分布值,这个值越大说明gt离高斯的mean越近。gt对应的概率自然希望越高越好,所以也加上了概率的-log。
在前面2.1最后一个任务,那部分的loss也加上,最后获得了loss函数。
4. MTR++ 多代理运动预测: MTR++ 框架在 MTR 的基础上进行了扩展,通过对称场景上下文建模和相互引导的意图查询,实现了对多个代理的同时运动预测。这一框架不仅提高了预测的准确性,还提高了效率。
5. 实验: 论文在 Waymo Open Motion Dataset (WOMD) 上对 MTR 框架进行了评估,并与其他顶尖研究进行了比较。实验结果表明,MTR 框架在边际运动预测任务上取得了显著的性能提升,而 MTR++ 框架在多代理运动预测任务上进一步增强了性能。
6. 结论: MTR 框架通过结合全局意图定位和局部运动细化,有效地提高了运动预测的准确性和效率。MTR++ 框架通过对称场景上下文建模和相互引导的意图查询,进一步提高了多代理运动预测的性能。
上一篇
动手学控制理论
下一篇
端到端-理论与实战视频课程
Loading...