模拟驾驶测试方法、装置、计算机设备和存储介质与流程

文档序号:31850444发布日期:2022-10-19 00:58阅读:47来源:国知局
模拟驾驶测试方法、装置、计算机设备和存储介质与流程

1.本技术涉及自动驾驶技术领域,特别是涉及一种模拟驾驶测试方法、装置、计算机设备、存储介质和计算机程序产品。


背景技术:

2.自动驾驶车辆行驶过程中,前方出现行人横穿马路等交通场景时,基于决策规划算法做出驾驶决策,可见,在决策规划算法实际投入使用之前,对其进行测试尤为重要。可通过仿真的方式对决策规划算法进行测试,仿真过程中需要生成交通参与对象来模拟真实场景中的行人、车辆等交通参与者。
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.另一方面,本技术还提供了一种计算机程序产品。计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:
57.获取预先设置的交通参与对象生成信息,交通参与对象生成信息包括时间设置信息、范围设置信息和行为设置信息;
58.确定模拟驾驶场景中处于行驶状态的待测试车辆;
59.在基于时间设置信息确定当前时刻为目标时刻时,按照范围设置信息在待测试车辆前方确定随机地点,在随机地点生成交通参与对象;
60.控制交通参与对象按照行为设置信息从随机地点处开始运动,以使得交通参与对象从待测试车辆的前方经过;
61.在交通参与对象运动的过程中,检测待测试车辆是否与交通参与对象发生碰撞,并基于碰撞情况确定模拟驾驶测试结果。
62.上述模拟驾驶测试方法、装置、计算机设备、存储介质和计算机程序产品,首先,获取预先设置的交通参与对象生成信息,该交通参与对象生成信息包括时间设置信息、范围设置信息和行为设置信息。时间设置信息可用于确定生成交通参与对象的随机时间点,范围设置信息可用于确定生成交通参与对象的随机地点,行为设置信息可用于确定交通参与对象的随机动作。在确定模拟驾驶场景中处于行驶状态的待测试车辆后,基于时间设置信
息确定当前时刻为目标时刻时,按照范围设置信息在待测试车辆前方确定随机地点,在随机地点生成交通参与对象,并控制交通参与对象按照行为设置信息从随机地点处开始运动,以使得交通参与对象从待测试车辆的前方经过;在交通参与对象运动的过程中,检测待测试车辆是否与交通参与对象发生碰撞,并基于碰撞情况确定模拟驾驶测试结果。这样,交通参与对象的行为会产生一些交通场景,可模拟出车辆在行驶过程中可能遇到的各种路况,从而基于待测试车辆的反应情况来对待测试车辆进行模拟驾驶测试。这样,可以主动挖掘出各种类型的场景,比如一些人为无法设置到的极端场景等帮助丰富场景库,从而达到对待测试车辆的驾驶决策算法进行测试的目的,使得模拟驾驶测试的结果更加准确。
附图说明
63.图1为一个实施例中模拟驾驶测试方法的应用环境示意图;
64.图2为一个实施例中模拟驾驶测试方法的流程示意图;
65.图3为一个实施例中交通参与对象的示意图;
66.图4为一个实施例中纵向距离的示意图;
67.图5为一个实施例中横向距离的示意图;
68.图6为一个实施例中零方向和正方向的示意图;
69.图7为一个实施例中预测纵向位置不符合生成条件的示意图;
70.图8为另一个实施例中预测纵向位置不符合生成条件的示意图;
71.图9为另一个实施例中模拟驾驶测试方法的流程示意图;
72.图10为一个实施例中模拟驾驶测试装置的结构框图;
73.图11为一个实施例中计算机设备的内部结构图。
具体实施方式
74.为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本技术进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本技术,并不用于限定本技术。
75.本技术实施例提供的模拟驾驶测试方法,可以应用于如图1所示的应用环境中。其中,终端102通过网络与服务器104进行通信。数据存储系统可以存储服务器104需要处理的数据。数据存储系统可以集成在服务器104上,也可以放在云上或其他服务器上。本技术各实施例所提供的模拟驾驶测试方法可通过终端102或服务器104单独执行,还可以通过终端102和服务器104共同协作执行。以终端单独执行为例进行说明:测试人员可通过终端提供的可视化界面设置交通参与对象生成信息,交通参与对象生成信息包括时间设置信息、范围设置信息和行为设置信息。终端可搭载用于验证决策规划算法的仿真系统,在仿真系统开始运行后,确定模拟驾驶场景中处于行驶状态的待测试车辆;在基于时间设置信息确定当前时刻为目标时刻时,按照范围设置信息在待测试车辆前方确定随机地点,在随机地点生成交通参与对象;控制交通参与对象按照行为设置信息从随机地点处开始运动,以使得交通参与对象从待测试车辆的前方经过;在交通参与对象运动的过程中,检测待测试车辆是否与交通参与对象发生碰撞,并基于碰撞情况确定模拟驾驶测试结果。
76.其中,终端102可以但不限于是各种计算机、笔记本电脑、智能手机、平板电脑、物
联网设备和便携式可穿戴设备,物联网设备可为智能音箱、智能电视、智能空调、智能车载设备等。便携式可穿戴设备可为智能手表、智能手环、头戴设备等。服务器104可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是云服务器。本技术实施例提供的方法可应用在自动驾驶领域,本技术实施例提到的车辆可以为自动驾驶车辆。
77.在一些实施例中,如图2所示,提供了一种模拟驾驶测试方法,本实施例以该方法应用于计算机设备进行举例说明。该计算机设备可以为图1中的终端或者服务器,或者为终端和服务器构成的系统,本实施例中,该方法包括以下步骤:
78.s202、获取预先设置的交通参与对象生成信息,交通参与对象生成信息包括时间设置信息、范围设置信息和行为设置信息。
79.其中,交通参与对象可表征真实场景中,车辆在道路上行驶时可能遇到的任何能够移动的对象,示例性的,交通参与对象可表征人、动物、车辆等,本技术实施例对此不作限定。
80.其中,在模拟驾驶场景中,交通参与对象可使用任何形状表示,示例性的,交通参与对象可使用正方形、长方形、圆、椭圆来表示,本技术实施例以椭圆为例说明模拟驾驶测试方法的过程,但这并不构成对本技术实施例的限制。
81.具体的,参见图3所示,可将椭圆长短轴的交点作为交通参与对象的质心,本技术实施例中提到的交通参与对象所在的位置,均指的是质心的位置。测试人员可通过设置半长轴和半短轴的值,来控制交通参与对象的大小,或者,半长轴和半短轴的值可以为默认值。椭圆的长轴用于衡量交通参与对象所占空间的宽度,椭圆的短轴用于衡量交通参与对象所占空间的深度,图3的示例中,交通参与对象所占空间的宽度为0.6,交通参与对象所占空间的深度为0.5。
82.在一些实施例中,计算机设备可提供可视化界面,测试人员可通过该可视化界面设置交通参与对象生成信息。或者,测试人员可在本技术实施例提供的方法对应的代码中直接设置交通参与对象生成信息。本技术实施例对测试人员如何设置交通参与对象生成信息不作限定。
83.其中,为了实现对生成交通参与对象的时间点的控制。本技术实施例中提出时间设置信息的概念,时间设置信息可包括相邻两次生成交通参与对象的时间间隔。
84.在一些实施例中,时间设置信息可以包括一个固定的时间间隔,仿真开始后,计算机设备每隔该时间间隔生成一次交通参与对象。具体的,在前一次生成交通参与对象后,对于前一次生成交通参与对象的时刻(前一时刻)之后的每个时刻,计算机设备判断该时刻和前一生成时刻之间是否相隔了上述时间间隔,若是,则确定该时刻为目标时刻,即再次生成交通参与对象的时刻。上述情况下,由于时间间隔是固定的,生成交通参与对象的时刻等间隔分布。示例性的,若在t时刻生成了交通参与对象,后续生成交通参与对象的时刻为2t、3t、4t、
……
nt。
85.其中,仿真开始后,计算机设备第一次生成交通参与对象的时刻可以随机选取,或者由测试人员预先设置,另外,本技术实施例中的时刻可以为仿真系统中的时钟定义的时刻,因此本技术实施例中的时刻可以理解为仿真时刻。
86.在一些实施例中,时间设置信息可以包括服从预设函数分布的至少一个时间间
隔,相邻两次生成交通参与对象的时间间隔可以为其中的任一时间间隔。具体的,在前一次生成交通参与对象后,对于前一次生成交通参与对象的时刻(前一生成时刻)之后的每个时刻,可从上述至少一个时间间隔中任选一个时间间隔,计算机设备判断该时刻和前一生成时刻之间是否相隔了该任选的时间间隔,若是,则确定该时刻为目标时刻,即再次生成交通参与对象的时刻。上述情况下,由于至少一个时间间隔各不相同,生成交通参与对象的时刻随机分布。
87.示例性的,预设函数可以为指数函数,至少一个时间间隔可服从如下指数函数:
88.p(x》t)=e-t/t
89.其中,t为时间间隔的数学期望。p为时间间隔大于t的概率。
90.其中,为了实现对生成交通参与对象的地点的控制,本技术实施例中提出范围设置信息的概念。本技术实施例中将垂直于待测试车辆所处道路的方向称为横向,将待测试车辆所处道路对应的方向称为纵向。考虑到交通参与对象到待测试车辆所处道路的外沿的垂直距离,以及交通参与对象沿着待测试车辆所处道路到待测试车辆的距离,可以唯一确定一个位置,基于此,本技术实施例提出用于控制交通参与对象生成地点的横向范围和纵向范围的概念。其中,横向范围包括:即将生成的交通参与对象到待测试车辆所处道路的外沿的可选垂直距离,纵向范围包括:即将生成的交通参与对象沿着待测试车辆所处道路,到待测试车辆的可选距离。计算机设备后续要生成交通参与对象时,分别从横向范围和纵向范围中随机提取一个距离,基于提取到的两个距离,确定即将生成的交通参与对象的地点,为方便说明,本技术实施例中将该地点称为随机地点。
91.在一些实施例中,可将横向范围和纵向范围作为范围设置信息。或者,预设一个固定的纵向距离,将横向范围和预设纵向距离作为范围设置信息。或者,预设一个固定的横向距离,将预设横向距离和纵向范围作为范围设置信息。或者,预设一个固定的横向距离和纵向距离,将预设横向距离和预设纵向距离作为范围设置信息。
92.其中,为了实现对交通参与对象执行的动作的控制,本技术实施例中提出行为设置信息的概念。交通参与对象以随机地点为初始位置穿过道路时,面临如下问题,以哪个角度向道路内运动,以哪个速度运动,以及以哪种路径运动。基于此,本技术实施例提出角度范围和速度范围的概念。角度范围包括:交通参与对象进入待测试车辆所处道路的可选角度;速度范围包括:交通参与对象穿过道路时的可选速度。计算机设备在确定随机地点后,从角度范围中随机提取一个角度,从速度范围中随机提取一个速度,控制交通参与对象基于提取到的角度进入待测试车辆所处的道路、以提取到的速度按照预设路径运动。
93.其中,预设路径可以为直线,也可以为曲线,或者其他形态的路线,本技术实施例对此不作限定。
94.在一些实施例中,可将角度范围和速度范围作为行为设置信息。或者,预设一个固定的速度,将预设速度和角度范围作为行为设置信息。或者,预设一个固定的角度,将速度范围和预设角度作为行为设置信息。或者,预设一个固定的速度和角度,将预设速度和预设角度作为行为设置信息。
95.s204、确定模拟驾驶场景中处于行驶状态的待测试车辆。
96.其中,为了提升测试效率,可在模拟驾驶场景中加入多个车辆,仿真开始后,计算机设备可判断每个车辆处于行驶状态还是停止状态,可将处于行驶状态的车辆作为待测试
车辆。
97.s206、在基于时间设置信息确定当前时刻为目标时刻时,按照范围设置信息在待测试车辆前方确定随机地点,在随机地点生成交通参与对象。
98.在一些实施例中,计算机设备可根据时间设置信息中的时间间隔和前一次生成交通参与对象的时刻,判断当前时刻是否为目标时刻。
99.在一些实施例中,范围设置信息包括横向范围和纵向范围的情况下,计算机设备分别从横向范围和纵向范围中随机提取一个距离,基于提取到的两个距离,确定即将生成的交通参与对象的地点,为方便说明,本技术实施例中将该地点称为随机地点。
100.在一些实施例中,范围设置信息包括横向范围和预设纵向距离的情况下,计算机设备从横向范围中随机提取一个距离,基于该距离和预设纵向距离,确定随机地点。这种情况下,后续生成的各个交通参与对象,沿着待测试车辆所处道路到待测试车辆的距离均相同。
101.在一些实施例中,范围设置信息包括预设横向距离和纵向范围的情况下,计算机设备从纵向范围中随机提取一个距离,基于该距离和预设横向距离,确定随机地点。这种情况下,后续生成的各个交通参与对象,到待测试车辆所处道路的外沿的垂直距离均相同。
102.在一些实施例中,范围设置信息包括预设横向距离和预设纵向距离的情况下,计算机设备基于预设横向距离和预设纵向距离,确定随机地点。这种情况下,后续生成的各个交通参与对象,沿着待测试车辆所处道路到待测试车辆的距离均相同,而且,后续生成的各个交通参与对象,到待测试车辆所处道路的外沿的垂直距离均相同。
103.s208、控制交通参与对象按照行为设置信息从随机地点处开始运动,以使得交通参与对象从待测试车辆的前方经过。
104.在一些实施例中,行为设置信息包括角度范围和速度范围的情况下,计算机设备在确定随机地点后,从角度范围中随机提取一个角度,从速度范围中随机提取一个速度,控制交通参与对象基于提取到的角度进入待测试车辆所处的道路、以提取到的速度按照预设路径运动,从而使得交通参与对象从待测试车辆的前方经过。
105.在一些实施例中,行为设置信息包括预设速度和角度范围的情况下,计算机设备在确定随机地点后,从角度范围中随机提取一个角度,控制交通参与对象基于提取到的角度进入待测试车辆所处的道路、以预设速度按照预设路径运动,从而使得交通参与对象从待测试车辆的前方经过,这种情况下,后续生成的各个交通参与对象,穿过待测试车辆所处道路时的速度均相同。
106.在一些实施例中,行为设置信息包括速度范围和预设角度的情况下,计算机设备在确定随机地点后,从速度范围中随机提取一个速度,控制交通参与对象基于预设角度进入待测试车辆所处的道路、以提取到的速度按照预设路径运动,从而使得交通参与对象从待测试车辆的前方经过,这种情况下,后续生成的各个交通参与对象,进入待测试车辆所处的道路的角度均相同。
107.在一些实施例中,行为设置信息包括预设速度和预设角度的情况下,计算机设备在确定随机地点后,控制交通参与对象基于预设角度进入待测试车辆所处的道路、以预设速度按照预设路径运动,从而使得交通参与对象从待测试车辆的前方经过,这种情况下,后续生成的各个交通参与对象,穿过待测试车辆所处道路时的速度均相同,而且,后续生成的
各个交通参与对象,进入待测试车辆所处的道路的角度均相同。
108.在一些实施例中,测试人员可预先设置随机种子,计算机设备在从横向范围、纵向范围、角度范围、速度范围提取相应的数据时,可通过该随机种子进行提取。
109.s2010、在交通参与对象运动的过程中,检测待测试车辆是否与交通参与对象发生碰撞,并基于碰撞情况确定模拟驾驶测试结果。
110.在一些实施例中,计算机设备在交通参与对象运动的过程中,可检测待测试车辆和交通参与对象是否在某些时刻有重叠,若是,则确定待测试车辆和交通参与对象发生碰撞。
111.在一些实施例中,在待测试车辆行驶过程中,计算机设备基于时间设置信息会多次生成交通参与对象,可对发生碰撞的次数进行统计,基于统计结果,确定对待测试车辆进行模拟驾驶测试的测试结果。
112.本技术实施例提供的模拟驾驶测试方法,首先,获取预先设置的交通参与对象生成信息,该交通参与对象生成信息包括时间设置信息、范围设置信息和行为设置信息。时间设置信息可用于确定生成交通参与对象的随机时间点,范围设置信息可用于确定生成交通参与对象的随机地点,行为设置信息可用于确定交通参与对象的随机动作。在确定模拟驾驶场景中处于行驶状态的待测试车辆后,基于时间设置信息确定当前时刻为目标时刻时,按照范围设置信息在待测试车辆前方确定随机地点,在随机地点生成交通参与对象,并控制交通参与对象按照行为设置信息从随机地点处开始运动,以使得交通参与对象从待测试车辆的前方经过,在交通参与对象运动的过程中,检测待测试车辆是否与交通参与对象发生碰撞,并基于碰撞情况确定模拟驾驶测试结果。本技术实施例提供的方法实现了生成时刻、生成地点以及执行动作三个维度的随机性,和人工定义运动行为的方式相比,待测试车辆遇到的交通场景更加丰富,模拟驾驶测试结果更加准确。
113.在一些实施例中,确定模拟驾驶场景中处于行驶状态的待测试车辆的步骤,包括:遍历模拟驾驶场景中的每个车辆,对于当前遍历至的当前车辆,在当前车辆处于行驶状态的情况下,将当前车辆作为待测试车辆。
114.其中,由于本技术实施例测试的是车辆行驶过程中,前方有交通参与对象穿过道路时,车辆的决策规划算法是否能够帮助车辆做出正确的驾驶决策,以防止车辆和交通参与对象相撞。车辆处于停止状态时,无法实现上述测试,因此,需要对处于停止状态的车辆进行过滤,具体的,驾驶场景中可能包含多个车辆,计算机设备可遍历每个车辆,对于当前遍历至的当前车辆,判断当前车辆是否处于行驶状态,若当前车辆处于行驶状态,则将当前车辆作为待测试车辆。
115.在一些实施例中,计算机设备在确定当前车辆处于行驶状态的情况下,还可进一步判断当前时刻是否为针对当前车辆的目标时刻,若是,则将当前车辆作为待测试车辆。
116.具体的,计算机设备可判断当前时刻是否为针对当前车辆,需要生成交通参与对象的时刻,若是,则确定当前时刻为针对当前车辆的目标时刻。
117.上述实施例中,在模拟驾驶场景包含多个车辆的情况下,对每个车辆进行遍历,在当前车辆处于行驶状态的情况下,则将当前车辆作为待测试车辆,避免了针对处于停止状态的车辆,生成交通参与对象而造成的处理资源浪费。
118.在一些实施例中,时间设置信息包括服从预设函数分布的至少一个时间间隔,在
基于时间设置信息确定当前时刻为目标时刻时,按照范围设置信息在待测试车辆前方确定随机地点,在随机地点生成交通参与对象的步骤之前,本技术实施例提供的模拟驾驶测试方法,还可包括目标时刻的确定步骤,该步骤具体包括:从至少一个时间间隔中确定目标时间间隔;获取针对待测试车辆前一次生成交通参与对象的前一时刻,并确定前一时刻到当前时刻之间的时长;在时长为目标时间间隔的情况下,确定当前时刻为目标时刻。
119.在一些实施例中,计算机设备可从至少一个时间间隔中随机提取一个时间间隔作为目标时间间隔。示例性,至少一个时间间隔包括t1、t2、t3
……
,随机提取到的时间间隔为t3,则可将t3作为目标时间间隔。
120.在一些实施例中,计算机设备可获取针对待测试车辆前一次生成交通参与对象的前一时刻,并确定前一时刻到当前时刻之间的时长,判断该时长和目标时间间隔之间的关系,若该时长小于目标时间间隔,则确定针对待测试车辆生成交通参与对象的时刻还未到,若该时长和目标时间间隔相同,则确定当前时刻为目标时刻,则继续执行按照范围设置信息,在待测试车辆前方确定随机地点的步骤。
121.上述实施例中,时间设置信息包括服从预设函数分布的至少一个时间间隔,可以从该至少一个时间间隔中确定目标时间间隔,基于目标时间间隔来确定当前时刻是否为针对待测试车辆的目标时刻,若当前时刻为目标时刻,则生成交通参与对象,由于至少一个时间间隔服从预设函数分布,基于该至少一个时间间隔确定的目标时刻是随机的,实现了生成交通参与对象在时间维度的随机性,使得待测试车辆遇到的交通场景更加丰富。
122.在一些实施例中,范围设置信息包括纵向范围,按照范围设置信息在待测试车辆前方确定随机地点的步骤,包括:获取目标横向距离,并从纵向范围中随机提取目标纵向距离;将距离待测试车辆前方目标纵向距离、且距离待测试车辆当前所处的道路外沿目标横向距离的位置,作为随机地点。
123.在一些实施例中,范围设置信息除了纵向范围以外,还包括预设横向距离,计算机设备可将该预设横向距离作为目标横向距离。或者,范围设置信息除了纵向范围以外,还包括横向范围,计算机设备可从横向范围中随机提取一个横向距离,将提取到的横向距离作为目标横向距离。
124.其中,纵向范围包括:即将生成的交通参与对象沿着待测试车辆所处道路,到待测试车辆的可选距离。这里提到的交通参与对象到待测试车辆的可选距离,可以为,交通参与对象到待测试车辆的车头处的可选距离。参见4所示,交通参与对象沿着待测试车辆所处道路,到待测试车辆的车头处的距离为x,在模拟驾驶场景中,主要测试车辆前方有交通参与对象穿过时,车辆是否能够避开交通参与对象,因此,x的最小值可以为0,测试人员可以预先设置x的最大值,图3中x的最大值使用x表示,由此便可确定纵向范围为[0,x]。
[0125]
在一些实施例中,计算机设备可从纵向范围中随机提取一个距离,作为目标纵向距离,可将从待测试车辆的车头位置开始,向待测试车辆的行驶方向延伸目标纵向距离的位置作为纵向位置,将位于待测试车辆所处道路之外,且与待测试车辆所处道路的外沿之间的距离为目标横向距离的位置,作为横向位置,基于上述纵向位置和横向位置,确定随机地点。
[0126]
其中,真实驾驶场景中,行人等交通参与者可能从道路左侧进入并穿过道路,也可能从道路右侧进入并穿过道路。在模拟驾驶场景中,测试人员可以预先设置交通参与对象
从道路左侧进入,或者设置交通参与对象从道路右侧进入,或者设置交通参与对象从左侧进入的概率为a%,从右侧进入的概率为(1-a)%。在测试人员设置了交通参与对象从道路左侧进入的情况下,计算机设备在上述确定横向位置的过程中,将位于待测试车辆所处道路左外沿以外,且与左外沿之间的距离为目标横向距离的位置,作为横向位置。在测试人员设置了交通参与对象从道路右侧进入的情况下,计算机设备在计算横向位置时,将位于待测试车辆所处道路右外沿以外,且与右外沿之间的距离为目标横向距离的位置,作为横向位置。在测试人员设置了交通参与对象从左侧进入的概率为a%,从右侧进入的概率为(1-a)%的情况下,计算机设备在计算横向位置时,先统计已经生成的所有交通参与对象中从左侧进入的比例,以及从右侧进入的比例,将从左侧进入的比例和a%进行比较,将从右侧进入的比例和(1-a)%进行比较,基于两个比较结果,确定本次进入方向,进一步根据本次进入方向确定横向位置。
[0127]
上述实施例中,从纵向范围中随机提取目标纵向距离,将距离待测试车辆前方目标纵向距离、且距离待测试车辆当前所处的道路外沿目标横向距离的位置,作为随机地点。由于目标纵向距离是随机提取的,基于目标纵向距离确定的地点也是随机的,实现了生成交通参与对象在地点维度的随机性,使得待测试车辆遇到的交通场景更加丰富。
[0128]
在一些实施例中,范围设置信息包括横向范围,按照范围设置信息在待测试车辆前方确定随机地点的步骤,包括:获取目标纵向距离,并从横向范围中随机提取目标横向距离;将距离待测试车辆前方目标纵向距离、且距离待测试车辆当前所处的道路外沿目标横向距离的位置,作为随机地点。
[0129]
在一些实施例中,范围设置信息除了横向范围以外,还包括预设纵向距离,计算机设备可将预设纵向距离作为目标纵向距离。或者,范围设置信息除了横向范围以外,还包括纵向范围,计算机设备可从纵向范围中随机提取一个纵向距离,将提取到的纵向距离,作为目标纵向距离。
[0130]
其中,横向范围包括:即将生成的交通参与对象到待测试车辆所处道路的外沿的可选垂直距离。横向范围可以为测试人员预先设置的一个范围。本技术实施例对横向范围的设置规则不作限定。
[0131]
在一些实施例中,计算机设备可从横向范围中随机提取一个距离,作为目标横向距离,可将从待测试车辆的车头位置开始,向待测试车辆的行驶方向延伸目标纵向距离的位置作为纵向位置,将位于待测试车辆所处道路之外,且与待测试车辆所处道路的外沿之间的距离为目标横向距离的位置,作为横向位置,基于上述纵向位置和横向位置,确定随机地点。
[0132]
上述实施例中,从横向范围中随机提取目标横向距离,将距离待测试车辆前方目标纵向距离、且距离待测试车辆当前所处的道路外沿目标横向距离的位置,作为随机地点。由于目标横向距离是随机提取的,基于目标横向距离确定的地点也是随机的,实现了生成交通参与对象在地点维度的随机性,使得待测试车辆遇到的交通场景更加丰富。
[0133]
在一些实施例中,横向范围由第一阈值和第二阈值确定,第一阈值小于第二阈值,其中,第一阈值为在交通参与对象与待测试车辆所处道路外沿相切的情况下,交通参与对象的中心点到道路外沿的距离,第二阈值为预先设置的数值。
[0134]
其中,横向范围包括:即将生成的交通参与对象到待测试车辆所处道路的外沿的
可选垂直距离。参见图5所示,从交通参与对象的中心点向车辆所处道路的外沿做垂线,将交通参与对象的中心点和垂足之间的距离,作为交通参与对象到待测试车辆所处道路的外沿的垂直距离。考虑到真实场景中行人一般是从道路外移动到道路中,因此,最小垂直距离可以为,交通参与对象和车辆所处道路的外沿相切时,交通参与对象的中心点和垂足之间的距离,即图5中椭圆的短半轴的一半,图5中使用b表示,可将b作为第一阈值。测试人员可以预设一个最大垂直距离,图5中使用x表示,可将x作为第二阈值,由此可确定横向范围为[b,x]。
[0135]
上述实施例中,基于真实场景中行人过马路的普遍模式,来确定即将生成的交通参与对象的初始位置的横向范围,使得模拟驾驶场景中交通参与对象和真实场景中行人更加贴近,提升了模拟驾驶测试的有效性。
[0136]
在一些实施例中,行为设置信息包括角度范围,控制交通参与对象按照行为设置信息从随机地点处开始运动的步骤,包括:
[0137]
从角度范围中随机提取目标角度;基于待测试车辆当前所处的道路相对于交通参与对象的方位,确定参考方向;基于参考方向和目标角度,确定进入角度;控制交通参与对象在随机地点处以进入角度进入当前道路,并按预设速度和预设路径进行运动。
[0138]
其中,在按照范围设置信息确定了生成交通参与对象的随机地点后,便需要控制交通参与对象从随机地点开始向道路内移动。交通参与对象向道路内移动时,面临如下问题,以哪个角度从随机地点向道路内移动,以哪个速度移动,以及以哪种路径移动。为了提升交通参与对象移动的随机性,本技术实施例提出角度范围的概念,计算机设备在确定了交通参与对象的随机地点后,从角度范围中随机提取一个角度,控制交通参与对象基于该角度进入道路内,按照预设速度和预设路径移动。
[0139]
其中,行为设置信息除了角度范围以外,还包括预设速度。或者,行为设置信息除了角度范围以外,还包括速度范围,计算机设备可从速度范围中随机提取一个速度作为预设速度。
[0140]
其中,在角度范围中随机提取一个角度,为方便说明,本技术实施例中将提取到的角度称为目标角度,由于在得到目标角度,没有定义零方向和正方向的情况下,交通参与对象进入道路内的角度不能唯一确定。因此,测试人员可预先设置零方向和正方向,示例性的,参见图6所示,可将交通参与对象面对待测试车辆所处道路时右手侧方向作为零方向,将逆时针作为正方向。或者,可将交通参与对象面对待测试车辆所处道路时左手侧方向作为零方向,将顺时针作为正方向性,本技术实施例对此不作限制。
[0141]
在一些实施例中,计算机设备在确定了生成交通参与对象的随机地点后,基于待测试车辆当前所处的道路相对于交通参与对象的方位,确定交通参与对象面向待测试车辆所处道路的一面,并将这一面作为交通参与对象的正面,基于交通参与对象的正面,确定交通参与对象的右手侧方向和左手侧方向,按照测试人员预先设置的零方向,确定参考方向,示例性的,若测试人员预先设置的是右手侧方向为零方向,逆时针为正方向,则此处确定右手侧方向为参考方向,从右手侧方向逆时针旋转目标角度而得到的角度,可作为进入角度。在得到进入角度后,控制交通参与对象从随机地点处以该进入角度进入待测试车辆所处道路,并按照预设速度和预设路径移动。
[0142]
其中,角度范围中的最大值可由测试人员设置,为了确定交通参与对象能够进入
道路,最大值应小于π,示例性的,假设测试人员设置的最大值为r,则可将(0,r]作为本技术实施例中的角度范围。
[0143]
上述实施例中,可通过预先设置的方式得到一个角度范围,在确定生成交通参与对象的随机地点后,可从该角度范围中随机提取一个角度,控制交通参与对象基于该角度向道路内移动,由于角度提取过程是随机的,交通参与对象进入道路内的角度也是随机的,实现了交通参与对象在运动维度上随机性,使得待测试车辆遇到的交通场景更加丰富。
[0144]
在一些实施例中,行为设置信息包括速度范围,控制交通参与对象按照行为设置信息从随机地点处开始运动的步骤,包括:
[0145]
从速度范围中随机提取目标速度,控制交通参与对象从随机地点处开始,按目标速度和预设路径进行运动。
[0146]
其中,在按照范围设置信息确定了生成交通参与对象的随机地点后,便需要控制交通参与对象从随机地点开始向道路内移动。交通参与对象向道路内移动时,面临两个问题,以哪个速度移动,以及以哪个路径移动。为了提升交通参与对象移动的随机性,本技术实施例提出速度范围的概念,计算机设备在确定了交通参与对象的随机地点后,从速度范围中随机提取一个速度,为方便说明,本技术实施例中将提取到的速度称为目标速度,控制交通参与对象从随机地点处开始,按目标速度和预设路径进行运动。预设路径可以为直线,也可以为曲线,或者其他形态的路线,本技术实施例对此不作限定。
[0147]
其中,速度范围包括交通参与对象从随机地点开始移动的可选速度。为了使得交通参与对象能够移动,速度范围不包括零,测试人员可预先设置一个最大速度,可基于该最大速度确定速度范围,示例性的,假设测试人员设置的最大速度为v,则可将(0,r]作为速度范围。
[0148]
上述实施例中,可通过预先设置的方式得到一个速度范围,在确定生成交通参与对象的随机地点后,可从该速度范围中随机提取一个速度,控制交通参与对象按目标速度和预设路径进行运动,由于速度提取过程是随机的,交通参与对象移动速度是随机的,实现了交通参与对象在运动维度上随机性,使得待测试车辆遇到的交通场景更加丰富。
[0149]
在一些实施例中,范围设置信息包括预设纵向距离,本技术实施例提供的模拟驾驶测试方法,还包括:
[0150]
基于待测试车辆在当前道路上的位置和预设纵向距离,确定交通参与对象的预测纵向位置;在预测纵向位置不符合生成条件的情况下,将交通参与对象生成事件进行缓存,直至基于待测试车辆行驶后的位置确定相应的预测纵向位置符合生成条件时,再基于预测纵向位置生成交通参与对象。
[0151]
其中,计算机设备在确定当前时刻为目标时刻的情况下,将待测试车辆在当前道路上的位置向行驶方向延伸预设纵向距离处的位置,作为交通参与对象的预测纵向位置,判断该预测纵向位置是否符合生成条件,若预测纵向位置符合生成条件,则生成交通参与对象,若预测纵向位置不符合生成条件,将交通参与对象生成事件进行缓存,随着待测试车辆不断向前行驶,在每个仿真时刻,计算机设备均基于待测试车辆当前的位置和预设纵向距离,确定相应的预测纵向位置,并判断这时的预测纵向位置是否符合生成条件,若符合,则生成交通参与对象,并从当前时刻为准,计算下一生成时刻;若这时的预测纵向位置还不符合生成条件,则随着待测试车辆不断向前行驶,继续确定相应的预测纵向位置。
[0152]
在一些实施例中,在预测纵向位置处于模拟驾驶场景的地图之外,或者预测纵向位置在模拟驾驶场景中的数量大于一个的情况下,确定预测纵向位置不符合生成条件。在预测纵向位置处于模拟驾驶场景的地图之内,且在模拟驾驶场景中的数量唯一的情况下,确定预测纵向位置符合生成条件。示例性的,参见图7所示,在当前时刻待测试车辆行驶至图7所示位置的情况下,按照预设纵向距离x,计算得到交通参与对象的预测纵向位置在a点和b点,即,预测纵向位置不是唯一的。参见图8所示,在当前时刻待测试车辆行驶至图8所示位置的情况下,按照预设纵向距离,计算得到的交通参与对象的预测纵向位置在c点,即,预测纵向位置位于模拟驾驶的地图之外。图7和图8示意的预测纵向位置均不符合生成条件。
[0153]
示例性的,假设在仿真时刻t1,待测试车辆行驶至位置a1处,从a1向待测试车辆的行驶方向延伸预设纵向距离,得到的预测纵向位置为b1和c1,由于预测纵向位置的数量不是唯一的,则确定此时的预测纵向位置不符合生成条件,则将交通参与对象生成事件进行缓存,在t1之后的仿真时刻t2,待测试车辆行驶至位置a2处,从a2向待测试车辆的行驶方向延伸预设纵向距离,得到的预测纵向位置为b2和c2,由于预测纵向位置的数量不是唯一的,则确定此时的预测纵向位置还是不符合生成条件,在t2之后的仿真时刻t3,待测试车辆行驶至位置a3处,从a3向待测试车辆的行驶方向延伸预设纵向距离,得到的预测纵向位置为b3,由于预测纵向位置的数量是唯一的,且在模拟驾驶的地图之内,则确定此时的预测纵向位置符合生成条件,则基于目标横向距离和b3,确定随机地点,并在随机地点处生成交通参与对象。
[0154]
上述实施例中,在基于待测试车辆在当前道路上的位置和预设纵向距离,确定交通参与对象的预测纵向位置后,若预测纵向位置处于模拟驾驶场景的地图之外,或者预测纵向位置在模拟驾驶场景中的数量大于一个,则确定预测纵向位置不符合生成条件,则将交通参与对象生成事件进行缓存,直至基于待测试车辆行驶后的位置确定相应的预测纵向位置符合生成条件时,再基于预测纵向位置生成交通参与对象。避免了预测纵向位置不符合生成条件的情况下,仍生成交通参与对象,并控制交通参与对象运动带来的处理资源浪费。
[0155]
在一些实施例中,基于碰撞情况确定模拟驾驶测试结果的步骤包括:
[0156]
在发生碰撞的情况下记录碰撞事件;基于记录的碰撞事件,确定对待测试车辆进行模拟驾驶测试而得到的模拟驾驶测试结果。
[0157]
在一些实施例中,在待测试车辆行驶过程中,基于时间设置信息会多次生成交通参与对象,对于生成的每个交通参与对象,计算机设备可判断待测试车辆是否该交通参与对象发生碰撞,若发生碰撞,则记录碰撞事件,在仿真结束后,统计碰撞事件的数量,若碰撞事件的数量超过预设阈值,则确定测试结果为未通过,需要对决策规划算法进行优化,若碰撞事件的数量小于等于预设阈值,则确定测试结果为通过。
[0158]
在一些实施例中,记录的碰撞事件中可包括发生碰撞时交通参与对象执行的动作,后续可以该动作,对决策规划算法进行优化。
[0159]
上述实施例中,在交通参与对象运动的过程中,检测待测试车辆是否与交通参与对象发生碰撞;在发生碰撞的情况下记录碰撞事件;基于记录的碰撞事件,确定对待测试车辆进行模拟驾驶测试而得到的测试结果。由于交通参与对象执行的动作具有随机性,涵盖了大部分交通场景,由此得到的测试结果更加准确。
[0160]
在一些实施例中,提供一种模拟驾驶测试方法,该方法包括如下步骤:
[0161]
获取预先设置的交通参与对象生成信息,交通参与对象生成信息包括时间设置信息、范围设置信息和行为设置信息。
[0162]
确定模拟驾驶场景中处于行驶状态的待测试车辆。
[0163]
时间设置信息包括服从预设函数分布的至少一个时间间隔,从至少一个时间间隔中确定目标时间间隔;获取针对待测试车辆前一次生成交通参与对象的前一时刻,并确定前一时刻到当前时刻之间的时长;在时长为目标时间间隔的情况下,确定当前时刻为目标时刻。
[0164]
范围设置信息包括纵向范围,获取目标横向距离,并从纵向范围中随机提取目标纵向距离;将距离待测试车辆前方目标纵向距离、且距离待测试车辆当前所处的道路外沿目标横向距离的位置,作为随机地点。
[0165]
或者,范围设置信息包括横向范围,获取目标纵向距离,并从横向范围中随机提取目标横向距离;将距离待测试车辆前方目标纵向距离、且距离待测试车辆当前所处的道路外沿目标横向距离的位置,作为随机地点。其中,横向范围由第一阈值和第二阈值确定,第一阈值小于第二阈值,其中,第一阈值为在交通参与对象与待测试车辆所处道路外沿相切的情况下,交通参与对象的中心点到道路外沿的距离,第二阈值为预先设置的数值。
[0166]
行为设置信息包括角度范围,从角度范围中随机提取目标角度;基于待测试车辆当前所处的道路相对于交通参与对象的方位,确定参考方向;基于参考方向和目标角度,确定进入角度;控制交通参与对象在随机地点处以进入角度进入当前道路,并按预设速度和预设路径进行运动,以使得交通参与对象从待测试车辆的前方经过。
[0167]
或者,行为设置信息包括速度范围,从速度范围中随机提取目标速度;控制交通参与对象从随机地点处开始,按目标速度和预设路径进行运动,以使得交通参与对象从待测试车辆的前方经过。
[0168]
基于待测试车辆在当前道路上的位置和预设纵向距离,确定交通参与对象的预测纵向位置;在预测纵向位置处于模拟驾驶场景的地图之外,或者预测纵向位置在模拟驾驶场景中的数量大于一个的情况下,确定预测纵向位置不符合生成条件。则将交通参与对象生成事件进行缓存,直至基于待测试车辆行驶后的位置确定相应的预测纵向位置符合生成条件时,再基于预测纵向位置生成交通参与对象。
[0169]
在交通参与对象运动的过程中,检测待测试车辆是否与交通参与对象发生碰撞,在发生碰撞的情况下记录碰撞事件;基于记录的碰撞事件,确定对待测试车辆进行模拟驾驶测试而得到的模拟驾驶测试结果。
[0170]
本技术实施例提供的模拟驾驶测试方法,首先,获取预先设置的交通参与对象生成信息,该交通参与对象生成信息包括时间设置信息、范围设置信息和行为设置信息。时间设置信息可用于确定生成交通参与对象的随机时间点,范围设置信息可用于确定生成交通参与对象的随机地点,行为设置信息可用于确定交通参与对象的随机动作。在确定模拟驾驶场景中处于行驶状态的待测试车辆后,基于时间设置信息确定当前时刻为目标时刻时,按照范围设置信息在待测试车辆前方确定随机地点,在随机地点生成交通参与对象,并控制交通参与对象按照行为设置信息从随机地点处开始运动,以使得交通参与对象从待测试车辆的前方经过,在交通参与对象运动的过程中,检测待测试车辆是否与交通参与对象发
生碰撞,并基于碰撞情况确定模拟驾驶测试结果。本技术实施例提供的方法实现了生成时刻、生成地点以及执行动作三个维度的随机性,和人工定义运动行为的方式相比,待测试车辆遇到的交通场景更加丰富,模拟驾驶测试结果更加准确。
[0171]
在一种可能的场景中,交通参与对象表征行人,模拟驾驶场景包括多个车辆。测试人员可预先针对每个车辆设置行人生成信息,需要说明的是,各个车辆对应的行人生成信息可以相同,也可以不同,本技术实施例对此不作限定。参见图9所示,仿真开始运行后,准备开始随机生成行人。首先,在当前仿真时刻,遍历每个车辆,对于当前遍历至的当前车辆,判断当前仿真时刻是否为当前车辆的目标时刻,即,当前时刻是否为需要针对当前车辆生成行人的时刻,若是,则将当前车辆作为待测试车辆。若对于所有车辆来说,当前仿真时刻均不是目标时刻,则继续推进仿真时刻,并实时判断总仿真时间是否已到,若总仿真时间已到,则仿真结束运行,若总仿真时间未到,则运行其他仿真模块。
[0172]
若通过上述遍历,确定多个待测试车辆,则对多个待测试车辆依次进行下面的处理。判断是否已有下一个行人生成事件的发生时间,若没有,则基于待测试车辆对应的时间设置信息,计算下一个行人生成事件的发生时间。若已有下一个行人生成事件的发生时间,则进一步判断该待测试车辆对应的事件缓存器中是否已经存储有行人生成事件。另外,在计算得到下一个行人生成事件的发生时间的情况下,也进一步判断该待测试车辆对应的事件缓存器中是否已经存储有行人生成事件。
[0173]
若事件缓存器中已经存储有行人生成事件,则基于待测试车辆在当前道路上的位置和预设纵向距离,确定预测纵向位置,并判断预测纵向位置是否可行,若可行,则控制行人按照对应的行为设置信息执行相应动作,并基于当前时刻和时间设置信息,确定下一个行人生成事件的发生时间,返回遍历每个车辆的步骤。若预测纵向位置不可行,则判断范围设置信息中是否包含的是预设纵向距离,若范围设置信息包含的不是预设纵向距离,而是纵向范围,则基于待测试车辆在当前道路上的位置,确定最远可行位置,在最远可行位置处,控制行人按照对应的行为设置信息执行相应动作。若范围设置信息包含的是预设纵向距离,则再次判断事件缓存器中是否已经存储有行人生成事件,若这次判断结果为事件缓存器中已经存储有行人生成事件,则返回遍历每个车辆的步骤,若这次判断结果为事件缓存器中没有行人生成事件,则将此次的生成事件存在事件缓存器中,并返回遍历每个车辆的步骤。
[0174]
若事件缓存器中没有行人生成事件,则再次判断当前时刻是否为待测试车辆的目标时刻,若是,则按照对应的范围设置信息在待测试车辆前方确定随机地点,在随机地点生成行人,接着执行判断预测纵向位置是否可行的步骤。若再次判断的结果为,当前时刻不是待测试车辆的目标时刻,则返回遍历每个车辆的步骤。
[0175]
在另一种可能的场景中,可将本技术实施例提供的模拟驾驶测试方法对应的算法嵌入微观仿真软件tad sim中。微观仿真软件tad sim包括虚拟城市型仿真环境,上述算法可以在虚拟城市型仿真环境运行时执行。基于在虚拟城市型仿真环境中生成行人这一目的,可做出如下假设:1、在一次行人生成事件中,只有一个行人出现在待测试车辆前方。2、行人在虚拟城市型仿真环境中使用椭圆表示。3、为了避免行人突然出现在道路中间,行人的初始位置(随机地点)都位于道路边沿之外。4、假设行人在道路一侧边沿之外出现后,就以预设的速度和角度进入道路并行走,达到道路另一侧后从仿真环境消失,此处只考虑行
人在二维平面上的运动。5、行人生成后,如果与待测试车辆发生碰撞,则可以将碰撞事件加以记录。对于如何判断判定为碰撞,以及如何记录的方式不加限定。6、如果仿真环境中存在多个待测试车辆,则各个待测试车辆对应的行人生成事件分别单独计算。
[0176]
基于上述假设,测试人员可设置时间设置信息、范围设置信息和行为设置信息,对于仿真环境中的待测试车辆,在基于时间设置信息确定当前时刻为目标时刻时,按照范围设置信息在待测试车辆前方确定随机地点,在随机地点生成交通参与对象;控制交通参与对象按照行为设置信息执行相应动作,以对待测试车辆进行模拟驾驶测试。
[0177]
可以理解的是,上述的应用场景用于帮助对本技术的方案进行说明,并不用于限定本技术的应用场景,本技术的模拟驾驶测试方法还可以应用于虚拟高速公路型、虚拟村庄型等仿真环境中,本技术实施例对此不作限定。
[0178]
上述实施例中,实现了行人在生成时刻、生成地点以及执行动作三个维度的随机性,和人工定义运动行为的方式相比,待测试车辆遇到的交通场景更加丰富,模拟驾驶测试结果更加准确。
[0179]
应该理解的是,虽然如上的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
[0180]
基于同样的发明构思,本技术实施例还提供了一种用于实现上述所涉及的模拟驾驶测试方法的模拟驾驶测试装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个模拟驾驶测试装置实施例中的具体限定可以参见上文中对于模拟驾驶测试方法的限定,在此不再赘述。
[0181]
在一些实施例中,如图10所示,提供了一种模拟驾驶测试装置,包括:获取模块101、确定模块102、生成模块103和控制模块104,其中:
[0182]
获取模块101,用于获取预先设置的交通参与对象生成信息,交通参与对象生成信息包括时间设置信息、范围设置信息和行为设置信息。
[0183]
确定模块102,用于确定模拟驾驶场景中处于行驶状态的待测试车辆。
[0184]
生成模块103,用于在基于时间设置信息确定当前时刻为目标时刻时,按照范围设置信息在待测试车辆前方确定随机地点,在随机地点生成交通参与对象。
[0185]
控制模块104,用于控制交通参与对象按照行为设置信息从随机地点处开始运动,以使得交通参与对象从待测试车辆的前方经过;在交通参与对象运动的过程中,检测待测试车辆是否与交通参与对象发生碰撞,并基于碰撞情况确定模拟驾驶测试结果。
[0186]
在一些实施例中,确定模块102,具体用于:遍历模拟驾驶场景中的每个车辆,对于当前遍历至的当前车辆,在当前车辆处于行驶状态的情况下,将当前车辆作为待测试车辆。
[0187]
在一些实施例中,时间设置信息包括服从预设函数分布的至少一个时间间隔,生成模块103,还用于:从至少一个时间间隔中确定目标时间间隔;获取针对待测试车辆前一次生成交通参与对象的前一时刻,并确定前一时刻到当前时刻之间的时长;在时长为目标
时间间隔的情况下,确定当前时刻为目标时刻。
[0188]
在一些实施例中,范围设置信息包括纵向范围,生成模块103,具体用于获取目标横向距离,并从纵向范围中随机提取目标纵向距离;将距离待测试车辆前方目标纵向距离、且距离待测试车辆当前所处的道路外沿目标横向距离的位置,作为随机地点。
[0189]
在一些实施例中,范围设置信息包括横向范围,生成模块103,具体用于:获取目标纵向距离,并从横向范围中随机提取目标横向距离;将距离待测试车辆前方目标纵向距离、且距离待测试车辆当前所处的道路外沿目标横向距离的位置,作为随机地点。
[0190]
在一些实施例中,横向范围由第一阈值和第二阈值确定,第一阈值小于第二阈值,其中,第一阈值为在交通参与对象与待测试车辆所处道路外沿相切的情况下,交通参与对象的中心点到道路外沿的距离,第二阈值为预先设置的数值。
[0191]
在一些实施例中,行为设置信息包括角度范围,控制模块104,具体用于:从角度范围中随机提取目标角度;基于待测试车辆当前所处的道路相对于交通参与对象的方位,确定参考方向;基于参考方向和目标角度,确定进入角度;控制交通参与对象在随机地点处以进入角度进入当前道路,并按预设速度和预设路径进行运动。
[0192]
在一些实施例中,行为设置信息包括速度范围,控制模块104,具体用于:从速度范围中随机提取目标速度;控制交通参与对象从随机地点处开始,按目标速度和预设路径进行运动。
[0193]
在一些实施例中,范围设置信息包括预设纵向距离,控制模块104还用于:基于待测试车辆在当前道路上的位置和预设纵向距离,确定交通参与对象的预测纵向位置;在预测纵向位置不符合生成条件的情况下,将交通参与对象生成事件进行缓存,直至基于待测试车辆行驶后的位置确定相应的预测纵向位置符合生成条件时,再基于预测纵向位置生成交通参与对象。
[0194]
在一些实施例中,控制模块104还用于:在预测纵向位置处于模拟驾驶场景的地图之外,或者预测纵向位置在模拟驾驶场景中的数量大于一个的情况下,确定预测纵向位置不符合生成条件。
[0195]
在一些实施例中,控制模块104具体用于:在发生碰撞的情况下记录碰撞事件;基于记录的碰撞事件,确定对待测试车辆进行模拟驾驶测试而得到的模拟驾驶测试结果。
[0196]
上述模拟驾驶测试装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
[0197]
在一些实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图11所示。该计算机设备包括处理器、存储器、输入/输出接口、通信接口、显示单元和输入装置。其中,处理器、存储器和输入/输出接口通过系统总线连接,通信接口、显示单元和输入装置通过输入/输出接口连接到系统总线。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的输入/输出接口用于处理器与外部设备之间交换信息。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过wifi、移动蜂窝网络、nfc(近场通信)或其他技术实现。该计算机程序被处理器
执行时以实现一种模拟驾驶测试方法。该计算机设备的显示单元用于形成视觉可见的画面,可以是显示屏、投影装置或虚拟现实成像装置,显示屏可以是液晶显示屏或电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
[0198]
本领域技术人员可以理解,图11中示出的结构,仅仅是与本技术方案相关的部分结构的框图,并不构成对本技术方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
[0199]
在一些实施例中,还提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。
[0200]
在一些实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
[0201]
在一些实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
[0202]
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本技术所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(read-only memory,rom)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(reram)、磁变存储器(magnetoresistive random access memory,mram)、铁电存储器(ferroelectric random access memory,fram)、相变存储器(phase change memory,pcm)、石墨烯存储器等。易失性存储器可包括随机存取存储器(random access memory,ram)或外部高速缓冲存储器等。作为说明而非局限,ram可以是多种形式,比如静态随机存取存储器(static random access memory,sram)或动态随机存取存储器(dynamic random access memory,dram)等。本技术所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本技术所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
[0203]
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
[0204]
以上实施例仅表达了本技术的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本技术专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本技术构思的前提下,还可以做出若干变形和改进,这些都属于本技术的保护范围。因此,本技术的保护范围应以所附权利要求为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1