一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于生成对抗网络和长短期记忆模型的行人轨迹预测方法

2022-06-05 11:00:00 来源:中国专利 TAG:


1.本发明涉及行人轨迹预测技术领域,特别是涉及一种基于生成对抗网络和长短期记忆模型的行人轨迹预测方法。


背景技术:

2.与汽车和骑自行车者等交通场景中的其它移动目标相比,行人轨迹预测具有更大的挑战性,因为行人既不像在机动车那样在规定车道内行驶,也不像非机动车那样保持在车道边界内前进,行人在运动时通常是没有规律地流动。由于有已经定义好的一系列“道路规则”,汽车与自行车的运动状态都会因车主遵守规则而受到约束。但行人却不一样,没有相应的法律法规来限制行人应当按照什么样的轨迹运动,当交通场景中出现没有交通信号灯的路口,或行人数量较多时,行人运动就变得更加复杂。因此,需要有效的行人运动轨迹预测算法来解决这些挑战。
3.预测行人的运动轨迹需要考虑多种可能影响行人运动的因素。近年来,多数研究从行人行为的角度入手,例如,考虑行人在无交通信号灯的路口对迎面而来的汽车所做出的反应,以此探寻车辆与行人进行交互的机制;预测行人何时过街;此外,对行人行为进行在线预测,需要从传感器中获取数据并提取多种线索,例如,使用机器视觉技术获取多种类型的上下文线索。
4.1、基于静态环境线索的预测:
5.有的学者提出了行为cnn,采用神经网络对拥挤场景中的行人行为进行建模并证明其有效性。也有的学者从固定场景内的历史轨迹信息中学习常微分方程的加权和,提出了一种新的行人位置预测方法并验证了其良好的效果。
6.(2)基于动态环境线索的预测:
7.行人行为也会受到场景中其它动态目标的影响。有的学者研究了一种微观模拟模型,在无交通信号灯的路口对骑车人的行为进行分析。除了要考虑其他道路使用者的存在以外,交通参与者还应就通行顺序进行协商以协调交通行为,也有的学者提供了一个用于研究交通参与者行为的新数据集,并重点研究了驾驶人与行人的交流方式以避免与对方碰撞。
8.(3)基于目标线索的预测:
9.人们不可能时刻都对周围的环境非常熟悉,而行人注意力不集中往往是交通事故发生的重要原因。可以依靠行人头部方向来判断行人是否注意到正在驶来的车辆,具体做法是使用多个离散定向分类器的结果,添加物理约束和时间滤波来提高鲁棒性,获得连续的头部方向估计。此外,还可以使用神经网络来实现人体全身骨架的实时2d估计,进而达到检测图像中多个人姿态的效果。行人的全身外观也可以用于轨迹预测,例如,对目标进行分类并预测特定类别目标的轨迹或姿态7叫1;还可在行人边界框周围采用密集光流特征来估计过街行人是否会停在路边。


技术实现要素:

10.有鉴于此,本发明的目的在于提供一种基于生成对抗网络和长短期记忆模型的行人轨迹预测方法,用以训练一个新的神经网络模型,提升了预测的性能。
11.为了实现上述目的,本发明采用如下技术方案:
12.一种基于生成对抗网络和长短期记忆模型的行人轨迹预测方法,所述行人轨迹预测方法包括如下步骤:
13.步骤s1、获取eth数据集以及eth补充数据集,并将二者进行匹配处理,获得eth数据集中每一个人物对象的明确轨迹,以该每一个人物对象的明确轨迹作为训练与测试用的数据集;
14.步骤s2、将步骤s1中得到的训练用的数据集按照一定比例划分为训练集和测试集,并且进行预处理;
15.步骤s3、构建行人轨迹预测网络,其包括:该行人轨迹预测网络包括生成器网络和鉴别器网络,其中,生成器网络与鉴别器网络构成生成对抗网络;
16.步骤s4、将步骤s2中得到的训练集输入至步骤s3中构建的行人轨迹预测网络中,进行模型训练,经过多轮迭代训练,直到损失函数收敛,固定网络参数;
17.步骤s5、进行行人轨迹预测,其包括:将步骤s2中得到测试集输入至步骤s4中得到的行人轨迹预测模型中进行预测,得到预测结果。
18.进一步的,所述步骤s1具体包括:
19.步骤s101、首先获取eth数据集,该eth数据集是以时间标签,人id标签,人位置点坐标(x,y)构成的参数,然后再通过字符串形式读取该eth数据集中idl标签文件,接着通过python中的通用代码re模块来读取idl标签文件中的有效信息,最后将有效信息以csv表格的形式导出;
20.步骤s102、首先获取eth补充数据集,其中,该数据集中不存在额外的标签数据文件,只有所有人物图片的分割;然后参照eth数据集中的标签信息,对该eth补充数据集中的各个图片进行命名,同时将所有的图片按照人的分类划分到不同的文件夹中;最后通过python中的通用代码os模块获取各个文件夹的文件目录;
21.步骤s103、将步骤s101中得到的csv表格,以及步骤s102中得到的各个文件目录,在python中的数据列表中进行逐个匹配,得到eth数据集中每一个人物对象的明确轨迹;
22.步骤s104、将轨迹数据划分为观测轨迹数据,预测轨迹数据,时间列表,id列表,以此构建模型训练与测试用的数据集。
23.进一步的,所述步骤s2包括:
24.步骤s201、将步骤s104中构建的数据集按划分比例4:1把数据划分成训练集和测试集;
25.步骤s202、将所有数据进行标准化,把所有数据标准化到0与1之间。
26.进一步的,生成器网络还包括:编码器、解码器、社会特征嵌入层以及社会池化层,其中,编码器和解码器均包括全连接层和lstm层;
27.在生成器网络中,解码器和社会特征嵌入层设置在前,其输入均为轨迹数据,解码器和社会特征嵌入层的输出均传递至社会特征嵌入层中,社会特征嵌入层的输出与噪声进行合并输入至解码器中,解码器的输出传递至鉴别器网络中,其中,在编码器中,全连接层
设置在前,其后连接有多个lstm网络,相应的,在解码器中,多个lstm网络设置在前,其后均连接一个全连接层。
28.进一步的,在鉴别器网络中,一个全连接层设置在前,另外一个全连接层设置在后,在该两个全连接层之间设置有多个lstm网络。
29.进一步的,所述鉴别器网络的计算公式如下所示:
[0030][0031][0032][0033][0034]
在公式(1)-公式(4)中,t=1,...,t
obs
,...,t
obs
t
prep
,ti表示真假轨迹的并集,to
bs
为过去轨迹时间长度,t
prep
为未来轨迹时间长度,xi,yi为位置坐标,δ为一个全连接层,用于将二维坐标转化为特征向量,w
δ
为该全连接层参数;lstm层将每个时刻的特征向量进行编码,直到t=t
obs
t
prep
时刻结束,得到序列编码向量w
di
为该lstm层的参数;ρ为多层感知器,w
ρ
为该多层感知器参数,得到对该轨迹的打分si。
[0035]
7、根据权利要求5所述的一种基于生成对抗网络和长短期记忆模型的行人轨迹预测方法,其特征在于,所述编码器的计算公式如下所示:
[0036][0037][0038]
在公式(5)-公式(6)中,t=1,...,t
obs
,t
obs
为过去轨迹时间长度,为行人i在t时刻的位置,μ为一个全连接层,用于将二维坐标转化为特征向量,为位置特征向量,w
μe
为该全连接层参数,lstm层将每个时刻的特征向量进行编码,直到t=t
obs
时刻结束,得到序列上下文向量we为lstm层的参数。
[0039]
进一步的,所述解码器的计算公式如下所示:
[0040][0041]
[0042][0043][0044][0045]
在公式(7)-公式(11)中,t=t
obs
1,...,t
prep
,ci为注意力模块得到的行人i的张量,表示这一场景中其他行人对行人i的影响;φ为一个多层感知器,w
φ
为该多层感知器参数,表示t时刻其他行人对行人i的影响结果;将结果与噪声z相连得到解码器lstm初始隐藏状态μ为一个全连接层,用于将上一时刻的二维坐标转化为特征向量,w
μd
为该全连接层参数;lstm层对每个时刻进行编码,每个时刻的隐藏状态通过多层感知器γ即可得到t时刻的预测坐标wd为lstm解码器参数,w
γ
为多层感知器γ参数。
[0046]
进一步的,采用的总损失函数为:
[0047]
l=l
gan
(g,d) λl
l2
(g)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(12)
[0048]
在公式(12)中,l
gan
(g,d)表示为对抗损失,l
l2
(g)表示为l2损失,其中,
[0049][0050][0051]
在公式(13)和公式(14)中,λ为超参数,用于平衡生成对抗损失和l2损失,k为超参数,表示对生成器生成结果的采样次数,ti表示真假轨迹的并集,xi,yi为位置坐标,z表示噪声,p表示训练次数。
[0052]
本发明的有益效果是:
[0053]
本发明考虑到官方的eth数据集中并不包含人物id标签信息,通过对eth数据集和其补充数据集的使用,成功对模型进行了训练,并选择常用轨迹预测指标ade和fde作为性能评价指标。实验结果表明,本发明提供的模型在行人轨迹预测中有较好的表现。
附图说明
[0054]
图1为实施例1中提供的行人轨迹预测网络的结构示意图;
[0055]
图2为进行行人轨迹预测的流程示意图;
[0056]
图3为实施例1中提供的生成对抗网络的结构示意图。
具体实施方式
[0057]
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0058]
实施例1
[0059]
参见图1-图3,本实施例提供一种基于生成对抗网络和长短期记忆模型的行人轨迹预测方法,该方法具体包括如下步骤:
[0060]
步骤s1、获取eth数据集以及eth补充数据集,并将二者进行匹配处理,获得eth数据集中每一个人物对象的明确轨迹。
[0061]
具体的说,在本实施例中,该步骤s1基于python,首先将参数导入模块进行调用,之后按照获取到的参数,确定数据文件路径,确定保存文件目录,确定执行代码的标志位,并且进行训练超参数的初始化。参数导入是以时间标签,人id标签,人位置点坐标(x,y)构成的。所以数据集处理文件包含了三个函数。第一个函数用于以字符串形式读取idl标签文件后,通过正则表达式模块读取有用信息,将有用信息以csv表格的形式导出。第二个函数的功能实现是通过读取第一个函数中产生的csv文件,获取eth补充数据集中的标签信息,在列表下逐个匹配,将数据整理成所需要的格式,可以得到eth数据集中每一个人物对象的明确轨迹。第三个函数是对训练数据的保存,将轨迹数据划分为观测轨迹数据,预测轨迹数据,时间列表,id列表。
[0062]
更具体的说,在本实施例中,该步骤s1具体包括如下子步骤:
[0063]
步骤s101、首先获取eth数据集,该eth数据集是以时间标签,人id标签,人位置点坐标(x,y)构成的参数,然后再通过字符串形式读取该eth数据集中idl标签文件,接着通过python中的通用代码re模块来读取idl标签文件中的有效信息,最后将有效信息以csv表格的形式导出。
[0064]
具体的说,上述的通用代码re模块即为正则表达式模块re,该模块能检查一个字符串是否与某种模式匹配,在本实施例中,该模块的用处在于将eth数据集中不规整的数据以需要的方式读入。
[0065]
步骤s102、首先获取eth补充数据集,其中,该数据集中不存在额外的标签数据文件,只有所有人物图片的分割;
[0066]
然后参照eth数据集中的标签信息,对该eth补充数据集中的各个图片进行命名,同时将所有的图片按照人的分类划分到不同的文件夹中;
[0067]
最后通过os模块获取各个文件夹的文件目录。
[0068]
具体的说,在本实施例中,该os模块为python中的通用代码。
[0069]
步骤s103、将步骤s101中得到的csv表格,以及步骤s102中得到的各个文件目录,在python中的数据列表中进行逐个匹配,得到eth数据集中每一个人物对象的明确轨迹。
[0070]
步骤s104、将轨迹数据划分为观测轨迹数据,预测轨迹数据,时间列表,id列表,以此构建模型训练与测试用的数据集。
[0071]
步骤s2、进行数据集的划分和预处理,其具体包括如下子步骤:
[0072]
步骤s201、将步骤s104中构建的数据集按划分比例4:1把数据划分成训练集和测
试集;
[0073]
步骤s202、将所有数据进行标准化,其中,数据标准化是以类的形式出现的,这个类会读取数据中的最大值和最小值,将最大最小值作为标准化依据,把所有数据标准化到0与1之间。使用这个类的做法就是先为这个类规定数据边界,确认最大最小值。之后将要处理的数据调用标准化内部函数即可标准化。在观察最终输出时,也可以调用反标准化来将数据按照原先标准恢复。
[0074]
步骤s3、构建行人轨迹预测网络,其具体包括:
[0075]
该行人轨迹预测网络包括生成器网络和鉴别器网络,生成器网络与鉴别器网络构成生成对抗网络。生成器网络还包括:编码器、解码器、社会特征嵌入层以及社会池化层,其中,编码器和解码器均包括全连接层和lstm层;
[0076]
具体的说,在生成器网络中,解码器和社会特征嵌入层设置在前,其输入均为轨迹数据,解码器和社会特征嵌入层的输出均传递至社会特征嵌入层中,社会特征嵌入层的输出与噪声进行合并输入至解码器中,解码器的输出传递至鉴别器网络中,其中,在编码器中,全连接层设置在前,其后连接有多个lstm网络,相应的,在解码器中,多个lstm网络设置在前,其后均连接一个全连接层。
[0077]
具体的说,在鉴别器网络中,一个全连接层设置在前,另外一个全连接层设置在后,在该两个全连接层之间设置有多个lstm网络。
[0078]
以上为本实施例中提供的行人轨迹预测网络的总体结构。
[0079]
更具体的说,在本实施例中,通过在python的主函数中搭建模型,第一个网络模型,编码lstm层是由一个全连接层和一个lstm层组成,全连接层输入维度为四维,方便输入人物对象的坐标与速度,之后转换为隐藏层大小输出到lstm层。在内部函数上,除了前线函数外还需要一个lstm初始化函数,用来初始化记忆细胞和输出的初值。之后所有的lstm层都会带这样一个内部函数。
[0080]
第二个网络模型是社会特征嵌入层,这样的嵌入层通常是由三层全连接层组成,中间由激活函数连接,防止出现梯度消失或者梯度发散。在这里,选择的激活函数是relu()函数。
[0081]
第三个网络是注意力层,这个层由一个全连接层开头,之后判定当前数据块中的数据个数,将获取的信息手动通过矩阵乘法的形式进行处理得到注意力结果。
[0082]
第四个网络是解码层,用于分析网络得到的速度预测值,之后方便利用速度预测值进行轨迹预测。
[0083]
第五个网络是解码lstm层,这个层实际在在代码中未使用,它与全连接形式的解码层是二选一的形式,如果选择该层,则将解码的网络替换为此层。
[0084]
第六个网络是鉴别器网络,作为一个完成封装的关键网络,它也最为复杂。由一个lstm层,一个观测路径全连接层,一个预测路径全连接层,一个隐含编码器和一个分类器组成。生成器输出在进入前向网络之后,先经过观测lstm层,之后经过观测全连接层。而输入的预测轨迹则通过预测全连接层。之后将两个部分串联,放入分类器中。分类器需要进行生成器数据和验证集的预测数据的分辩。而隐含参数则会作为一个数值输出进行反向传播。
[0085]
更具体的说,在本实施例中,鉴别器网络的计算公式如下所示:
[0086][0087][0088][0089][0090]
在公式(1)-公式(4)中,t=1,...,t
obs
,...,t
obs
t
prep
,ti表示真假轨迹的并集,t
obs
为过去轨迹时间长度,t
prep
为未来轨迹时间长度,xi,yi为位置坐标,δ为一个全连接层,用于将二维坐标转化为特征向量,w
δ
为该全连接层参数。lstm层将每个时刻的特征向量进行编码,直到t=t
obs
t
prep
时刻结束,得到序列编码向量w
di
为该lstm层的参数。ρ为多层感知器,w
ρ
为该多层感知器参数,得到对该轨迹的打分si。
[0091]
更具体的说,在本实施例中,编码器的计算公式如下所示:
[0092][0093][0094]
在公式(5)-公式(6)中,t=1,...,t
obs
,t
obs
为过去轨迹时间长度,为行人i在t时刻的位置,μ为一个全连接层,用于将二维坐标转化为特征向量,为位置特征向量,w
μe
为该全连接层参数,lstm层将每个时刻的特征向量进行编码,直到t=t
obs
时刻结束,得到序列上下文向量we为lstm层的参数。
[0095]
更具体的说,在本实施例中,解码器的计算公式如下所示:
[0096][0097][0098][0099][0100]
[0101]
在公式(7)-公式(11)中,t=t
obs
1,...,t
prep
,ci为注意力模块得到的行人i的张量,表示这一场景中其他行人对行人i的影响。φ为一个多层感知器,w
φ
为该多层感知器参数,表示t时刻其他行人对行人i的影响结果。将结果与噪声z相连得到解码器lstm初始隐藏状态μ为一个全连接层,用于将上一时刻的二维坐标转化为特征向量,w
μd
为该全连接层参数。lstm层对每个时刻进行编码,每个时刻的隐藏状态通过多层感知器γ即可得到t时刻的预测坐标wd为lstm解码器参数,w
γ
为多层感知器γ参数。
[0102]
步骤s4、将步骤s2中得到的训练集输入至步骤s3中构建的行人轨迹预测网络中,进行模型训练,经过多轮迭代训练,直到损失函数收敛,固定网络参数。
[0103]
具体的说,在本实施例中,采用传统的gan训练方式对该行人轨迹预测网络进行训练,也即是采用反向传播算法进行迭代训练,更具体的说,在鉴别器输出结果后,先反向传播,对鉴别器的网络参数进行更改。再对生成器进行反向传播,锁死鉴别器的部分,对生成器的网络参数进行修正。
[0104]
经过多轮迭代训练,直到总损失函数收敛,固定网络参数,得到行人轨迹预测模型。
[0105]
具体的说,在本实施例中,采用的总损失函数为:
[0106]
l=l
gan
(g,d) λl
l2
(g)
ꢀꢀꢀꢀꢀ
(12)
[0107]
在公式(12)中,l
gan
(g,d)表示为对抗损失,l
l2
(g)表示为l2损失,其中,
[0108][0109][0110]
在公式(13)和公式(14)中,λ为超参数,用于平衡生成对抗损失和l2损失。k为超参数,表示对生成器生成结果的采样次数。ti表示真假轨迹的并集,xi,yi为位置坐标,z表示噪声,p表示训练次数。l
gan
实际上是一个交叉熵,鉴别器要尽可能的令d(ti)接近1,令d(g(xi,z))接近0,所以鉴别器要最大化l
gan
,而生成器与之相反,要最小化l
gan
。l
l2
用于计算预测值与真实值的差异。对于每个场景,从生成器中采样k个轨迹,选择l
l2
最小的轨迹作为预测的因为鉴别器损失回归时只采用与真实值差异最小的预测,该l
l2
损失可以使模型尽可能多的生成符合要求的多种预测轨迹。
[0111]
具体的说,进行预测模式,则首先导入模型参数,之后合并之前的观测数据和预测数据,作为原始数据传入预测代码中进行轨迹预测。在预测完成后将结果恢复原来的范围,并写入文本文件中方便查看。
[0112]
检测指标:
[0113]
平均偏移误差(ade):
[0114][0115]
最终偏移误差(fde):
[0116][0117]
综上所述,本专利公开了一种基于生成对抗网络和长短期记忆模型的行人轨迹预测方法。主要任务为搭建由生成器和鉴别器两大部分组成的模型,选择eth行人轨迹数据集作为数据源,选择social gan的方式,借助长短期记忆网络lstm对行人历史轨迹和当前位置建模,实现行人轨迹预测。其中,生成器使用长短期记忆网络(lstm)对数据中的每一个行人的历史轨迹进行特征分析。鉴别器部则通过数个全连接层进行输入特征的提取,同样通过lstm网络进行历史轨迹的特征记忆。考虑到官方的eth数据集中并不包含人物id标签信息,通过对eth数据集和其补充数据集的使用,成功对模型进行了训练,并选择常用轨迹预测指标ade和fde作为性能评价指标。实验结果表明,本模型在行人轨迹预测中有较好的表现。
[0118]
本发明未详述之处,均为本领域技术人员的公知技术。
[0119]
以上详细描述了本发明的较佳具体实施例。应当理解,本领域的普通技术人员无需创造性劳动就可以根据本发明的构思作出诸多修改和变化。因此,凡本技术领域中技术人员依本发明的构思在现有技术的基础上通过逻辑分析、推理或者有限的实验可以得到的技术方案,皆应在由权利要求书所确定的保护范围内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献