本发明涉及一种行人轨迹预测方法,特别涉及到一种基于人-车交互的lstm(longshort-termmemorynetworks,简称lstm)神经网络的预测方法。
背景技术:
在自动驾驶技术尤其是高密度混合交通环境中的自动驾驶技术的研究中,行人轨迹预测具有重要的意义。混合交通环境中,行人、非机动车与机动车等具备观察、思考、决策和行动能力的“智能单元”在同一道路空间活动,在共享区域内交互影响、互相作用。对行驶在混合交通环境中的智能汽车而言,在交互时仅仅避让是不够的,会导致车辆长久性“踌躇不前”或“进退失据”,并且其新颖性带来的围观行为更有可能引起交通流异常。因此,智能汽车在行驶中对行人在未来一段时间进行精准的轨迹预测具有重要的意义。行人轨迹预测是一个典型的时间序列预测问题,具有高度的时变性和非线性。由于行人轨迹预测本质是一个时间序列问题,随着深度学习的发展,基于数据驱动的建模方式成为研究热点,lstm神经网络具有rnn(recurrentneuralnetwork)网络输出反馈的特点,又能够通过自身内部的cell结构选择性长期记住需要记住的信息,可以更好的对行人轨迹进行预测。但是单纯的lstm建模的方式忽略了行人与行人、行人与周围环境的交互影响,无法解释行人为了避免碰撞或结队而行产生的轨迹改变问题。
技术实现要素:
针对上述问题,本发明要提出一种能提高行人轨迹预测精度的基于人车交互的lstm神经网络行人轨迹预测方法,以实现良好的多步预测动态特性。
为了实现上述目的,本发明的技术方案如下:一种基于人车交互的lstm神经网络行人轨迹预测方法,包括以下步骤:
a、构建人车交互的lstm神经网络
所述的人车交互的lstm神经网络包括行人轨迹输入、车辆轨迹输入、4个lstm层和预测轨迹层,所述的4个lstm层分别为lstm层a、lstm层b、lstm层c和lstm层d,所述的lstm层a、lstm层b、lstm层c的输出端链接后输入到lstm层d;所述的lstm层a的输入端接收行人轨迹输入,所述的lstm层b的输入端经人-人交互栅格地图连接收行人轨迹输入,所述的lstm层c的输入端经方向权重计算模块和人-车交互栅格地图接收车辆轨迹输入,所述的lstm层d的输出端为预测到的轨迹;
所述的lstm层a对行人轨迹输入进行编码;
所述的lstm层b对符合人-人交互栅格地图位置条件的行人轨迹输入进行编码;
所述的lstm层c对方向权重计算模块的输出进行编码,所述的方向权重计算模块对符合人-车交互栅格地图位置条件的车辆轨迹输入进行编码;
所述的lstm层d对lstm层a、lstm层b和lstm层c链接后的输出进行解码和计算,得到预测的行人轨迹。
b、建立多层神经网络的输入
b1、输入当前行人轨迹
行人行走过程中,若没有其他障碍物阻挡,会沿原来的运动方向一直前进,若遇到其他车辆或行人,会修正自己的运动轨迹,这种修正行为最直观的体现在行人的前进的方向和速度上。行人会依据周边环境,修正自己的方向和速度,进而改变自己未来的轨迹。因此,在行人轨迹预测问题中,使用行人的前进方向和速度作为当前行人轨迹的输入变量。
首先假定每个场景中的行人以当前场景为标准坐标系,定义每个时刻的所有行人坐标,时间以帧为单位。将一段行人时间序列分为观察帧和预测帧,取t~t+obs为观察帧,t+obs+1~t+obs+pred为预测帧,其中obs、pred分别为观察帧和预测帧的长度,单位为帧数,则预测问题变成分段预测问题,其输入数据是行人在过去一段时间、每一帧相对于上一帧行人的转向角和行人的速度。具体公式如下:
其中,
其中
其中
b2、输入人-人交互信息
建立扇形栅格地图的方式来衡量当前预测行人周围的行人状况,以当前行人为圆心,r为半径的扇形区域为人-人社交感兴趣区域,在这个区域中的行人称为当前行人的“邻居”,将扇形区域划分为a×b个网格,构成栅格地图。将栅格地图写成a×b的矩阵的形式,不同网格之内的行人的数量构成a×b的矩阵中的元素,如下式所示:
其中,1ab(·)是判定邻居行人j是否在感兴趣区域中网格(a,b)上的判别函数。若在网格(a,b)中则为1;n是半径为r的扇形感兴趣区域,
将
b3、输入人-车交互信息
建立圆形的栅格地图来表达车辆与行人交互的邻域,以当前行人为圆心r为半径,在圆形区域内的车辆为行人关注的车辆,将圆形地图分为m×n大小的四个网格,构建行人对车辆的地图矩阵如下:
其中,1mn(·)是判定车辆j是否在感兴趣区域中网格(m,n)上的判别函数。若在网格(m,n)中则为1;n是半径为r的圆形兴趣区域,
由于车辆行驶方向相对固定,行人往往更关注于即将与自己相撞的车辆,若车辆与行人相对而行,行人大概率会修正自己的轨迹以避让或加速前进,若车辆与行人背道而行,车辆的运动状态对行人的影响相对较小。为了量化行人与车辆的方向对行人轨迹的影响,设计方向注意系数
其中
因此,人-车交互输入
其中,
c、建立人车交互的lstm神经网络的输出
将步骤b中lstm层a、lstm层b和lstm层c的三个输出链接到一起输入到lstm层d中,输出预测的行人轨迹,如下式所示:
其中
本发明的效果和益处是:
1、本发明选用行人的前进方向和速度作为输入,更直观的表现出邻居和车辆对当前行人运动的影响。
2、本发明引入邻居行人和车辆的影响作为“社会信息”,与行人轨迹共同作为输入,运用分层编码的模式构建神经网络,能够解决行人受社会因素影响所发生轨迹改变的问题,提高预测精度。
3、本发明针对于人-车交互的“社会信息”方面,提出方向注意力函数,用来区分不同方向的车辆对行人的影响,以提高“社会信息”的精度,进而提高行人轨迹预测精度。
附图说明
本发明共有附图3张,其中:
图1是网络基本结构图。
图2是人-人栅格地图构建图。
图3是人-车栅格地图构建图。
具体实施方式
下面结合附图对本发明进行进一步地描述。以dut环形路口数据集为例对本发明进行进一步的分析和说明。
a、按图1所示,构建人车交互的lstm神经网络;
b、建立多层神经网络的输入;
b1、输入当前行人轨迹;
b2、输入人-人交互信息;
将步骤b2中的扇形区域划分为如图2所示的4×4共16个网格,构成人-人栅格地图,人-人栅格地图内的数字即每个网格内的人数,因此可以将栅格地图写成4×4的矩阵的形式,不同网格之内的行人的数量构成4×4的矩阵中的元素;
b3、输入人-车交互信息;
将步骤b3中圆形地图分为2×2大小的四个网格,构建人-车栅格地图;
c、建立人车交互的lstm神经网络的输出;
d、评价预测结果;
用训练神经网络的预测值与目标值的均方误差mse来评价神经网络预测的精确度,mse的值越小,预测的精确度越高。当mse值小于设定的误差目标值,即完成对神经网络的训练,若mse值大于设定的误差目标值,需重新调整神经网络参数,再进行训练。
本发明不局限于本实施例,任何在本发明披露的技术范围内的等同构思或者改变,均列为本发明的保护范围。