运动轨迹的生成方法、装置、电子设备及存储介质

文档序号:32988635发布日期:2023-01-17 23:08阅读:28来源:国知局
运动轨迹的生成方法、装置、电子设备及存储介质

1.本发明涉及自动化测试领域,具体而言,涉及一种运动轨迹的生成方法、装置、电子设备及存储介质。


背景技术:

2.随着自动驾驶技术的迅速发展,高等级自动驾驶汽车已经逐渐走进人们的生活。针对自动驾驶汽车的测试过程,据测算自动驾驶汽车平均需要130万英里的测试里程才能保证系统的安全性,同时还需要在各类复杂测试场景中测试自动驾驶汽车。因此传统的场地测试和道路测试已经无法满足自动驾驶汽车的测试需求。
3.这是因为传统的场地测试和道路测试需要大量的配套设备以及相关经验的技术人员,测试过程中会造成巨大的人力、物力和财力消耗。同时受制于场地原因,传统的道路测试会会存在不能测试复杂和危险场景的问题。鉴于以上困难,采用在环测试的方式在自动驾驶汽车开发、验证阶段进行测试,不但能够极大的节省时间和成本,亦能够开展一些在实际场地或道路测试上无法实现的危险测试场景。
4.然而目前的在环测试并没有可以支撑高等级自动驾驶功能测试的复杂场景生成系统,难以对高等级自动驾驶汽车进行完备的功能测试。因此,如何在在环测试场景下生成复杂测试场景成为亟需解决的问题。


技术实现要素:

5.本发明提供了一种运动轨迹的生成方法、装置、电子设备及存储介质。利用轨迹生成模型以对至少一个参考车辆和目标车辆的历史运动轨迹数据进行分析整合,然后根据分析结果生成目标车辆的运动轨迹。这样,就可以利用轨迹生成模型生成多个交通参与物的运动轨迹,这样多个交通参与物加入至测试场景中可以增加测试场景的复杂度。
6.第一方面,本发明实施例提供了一种运动轨迹的生成方法,该生成方法包括:获取至少一个参考车辆和目标车辆的历史运动轨迹数据,至少一个参考车辆为驾驶场景中目标车辆的周边车辆。
7.利用轨迹生成模型根据所有参考车辆的历史运动轨迹数据确定目标车辆对应的社交信息向量。
8.利用轨迹生成模型根据目标车辆的历史运动轨迹数据确定目标车辆对应的第一历史轨迹特征向量。
9.利用轨迹生成模型根据目标车辆对应的社交信息向量和目标车辆对应的第一历史轨迹特征向量,生成目标车辆的运动规划轨迹。
10.在一个可选的实施方式中,轨迹生成模型包括编码器层,编码器层用于提取时空序列特征。该方法还包括:将至少一个参考车辆的历史运动轨迹数据输入至编码器层。
11.通过编码器层分别获得参考车辆对应的第二历史轨迹特征向量。
12.利用轨迹生成模型根据目标车辆的历史运动轨迹数据确定目标车辆对应的第一历史轨迹特征向量,包括:将目标车辆的历史运动轨迹数据输入至编码器层。
13.通过编码器层获得目标车辆对应的第一历史轨迹特征向量。
14.在一个可选的实施方式中,轨迹生成模型包括卷积池化层。
15.利用轨迹生成模型根据所有参考车辆的历史运动轨迹数据确定目标车辆对应的社交信息向量,包括:将所有的第二历史轨迹特征向量输入至卷积池化层,利用卷积池化层对所有的第二历史轨迹特征向量进行特征融合,得到社交信息向量。
16.在一个可选的实施方式中,该方法还包括:对社交信息向量进行池化处理。
17.在一个可选的实施方式中,轨迹生成模型包括解码器层。
18.利用轨迹生成模型根据目标车辆对应的社交信息向量和目标车辆对应的第一历史轨迹特征向量,生成目标车辆的运动规划轨迹,包括:对池化处理后的社交信息向量和第一历史轨迹特征向量进行拼接,得到轨迹编码向量。
19.将轨迹编码向量输入至解码器层中,得到目标车辆的运动规划轨迹。目标车辆的运动规划轨迹用于描述在预设时间段内,各时刻对应的预测轨迹点的位置。
20.在一个可选的实施方式中,该方法还包括:对轨迹生成模型进行训练。其中,轨迹生成模型对应的训练过程为:获取车辆行驶样本数据,车辆行驶样本数据包括第一车辆对应的历史运动轨迹数据、第二车辆对应的历史运动轨迹数据以及第二车辆对应的当前运动轨迹数据。
21.将第一车辆对应的历史运动轨迹数据和第二车辆对应的历史运动轨迹数据输入至轨迹生成模型中,通过轨迹生成模型获得第二车辆对应的运动轨迹预测结果。
22.根据运动轨迹预测结果和当前运动轨迹数据,确定损失值。
23.根据损失值调整轨迹生成模型的模型参数。
24.待达到训练条件时,停止轨迹生成模型的训练过程。
25.在一个可选的实施方式中,训练条件为损失值小于预设阈值或训练次数达到预设次数。
26.第二方面,本发明实施例提供了一种运动轨迹的生成装置,该生成装置包括:获取单元,用于获取至少一个参考车辆和目标车辆的历史运动轨迹数据,至少一个参考车辆为驾驶场景中目标车辆的周边车辆。
27.确定单元,用于利用轨迹生成模型根据所有参考车辆的历史运动轨迹数据确定目标车辆对应的社交信息向量。
28.确定单元,还用于利用轨迹生成模型根据目标车辆的历史运动轨迹数据确定目标车辆对应的第一历史轨迹特征向量。
29.生成单元,用于利用轨迹生成模型根据目标车辆对应的社交信息向量和目标车辆对应的第一历史轨迹特征向量,生成目标车辆的运动规划轨迹。
30.在一个可选的实施方式中,轨迹生成模型包括编码器层,编码器层用于提取时空
序列特征。该生成装置还包括输入输出单元。
31.输入输出单元,用于将至少一个参考车辆的历史运动轨迹数据输入至编码器层。
32.获取单元,还用于通过编码器层分别获得参考车辆对应的第二历史轨迹特征向量。
33.输入输出单元,还用于将目标车辆的历史运动轨迹数据输入至编码器层。
34.确定单元,具体用于通过编码器层获得目标车辆对应的第一历史轨迹特征向量。
35.在一个可选的实施方式中,轨迹生成模型包括卷积池化层。
36.输入输出单元,还用于将所有的第二历史轨迹特征向量输入至卷积池化层。
37.确定单元,具体用于利用卷积池化层对所有的第二历史轨迹特征向量进行特征融合,得到社交信息向量。
38.在一个可选的实施方式中,确定单元,还用于对社交信息向量进行池化处理。
39.在一个可选的实施方式中,轨迹生成模型包括解码器层。
40.生成单元,具体用于对池化处理后的社交信息向量和第一历史轨迹特征向量进行拼接,得到轨迹编码向量。
41.输入输出单元,还用于将轨迹编码向量输入至解码器层中。
42.生成单元,具体用于得到目标车辆的运动规划轨迹。目标车辆的运动规划轨迹用于描述在预设时间段内,各时刻对应的预测轨迹点的位置。
43.在一个可选的实施方式中,该生成装置还包括训练单元。
44.训练单元,具体用于对轨迹生成模型进行训练。其中,轨迹生成模型对应的训练过程为:获取车辆行驶样本数据,车辆行驶样本数据包括第一车辆对应的历史运动轨迹数据、第二车辆对应的历史运动轨迹数据以及第二车辆对应的当前运动轨迹数据。
45.将第一车辆对应的历史运动轨迹数据和第二车辆对应的历史运动轨迹数据输入至轨迹生成模型中,通过轨迹生成模型获得第二车辆对应的运动轨迹预测结果。
46.根据运动轨迹预测结果和当前运动轨迹数据,确定损失值。
47.根据损失值调整轨迹生成模型的模型参数。
48.待达到训练条件时,停止轨迹生成模型的训练过程。
49.在一个可选的实施方式中,训练条件为损失值小于预设阈值或训练次数达到预设次数。
50.本技术实施例第三方面还提供了一种电子设备,包括:存储器和处理器,存储器和处理器耦合。
51.其中,存储器用于存储一条或多条计算机指令。
52.处理器用于执行一条或多条计算机指令,以实现上述第一方面所述的运动轨迹的生成方法。
53.本技术实施例第四方面还提供了一种计算机可读存储介质,其上存储有一条或多条计算机指令,其特征在于,该指令被处理器执行以实现上述任意一种技术方案所述的运动轨迹的生成方法。
54.在本技术实施例中,可以利用轨迹生成模型来得到目标车辆的运动轨迹。首先获取目标车辆以及目标车辆周边的参考车辆的历史运动轨迹数据,然后利用轨迹生成模型根
据所有参考车辆的历史运动轨迹数据确定目标车辆对应的社交信息向量。接着根据目标车辆的历史运动轨迹数据确定目标车辆对应的第一历史轨迹特征向量。最后利用轨迹生成模型根据目标车辆对应的社交信息向量和目标车辆对应的轨迹特征向量,生成目标车辆的运动规划轨迹。这样,当对被测试车辆进行测试时,就可以根据轨迹生成模型快速得到被测试车辆周围的多个交通参与物的运动轨迹。这样,就可以变换仿真测试场景中的多个交通参与物的运动状态,以高效且简便的增加测试场景的复杂度。这样就可以解决在环测试系统中复杂场景生成的问题,以对高等级自动驾驶汽车进行更完备的功能测试。
附图说明
55.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单介绍。显而易见地,下面描述中的附图仅仅是本发明的一些实施例。对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
56.图1为本技术实施例提供的一种自动驾驶测试系统的结构示意图;图2为本技术实施例提供的一种运动轨迹的生成方法的流程示意图;图3为本技术实施例提供的一种轨迹生成模型的训练方法的流程示意图;图4为本发明实施例提供的一种运动轨迹的生成装置的结构示意图;图5为本技术实施例提供的一种电子设备的结构示意图。
具体实施方式
57.本发明提供了一种运动轨迹的生成方法、装置、电子设备及存储介质。利用轨迹生成模型以对至少一个参考车辆和目标车辆的历史运动轨迹数据进行分析整合,然后根据分析结果生成目标车辆的运动轨迹。这样,就可以利用轨迹生成模型生成多个交通参与物的运动轨迹,这样多个交通参与物加入至测试场景中可以增加测试场景的复杂度。
58.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整的描述。显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有付出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
59.需要说明的是,本发明实施例及附图中的术语“包括”和“具有”以及它们的任何变形,意图在于覆盖不排他的包含。例如包含的一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其他步骤或单元。
60.随着自动驾驶技术的迅速发展,高等级自动驾驶汽车已经逐渐走进人们的生活,带有adas(advanced driving assistance system,高级驾驶辅助系统)功能的自动驾驶汽车,l1(level 1,1级)、l2级已经投入量产,同时不少车企开始计划并推进l3和l4级自动驾驶汽车的市场化进程。针对自动驾驶汽车的测试过程,据测算自动驾驶汽车平均需要130万英里的测试里程才能保证系统的安全性。因此传统的场地测试和道路测试已经无法满足自动驾驶汽车的测试需求。这是因为,采用传统的道路测试需要大量的配套设备以及相关经验的技术人员,测试过程中会造成巨大的人力、物力和财力消耗。同时受制于人类的经验和
场地原因,传统的场地测试和道路测试会导致被测功能的重复性较差以及会存在不能测试复杂和危险场景等问题。
61.鉴于以上困难,采用在环测试方式在自动驾驶汽车开发、验证阶段对自动驾驶汽车进行测试,不但能够极大的节省时间和成本,亦有可能开展一些在实际场地或道路测试上无法实现的危险测试场景。所以在环测试已经成为了自动驾驶汽车测试验证的一个必不可少的环节。目前,在环测试有多种方法,从软件在环(sil)、模型在环(mil)、硬件在环(hil),再到整车在环(vil)。而不同的方法针对自动驾驶研发与测试的不同阶段。
62.整车级别的自动驾驶功能测试通常是在实验室内通过硬件和仿真软件进行的。现有实验室测试方案是基于轴耦合测功机和仿真软件进行联合测试,该方法的缺点是在测试自动驾驶功能的时候需要增加额外的转向机构来使车轮实现转向功能来达到高等级自动驾驶功能测试的目的。同时以往的系统并没有可以支撑高等级自动驾驶功能测试的复杂场景生成系统,难以对高等级自动驾驶汽车进行完备的功能测试。因此,如何在在环测试场景下生成复杂测试场景成为亟需解决的问题。
63.基于上述问题,本技术实施例提供了一种运动轨迹的生成方法、装置、电子设备及存储介质。利用轨迹生成模型以对至少一个参考车辆和目标车辆的历史运动轨迹数据进行分析整合,然后根据分析结果生成目标车辆的运动轨迹。这样,就可以利用轨迹生成模型生成多个交通参与物的运动轨迹,这样多个交通参与物加入至测试场景中可以增加测试场景的复杂度。下面将结合具体的实施方式,对本技术实施例所提供的方案进行详细的介绍。
64.在介绍本技术实施例提供的检测方法之前,先对本技术实施例的应用场景进行介绍。图1为本技术实施例提供的自动驾驶测试系统的结构示意图。如图1所示,该自动驾驶测试系统包括以下几个模块:交通流生成模块、仿真模块、注入装置、智能测试台架、交互显示模块。其中,智能测试台架对应有智能测试台架控制单元以及车辆动力学模块。
65.其中,交通流生成模块与仿真模块的一端进行连接,仿真模块的另一端通过注入装置与被测试车辆相连。而被测试车辆则被放置于智能测试台架上。
66.其中,交通流生成模块用于提供复杂的驾驶场景,生成大规模真实的交通流测试场景用例。其中,交通流生成模块可以为仿真模块提供多个参考目标的运动轨迹。这些参考目标则是在实际驾驶过程中,被测试车辆可能遇到的周围运动物体。比如周围行驶的机动车、路边行人、周围行驶的非机动车等。这些参考目标需要与被测试车辆进行交互,被测试车辆需要根据周围运动物体的运动情况来控制自己的运动状态,规划自己的运动轨迹。比如左转、右转、刹车,加速、减速等。因此,可以控制交通流生成模块中参考目标的个数以及各参考目标的运动行为,来控制测试用例的复杂程度。可以理解的,参考目标的数量越多,各参考目标的运动行为越复杂(运动轨迹越复杂),那么该测试场景就越危险。当需要测试被测试车辆在复杂场景下的安全性能,可以利用交通流生成模块构建更多的动态交互轨迹数据集,不间断的加入用于危险交互的新的参考目标的行驶轨迹。
67.可以理解的,本技术实施例提供的运动轨迹的生成方法则应用于该交通流生成模块,利用本技术实施例提供的运动轨迹的生成方法来生成多个参考目标的运动轨迹,从而增加仿真测试场景,以生成多种复杂的测试场景。
68.而仿真模块则与交通流生成模块相互通信,实时获取交通流生成模块提供的参考
目标的运动轨迹数据,同时,还需要与智能测试台架通信,获取被测试车辆的实时运动数据。接着就需要根据参考目标的运动轨迹数据和被测试车辆的实时运动数据来对测试场景进行仿真还原,得到关于自动驾驶的仿真测试场景。
69.其中,交互显示模块与仿真模块连接,可以实时显示仿真场景。这样,测试人员可以通过交互显示模块来观测仿真测试场景中被测试车辆的运动情况,从而判断被测试车辆的安全性。
70.接着,仿真模块需要通过注入装置将仿真测试场景注入被测试车辆中,被测试车辆就可以根据仿真测试场景来规划和控制被测试车辆的运动。其中,注入装置包括视频注入装置和雷达注入装置。其中,视频注入装置用于将仿真场景生成的视频数据注入至被测试车辆的摄像头模组中。雷达注入装置则将仿真场景中的参考目标的信息注入至被测试车辆的雷达处理模块中。这样,被测试车辆就可以根据视频数据以及雷达数据来判断路况以及周围行驶环境,从而确定后续的行车行为,规划后续的行车轨迹。
71.示例性的,仿真模块与雷达模块通过网络交换机等介质进行连接,将模拟的交通参与物(参考目标)注入给雷达模块,雷达模块会以物理波形的方式模拟雷达在遇到物体后反射回来的波形,达到对雷达的测试目的。
72.示例性的,仿真模块与gnss(global navigation satellite system,全球导航卫星系统)通过网络交换机等介质进行连接,将仿真测试过程中被测车辆的定位信息发送到gnss系统,车载定位装置从gnss系统中获取到当前的车辆位置来实现定位目的。仿真模块还可以与v2x(vehicle to everything,车对外界的信息交换)系统电性连接,将实时仿真过程中交通参与物和其他信息通过v2x以5g通讯等方式发送到被测车辆,用来感知路侧设施传输的数据。
73.当注入装置将仿真测试场景注入被测试车辆后,被测试车辆就需要根据仿真测试场景来规划和控制被测试车辆的运动。示例性的,被测试车辆可以包含智能驾驶感知单元与智能驾驶控制单元。其中智能驾驶感知单元与注入装置电性连接,用来感知仿真测试场景对应的各项数据。智能驾驶控制单元直接控制车辆的加速、减速、转弯等。
74.而被测试车辆直接放置于智能测试台架上。其中,智能测试台架内置有转鼓,支撑车辆的行驶。并且转鼓的前端两个滚筒与被测车辆前轮直接接触,被测试车辆在行驶的时候,会带动与前轮接触的两个滚筒转动,两个滚筒是随动状态,因此可以支持车轮的随动转向运动。两个滚筒下面的实体托盘会支撑滚筒和车辆,实体托盘下方会放置多颗滚珠来保证实体托盘的转向运动,从而实现车辆前轮转向功能。
75.而智能测试台架控制单元与智能测试台架电性连接,对智能测试台架进行转动控制、数据采集等操作。即智能测试台架控制单元直接测试内置转鼓的转动数据,并将内置转鼓的转动数据传输给车辆动力学模块。然后车辆动力学模块用于根据内置转鼓的转动数据确定被测试车辆的实时运动数据,并将被测试车辆的实时运动数据传输给仿真模块。具体的,车辆动力学模块根据转鼓的转速以及转向数据进行计算,得到的速度、转向、侧倾角、俯仰角、加速度等数据发送到仿真模块中,供仿真模块更新被测试车辆的运动轨迹,以实现测试的闭环。
76.基于上述自动驾驶测试系统,整个被测试车辆的测试过程为:首先仿真模块需要构建被测试车辆与交通参与物模型。其中被测试车辆的建模可以基于真实被测车辆的物理
参数以及传感器配置进行构建。而交通参与物(行人、机动车、非机动车)的物理模型也会依据真实交通状况进行配置,包含不同类别的行人,不同类别的机动车以及不同类别的非机动车等。然后交通流生成模块基于本技术实施例提供的深度学习神经网络以及运动轨迹生成方法来生成接近真实交通环境的行人、机动车即非机动车模型的运动轨迹。同时可以依据测试要求进行交通流的密度的修改。即可以改变单个交通参与物的运动行为(运动轨迹);同时可以配置行人、机动车、非机动车的数量以及占比等。
77.接着交通流生成模块将各交通参与物的运动轨迹输入仿真模块,以改变仿真环境中交通参与物的运动状态。然后仿真模块还需要通过车辆动力学模块发送的被测试车辆的实时运动数据,以更新仿真环境中的被测试车辆的运动状态。最后基于更新后的被测试车辆和交通参与物,生成新的测试环境,并通过注入装置将更新后的测试环境数据注入到被测试车辆中,以便被测试车辆规控动作,确定后续的运动行为以及运动轨迹。
78.结合上述应用场景,下面对交通流生成模块进行详细的介绍。其中,交通流生成模块可以根据轨迹生成模型来生成多个参考目标的运动轨迹。其中,该轨迹生成模型从左到右可以包括编码器层(encoder),卷积池化层(convolutional social pooling)和解码器层(decoder)。
79.编码器层用来提供运动轨迹对应的运动特征。示例性的,若参考目标中分为主车和周边车辆,那么主车和周边车辆的历史轨迹需要分别输入到一个lstm encoder单元中进行轨迹编码,以提取它们各自在过去一段时间内的历史运动特征。lstm即长短时记忆网络,作为一种特殊结构的循环神经网络用于提取时空序列特征。示例性的,在本系统中,各个车辆的lstm参数可共享,且隐状态数目为128,经编码处理后分别输出一个64维的轨迹特征向量。
80.而卷积池化层则用来将编码器层处理生成的多条相对独立的轨迹特征向量进行跨智能体的信息交互融合。具体来讲,周边车辆的轨迹特征向量将按照其在主车周围的空间分布,分别填入到对应的以主车为中心的虚拟三维网格中,从而构成主车的社交信息向量(social tensor)。随后,社交信息向量会连续经过3x3卷积,3x1卷积,以及2x1卷积的最大池化操作处理,进一步完成特征压缩,最后得到一个社交上下文向量(social context)。另一方面,编码器层对主车运动轨迹进行编码后得到的轨迹特征向量,将直接经过一个全连接神经网络层(fc 32)处理,得到包含主车动力学特征的轨迹特征向量(vehicle dynamics)。然后主车的轨迹特征向量跟社交上下文向量进行拼接操作(concatenation)后会输出一个总的轨迹编码向量(trajectory encoding,简称te)到解码器模块中。
81.解码器则接收卷积池化层输出的te向量,首先经过两个softmax网络层计算得到主车横向(lateral)和纵向(longitudinal)的行为分类预测结果,该行为分类预测结果进一步经过one-hot类别编码后,再与te向量结合,输入到lstm解码器单元按时间顺序进行循环解码,每个时刻lstm输出一个5维向量,对应二维高斯分布的5个参数,描述主车或者周围车辆在未来一段时间内运动轨迹,即各个时刻所生成的轨迹点的二维空间分布。
82.结合上述轨迹生成模型,下面对本技术实施例提供的运动轨迹的生成方法进行详细的介绍。图2为本技术实施例提供的一种运动轨迹的生成方法的流程示意图。如图2所示,该生成方法包括以下几个步骤:301、获取至少一个参考车辆和目标车辆的历史运动轨迹数据。
83.当对被测试车辆进行测试时,首先获取被测试车辆在一段时间内的历史运动轨迹数据,以及测试场景中被测试车辆周围的周边车辆的历史运动轨迹数据。由于被测试车辆需要复杂的测试场景,因此要利用该生成方法来更新周边车辆的运动轨迹,这样才可以给被测试车辆提供更多的驾驶调整,从而更好的检测被测试车辆的系统安全。因此,在该场景下,需要根据轨迹生成模型逐个输出各周边车辆的运动规划轨迹。可以理解的,轨迹生成模型可以根据参考车辆和目标车辆的历史运动轨迹得到目标车辆的规划运动轨迹,也可以根据参考车辆和目标车辆的历史运动轨迹得到周边车辆的规划运动轨迹。只需要改变轨迹生成模型的输出结构即可。这是因为,可以将周边车辆作为一个“目标车辆”,被测试车辆和其他周边车辆作为“参考车辆”即可。
84.302、利用编码器层获取目标车辆的第一历史轨迹特征向量和参考车辆对应的第二历史轨迹特征向量。
85.具体的,编码器层用于提取时空序列特征,目标车辆和参考车辆的历史运动轨迹数据需要分别输入到一个lstm单元中进行轨迹编码,以提取它们各自在过去一段时间内的历史运动特征。lstm即长短时记忆网络,作为一种特殊结构的循环神经网络用于提取时空序列特征。示例性的,在本系统中,各个车辆的lstm参数可共享,且隐状态数目为128,经编码处理后分别输出一个64维的轨迹特征向量。
86.303、将所有的第二历史轨迹特征向量输入至卷积池化层,利用卷积池化层对所有的第二历史轨迹特征向量进行特征融合,得到目标车辆的社交信息向量。
87.卷积池化层用来将编码器层处理生成的多条相对独立的轨迹特征向量进行跨智能体的信息交互融合。具体来讲,周边车辆的第二历史轨迹特征向量将按照其在目标车辆周围的空间分布,分别填入到对应的以目标车辆为中心的虚拟三维网格中,从而构成目标车辆的社交信息向量。随后,社交信息向量会连续经过3x3卷积,3x1卷积,以及2x1卷积的最大池化操作处理,进一步完成特征压缩,最后得到压缩后的社交信息向量。
88.304、将社交信息向量和第一历史轨迹特征向量进行拼接,得到轨迹编码向量。
89.另一方面,编码器层对主车运动轨迹进行编码后得到的轨迹特征向量,将直接经过一个全连接神经网络层处理,得到包含主车动力学特征的轨迹特征向量。然后主车的轨迹特征向量跟压缩后的社交信息向量进行拼接操作后会输出一个总的轨迹编码向量到解码器模块中。
90.305、将轨迹编码向量输入至解码器层中,得到目标车辆的运动规划轨迹。
91.解码器层则接收卷积池化层输出的轨迹编码向量,首先经过两个softmax网络层计算得到主车横向(lateral)和纵向(longitudinal)的行为分类预测结果,该行为分类预测结果即用来描述目标车辆在未来一段时间内运动规划轨迹,即各个时刻所生成的轨迹点的二维空间分布。可以理解的,改变解码器层的结构,就可以输出周边车辆在未来一段时间内运动规划轨迹。这样,仿真系统可以根据周边车辆在未来一段时间内运动规划轨迹来改变仿真环境,以生成更多更复杂的仿真环境供测试使用。
92.在本技术实施例中,可以利用轨迹生成模型来得到目标车辆的运动轨迹。首先获取目标车辆以及目标车辆周边的参考车辆的历史运动轨迹数据,然后利用轨迹生成模型根据所有参考车辆的历史运动轨迹数据确定目标车辆对应的社交信息向量。接着根据目标车辆的历史运动轨迹数据确定目标车辆对应的第一历史轨迹特征向量。最后利用轨迹生成模
型根据目标车辆对应的社交信息向量和目标车辆对应的轨迹特征向量,生成目标车辆的运动规划轨迹。这样,当对被测试车辆进行测试时,就可以根据轨迹生成模型快速得到被测试车辆周围的多个交通参与物的运动轨迹。这样,就可以变换仿真测试场景中的多个交通参与物的运动状态,以高效且简便的增加测试场景的复杂度。这样就可以解决在环测试系统中复杂场景生成的问题,以对高等级自动驾驶汽车进行更完备的功能测试。
93.下面对轨迹生成模型的训练过程进行简单的介绍。图3为本技术实施例提供的一种轨迹生成模型的训练方法的流程示意图,如图3所示,该训练方法包括以下几个步骤:401、获取车辆行驶样本数据。
94.其中,车辆行驶样本数据包括第一车辆对应的历史运动轨迹数据、第二车辆对应的历史运动轨迹数据以及第二车辆对应的当前运动轨迹数据。可以理解的,轨迹生成模型需要根据第一车辆对应的历史运动轨迹数据和第二车辆对应的历史运动轨迹数据来预测第二车辆未来的运动轨迹,得到第二车辆对应的运动规划轨迹。然后得到的第二车辆对应的运动规划轨迹需要与第二车辆对应的当前运动轨迹进行对比,来确定轨迹生成模型的预测结果是否准确,进而调整轨迹生成模型的参数,使得轨迹生成模型的输出结果(预测结果)更精确。
95.402、将第一车辆对应的历史运动轨迹数据和第二车辆对应的历史运动轨迹数据输入至轨迹生成模型中,通过轨迹生成模型获得第二车辆对应的运动轨迹预测结果。
96.其中,轨迹生成模型的输入是第二车辆以及第二车辆周边的第一车辆的历史轨迹x=[x
(t-h)
,

,x
(t-1)
,x
(t)
],t代表时刻,t-1代表t之前1个时刻,t-h代表t之前第h个时刻,x
(t)
代表输入的t时刻车辆的历史位置,x
(t-1)
代表输入的t-1时刻车辆的历史位置,x
(t-h)
代表输入的t-h时刻车辆的历史位置;输出则是第二车辆未来一段时间内生成的轨迹点y=[y
(t+1)
,

,y
(t+f)
]的空间概率分布预测,t+1代表t之后1个时刻,t+f代表t之后第f个时刻,y
(t+1)
代表生成的t+1时刻第二车辆的预测位置,y
(t+f)
代表生成的t+f时刻第二车辆的预测位置,具体的,公式为:其中,表示预测轨迹分布的参数,i为整数,表示主车行为类别。
[0097]
403、根据运动轨迹预测结果和当前运动轨迹数据,确定损失值。
[0098]
示例性的,模型训练的目标损失函数可选择为第二车辆生成轨迹分布的负对数最大似然,即:为了使上述损失函数值在训练过程中稳步下降,可以选择adam算法作为模型训练的梯度下降算法。
[0099]
404、根据损失值调整轨迹生成模型的模型参数。
[0100]
405、待达到训练条件时,停止轨迹生成模型的训练。
[0101]
其中,训练条件可以是损失值小于预设阈值或训练次数达到预设次数。
[0102]
图4为本发明实施例提供的一种运动轨迹的生成装置的结构示意图,如图4所示,该生成装置包括:
获取单元501,用于获取至少一个参考车辆和目标车辆的历史运动轨迹数据,至少一个参考车辆为驾驶场景中目标车辆的周边车辆。
[0103]
确定单元502,用于利用轨迹生成模型根据所有参考车辆的历史运动轨迹数据确定目标车辆对应的社交信息向量。
[0104]
确定单元502,还用于利用轨迹生成模型根据目标车辆的历史运动轨迹数据确定目标车辆对应的第一历史轨迹特征向量。
[0105]
生成单元503,用于利用轨迹生成模型根据目标车辆对应的社交信息向量和目标车辆对应的第一历史轨迹特征向量,生成目标车辆的运动规划轨迹。
[0106]
在一个可选的实施方式中,轨迹生成模型包括编码器层,编码器层用于提取时空序列特征。该生成装置还包括输入输出单元504。
[0107]
输入输出单元504,用于将至少一个参考车辆的历史运动轨迹数据输入至编码器层。
[0108]
获取单元501,还用于通过编码器层分别获得参考车辆对应的第二历史轨迹特征向量。
[0109]
输入输出单元504,还用于将目标车辆的历史运动轨迹数据输入至编码器层。
[0110]
确定单元502,具体用于通过编码器层获得目标车辆对应的第一历史轨迹特征向量。
[0111]
在一个可选的实施方式中,轨迹生成模型包括卷积池化层。
[0112]
输入输出单元504,还用于将所有的第二历史轨迹特征向量输入至卷积池化层。
[0113]
确定单元502,具体用于利用卷积池化层对所有的第二历史轨迹特征向量进行特征融合,得到社交信息向量。
[0114]
在一个可选的实施方式中,确定单元502,还用于对社交信息向量进行池化处理。
[0115]
在一个可选的实施方式中,轨迹生成模型包括解码器层。
[0116]
生成单元503,具体用于对池化处理后的社交信息向量和第一历史轨迹特征向量进行拼接,得到轨迹编码向量。
[0117]
输入输出单元504,还用于将轨迹编码向量输入至解码器层中。
[0118]
生成单元503,具体用于得到目标车辆的运动规划轨迹。目标车辆的运动规划轨迹用于描述在预设时间段内,各时刻对应的预测轨迹点的位置。
[0119]
在一个可选的实施方式中,该生成装置还包括训练单元505。
[0120]
训练单元505,具体用于对轨迹生成模型进行训练。其中,轨迹生成模型对应的训练过程为:获取车辆行驶样本数据,车辆行驶样本数据包括第一车辆对应的历史运动轨迹数据、第二车辆对应的历史运动轨迹数据以及第二车辆对应的当前运动轨迹数据。
[0121]
将第一车辆对应的历史运动轨迹数据和第二车辆对应的历史运动轨迹数据输入至轨迹生成模型中,通过轨迹生成模型获得第二车辆对应的运动轨迹预测结果。
[0122]
根据运动轨迹预测结果和当前运动轨迹数据,确定损失值。
[0123]
根据损失值调整轨迹生成模型的模型参数。
[0124]
待达到训练条件时,停止轨迹生成模型的训练过程。
[0125]
在一个可选的实施方式中,训练条件为损失值小于预设阈值或训练次数达到预设
次数。
[0126]
在本技术实施例中,可以利用轨迹生成模型来得到目标车辆的运动轨迹。首先获取目标车辆以及目标车辆周边的参考车辆的历史运动轨迹数据,然后利用轨迹生成模型根据所有参考车辆的历史运动轨迹数据确定目标车辆对应的社交信息向量。接着根据目标车辆的历史运动轨迹数据确定目标车辆对应的第一历史轨迹特征向量。最后利用轨迹生成模型根据目标车辆对应的社交信息向量和目标车辆对应的轨迹特征向量,生成目标车辆的运动规划轨迹。这样,当对被测试车辆进行测试时,就可以根据轨迹生成模型快速得到被测试车辆周围的多个交通参与物的运动轨迹。这样,就可以变换仿真测试场景中的多个交通参与物的运动状态,以高效且简便的增加测试场景的复杂度。这样就可以解决在环测试系统中复杂场景生成的问题,以对高等级自动驾驶汽车进行更完备的功能测试。
[0127]
接下来介绍本技术实施例提供的一种电子设备,请参阅图5,图5为本技术实施例提供的电子设备的一种结构示意图。电子设备800具体可以表现为虚拟现实vr设备、手机、平板、笔记本电脑、智能穿戴设备、监控数据处理设备或者雷达数据处理设备等,此处不做限定。其中,电子设备800上可以部署有图4对应实施例中所描述的运动轨迹的生成装置,用于实现图1至图3对应实施例中的功能。具体的,电子设备800包括:接收器801、发射器802、处理器803和存储器804 (其中执行设备800中的处理器803的数量可以一个或多个,图5中以一个处理器为例),其中,处理器803可以包括应用处理器8031和通信处理器8032。在本技术的一些实施例中,接收器801、发射器802、处理器803和存储器804可通过总线或其它方式连接。
[0128]
存储器804可以包括只读存储器和随机存取存储器,并向处理器803提供指令和数据。存储器804的一部分还可以包括非易失性随机存取存储器(non-volatile random access memory,nvram)。存储器804存储有处理器和操作指令、可执行模块或者数据结构,或者它们的子集,或者它们的扩展集,其中,操作指令可包括各种操作指令,用于实现各种操作。
[0129]
处理器803控制执行设备的操作。具体的应用中,执行设备的各个组件通过总线系统耦合在一起,其中总线系统除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。但是为了清楚说明起见,在图中将各种总线都称为总线系统。
[0130]
上述本技术实施例揭示的方法可以应用于处理器803中,或者由处理器803实现。处理器803可以是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器803中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器803可以是通用处理器、数字信号处理器(digital signal processing,dsp)、微处理器或微控制器,还可进一步包括专用集成电路(application specific integrated circuit,asic)、现场可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。该处理器803可以实现或者执行本技术实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本技术实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器804,处理器803读取存储
器804中的信息,结合其硬件完成上述方法的步骤。
[0131]
接收器801可用于接收输入的数字或字符信息,以及产生与执行设备的相关设置以及功能控制有关的信号输入。发射器802可用于通过第一接口输出数字或字符信息;发射器802还可用于通过第一接口向磁盘组发送指令,以修改磁盘组中的数据;发射器802还可以包括显示屏等显示设备。
[0132]
本技术实施例中,处理器803中的应用处理器8031,用于执行图1至图3对应实施例中的方法。需要说明的是,应用处理器8031执行各个步骤的具体方式,与本技术中图1至图3对应的各个方法实施例基于同一构思,其带来的技术效果与本技术中图1至图3对应的各个方法实施例相同,具体内容可参见本技术前述所示的方法实施例中的叙述,此处不再赘述。
[0133]
本技术实施例还提供了一种计算机可读存储介质,计算机可读存储介质包括计算机指令,计算机指令在被处理器执行时用于实现本技术实施例中任意一种运动轨迹的生成方法的技术方案。
[0134]
本领域普通技术人员可以理解:附图只是一个实施例的示意图,附图中的模块或流程并不一定是实施本发明所必须的。
[0135]
本领域普通技术人员可以理解:实施例中的装置中的模块可以按照实施例描述分布于实施例的装置中,也可以进行相应变化位于不同于本实施例的一个或多个装置中。上述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
[0136]
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1