NPC车辆的控制方法、装置、设备及仿真测试系统与流程

文档序号:33647751发布日期:2023-03-29 05:28阅读:143来源:国知局
NPC车辆的控制方法、装置、设备及仿真测试系统与流程
npc车辆的控制方法、装置、设备及仿真测试系统
技术领域
1.本技术涉及自动驾驶技术领域,具体涉及一种npc车辆的控制方法、装置、设备及仿真测试系统。


背景技术:

2.目前,许多针对自动驾驶测试的模拟器,如自动驾驶、lgsvl等,都提供有一套控制非玩家角色(non-player character,npc)车辆的算法,能让npc车辆正常行驶在道路上。这些控制算法主要包括让npc车辆沿着道路行驶、遵守交通灯指示、避让障碍物等基本控制逻辑。然而,在实际应用中,被这些控制算法所控制的npc车辆的驾驶行为通常较为单一、死板,无法提供更加真实的交通测试环境。


技术实现要素:

3.有鉴于此,本技术提供了一种npc车辆的控制方法、装置、设备及仿真测试系统,能够为npc车辆提供更加灵活的控制,使npc车辆行为更加真实。
4.为实现以上目的,本技术采用如下技术方案:
5.本技术的第一方面提供一种npc车辆的控制方法,包括:
6.获取仿真测试场景中npc车辆的状态数据,所述状态数据包括车辆行驶信息和环境信息;
7.根据所述状态数据以及车辆驾驶行为的先验概率,确定所述npc车辆待执行的目标驾驶行为;所述车辆驾驶行为的先验概率为基于真实的车辆驾驶的状态数据所确定的各种车辆驾驶行为发生概率的分布情况;
8.控制所述npc车辆执行所述目标驾驶行为,更新所述npc车辆的车辆行驶信息和环境信息。
9.可选的,所述根据所述状态数据以及车辆驾驶行为的先验概率,确定所述npc车辆待执行的目标驾驶行为,包括:
10.根据所述状态数据,从所述先验概率中获取与每种驾驶行为对应的发生概率,得到所述npc车辆的各种驾驶行为发生概率;
11.基于所述npc车辆的各种驾驶行为发生概率,确定所述npc车辆的目标驾驶行为。
12.可选的,所述基于所述npc车辆的各种驾驶行为发生概率,确定所述npc车辆的目标驾驶行为,包括:
13.基于预设筛选规则,从所述npc车辆的各种驾驶行为发生概率中筛选出符合预设发生概率要求的第一驾驶行为;
14.将所述第一驾驶行为确定为所述npc车辆的目标驾驶行为。
15.可选的,所述控制所述npc车辆执行所述目标驾驶行为,包括:
16.根据所述目标驾驶行为,获取与所述目标驾驶行为对应的移动参数,以使所述npc车辆按照与所述目标驾驶行为对应的移动参数行驶时能够执行所述目标驾驶行为。
17.可选的,所述根据所述目标驾驶行为,获取与所述目标驾驶行为对应的移动参数,包括:
18.若所述目标驾驶行为为左变道或者右变道,则根据所述状态数据,确定所述npc车辆在待变车道的第一目标位置,根据所述第一目标位置,获取与所述目标驾驶行为对应的移动参数。
19.可选的,所述根据所述目标驾驶行为,获取与所述目标驾驶行为对应的移动参数,包括:
20.若所述目标驾驶行为为变速,则根据预设变速规则,获取与所述目标驾驶行为对应的移动参数;所述预设变速规则包括:若所述变速为加速,则确定加速对应的移动参数为,加速对应的当前移动参数加上预设加速阈值;若所述变速为减速,则确定减速对应的移动参数为,减速对应的当前移动参数减去预设减速阈值。
21.可选的,所述根据所述目标驾驶行为,获取与所述目标驾驶行为对应的移动参数,包括:
22.若所述目标驾驶行为为左偏转或者右偏转,则根据预设偏转规则,获取与所述目标驾驶行为对应的移动参数;所述预设偏转规则包括:若为左偏转,则将与所述左偏转对应的移动参数向左增加第一预设角度;若为右偏转,则将与所述右偏转对应的移动参数向右增加第二预设角度。
23.可选的,所述根据所述目标驾驶行为,获取与所述目标驾驶行为对应的移动参数,包括:
24.若所述目标驾驶行为为保持向前行驶,保持所述npc车辆的当前移动参数不变。
25.可选的,所述根据所述状态数据,确定所述npc车辆在待变车道的第一目标位置,包括:
26.若根据所述环境信息确定所述npc车辆能够进行变道,则将所述npc车辆行驶方向上,待变车道中距离所述npc车辆第一路长的中心点位置,确定为所述npc车辆在待变车道的第一目标位置。
27.本技术的第二方面提供一种npc车辆的控制装置,包括:
28.获取模块,用于获取仿真测试场景中npc车辆的状态数据,所述状态数据包括车辆行驶信息和环境信息;
29.确定模块,用于根据所述状态数据以及车辆驾驶行为的先验概率,确定所述npc车辆待执行的目标驾驶行为;所述车辆驾驶行为的先验概率为基于真实的车辆驾驶的状态数据所确定的各种车辆驾驶行为发生概率的分布情况;
30.执行模块,用于控制所述npc车辆执行所述目标驾驶行为,更新所述npc车辆的车辆行驶信息和环境信息。
31.本技术的第三方面提供一种npc车辆的控制设备,包括:
32.处理器,以及与所述处理器相连接的存储器;
33.所述存储器用于存储计算机程序;
34.所述处理器用于调用并执行所述存储器中的所述计算机程序,以执行如本技术的第一方面所述的方法。
35.本技术的第四方面提供一种仿真测试系统,包括自动驾驶仿真测试平台、自动驾
驶模拟器、自动驾驶系统以及如本技术的第三方面所述的npc车辆的控制设备。
36.本技术提供的技术方案可以包括以下有益效果:
37.本技术的方案中,首先获取了仿真测试场景中npc车辆的状态数据,其中,状态数据可以包括车辆行驶信息和环境信息。进而根据npc车辆的状态数据以及车辆驾驶行为的先验概率,确定出npc车辆待执行的目标驾驶行为,其中,车辆驾驶行为的先验概率是基于真实的车辆驾驶的状态数据所确定的各种车辆驾驶行为发生概率的分布情况,最后控制npc车辆执行目标驾驶行为,更新npc车辆的车辆行驶信息和环境信息。如此,在npc车辆行驶过程中引入了目标驾驶行为,打破了npc车辆较为死板、单一的驾驶行为,并且,采用了基于真实交通数据的统计学概率来进行目标驾驶行为的决策,使得被控npc车辆的驾驶行为更接近真实情况,有效提升了npc车辆行驶的灵活性和智能性,为自动驾驶测试提供了更加真实的仿真测试环境。
附图说明
38.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
39.图1是本技术一个实施例提供的一种npc车辆的控制方法的流程示意图。
40.图2是本技术一个实施例提供的一种npc车辆的控制装置的结构示意图。
41.图3是本技术一个实施例提供的一种npc车辆的控制设备的结构示意图。
42.图4是本技术一个实施例提供的一种仿真测试系统的结构示意图。
具体实施方式
43.为使本技术的目的、技术方案和优点更加清楚,下面将对本技术的技术方案进行详细的描述。显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所得到的所有其它实施方式,都属于本技术所保护的范围。
44.目前,许多针对自动驾驶测试的模拟器,如自动驾驶、lgsvl等,都提供一套控制npc车辆的算法,能让npc车辆正常行驶在道路上。这些控制算法主要包括让车辆沿着道路行驶、遵守交通灯指示、避让障碍物等基本控制逻辑,然而这种控制逻辑通常应用在固定模式下,使得npc车辆只能按照设定好的固定行驶路线行驶,无法为仿真测试提供更加真实的环境。
45.为此,本技术的实施例提供一种npc车辆的控制方法,如图1所示,该方法至少包括如下步骤:
46.s101、获取仿真测试场景中npc车辆的状态数据;状态数据包括车辆行驶信息和环境信息。
47.在仿真测试场景中,可以实时获取npc车辆的状态数据,为npc车辆在当前环境中的行驶行为提供理论依据。其中,车辆行驶信息至少包括:速度信息、位置信息和朝向信息等;环境信息可以包括:建筑物信息、障碍物信息和道路信息等。
48.速度信息可以是指当前npc车辆的车速、油门量、刹车量、档位和手刹状态;位置信息则可以是指在预先构建的全局坐标系中,当前npc车辆的坐标位置;朝向信息可以是指当前npc车辆的行驶方向。其中,全局坐标系是用于表征仿真测试场景下全局位置信息的坐标系,其可以是二维坐标系,也可以是三维坐标系。
49.本技术的实施例中,全局坐标系可以是仿真测试场景下用于表征全局位置信息的三维坐标系,相应的,位置信息则为当前npc车辆的三维坐标信息;朝向信息为表征当前npc车辆在全局坐标系下的行驶方向的三维坐标信息。
50.障碍物信息可以包括周围车辆信息和其他障碍物信息,其中,周围车辆信息是指当前npc车辆周围第一预设阈值范围内存在的车辆的位置信息和相对速度信息;其他障碍物信息则是指当前npc车辆周围第二预设阈值范围内存在的其他障碍物的位置信息和相对速度信息。其他障碍物为除车辆以外的其他或静态或动态的障碍物,如雪糕筒、自行车等。
51.实施时,第一预设阈值和第二预设阈值可以根据实际需求进行设置,此处不作限定。例如,第一预设阈值和第二预设阈值均可以为5米,如此,周围障碍物信息就可以是在当前npc车辆周围5米范围内的车辆的位置信息和相对速度信息以及其他障碍物的位置信息和相对速度信息。
52.道路信息可以是指限速信息和交通灯信息。其中,限速信息是指当前npc车辆所处道路的限速信息;同样的,交通灯信息是指当前npc车辆所处道路的交通灯信息,包括红灯、绿灯、黄灯和无(表示当前路段没有交通灯)。
53.通过确定自动驾驶仿真测试场景中npc车辆的状态数据,可以确定当前npc车辆的行驶状态,为车辆更加真实地行驶提供数据支撑。
54.s102、根据状态数据以及车辆驾驶行为的先验概率,确定npc车辆待执行的目标驾驶行为;车辆驾驶行为的先验概率为基于真实的车辆驾驶的状态数据确定的各种车辆驾驶行为发生概率的分布情况。
55.在确定了仿真测试场景中npc车辆的状态数据后,可以根据状态数据以及车辆驾驶行为的先验概率,检测是否需要改变npc车辆的第二驾驶行为;若需要改变npc车辆的第二驾驶行为,则确定npc车辆的目标驾驶行为。
56.其中,目标驾驶行为为基于状态数据以及车辆驾驶行为的先验概率的基础上,确定出的npc车辆待执行的驾驶行为。
57.需要说明的是,在现有的对npc车辆的控制过程中,控制是以时间步为单位进行的,在每一个时间步中,对npc车辆的状态数据进行分析,然后确认npc车辆的下一步移动动作,进而明确其前进方向、加速度等参数,随后执行这一动作。多个时间步的动作连续起来,就形成了npc车辆的驾驶行为。在现有的对npc车辆的控制过程中,npc车辆存在第二驾驶行为,能实现npc车辆按照道路行驶、遇到障碍物绕行、根据交通灯行驶等基础且统一的驾驶行为。然而这种统一的第二驾驶行为的设定,死板且单一,无法为自动驾驶仿真测试提供更加真实的测试环境。
58.其中,与状态数据对应的第二驾驶行为可以包括左变道、右变道、变速、左偏转、右偏转和保持向前行驶中的任一种。
59.先验概率表示为一个条件概率:p(action|status)。即在一辆车处于某种状态(status)下的时候,下一步采取某一驾驶行为(action)的可能性有多高。
60.为了确保能够提供更加真实的测试环境,先验概率可以是基于真实的车辆驾驶的状态数据确定的各种车辆驾驶行为的发生概率的分布情况。实施时,可以基于在真实交通场景中采集到的驾驶数据,也即把一辆车的车辆的状态和驾驶员对车辆的控制都记录下来,采用统计的方式,计算得到先验概率。
61.当然,本技术并不仅限于此,一些其他的实施例中,先验概率也可以是测试人员根据实际需求以及自身经验手动设定的概率。
62.例如,假设先验概率f(action,status)=a*action+b*status+c表示在status下执行action的概率。在基于真实交通场景中采集到的驾驶数据对先验概率进行统计之前,a、b、c均为未知参数,经过真实的交通场景数据进行计算或者人工经验进行配置,可以确定出a、b、c的值,从而得到status下action的概率公式。比如,经过了基于真实交通场景中采集到的驾驶数据的计算,得到了a=1,b=2,c=3。那么这个计算过程就是真实的驾驶数据在发挥作用,如此可以把这个概率函数给确定下来。在确定了先验概率f(action,status)的各项参数后,就可以基于npc车辆当前的状态数据(status),确定出当前执行各个action的概率,从而基于各个action的概率,筛选出需要执行的驾驶行为,将该驾驶行为确定为目标驾驶行为。
63.由于先验概率是根据大量的真实的交通驾驶数据分析得到的车辆在某种状态下执行各种车辆驾驶行为的统计概率的分布,因此,基于各种车辆驾驶行为的统计概率的分布,从中选择出符合预设概率发生要求的驾驶行为,将其确定为目标驾驶行为,如此得到的npc车辆的目标驾驶行为更加接近于现实世界的交通驾驶行为,从而使得npc车辆最终执行的驾驶行为不再单一,使得自动驾驶仿真测试环境更加真实。
64.s103、控制npc车辆执行目标驾驶行为,更新npc车辆的车辆行驶信息和环境信息。
65.在确定了npc车辆待执行的目标驾驶行为之后,可以将该目标驾驶行为替换npc车辆原本待执行的第二驾驶行为,从而使得npc车辆可以在下一时间步执行该目标驾驶行为。
66.其中,在将该目标驾驶行为替换npc车辆待执行的第二驾驶行为时,可以基于该目标驾驶行为,更新与第二驾驶行为对应的移动参数,从而为npc车辆执行该目标驾驶行为提供执行数据。
67.本实施例中,首先获取了仿真测试场景中npc车辆的状态数据,其中,状态数据可以包括车辆行驶信息和环境信息。进而根据npc车辆的状态数据以及车辆驾驶行为的先验概率,确定出npc车辆待执行的目标驾驶行为,其中,车辆驾驶行为的先验概率是基于真实的车辆驾驶的状态数据所确定的各种车辆驾驶行为发生概率的分布情况,最后控制npc车辆执行目标驾驶行为,更新npc车辆的车辆行驶信息和环境信息。如此,在npc车辆行驶过程中引入了目标驾驶行为,打破了npc车辆较为死板、单一的驾驶行为,并且,采用了基于真实交通数据的统计学概率来进行目标驾驶行为的决策,使得被控npc车辆的驾驶行为更接近真实情况,有效提升了npc车辆行驶的灵活性和智能性,为自动驾驶测试提供了更加真实的仿真测试环境。
68.一些实施例中,在获取仿真测试场景中npc车辆的状态数据之后,在控制npc车辆执行目标驾驶行为之前,npc车辆的控制方法还可以包括:根据状态数据,计算得到与第二驾驶行为对应的移动参数。
69.在根据状态数据,计算得到与第二驾驶行为对应的移动参数时,可以按照第二驾
驶行为确定出下一步的目标位置,进而基于状态数据和下一步的目标位置,计算得到与第二驾驶行为对应的移动参数。
70.具体的,在计算得到与第二驾驶行为对应的移动参数时,首先确定出下一步的目标位置,再根据下一步的目标位置和npc车辆当前位置的相对距离和方向,调用一个横向比例积分微分(proportional-integral-derivative control,pid)控制器和一个纵向pid控制器进行移动参数的计算。
71.以移动参数包括方向、油门量和刹车量为例,横向pid控制器会使用pid算法计算出要最快抵达目标位置所需要的转向角度,这个角度会被用以确定npc车辆的方向(steer)参数。纵向pid控制器会使用pid算法计算出要最快抵达目标位置所需要的加速度。如果计算得到的加速度》0,则会将其转化为npc车辆的油门量(throttle),以使npc车辆踩油门加速。如果计算得到的加速度《0,则会将其转化为npc车辆的刹车量(brake),以使npc车辆踩刹车减速。
72.通过上述方式,可以计算得到与第二驾驶行为对应的移动参数。相应的,也可以得到与目标驾驶行为对应的移动参数。
73.本实施例中,为了使得npc车辆的驾驶行为能够更加贴近于真实车辆的驾驶行为,在根据与第二驾驶行为对应的移动参数执行相应的第二驾驶行为之前,添加了根据状态数据以及车辆驾驶行为的先验概率,确定npc车辆待执行的目标驾驶行为的步骤,如此,在控制npc车辆执行目标驾驶行为时,可以根据目标驾驶行为,确定与目标驾驶行为对应的下一步的目标位置,将与目标驾驶行为对应的下一步的目标位置替换第二驾驶行为(原驾驶行为)对应的下一步的目标位置,也即将目标驾驶行为对应的移动参数更新为第二驾驶行为对应的移动参数,以使npc车辆按照与目标驾驶行为对应的移动参数行驶时能够执行目标驾驶行为。
74.实际应用中,移动参数除了包括方向、油门量和刹车量以外,还可以包括手刹状态(手刹被使用和手刹未被使用)和倒车状态(车辆在倒车档和车辆在前进档)等,具体的可以根据实际需求继续设置,此处不做限定。
75.一些实施例中,在根据状态数据以及车辆驾驶行为的先验概率,确定npc车辆的目标驾驶行为时,可以根据状态数据,从先验概率中获取与每种驾驶行为对应的发生概率,得到npc车辆的各种驾驶行为发生概率;进而基于npc车辆的各种驾驶行为发生概率,确定npc车辆的目标驾驶行为。如此,基于各种驾驶行为发生概率来选择目标驾驶行为,确保了目标驾驶行为的可行性和真实性。
76.为了进一步提高目标驾驶行为的真实性,一些实施例中,基于npc车辆的各种驾驶行为发生概率,确定npc车辆的目标驾驶行为,具体可以包括:基于预设筛选规则,从npc车辆的各种驾驶行为发生概率中筛选出符合预设发生概率要求的第一驾驶行为;将第一驾驶行为确定为npc车辆的目标驾驶行为。
77.其中,预设筛选规则可以根据实际需求进行设置,此处不作限定。例如,预设筛选规则可以是将驾驶行为发生概率值最高的确定为目标驾驶行为发生概率值。则在根据npc车辆的各种驾驶行为发生概率,确定npc车辆的目标驾驶行为时,可以从npc车辆的各种驾驶行为发生概率中,选择概率值最高的驾驶行为,将其确定为npc车辆的目标驾驶行为。也即,基于先验概率,将真实场景中同一状态数据下发生次数最多的驾驶行为确定为目标驾
驶行为。如此,利用目标驾驶行为对第二驾驶行为进行修正,能够使npc车辆的驾驶行为更加接近于真实车辆的驾驶行为,为自动驾驶提供了更加真实的仿真测试场景。
78.以驾驶行为包括左变道(lc_l)、右变道(lc_r)、刹车(stop)、左偏转(t_l)、右偏转(t_r)和保持向前行驶(keep)为例,当前npc车辆的状态为s,可以计算得到该npc车辆如下驾驶行为发生概率:左变道发生概率p(lc_l|s)、右变道发生概率p(lc_r|s)、刹车发生概率p(stop|s)、左偏转发生概率p(t_l|s)和右偏转发生概率p(t_r|s),将如上驾驶行为发生概率进行大小比较,选出概率值最大的驾驶行为发生概率对应的驾驶行为作为目标驾驶行为。上述计算过程中,驾驶行为发生概率是npc车辆处于状态s的情况下,采取某个驾驶行为的概率分别有多高。
79.又比如,预设筛选规则也可以是将发生将驾驶行为发生概率值第二高的值的确定为目标驾驶行为发生概率值,等等。
80.一些实施例中,上述根据目标驾驶行为,获取与目标驾驶行为对应的移动参数,具体可以包括:若目标驾驶行为为左变道或者右变道,则根据状态数据,确定npc车辆在待变车道的第一目标位置,根据第一目标位置,获取与目标驾驶行为对应的移动参数。
81.上述根据状态数据,确定npc车辆在待变车道的第一目标位置,具体可以包括:若根据环境信息确定npc车辆能够进行变道,则将npc车辆行驶方向上,待变车道中距离npc车辆第一路长的中心点位置,确定为npc车辆在待变车道的第一目标位置。
82.其中,第一路长可以根据实际需求进行设置,此处不作限定。
83.实施时,以第一路长为6米为例,若目标驾驶行为为左变道,则可以根据状态数据判断npc车辆是否能执行该左变道;若可以执行该左变道,则可以将该目标驾驶行为的目标位置确定为左车道前方距离npc车辆6米处的道路的中心点,进而根据该确定的目标位置和状态数据,计算得到对应的移动参数。若目标驾驶行为为右变道,则同样采用上述方式重新计算得到对应的移动参数。
84.一些实施例中,上述根据目标驾驶行为,获取与目标驾驶行为对应的移动参数,具体可以包括:若目标驾驶行为为变速,则根据预设变速规则,获取与目标驾驶行为对应的移动参数。
85.其中,预设变速规则可以包括:若变速为加速,则确定加速对应的移动参数为,加速对应的当前移动参数加上预设加速阈值;若变速为减速,则确定减速对应的移动参数为,减速对应的当前移动参数减去预设减速阈值。
86.实施时,预设变速规则也可以根据实际需求进行设置。预设加速阈值以及预设减速阈值均可以根据实际需求进行设置,此处不作限定。
87.具体实施时,上述变速可以包括加速和减速,减速包括刹车。若目标驾驶行为为刹车,则可以确定刹车对应的移动参数,并将刹车对应的移动参数作为与目标驾驶行为对应的移动参数。相应的,若目标驾驶行为为加速,则可以在当前油门量的基础上对油门量增加预设加速阈值,从而得到加速对应的移动参数。
88.一些实施例中,上述根据目标驾驶行为,获取与目标驾驶行为对应的移动参数,具体可以包括:若目标驾驶行为为左偏转或者右偏转,则根据预设偏转规则,获取与目标驾驶行为对应的移动参数;预设偏转规则可以包括:若为左偏转,则将与左偏转对应的移动参数向左增加第一预设角度;若为右偏转,则将与右偏转对应的移动参数向右增加第二预设角
度。
89.实施时,若目标驾驶行为为向左偏转,则可以将移动参数中的方向参数向左增加第一预设角度,并将增加后的方向参数更新至移动参数中。若目标驾驶行为为向右偏转,则可以将移动参数中的方向参数向右增加第二预设角度,并将增加后的方向参数更新至移动参数中。其中,第一预设角度和第二预设角度均可以根据测试需求进行设置,此处不作限定。
90.一些实施例中,上述根据目标驾驶行为,获取与目标驾驶行为对应的移动参数,具体可以包括:若目标驾驶行为为保持向前行驶,保持npc车辆的当前移动参数不变。
91.如此,在每个时间步中均可以进行一次目标驾驶行为的决策,由于这一决策采用了由真实交通数据统计得到的先验概率,所以确定的目标驾驶行为更加符合真实驾驶场景下车辆做出的驾驶行为,为自动驾驶提供了更加真实的仿真测试场景。
92.本技术的实施例还提供一种npc车辆的控制装置,如图2所示,npc车辆的控制装置至少可以包括:获取模块201,用于获取仿真测试场景中npc车辆的状态数据,状态数据包括车辆行驶信息和环境信息;确定模块202,用于根据状态数据以及车辆驾驶行为的先验概率,确定npc车辆待执行的目标驾驶行为;车辆驾驶行为的先验概率为基于真实的车辆驾驶的状态数据所确定的各种车辆驾驶行为发生概率的分布情况;执行模块203,用于控制npc车辆执行目标驾驶行为,更新npc车辆的车辆行驶信息和环境信息。
93.可选的,确定模块202,可以用于:根据状态数据,从先验概率中获取与每种驾驶行为对应的发生概率,得到npc车辆的各种驾驶行为发生概率;基于npc车辆的各种驾驶行为发生概率,确定npc车辆的目标驾驶行为。
94.可选的,在基于npc车辆的各种驾驶行为发生概率,确定npc车辆的目标驾驶行为时,确定模块202,具体可以用于:基于预设筛选规则,从npc车辆的各种驾驶行为发生概率中筛选出符合预设发生概率要求的第一驾驶行为;将第一驾驶行为确定为npc车辆的目标驾驶行为。
95.可选的,在控制npc车辆执行目标驾驶行为时,执行模块203,具体可以用于:根据目标驾驶行为,获取与目标驾驶行为对应的移动参数,以使npc车辆按照与目标驾驶行为对应的移动参数行驶时能够执行目标驾驶行为。
96.可选的,在根据目标驾驶行为,获取与目标驾驶行为对应的移动参数时,执行模块203,具体可以用于:若目标驾驶行为为左变道或者右变道,则根据状态数据,确定npc车辆在待变车道的第一目标位置,根据第一目标位置,获取与目标驾驶行为对应的移动参数。
97.可选的,根据目标驾驶行为,获取与目标驾驶行为对应的移动参数,可选的,在根据目标驾驶行为,获取与目标驾驶行为对应的移动参数时,执行模块203,具体可以用于:若目标驾驶行为为变速,则根据预设变速规则,获取与目标驾驶行为对应的移动参数;预设变速规则包括:若变速为加速,则确定加速对应的移动参数为,加速对应的当前移动参数加上预设加速阈值;若变速为减速,则确定减速对应的移动参数为,减速对应的当前移动参数减去预设减速阈值。
98.可选的,根据目标驾驶行为,获取与目标驾驶行为对应的移动参数,可选的,在根据目标驾驶行为,获取与目标驾驶行为对应的移动参数时,执行模块203,具体可以用于:若目标驾驶行为为左偏转或者右偏转,则根据预设偏转规则,获取与目标驾驶行为对应的移
动参数;预设偏转规则包括:若为左偏转,则将与左偏转对应的移动参数向左增加第一预设角度;若为右偏转,则将与右偏转对应的移动参数向右增加第二预设角度。
99.可选的,根据目标驾驶行为,获取与目标驾驶行为对应的移动参数,可选的,在根据目标驾驶行为,获取与目标驾驶行为对应的移动参数时,执行模块203,具体可以用于:若目标驾驶行为为保持向前行驶,保持npc车辆的当前移动参数不变。
100.可选的,在根据状态数据,确定npc车辆在待变车道的第一目标位置时,可选的,在根据目标驾驶行为,获取与目标驾驶行为对应的移动参数时,执行模块203,具体可以用于:若根据环境信息确定npc车辆能够进行变道,则将npc车辆行驶方向上,待变车道中距离npc车辆第一路长的中心点位置,确定为npc车辆在待变车道的第一目标位置。
101.应当理解,本技术的实施例提供的npc车辆的控制装置的具体实现方式可以参考以上任意实施例所述的npc车辆的控制方法的具体实施方式,此处不再赘述。
102.本技术的实施例提供一种npc车辆的控制设备,如图3所示,npc车辆的控制设备可以包括:存储器301和处理器302;其中,存储器301与处理器302连接,用于存储程序;处理器302,用于通过运行存储器301中存储的程序,实现上述任一实施例公开的npc车辆的控制方法。
103.具体的,上述npc车辆的控制设备还可以包括:总线、通信接口303、输入设备304和输出设备305。
104.处理器302、存储器301、通信接口303、输入设备304和输出设备305通过总线相互连接。其中:
105.总线可包括一通路,在计算机系统各个部件之间传送信息。
106.处理器302可以是通用处理器,例如通用中央处理器(cpu)、微处理器等,也可以是特定应用集成电路(application-specific integrated circuit,asic),或一个或多个用于控制本发明方案程序执行的集成电路。还可以是数字信号处理器(dsp)、专用集成电路(asic)、现成可编程门阵列(fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
107.处理器302可包括主处理器,还可包括基带芯片、调制解调器等。
108.存储器301中保存有执行本发明技术方案的程序,还可以保存有操作系统和其他关键业务。具体地,程序可以包括程序代码,程序代码包括计算机操作指令。更具体的,存储器301可以包括只读存储器(read-only memory,rom)、可存储静态信息和指令的其他类型的静态存储设备、随机存取存储器(random access memory,ram)、可存储信息和指令的其他类型的动态存储设备、磁盘存储器、flash等等。
109.输入设备304可包括接收用户输入的数据和信息的装置,例如键盘、鼠标、摄像头、扫描仪、光笔、语音输入装置、触摸屏、计步器或重力感应器等。
110.输出设备305可包括允许输出信息给用户的装置,例如显示屏、扬声器等。
111.通信接口303可包括使用任何收发器一类的装置,以便与其他设备或通信网络通信,如以太网,无线接入网(ran),无线局域网(wlan)等。
112.处理器302执行存储器301中所存放的程序,可用于实现本技术实施例所提供的npc车辆的控制方法的各个步骤。
113.本技术的实施例还提供一种仿真测试系统,能够实现对自动驾驶的仿真测试。该
仿真测试系统可以包括自动驾驶仿真测试平台、自动驾驶模拟器、自动驾驶系统和如以上任一实施例所述的npc车辆的控制设备。
114.实际应用中,npc车辆的控制设备可以是自动驾驶控制模块。在仿真测试时,自动驾驶系统负责控制ego车辆(ego车辆在自动驾驶领域内,一般指自车,表示用于测试自动驾驶算法的车辆),自动驾驶模拟模块基于如上所述的npc车辆的控制方法控制npc车辆,这些车辆共同在道路上行驶,进行仿真测试。
115.如图4所示,自动驾驶仿真测试系统可以包括自动驾驶仿真测试平台401、自动驾驶控制模块402、自动驾驶系统403和自动驾驶模拟器404,其中,箭头表示控制信息的流向。自动驾驶仿真测试平台401根据测试需求调用自动驾驶系统403和自动驾驶控制模块4402,令其启动就绪。自动驾驶模拟器404会根据地图配置渲染仿真环境,其中包含了具体的道路、建筑、交通信号灯等要素。自动驾驶模拟器404也会将所需要的车辆模型在道路上的指定位置生成出来。随后自动驾驶系统4403接管其中的ego车辆,使其基于自动驾驶算法在道路上行驶,与此同时,自动驾驶控制模块402对npc车辆进行控制,同样使其在道路上行驶。其中,自动驾驶仿真测试平台可以通过python api或者c++api的方式调用自动驾驶控制模块402,控制其开始、停止和具体的参数信息。
116.实施时,自动驾驶仿真测试平台401与自动驾驶控制模块402在同一台服务器侧,自动驾驶仿真测试平台401可以调用自动驾驶控制模块402,自动驾驶控制模块402通过websocket协议与自动驾驶模拟器404进行通信。自动驾驶模拟器404和自动驾驶系统403可以部署在另外两台高图形运算性能的服务器上。
117.本技术另一实施例还提供了一种存储介质,该存储介质上存储有计算机程序,该计算机程序被处理器执行时,实现上述任一实施例提供的npc车辆的控制方法的各个步骤。
118.对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本技术并不受所描述的动作顺序的限制,因为依据本技术,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本技术所必须的。
119.需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
120.本技术各实施例方法中的步骤可以根据实际需要进行顺序调整、合并和删减。
121.本技术各实施例中装置及终端中的模块和子模块可以根据实际需要进行合并、划分和删减。
122.本技术所提供的几个实施例中,应该理解到,所揭露的终端,装置和方法,可以通过其它的方式实现。例如,以上所描述的终端实施例仅仅是示意性的,例如,模块或子模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个子模块或模块可以结合或者可以集成到另一个模块,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
123.作为分离部件说明的模块或子模块可以是或者也可以不是物理上分开的,作为模
块或子模块的部件可以是或者也可以不是物理模块或子模块,即可以位于一个地方,或者也可以分布到多个网络模块或子模块上。可以根据实际的需要选择其中的部分或者全部模块或子模块来实现本实施例方案的目的。
124.另外,在本技术各个实施例中的各功能模块或子模块可以集成在一个处理模块中,也可以是各个模块或子模块单独物理存在,也可以两个或两个以上模块或子模块集成在一个模块中。上述集成的模块或子模块既可以采用硬件的形式实现,也可以采用软件功能模块或子模块的形式实现。
125.专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术的范围。
126.结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件单元,或者二者的结合来实施。软件单元可以置于随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd-rom、或技术领域内所公知的任意其它形式的存储介质中。
127.最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
128.对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本技术。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本技术的精神或范围的情况下,在其它实施例中实现。因此,本技术将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1