轨迹预测经典论文之四:CoverNet: Multimodal Behavior Prediction using Trajectory Sets

前言

文章地址:添加链接描述

趁着刚写完上篇,状态还在,快马加鞭,再回看一个2020年(这时代算是较古老了)的经典做多模轨迹预测的论文Covernet,文章思路不复杂,也是属于离散化,anchor-based,细节就不写太详细了,整体就算是回顾下预测领域data driven的一些发展历史吧。
文章主要创新点,就在于把预测轨迹的问题,看作了一个离散轨迹簇下的分类问题(当然anchor-based这也不是首创)。这个离散轨迹,要保证对可能的状态空间的覆盖,也要满足车辆动力学方面的约束。此外,该轨迹簇应该还与车辆当前的运动学状态有关,例如高速下不会掉头,转小弯等。这想法相当朴素和直接了,思路其实一点也不复杂,下面让我们一起来看看这篇文章。

框架

在这里插入图片描述
当年还是很多栅格化的bev图 拼上 vector形式的state量的 encoder操作,与刚分享的HOME一样一样的,还是用主流的CNN方式提取特征。当然,该提取特征的方式,是follow的另一篇2018-2019年时代的论文:Multimodal trajectory predictions for autonomous driving using deep convolutional networks(该论文应该是一开始把栅格化的bev图编码环境信息引入到prediction 工作的)。不一样的地方,主要是decoder部分。有一个轨迹set生成器,对生成器中的轨迹进行打分,就得到了我们预测的轨迹了。

实现过程

在这里插入图片描述

Fixed trajectory sets

在这里插入图片描述
为了生成一个想要的set,文章首先抽样得到了一个大约有2w条轨迹的密集的轨迹簇K’,这个可以从训练集中,用kmeans或一些NMS的方法得到。那么接下来要做的事,就是减少轨迹簇的数量得到集合K,使之在可接受的误差内能够代表K’。如上图所示。这里采用了一种贪心的策略来实现:选取能够最大数量代替K’中的轨迹的一条轨迹traj1放入K中,然后把traj1在误差范围内能代替的轨迹从K’中删除,然后反复这个操作即可。文中提到,如果把标准设定为轨迹中每个对应点距离<2m,轨迹数量将从2w条减少到2k条左右。

Dynamic trajectory sets

在这里插入图片描述
这部分是要根据车辆当前的状态设计一个动态的轨迹簇。上图定义了一个车辆当前的状态s_t,文章基于这个状态,加上离散化的控制序列,也就是上图中的纵向加速度和前轮转角,合理外推出未来状态。外推出集合之后,也能相应的prune这个轨迹簇,只不过这里是根据横向和纵向加速度pick满足条件的轨迹。此外,由于动态轨迹可能会难以覆盖到某些状态空间,因此还能再动态轨迹簇基础上,补充一部分固定的轨迹,这是一种混合的轨迹簇生成方法。

其他细节

模型的输出是对轨迹簇中轨迹的个数,是一种打分。当然,covernet 是一种灵活的anchor-based方法,还可以仿照multipath的使用方式做回归,如果是回归的话,就是回归真值和anchor的偏差值。这样最终的输出是 K*(2n+1)K为轨迹簇的个数,n 为未来的轨迹点的个数,1为输出的概率,训练时,分类loss均采用cross-entropy,正样本是轨迹簇中最接近真值的那条,距离采用ade刻画。回归loss采用的是l1loss,两者之间的权重为1:1。

实验

在这里插入图片描述
实验结果如上图所示。括号里面的是内部数据集的实验结果。主要看下k=1和5的情况吧,k太大了没啥意义。可以看出,MTP中Models=3时,甚至还没有一些物理外推方法的效果好,2333…covernet结合到mutipath上,对mutipath也是有不小的提升效果。而covernet表现相对同期的选手,简直不要好太多了。当然这里top1差距其实不是太明显,top5的话,由于covernet能够避免模式坍塌,覆盖的更全,所以差距在top5上立马显现出来了。当然这个时期,还没专门车辆预测的argoverse数据集,感觉这指标真是老低了,时刻提醒着大家,这是一篇上古时代的论文。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值