用于控制自动驾驶车辆的方法、装置、介质及车辆与流程

文档序号:29205982发布日期:2022-03-12 00:47阅读:104来源:国知局
用于控制自动驾驶车辆的方法、装置、介质及车辆与流程

1.本公开涉及自动驾驶技术领域,特别涉及一种用于控制多个自动驾驶车辆的方法、用于控制第二自动驾驶车辆的方法、用于控制多个自动驾驶车辆的装置、用于控制第二自动驾驶车辆的装置、自动驾驶车辆及计算机可读存储介质。


背景技术:

2.随着自动驾驶车辆技术(例如,无人驾驶)的日益完善,自动驾驶车辆受到人们的广泛关注。自动驾驶车辆能够减少因为人为错误而导致的问题,也能够减轻车辆驾驶者的工作强度。因此,检测自动驾驶车辆是否出现异常,以及出现异常时的相应的安全策略处置方式具有十分重要的意义。
3.为了保证无人驾驶车辆的安全行驶,需要实时监控车辆的状态,并在车辆出现异常时及时采取应急措施,以保证乘客人身和财产的安全,降低损失。此外,当多个自动驾驶车辆中的某一辆自动驾驶车辆出现异常时,往往无法获悉其它自动驾驶车辆是否产生相同的问题,并且无法及时召回全部处于异常的自动驾驶车辆。


技术实现要素:

4.根据本公开的一方面,提供了一种用于控制多个自动驾驶车辆的方法,包括:接收来自所述多个自动驾驶车辆中的第一自动驾驶车辆的自动驾驶系统数据;根据所述自动驾驶系统数据,确定所述第一自动驾驶车辆是否处于操作异常状态;响应于确定所述第一自动驾驶车辆处于操作异常状态,将所述自动驾驶系统数据发送至所述多个自动驾驶车辆中除所述第一自动驾驶车辆以外的各第二自动驾驶车辆;接收来自所述第二自动驾驶车辆的相应验证结果,所述相应验证结果表明所述第二自动驾驶车辆中的相应自动驾驶车辆是否处于所述操作异常状态,其中,所述相应验证结果通过所述第二自动驾驶车辆的自动驾驶系统对所述自动驾驶系统数据进行验证而得到;以及响应于所述相应验证结果表明所述第二自动驾驶车辆中的至少一个自动驾驶车辆处于所述操作异常状态,向所述多个自动驾驶车辆发出召回所述多个自动驾驶车辆的召回命令。
5.根据本公开的另一方面,提供了一种用于控制第二自动驾驶车辆的方法,包括:接收来自服务器的自动驾驶系统数据,所述自动驾驶系统数据表明除所述第二自动驾驶车辆之外的第一自动驾驶车辆处于操作异常状态;基于所述自动驾驶系统数据,验证所述第二自动驾驶车辆是否处于所述操作异常状态;以及响应于所述第二自动驾驶车辆处于所述操作异常状态的验证结果,将所述验证结果发送至所述服务器。
6.根据本公开的另一方面,提供了一种用于控制多个自动驾驶车辆的装置,包括:第一接收模块,被配置为接收来自所述多个自动驾驶车辆中的第一自动驾驶车辆的自动驾驶系统数据;确定模块,被配置为根据所述自动驾驶系统数据,确定所述第一自动驾驶车辆是否处于操作异常状态;数据发送模块,被配置为响应于确定所述第一自动驾驶车辆处于操作异常状态,将所述自动驾驶系统数据发送至所述多个自动驾驶车辆中除所述第一自动驾
驶车辆以外的各第二自动驾驶车辆;第二接收模块,被配置为接收来自所述第二自动驾驶车辆的相应验证结果,所述相应验证结果表明所述第二自动驾驶车辆中的相应自动驾驶车辆是否处于所述操作异常状态,其中,所述相应验证结果通过所述第二自动驾驶车辆的自动驾驶系统对所述自动驾驶系统数据进行验证而得到;以及召回模块,被配置为响应于所述相应验证结果表明所述第二自动驾驶车辆中的至少一个自动驾驶车辆处于所述操作异常状态,向所述多个自动驾驶车辆发出召回所述多个自动驾驶车辆的召回命令。
7.根据本公开的另一方面,提供了一种用于控制多个自动驾驶车辆的装置,包括:处理器,和存储程序的存储器,所述程序包括指令,所述指令在由所述处理器执行时使所述处理器执行上述的方法。
8.根据本公开的另一方面,提供了一种用于控制第二自动驾驶车辆的装置,包括:数据接收模块,被配置为接收来自服务器的自动驾驶系统数据,所述自动驾驶系统数据表明除所述第二自动驾驶车辆之外的第一自动驾驶车辆处于操作异常状态;验证模块,被配置为基于所述自动驾驶系统数据,验证所述第二自动驾驶车辆是否处于所述操作异常状态;以及验证结果发送模块,被配置为响应于所述第二自动驾驶车辆处于所述操作异常状态的验证结果,将所述验证结果发送至所述服务器。
9.根据本公开的另一方面,提供了一种用于控制第二自动驾驶车辆的装置,包括:处理器,和存储程序的存储器,所述程序包括指令,所述指令在由所述处理器执行时使所述处理器执行上述的方法。
10.根据本公开的另一方面,提供了一种自动驾驶车辆,包括上述的装置。
11.根据本公开的另一方面,提供了一种计算机可读存储介质,其上存储计算机程序指令,所述计算机程序指令当在至少一个处理器上执行时促使所述至少一个处理器执行上述的方法。
附图说明
12.附图示例性地示出了实施例并且构成说明书的一部分,与说明书的文字描述一起用于讲解实施例的示例性实施方式。所示出的实施例仅出于例示的目的,并不限制权利要求的范围。在所有附图中,相同的附图标记指代类似但不一定相同的要素。
13.图1是根据本公开的示例性实施例的包括多个自动驾驶车辆及与这些自动驾驶车辆通信的服务器的应用场景示意图;
14.图2是示出根据示例性实施例的用于控制多个自动驾驶车辆的方法的流程图;
15.图3是示出根据本公开实施例的用于控制多个自动驾驶车辆的装置的示意性框图;
16.图4是示出根据示例性实施例的用于控制第二自动驾驶车辆的方法的流程图;
17.图5是示出根据本公开实施例的用于控制第二自动驾驶车辆的装置的示意性框图;
18.图6示出了可以被用来实施本文所描述的模块和功能的计算设备的示例配置;
19.图7是一般地示出可以在其中实施本文描述的方法的应用场景示意图。
具体实施方式
20.在本公开中,除非另有说明,否则使用术语“第一”、“第二”等来描述各种要素不意图限定这些要素的位置关系、时序关系或重要性关系,这种术语只是用于将一个元件与另一元件区分开。在一些示例中,第一要素和第二要素可以指向该要素的同一实例,而在某些情况下,基于上下文的描述,它们也可以指代不同实例。
21.在本公开中对各种所述示例的描述中所使用的术语只是为了描述特定示例的目的,而并非旨在进行限制。除非上下文另外明确地表明,如果不特意限定要素的数量,则该要素可以是一个也可以是多个。此外,本公开中所使用的术语“和/或”涵盖所列出的项目中的任何一个以及全部可能的组合方式。
22.图1示出了包括多个自动驾驶车辆及与这些自动驾驶车辆通信的服务器的一个应用场景100的示意图。在下文中,作为非限制性示例的,考虑自动驾驶车辆是机动车辆类型,例如涉及汽车、长途汽车、卡车或商用车辆。然而本公开不限于这种类型的车辆。本公开涉及任何类型的陆地载具,这些载具可以在地面上进行位移和驾驶,并且可以停放在驻停区域中或离开驻停区域。多个自动驾驶车辆(包括第一自动驾驶车辆110、第二自动驾驶车辆111等)构成了自动驾驶车队。将理解的是,虽然图1中仅示出了一个第二自动驾驶车辆111,但是这是示例性的。在一些实施例中,自动驾驶车队可以包括更多的第二自动驾驶车辆111。服务器116可以与自动驾驶车队中的车辆进行通信以向车辆提供控制信息。
23.图2示出了根据本公开实施例的用于控制多个自动驾驶车辆的方法200的流程图。在示例中,该方法200可以由服务器116执行。
24.参考图2,在步骤210中,接收来自多个自动驾驶车辆中的第一自动驾驶车辆的自动驾驶系统数据。在步骤220中,根据自动驾驶系统数据,确定第一自动驾驶车辆是否处于操作异常状态。在步骤230中,响应于确定第一自动驾驶车辆处于操作异常状态,将自动驾驶系统数据发送至多个自动驾驶车辆中除第一自动驾驶车辆以外的各第二自动驾驶车辆。在步骤240中,接收来自第二自动驾驶车辆的相应验证结果。该相应验证结果表明第二自动驾驶车辆中的相应自动驾驶车辆是否处于操作异常状态。相应验证结果通过第二自动驾驶车辆的自动驾驶系统对自动驾驶系统数据进行验证而得到。在步骤250中,响应于相应验证结果表明第二自动驾驶车辆中的至少一个自动驾驶车辆处于操作异常状态,向多个自动驾驶车辆发出召回多个自动驾驶车辆的召回命令。
25.图3示出了根据本公开实施例的用于控制多个自动驾驶车辆的装置300的示意性框图。参考图3,装置300包括第一接收模块310、确定模块320、数据发送模块330、第二接收模块340和召回模块350。装置300可以体现图1中示出的服务器116。
26.为了说明的目的,下面结合图1、图2和图3描述方法200。
27.在步骤210中,第一接收模块310接收来自多个自动驾驶车辆中的第一自动驾驶车辆110的自动驾驶系统数据。在一个实施例中,自动驾驶车辆车队中的多个自动驾驶车辆、例如第一自动驾驶车辆110和第二自动驾驶车辆111在运行时与服务器116保持通信,使得该服务器116可以连续地或者间歇地接收自动驾驶车辆的自动驾驶系统数据。
28.自动驾驶系统数据是指在车辆的自动驾驶过程中由该车辆的自动驾驶系统生成或记录的关于车辆的外部环境和/或内部操作的数据。关于车辆的外部环境的数据可以包括例如车辆周边的交通设施(例如,红绿灯、车道线、交通指示牌等)、行人和/或其他车辆的
图像。关于车辆的内部操作的数据可以包括例如硬件和软件性能数据、驾驶性能数据等。硬件和软件性能数据的示例包括车辆的软件和/或硬件产生问题的频率、车辆的自动驾驶系统重新启动的频率等。驾驶性能数据的示例包括车辆急减速的频率、车辆在停车时越过停车线的频率、车辆在停车时距障碍物的距离、车辆接收到用户发出的停车命令的频率等。
29.在步骤220中,确定模块320根据自动驾驶系统数据,确定第一自动驾驶车辆110是否处于操作异常状态。在一个示例中,第一自动驾驶车辆110在行驶过程中遇到数量异常多的行人或车辆需要刹车避让,第一自动驾驶车辆110将该行驶过程中通过车载传感器获得的传感器数据(例如车辆周边的行人或其他车辆的图像)、由自动驾驶系统生成的操作事件记录(例如刹车的时机和次数)等发送至服务器116。确定模块320对来自第一自动驾驶车辆110的数据进行分析。
30.确定第一自动驾驶车辆110是否处于操作异常状态的依据可以涉及两类自动驾驶系统数据:(1)硬件和软件性能数据;(2)驾驶性能数据。
31.根据硬件和软件性能数据确定第一自动驾驶车辆110是否处于操作异常状态,可以以各种不同的方式来实现,包括例如:
32.(1)响应于硬件和软件性能数据表明第一自动驾驶车辆110的软件和/或硬件产生问题的频率超过第一阈值,确定第一自动驾驶车辆110处于操作异常状态。在这种情况下,服务器116检测出:第一自动驾驶车辆110的自动驾驶系统在一定时间(例如,1分钟、2分钟、5分钟等)内收到第一自动驾驶车辆110的软件和/或硬件报错的数目超过第一阈值(例如,3次、5次或甚至更多),这表明第一自动驾驶车辆110的软件或硬件发生故障。由此,确定模块320确定第一自动驾驶车辆110处于操作异常状态。
33.(2)响应于硬件和软件性能数据表明第一自动驾驶车辆110的自动驾驶系统重新启动的频率超过第二阈值,确定第一自动驾驶车辆110处于操作异常状态。在这种情况下,服务器116检测出:第一自动驾驶车辆116的自动驾驶系统在一定时间(例如,1分钟、2分钟、5分钟等)内重新启动的次数超过第二阈值(例如,3次、5次或甚至更多),这表明第一自动驾驶车辆110的软件或硬件产生问题。由此,确定模块320确定第一自动驾驶车辆110处于操作异常状态。
34.根据驾驶性能数据确定第一自动驾驶车辆110是否处于操作异常状态,可以以各种不同的方式来实现,包括例如:
35.(1)响应于驾驶性能数据表明第一自动驾驶车辆110减速的频率超过第三阈值,确定第一自动驾驶车辆110处于操作异常状态。在这种情况下,服务器116检测出:第一自动驾驶车辆110在避让行人或车辆的过程中不必要地频繁急减速,并且在单位时间内急减速的次数超过第三阈值。这将给乘客带来不良的乘车体验,同时也表明第一自动驾驶车辆110的驾驶性能产生问题。由此,确定模块320确定第一自动驾驶车辆110处于操作异常状态。
36.(2)响应于驾驶性能数据表明第一自动驾驶车辆110在停车时越过停车线的频率大于第四阈值,确定第一自动驾驶车辆110处于操作异常状态。在这种情况下,在一段时间内,第一自动驾驶车辆110在遇到红灯停车时,越过路口的停车线的次数大于第四阈值。这对车辆周围的行人安全造成极大的威胁,同时也表明第一自动驾驶车辆的驾驶性能产生问题。由此,确定模块320确定第一自动驾驶车辆110处于操作异常状态。
37.(3)响应于驾驶性能数据表明第一自动驾驶车辆110在停车时距障碍物的距离小
于第五阈值,确定第一自动驾驶车辆110处于操作异常状态。在这种情况下,服务器116检测出:第一自动驾驶车辆110在遇到障碍物(例如,行人或骑车人)停车时,距障碍物的距离小于第五阈值。这对过往车辆及周围行人安全造成威胁,同时也表明第一自动驾驶车辆的驾驶性能产生问题。由此,确定模块320确定第一自动驾驶车辆110处于操作异常状态。
38.(4)响应于驾驶性能数据表明第一自动驾驶车辆110接收到用户发出的停车命令的频率超过第六阈值,确定第一自动驾驶车辆110处于操作异常状态。在这种情况下,服务器116检测出:第一自动驾驶车辆110在一定时间内接收到用户发出的停车命令的次数超过第六阈值。这表明第一自动驾驶车辆110的自动驾驶系统可能发生故障,使得乘客对当前的自动驾驶模式并不认可。由此,确定模块320可以确定第一自动驾驶车辆110处于操作异常状态。
39.在步骤230中,数据发送模块330响应于确定第一自动驾驶车辆110处于操作异常状态,将第一自动驾驶车辆110的自动驾驶系统数据发送至多个自动驾驶车辆中除第一自动驾驶车辆110以外的各第二自动驾驶车辆111。
40.在步骤240中,第二接收模块340接收来自第二自动驾驶车辆111的相应验证结果。该相应验证结果表明第二自动驾驶车辆111中的相应自动驾驶车辆是否处于操作异常状态。相应验证结果通过第二自动驾驶车辆111的自动驾驶系统对第一自动驾驶车辆110的自动驾驶系统数据进行验证而得到。第二自动驾驶车辆111执行的验证将在稍后详细描述。
41.在步骤250中,召回模块350响应于相应验证结果表明第二自动驾驶车辆111中的至少一个自动驾驶车辆处于操作异常状态,向多个自动驾驶车辆110和111发出召回多个自动驾驶车辆110和111的召回命令。通过这种方式,在确定自动驾驶车队中的自动驾驶车辆存在与某一辆自动驾驶车辆的操作异常状态相关联的问题的情况下,召回整个自动驾驶车队中的所有车辆,从而保证整个车队的自动驾驶车辆的安全性。
42.图4示出了根据本公开实施例的用于控制第二自动驾驶车辆的方法400的流程图。在示例中,该方法400可以由第二自动驾驶车辆111的自动驾驶系统执行。
43.参考图4,在步骤410中,接收来自服务器的自动驾驶系统数据,自动驾驶系统数据表明除第二自动驾驶车辆之外的第一自动驾驶车辆处于操作异常状态。在步骤420中,基于自动驾驶系统数据,验证第二自动驾驶车辆是否处于操作异常状态。在步骤430中,响应于第二自动驾驶车辆处于操作异常状态的验证结果,将验证结果发送至服务器。
44.图5是示出根据本公开实施例的用于控制第二自动驾驶车辆的装置500的示意性框图。参考图5,装置500包括数据接收模块510、验证模块520和验证结果发送模块530。装置500可以体现图1中示出的第二自动驾驶车辆111的自动驾驶系统。
45.为了说明的目的,下面结合图1、图4和图5描述方法400。
46.在步骤410中,数据接收模块510接收来自例如服务器116的自动驾驶系统数据。该自动驾驶系统数据表明除第二自动驾驶车辆111之外的第一自动驾驶车辆110处于操作异常状态。在一个示例中,自动驾驶系统数据包括:第一自动驾驶车辆110的自动驾驶系统在一驾驶场景中记录的传感器数据,在该驾驶场景中第一自动驾驶车辆110被使得进入操作异常状态。例如,第一自动驾驶车辆110在行驶的过程中遇到数量异常多的行人或车辆需要刹车避让,第一自动驾驶车辆110将通过车载传感器获得的传感器数据(例如车辆周边的交通设施(例如,红绿灯、车道线、交通指示牌等)、行人和/或车辆的图像)、由自动驾驶系统生
成的操作事件记录(例如刹车的时机和次数)等发送至服务器116。服务器116对这些数据进行分析,发现第一自动驾驶车辆110在响应这些传感器数据的过程中不必要地频繁急减速,并且在单位时间内急减速的次数超过预设值,由此确定第一自动驾驶车辆110处于操作异常状态。为了验证车队中包括第二自动驾驶车辆111在内的其它自动驾驶车辆是否会有相同的问题,服务器116将第一自动驾驶车辆110的自动驾驶系统数据(例如,由第一自动驾驶车辆110的车载传感器获得的传感器数据)发送给第二自动驾驶车辆111进行验证。
47.在步骤420中,基于与第一自动驾驶车辆110相关的自动驾驶系统数据,验证模块520对第二自动驾驶车辆111是否处于操作异常状态进行验证。首先,基于由第一自动驾驶车辆110的自动驾驶系统记录的使得第一自动驾驶车辆110进入操作异常状态的传感器数据,在第二自动驾驶车辆111上进行仿真,以得到第二自动驾驶车辆111的仿真的自动驾驶系统数据。仿真的自动驾驶系统数据可以是第二自动驾驶车辆111的自动驾驶系统响应于第一自动驾驶车辆110的传感器数据而生成的自动驾驶系统数据。具体而言,验证模块520分配空闲的计算和存储资源以用于仿真。在第二自动驾驶车辆111的自动驾驶系统的后台,验证模块520利用这些空闲的计算和存储资源运行第一自动驾驶车辆110的传感器数据,并且记录第二自动驾驶车辆111的自动驾驶系统响应于第一自动驾驶车辆110的传感器数据而生成的仿真的自动驾驶系统数据。然后,根据仿真的自动驾驶系统数据,确定第二自动驾驶车辆111是否处于操作异常状态。由于仿真是在第二自动驾驶车辆111的自动驾驶系统的后台进行,因而自动驾驶系统的前台任务(即,当前的自动驾驶活动)不会受影响。
48.确定第二自动驾驶车辆是否处于操作异常状态的依据可以涉及两类仿真的自动驾驶系统数据:(1)仿真的自动驾驶系统数据中的硬件和软件性能数据;(2)仿真的自动驾驶系统数据中的驾驶性能数据。
49.根据仿真的自动驾驶系统数据中的硬件和软件性能数据,确定第二自动驾驶车辆是否处于操作异常状态,例如:
50.(1)响应于硬件和软件性能数据表明第二自动驾驶车辆的软件或硬件产生问题的频率超过第一阈值,确定第二自动驾驶车辆处于操作异常状态。在这种情况下,第二自动驾驶车辆111的自动驾驶系统检测出:第二自动驾驶车辆111的自动驾驶系统响应于第一自动驾驶车辆110的传感器数据而在一定时间(例如,1分钟、2分钟、5分钟等)内收到第二自动驾驶车辆111的软件和/或硬件报错的数目超过第一阈值(例如,3次、5次或甚至更多),这表明第二自动驾驶车辆111的软件或硬件发生故障。由此,验证模块520确定第二自动驾驶车辆111处于操作异常状态。
51.(2)响应于硬件和软件性能数据表明第二自动驾驶车辆111的自动驾驶系统重新启动的频率超过第二阈值,确定第二自动驾驶车辆111处于操作异常状态。在这种情况下,第二自动驾驶车辆111的自动驾驶系统检测出:第二自动驾驶车辆111的自动驾驶系统在一定时间(例如,1分钟、2分钟、5分钟等)内重新启动的次数超过第二阈值(例如,3次、5次或甚至更多),这表明第二自动驾驶车辆111的软件或硬件产生问题。由此,验证模块520确定第二自动驾驶车辆111处于操作异常状态。
52.根据仿真的自动驾驶系统数据中的驾驶性能数据确定第二自动驾驶车辆111是否处于操作异常状态,可以以各种不同的方式来实现,包括例如:
53.(1)响应于驾驶性能数据表明第二自动驾驶车辆111减速的频率超过第三阈值,确
定第二自动驾驶车辆111处于操作异常状态。在这种情况下,第二自动驾驶车辆111的自动驾驶系统检测出:第二自动驾驶车辆111在避让行人或车辆的过程中不必要地频繁急减速,并且在单位时间内急减速的次数超过第三阈值。这将给乘客带来不良的乘车体验,同时也表明第二自动驾驶车辆111的驾驶性能产生问题。由此,验证模块520确定第二自动驾驶车辆111处于操作异常状态。
54.(2)响应于驾驶性能数据表明第二自动驾驶车辆111在停车时越过停车线的频率大于第四阈值,确定第二自动驾驶车辆111处于操作异常状态。在这种情况下,在一段时间内,第二自动驾驶车辆111的自动驾驶系统检测出:第二自动驾驶车辆111在遇到红灯停车时,越过路口的停车线的次数大于第四阈值。这对车辆周围的行人安全造成极大的威胁,同时也表明第二自动驾驶车辆111的驾驶性能产生问题。由此,验证模块520确定第二自动驾驶车辆111处于操作异常状态。
55.(3)响应于驾驶性能数据表明第二自动驾驶车辆111在停车时距障碍物的距离小于第五阈值,确定第二自动驾驶车辆111处于操作异常状态。在这种情况下,第二自动驾驶车辆111的自动驾驶系统检测出:第二自动驾驶车辆111在遇到障碍物(例如,行人或骑车人)停车时,距障碍物的距离小于第五阈值。这对过往车辆及周围行人安全造成威胁,同时也表明第二自动驾驶车辆111的驾驶性能产生问题。由此,验证模块520确定第二自动驾驶车辆111处于操作异常状态。
56.在步骤430中,响应于第二自动驾驶车辆111处于操作异常状态的验证结果,验证结果发送模块530将验证结果发送至服务器116。
57.如前面关于图2描述的,第二自动驾驶车辆111将指示操作异常状态的验证结果发送至服务器116,将触发服务器116发出召回命令(步骤250),召回多个自动驾驶车辆110和111。作为响应,第二自动驾驶车辆111将执行一系列操作以完成召回。为此目的,如图5所示,体现第二自动驾驶车辆111的自动驾驶系统的装置500还可以包括检测模块540、提示模块550以及设定和控制模块560。
58.在一些实施例中,检测模块540配置为响应于来自服务器116的召回第二自动驾驶车辆的召回命令,发起检测第二自动驾驶车辆111内部是否存在用户。响应于检测到第二自动驾驶车辆111内部存在用户(例如,当第二自动驾驶车辆111正在为乘客提供服务时),提示模块550发起向用户提供提示终止服务的提示信息,以提醒车内的用户尽快下车。响应于检测到第二自动驾驶车辆111内部不存在用户(例如,当乘客已经下车时),设定和控制模块560设定召回目的地并控制第二自动驾驶车辆111行驶至召回目的地。具体而言,设定和控制模块560对动力、转向、传动、刹车系统发出控制信号,以控制车辆行驶至预设目标位置。预设目标位置可以包括车辆维修站、服务中心、停车中心或路边停车位等。另外,第二自动驾驶车辆111从当前位置行驶至预设目标位置的路径规划可以通过第二自动驾驶车辆111的自动驾驶系统来实现,也可以通过服务器116来实现。在后者的情况下,服务器116将规划的路径发送至第二自动驾驶车辆111,并且第二自动驾驶车辆111然后按照规划的路径行驶至预设目标位置。
59.如本文使用的,短语“a发起动作b”可以是指a发出执行动作b的指令,但a本身并不执行该动作b。例如,短语“检测模块540发起检测第二自动驾驶车辆111内部是否存在用户”可以是指检测模块540指示第二自动驾驶车辆111的存在传感器(未示出)检测第二自动驾
驶车辆111内部是否存在用户。
60.在上述实施例中,设定召回目的地可以涉及两个操作:(1)根据验证结果确定第二自动驾驶车辆111的性能评分;(2)响应于性能评分低于预设值,将召回目的地设定为距第二自动驾驶车辆111的当前位置最近的路边停车位。本领域技术人员可以理解的是,对于自动驾驶车辆的评分既可以由自动驾驶车辆、例如第二自动驾驶车辆111的自动驾驶系统基于仿真过程中生成的仿真的自动驾驶数据来确定,也可以由服务器116根据来自第二自动驾驶车辆111的仿真的自动驾驶数据来确定。例如,驾驶性能数据表明第二自动驾驶车辆111在停车时越过停车线的频率大于第四阈值,并且如果该频率数值远大于第四阈值(例如》第四阈值的150%),则第二自动驾驶车辆111的自动驾驶系统或服务器116确定第二自动驾驶车辆111的性能评分低于预设值,并且将召回目的地设定为距第二自动驾驶车辆111的当前位置最近的路边停车位。
61.虽然各个操作在附图中被描绘为按照特定的顺序,但是这不应理解为要求这些操作必须以所示的特定顺序或者按顺行次序执行,也不应理解为要求必须执行所有示出的操作以获得期望的结果。
62.另外,虽然上面参考特定模块讨论了特定功能,但是应当注意,本文讨论的各个模块的功能可以分为多个模块,和/或多个模块的至少一些功能可以组合成单个模块。本文讨论的特定模块执行动作包括该特定模块本身执行该动作,或者替换地该特定模块调用或以其他方式访问执行该动作(或结合该特定模块一起执行该动作)的另一个组件或模块。因此,执行动作的特定模块可以包括执行动作的该特定模块本身和/或该特定模块调用或以其他方式访问的、执行动作的另一模块。
63.更一般地,本文可以在软件硬件元件或程序模块的一般上下文中描述各种技术。上面关于图3和图5描述的各个模块可以在硬件中或在结合软件和/或固件的硬件中实现。例如,这些模块可以被实现为计算机程序代码/指令,该计算机程序代码/指令被配置为在一个或多个处理器中执行并存储在计算机可读存储介质中。可替换地,这些模块可以被实现为硬件逻辑/电路。例如,在一些实施例中,第一接收模块310、确定模块320、数据发送模块330、第二接收模块340和召回模块350中的一个或多个可以一起被实现在片上系统(soc)中。soc可以包括集成电路芯片(其包括处理器(例如,中央处理单元(cpu)、微控制器、微处理器、数字信号处理器(dsp)等)、存储器、一个或多个通信接口、和/或其他电路中的一个或多个部件),并且可以可选地执行所接收的程序代码和/或包括嵌入式固件以执行功能。
64.图6示出了可以被用来实施本文所描述的模块和功能的计算设备600的示例配置。举例来说,图1中示出的服务器116、第一自动驾驶车辆110和第二自动驾驶车辆111中的每一个都可以包括类似于计算设备600的架构。
65.计算设备600可以是各种不同类型的设备,例如服务提供商的服务器、与客户端(例如,客户端设备)相关联的设备、片上系统、和/或任何其它合适的计算设备或计算系统。计算设备600的示例包括但不限于:台式计算机、服务器计算机、笔记本电脑或上网本计算机、移动设备(例如,平板电脑或者phablet设备、蜂窝或其他无线电话(例如,智能电话)、记事本计算机、移动台)、汽车计算机等等。
66.计算设备600可以包括能够诸如通过系统总线614或其他适当的连接彼此通信的至少一个处理器602、存储器604、(多个)通信接口606、显示设备608、其他输入/输出(i/o)
设备610以及一个或更多大容量存储设备612。
67.处理器602可以是单个处理单元或多个处理单元,所有处理单元可以包括单个或多个计算单元或者多个核心。处理器602可以被实施成一个或更多微处理器、微型计算机、微控制器、数字信号处理器、中央处理单元、状态机、逻辑电路和/或基于操作指令来操纵信号的任何设备。除了其他能力之外,处理器602可以被配置成获取并且执行存储在存储器604、大容量存储设备612或者其他计算机可读介质中的计算机可读指令,诸如操作系统616的程序代码、应用程序618的程序代码、其他程序620的程序代码等。
68.存储器604和大容量存储设备612是用于存储指令的计算机存储介质的示例,所述指令由处理器602执行来实施前面所描述的各种功能。举例来说,存储器604一般可以包括易失性存储器和非易失性存储器二者(例如ram、rom等等)。此外,大容量存储设备612一般可以包括硬盘驱动器、固态驱动器、可移除介质、包括外部和可移除驱动器、存储器卡、闪存、软盘、光盘(例如cd、dvd)、存储阵列、网络附属存储、存储区域网等等。存储器604和大容量存储设备612在本文中都可以被统称为存储器或计算机存储介质,并且可以是能够把计算机可读、处理器可执行程序指令存储为计算机程序代码的非瞬时性介质,所述计算机程序代码可以由处理器602作为被配置成实施在本文的示例中所描述的操作和功能的特定机器来执行。
69.多个程序模块可以存储在大容量存储设备612上。这些程序包括操作系统616、一个或多个应用程序618、其他程序620和程序数据622,并且它们可以被加载到存储器604以供执行。这样的应用程序或程序模块的示例可以包括例如用于实现以下部件/功能的计算机程序逻辑(例如,计算机程序代码或指令):第一接收模块310、确定模块320、数据发送模块330、第二接收模块340和召回模块350、接收模块510、验证模块520、验证结果发送模块530、检测模块540、提示模块550、设定和控制模块560、方法200和/或方法400(包括方法200、400的任何合适的步骤)、和/或本文描述的另外的实施例。
70.虽然在图6中被图示成存储在计算设备600的存储器604中,但是模块616、618、620和622或者其部分可以使用可由计算设备600访问的任何形式的计算机可读介质来实施。如本文所使用的,“计算机可读介质”至少包括两种类型的计算机可读介质,也就是计算机存储介质和通信介质。
71.计算机存储介质包括通过用于存储信息的任何方法或技术实施的易失性和非易失性、可移除和不可移除介质,所述信息诸如是计算机可读指令、数据结构、程序模块或者其他数据。计算机存储介质包括而不限于ram、rom、eeprom、闪存或其他存储器技术,cd-rom、数字通用盘(dvd)、或其他光学存储装置,磁盒、磁带、磁盘存储装置或其他磁性存储设备,或者可以被用来存储信息以供计算设备访问的任何其他非传送介质。
72.与此相对,通信介质可以在诸如载波或其他传送机制之类的已调数据信号中具体实现计算机可读指令、数据结构、程序模块或其他数据。本文所定义的计算机存储介质不包括通信介质。
73.计算设备600还可以包括一个或更多通信接口606,以用于诸如通过网络、直接连接等等与其他设备交换数据,正如前面所讨论的那样。这样的通信接口可以是以下各项中的一个或多个:任何类型的网络接口(例如,网络接口卡(nic))、有线或无线(诸如ieee 802.11无线lan(wlan))无线接口、全球微波接入互操作(wi-max)接口、以太网接口、通用串
行总线(usb)接口、蜂窝网络接口、bluetoothtm接口、近场通信(nfc)接口等。通信接口606可以促进在多种网络和协议类型内的通信,其中包括有线网络(例如lan、电缆等等)和无线网络(例如wlan、蜂窝、卫星等等)、因特网等等。通信接口606还可以提供与诸如存储阵列、网络附属存储、存储区域网等等中的外部存储装置(未示出)的通信。
74.在一些示例中,可以包括诸如监视器之类的显示设备608,以用于向用户显示信息和图像。其他i/o设备610可以是接收来自用户的各种输入并且向用户提供各种输出的设备,并且可以包括触摸输入设备、手势输入设备、摄影机、键盘、遥控器、鼠标、打印机、音频输入/输出设备等等。
75.图7示出了其中可以实施本文描述的方法的一个应用场景2100。根据一些实施例,服务器车辆2010可以是上面关于图1描述的第一自动驾驶车辆110的示例,车辆2011可以是上面关于图1描述的第二自动驾驶车辆111的示例,并且在线服务器2015和/或云端服务器2016可以是上面关于图1描述的服务器116的示例。
76.车辆2010可以包括传感器2110用于感知周围环境。传感器2110可以包括下列传感器中的一个或多个:超声波传感器、毫米波雷达、激光雷达(lidar)、视觉摄像头以及红外摄像头。不同的传感器可以提供不同的检测精度和范围。超声波传感器可以安装在车辆的四周,用于利用超声波方向性强等特点来测量车外物体距车辆的距离。毫米波雷达可以安装在车辆的前方、后方或其他位置,用于利用电磁波的特性测量车外物体距车辆的距离。激光雷达可以安装在车辆的前方、后方或其他位置,用于检测物体边缘、形状信息,从而进行物体识别和追踪。由于多普勒效应,雷达装置还可以测量车辆与移动物体的速度变化。摄像头可以安装在车辆的前方、后方或其他位置。视觉摄像头可以实时捕获车辆内外的情况并呈现给驾驶员和/或乘客。此外,通过对视觉摄像头捕获的画面进行分析,可以获取诸如交通信号灯指示、交叉路口情况、其他车辆运行状态等信息。红外摄像头可以在夜视情况下捕捉物体。
77.车辆2010还可以包括输出装置2120。输出装置2120例如包括显示器和扬声器等,以呈现各种输出或者指令。此外,显示器可以实现为触摸屏,从而还可以不同的方式检测输入。可以在触摸屏上呈现用户图形界面,以使用户能够访问控制相应的控件。
78.车辆2010还可以包括一个或多个控制器2130。控制器2130可以包括与各种类型的计算机可读存储装置或介质通信的处理器,例如中央处理单元(cpu)或图形处理单元(gpu),或者其他的专用处理器等。计算机可读存储装置或介质可以包括任何非暂时性存储设备,非暂时性存储设备可以是非暂时性的并且可以实现数据存储的任何存储设备,并且可以包括但不限于磁盘驱动器、光学存储设备、固态存储器、软盘、柔性盘、硬盘、磁带或任何其他磁介质,光盘或任何其他光学介质、只读存储器(rom)、随机存取存储器(ram)、高速缓冲存储器和/或任何其他存储器芯片或盒、和/或计算机可从其读取数据、指令和/或代码的任何其他介质。计算机可读存储装置或介质中的一些数据表示由控制器2130用于控制车辆的可执行指令。控制器2130可以包括用于自动控制车辆中的各种致动器的自动驾驶系统。自动驾驶系统被配置为经由多个致动器响应来自多个传感器2110或者其他输入设备的输入而控制车辆2010的动力总成、转向系统以及制动系统等以分别控制加速、转向和制动,而无需人为干预或者有限的人为干预。控制器2130的部分处理功能可以通过云计算实现。例如,可以使用车载处理器执行某一些处理,而同时可以利用云端的计算资源执行其他一
些处理。根据一些实施例,控制器2130可以被配置以执行结合图3所描述的方法。控制器2130及其相关联的计算机可读存储装置为上面图3的装置的一个示例。与控制器2130相关联的计算机可读存储装置可以为上面描述的非暂态计算机可读存储介质的一个示例。
79.车辆2010还包括通信装置2140。通信装置2140包括能够从卫星2012接收卫星定位信号并且基于这些信号产生坐标的卫星定位模块。通信装置2140还包括与移动通信网络2013进行通信的模块,移动通信网络可以实施任何适合的通信技术,例如gsm/gprs、cdma、lte等当前或正在不断发展的无线通信技术(例如5g技术)。通信装置2140还可以具有车联网或车联万物(vehicle-to-everything,v2x)模块,被配置用于实现例如与其它车辆2011进行车对车(vehicle-to-vehicle,v2v)通信和与基础设施进行车辆到基础设施(vehicle-to-infrastructure,v2i)通信的车与外界的通信。此外,通信装置2140还可以具有被配置为例如通过使用ieee802.11标准的无线局域网或蓝牙与用户终端2014(包括但不限于智能手机、平板电脑或诸如手表等可佩戴装置)进行通信的模块。利用通信装置2140,车辆2010可以经由无线通信系统接入在线服务器2015或者云端服务器2016,该在线服务器或云端服务器被配置用于为车辆提供相应的数据处理、数据存储和数据传输等服务。
80.此外,车辆2010还包括图1中未示出的用于实现机动车驾驶功能的动力总成、转向系统以及制动系统等。
81.虽然已经参照附图描述了本公开的实施例或示例,但应理解,上述的方法、系统和设备仅仅是示例性的实施例或示例,本发明的范围并不由这些实施例或示例限制,而是仅由授权后的权利要求书及其等同范围来限定。实施例或示例中的各种要素可以被省略或者可由其等同要素替代。此外,可以通过不同于本公开中描述的次序来执行各步骤。进一步地,可以以各种方式组合实施例或示例中的各种要素。重要的是随着技术的演进,在此描述的很多要素可以由本公开之后出现的等同要素进行替换。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1