基于深度神经网络的轨迹预测算法综述

2022-03-14 02:19彭子沣葛万成
电视技术 2022年2期
关键词:行人轨迹模态

彭子沣,葛万成

(同济大学 中德学院,上海 201804)

0 引 言

有经验的人类驾驶者会观察环境并对周边车辆和行人的行为做出预测,以便对可能出现的情况做出准备[1-2]。而这些行为由于人类自我意识的存在而呈现出多模态(multi-model)的特性,每个人的目的地各不相同,并且由于性格、年龄等诸多个体差异,到达目的地的策略也是多样的。除此之外,人与物理环境以及其他人的交互行为进一步把问题复杂化,对计算机使用算法处理该问题提出了新的挑战。尽管如此,作为重要的技术环节,自动驾驶车辆必须模仿人类并具备对等的预测能力。

近年来,国内外学者对轨迹预测的研究已经取得了长足的发展,轨迹预测算法从以卡尔曼滤波、高斯过程[3-4]等为代表的传统动力学模型全面转向了以循环神经网络、注意力机制为代表的序列处理深度学习模型。一些综述论文系统地总结了该领域的重要论文[5-6],然而这些论文缺乏对关键数据集的介绍,而且其分类方法往往从发展历程或者具体网络结构的角度出发对模型进行分类,并非从解决方案的动机出发进行分类。因此,本文将介绍该领域面临的挑战,并从与之对应的具体模型的实现思路和解决问题的动机出发对论文进行分类和总结。此外,本文还将介绍重要的数据集,并在最后对未来的研究趋势进行分析,展望该领域的发展,希望为轨迹预测领域的工作提供参考。

1 轨迹预测问题的实质和挑战

轨迹预测问题在实际模型中主要被抽象为两种形式。一种如图1所示,根据目标此时的动力学参数(主要是速度的大小和方向),预测其下一个时刻的动力学模型,并在此基础上计算之后的坐标位置。这种建模方式在传统模型中更常见。图1标出了下一时刻行人可能的速度方向,深色代表概率较大,浅色代表概率较小[7]。另一种如图2所示,把轨迹抽象为一系列坐标点的集合,此时模型的输入为场景中目标过去一段时间的轨迹坐标,输出为模型推测的未来一段时间的轨迹坐标。深度学习模型中,轨迹往往被视作坐标点的序列。图2中白色方块代表过去的轨迹,灰色圆点表示未来各种可能的轨迹,白色圆点表示真实的轨迹[8]。在深度学习中,该类任务和自然语言处理(Natural Language Processing)问题一样,属于典型的序列处理问题,所以通常可以看到长短时记忆神经网络(Long Short-Term Memory,LSTM)[9]、Transformer[10]等类似的结构。

图1 轨迹预测形式一

图2 轨迹预测形式二

轨迹预测问题的建模并不复杂,但是影响轨迹走向因素的多样性导致了问题的复杂性,可以分为下面几类。

(1)场景因素。在不同的交通场景中,行人和车辆会受到具体环境的极大影响。首先是场景的物理限制,例如,行人不能穿过墙壁,车辆在环岛中不能驶过圆心等,这对算法的障碍物辨识能力提出了要求。此外,场景还会产生隐式影响,例如,在十字路口过马路的行人会比在校园中散步的学生有更快的速度,车辆会受到标志标牌和交通规则的限制等,这对算法理解场景类型的能力也提出了要求。

(2)个体差异。由于个人在性格、年龄、精神状态等方面的差异,其行进策略也会有明显的不同。举几个例子,一个性格急躁或在赶时间的行人可能在避开障碍物时采取更加激进的策略;年轻人的速度往往比老年人快;一些人的舒适社交距离较大,导致其轨迹总是远远避开其他人。

(3)复杂交互。行人和车辆的行进策略并不是互相独立的,而是存在非常复杂的交互关系,同一场景下的交通参与者会对各自的策略进行反应并调整自己的策略。例如,三五好友会结伴而行,前方有车辆变道时驾驶者会轻点刹车等。要判断各个交通参与者的交互策略,其目的和意图是至关重要的,而这对模型来说是完全隐式的,于是对算法提出了更高的要求。因此,模型应该能够推断各个交通参与者的意图,并在此基础上理解各个交通参与者之间的关系,这是轨迹预测的中心问题之一。

(4)多模态性(multi-model)。在深度学习中,多模态往往指代不同类型的输入信息,而在轨迹预测领域,特指轨迹的多样性和不确定性,即对于某一段过去的轨迹、多种未来轨迹的选择可能都是同样合适的。车辆尚有标志标线、红绿灯状态等交通规则的限制,而对于行人,这种多模态的影响更大,因为此时个体差异和场景因素的影响进一步凸现。所以对于轨迹预测问题,模型常常不给出确定解,而是给出未来轨迹的概率分布,以此为多模态性建模。

上述四个因素并不互相独立,而是相互影响的。例如,场景不同可能导致交互方式变化,个体的差异也会加强多模态性。考虑分离的因素可以为模型提供建模的依据,但是从更一般的角度来说,对于如此复杂的问题,手工定义的特征往往并不足以达到较高的精确度。因此需要一种更加灵活、数据驱动的自适应解决方案,一个对场景、个体差异、交互、动力学、多模态都敏感的模型。这是轨迹预测解决方案从动力学模型转向深度学习模型的重要原因。接下来,本文将介绍该领域常用的几个数据集,然后以本章的分类为基础介绍具体的重要论文。

2 数据集

轨迹预测的任务环境多变复杂,所以多个侧重不同方面的大型公开数据集都具有较大影响力, 主 要 有NGSIM[11]、HighD[12]、Stanford Drone[13]、nuScenes[14]、ETH[15]、JAAD[16]、PIE[17]、TrajNet++[18]。表1详细列出了各个数据集的发布时间、数据规模等信息。

表1 轨迹预测数据集信息整理

3 主要算法介绍

该部分主要从解决轨迹预测问题的动机出发分类介绍重要的模型,分类方法与第二部分中阐述的挑战相对应。除此之外还在开头简要介绍了传统模型的思路,并在最后总结了部分归类困难但仍有价值的解决方案。由于该分类方法并不是按照时间排序,所以同一个模型可能会出现在不同的分类中,因为有大量模型尝试同时解决轨迹预测问题的多个方面。

3.1 传统模型

传统模型可分为三类。第一类完全建立在物理学的基础上,文献[20]、文献[21]、文献[22]、文献[23]通过对车辆动力学的细致分析,可以得到短时间内周边车辆的位置,常用于碰撞预警或者风险评估。第二类是行为模型[24-26],基于对驾驶员打算执行的操作的实时识别来预测未来的轨迹。第三类模型建立在能量函数的基础上,由于使用了梯度下降算法,该类模型是最接近深度学习模型的。文献[7]通过行人间的距离和速度的大小、方向首先提出了碰撞能量函数的概念,并通过梯度下降算法找到该函数的最小值来预测下一时刻的速度,最后通过该速度计算下一瞬间的行人位置。文献[27]在能量函数中加入了惩罚行人偏离目的地或偏离同行者的正则项,改进了文献[7]的效果。文献[13]进一步通过对行进策略分类改进了文献[27]的效果。

传统模型的优势是计算复杂度低,并且由于模型简单,泛用性强,对于不同的数据集无需重复训练。劣势在于缺乏全局的交互信息和对多模态性、个体差异性的建模,所以其长时间预测效果很难提升,导致传统模型只适合于瞬时预测任务,如碰撞检测。

3.2 场景因素

场景类型和场景理解对于轨迹预测问题有决定性的影响。众多模型通过多种方式引入了场景信息,改进了预测准确度。文献[28]和文献[29]将视频中的某帧图片取出作为对特定场景的建模,并通过卷积神经网络(Convolutional Neural Networks,CNN)对其进行特征提取后直接输入到预测网络中来隐式地利用场景信息。文献[29]还将场景特征和预测点输入到了物理注意力模块(physical attention),利用场景信息对预测点的可能性进行判断。这种方式虽然在实验中取得了不错的效果,但是可解释不佳,对于卷积核大小等超参的选择有较高的调试要求。而文献[30]利用语义分割为图片中每个像素分配一个固定的类型,对场景进行了更精确的建模,因为此时模型清楚地知道预测点一般不可能落在被分类为花坛或者墙壁的像素上,该模型在Stanford Drone和ETH数据集上实现了目前最佳的预测精度。在车辆轨迹预测方面,文献[31]和文献[32]通过利用高速公路场景中的车道信息提高了模型对变道行为的敏感度,提高了在HighD数据集上的预测精度。不同在于,文献[31]直接使用车道标号的嵌入向量(embedding vector),而文献[32]则通过为不同的车道提供不同的编码器(Encoder),在模型结构层面引入了车道信息。

虽然上述利用环境信息的方式都推动了轨迹预测领域的进步,但是他们往往都在俯视角的数据集上进行测试,而在工程实践中俯视角数据是难以获得的,所以这些方法还需要进一步在主视角的数据集上进行测试。另外,使用语义分割的模型[30]的计算量大,特别是在输入为点云数据时能否在车载计算平台上达到满足安全要求的计算时间是一个 问题。

3.3 复杂交互

如何提取交通参与者之间的交互信息,是轨迹预测的另一个核心任务,与轨迹的多模态性一起,形成该领域最重要的两个关注点。大部分的模型都会在这两个方向上做出尝试。文献[33]首先指出轨迹预测中交互信息的重要性并产生了持续的影响,该模型利用LSTM为序列建模,并对距离较近的行人的隐藏层状态做池化操作来提取交互信息。文献[34]改进了文献[33]的方法,每个行人都会计算与所有其他行人的池化值,得到了全局交互信息。文献[35]与文献[33]一样,都将原始的轨迹数据划分为网格,但不同于文献[33]的池化操作,该模型将网格看做图像,利用卷积操作来提取交互信息,池化和卷积都是提取本地交互性的方式。与文献[35]类似,文献[36]也利用了卷积操作来提取交互信息,但该模型不在模型中显式地建立卷积层,而是利用了内部存在卷积结构的convLSTM[37]。还有一类重要的模型[8,31,38,39,40]受到谷歌提出的自然语言处理模型Transformer[10]中自注意力机制(self-attention)和文献[41]提出的非本地操作(non-local operation)的影响,提出了一系列利用全局自注意力机制来提取交互信息的模型。文献[39]在Highd数据集上尝试了自注意力机制,通过矩阵点积操作计算两两车辆间的交互信息。文献[40]与文献[39]的结构类似,但是会生成多条轨迹来为多模态性建模。文献[31]中的车辆注意力模块与文献[39]的结构类似,但该模型还提出了车道注意力机制,将车道编号的嵌入向量和车辆特征向量做点乘,求得车道和车辆间的交互信息,提高了对车道信息的敏感程度。文献[38]用距离、速度角、最小距离三个因素定义了一个权重向量,并根据这个权重向量来加权点乘的结果使得交互信息精细化。文献[8]使用了一种循环自注意力机制,每次循环得到的交互信息矩阵会与上次的结果相加进入下一个循环,这种做法可解释性不强,但加深了网络深度,也对预测精度有一定的改进。另外还有一类,文献[42]和文献[43]将轨迹预测问题建模为图模型(graph),每个交通参与者被视为一个节点,而边上的权重代表了交互强度。

作为轨迹预测的核心问题,学术界已经做出了大量的尝试,可用的经典神经网络结构几乎都已经应用到了这一问题中,今后该领域的发展重点或许会回到数据的精确性和多样性中。

3.4 多模态性

由于达到同一个目的地完全可能存在多种选择,所以轨迹预测往往不能采用确定性模型,而必须通过输出概率分布来对多模态性和不确定性建模。在深度学习领域,生成器是一种常见的为概率分布建模的结构,其中生成对抗网络(Generative Adversarial Networks,GAN)[44]和变分自编码器(Variational Auto-Encoders,VAE)[45]最为常见,两种结构被广泛地应用到了轨迹预测模型中。

文献[38]、文献[34]、文献[28]以及文献[29]用基本相同的方式引入了生成对抗网络,尝试解决多模态性问题,其中较为特殊的两篇文章是文献[38]和文献[34]。文献[38]指出生成对抗网络不容易训练并且对于模式崩溃和模式掉落非常敏感,故而使用了新的Info-GAN模型[46],改进了轨迹预测效果。而文献[34]的判别模型(discriminator)的功能是评价生成的轨迹是否在交互上是可能的。除此之外,文献[38]、文献[28]及文献[29]的判别模型输入都是真实未来轨迹或者生成的轨迹,输出轨迹为两种类别的可能性,以此来提高生成器生成真实轨迹的能力。

文献[8]和文献[43]利用VAE来对不确定性进行建模。文献[43]提出了一种循环VAE来预测下一步的位移,而不是直接输出下个点的坐标,这样做可使得VAE得到类似于循环神经网络的序列顺序信息。文献[8]通过CVAE[47]首先生成一系列目标可能的目的地,在此基础上预测中间点。文献[30]改进了文献[8]的方法,不仅利用CVAE生成目的地,还生成了中间关键帧的可能取值,以此提高了对多模态性建模的能力。文献[48]的模型较为复杂,该模型生成模块首先用CVAE生成多个可能的预测点输入到后续模块中,后续模块会生成位置偏移反馈到输入中修正预测点的位置,并同时为预测点打分,循环结束后得到最高分的预测点胜出。文献[49]通过修改VAE本身以增强对于多模态性的建模,非常特殊。它提出了CF-VAE的概念,通过将VAE的隐藏分布从一般的高斯分布改变为结构更加灵活的标准化流(normalizing flow)来增强其表达能力。

除生成器外,文献[50]利用一个人为设计的分布来生成M个与车道相关的可能目的地,然后通过提取好的环境信息优化这些目的地坐标点,并为每个目的地生成一条相应的轨迹,最后利用打分模块为每条轨迹评分,留下分数最高的k条轨迹。文献[51]通过在解码阶段输出混合高斯分布来为多模态性建模,但每一步根据每个高斯分布的权重只取一个样本。

由于多模态性过于重要,虽然各个模型为了对预测效果进行评估最终往往会以某种方式选择其中一条预测轨迹计算误差,但在实际环境中,预测模块后续往往还存在有规划模块来对预测模块的输出信息进行筛选处理,所以预测模块通常直接输出多条轨迹,这是需要注意的一点。

3.5 个体差异

个体差异在轨迹预测中也是一个非常重要的因素,不同的性格、年龄等差异会极大地影响轨迹的选择,然而目前在这方面着力的模型并不多见,所以这是未来的一个发展方向。文献[13]虽然是利用能量函数的传统模型,但是其根据行进策略对行人进行分类的思想很有价值。该模型通过“开始躲避其他行人的距离”以及“躲避时所偏离原始轨迹的距离”将行人的策略分为四类。举例来说,如果某个行人在很近的距离才开始采取躲避行为,并且躲避的距离也很短,那么可以说该行人的策略是激进的,可以判断他在赶时间或者性格急躁。文献[42]指出同一类型的交通参与者(车辆、行人、自行车等)具有包括速度、加速度、转向等相似的动力学特性,如果模型能够提取出每个类型的运动模式,其理解能力会大大增加。所以该模型提出了超级节点(super node)的结构,每个超级节点只接受一类交通参与者样例的训练。

3.6 其他模型

一部分轨迹预测模型另辟蹊径,虽然不能归类为上述几个重要的类型,但是其思路新颖,也具有很强的研究价值。数据增强是深度学习常用的技术,文献[52]和文献[53]通过将真实数据搬运到三维模型中的方式进行了数据增强,但是目的有所不同。文献[53]把从视频中真实的场景建模到计算机三维模型中,使得手工地在该模型中给可能的轨迹进行标注成为可能。文献[52]认为目前的模型对于不同视角的数据集的有效性没有得到验证,于是通过三维模型建立了不同视角(俯视角、45°视角等)但实际轨迹相同的数据集,并在数据集上验证了文章模型的有效性。另外,文献[54]认为普通的LSTM等结构对于序列信息的记忆只使用一个单独的隐藏层状态是不足够的,于是建立了一个专门的记忆网络来增强网络的长时记忆能力。最后,还有一类模型将轨迹预测问题做了完全不同的建模。如文献[55]从博弈论的角度出发,将多个行人的轨迹预测问题看做是一个平均场游戏(mean-fieldsgame)。一些更早的研究如文献[56]则把行人的动力学模型与气体进行类比建模。

4 结 语

本文从轨迹预测问题的实质和挑战出发,对解决该问题的动机进行了分类,并给出了目前对应的解决方案,梳理了该领域的模型现状:传统模型具有可迁移性好、计算量小等优势,但是预测精度只能在短时间内达到令人满意的效果;对于场景因素的考虑,仍然有部分模型停留在直接利用场景图片信息的层面,使用语义分割等其他深度学习领域的模块进一步精细化地理解场景信息可能是将来的大趋势;在复杂交互和多模态性两个焦点问题上,当前的模型已经做出了非常充分的尝试,在没有更有效的基础网络结构出现前可能很难再有明显的突破;个体差异性的考量目前是该领域不太关心的一个方面,原因可能在于对数据进行分类可能会导致对应网络受到训练不充分,导致性能下降,于是解决该问题的关键变成建立更大规模、更精确的数据集。

综上所述,轨迹预测研究的综合发展趋势应该是数据的精细化和模型的混合化,通过在更加完善的数据集上集中发挥传统模型、序列深度学习模型、图像深度学习模型的优势,在提高网络理解能力的同时降低计算强度。例如在短时预测任务如碰撞检测时使用传统模型,因为该任务对实时性要求极高,而在中等时间长度预测和长时间预测任务中考虑采取不同的针对性结构。另一方面,将更加先进的图像、点云理解算法引入到模型中,也可能是一种有效的尝试。

猜你喜欢
行人轨迹模态
基于BERT-VGG16的多模态情感分析模型
解析几何中的轨迹方程的常用求法
多模态超声监测DBD移植肾的临床应用
跨模态通信理论及关键技术初探
毒舌出没,行人避让
轨迹
轨迹
路不为寻找者而设
轨迹
我是行人