发明内容
本申请实施例公开了自动驾驶的速度规划方法、装置、车辆及存储介质,能够提高复杂交通场景中提高自动驾驶的安全性。
本申请实施例公开一种自动驾驶的速度规划方法,包括:
获取速度规划周期包括的目标规划时刻中车辆对应的多个目标距离;所述多个目标距离根据不同的速度规划目标计算得到;
根据多个不同的速度规划目标的优先级,从所述多个目标距离中确定出所述目标规划时刻对应的执行时距;
根据所述执行时距确定所述车辆的自动驾驶速度。
在一个实施例中,多个不同的速度规划目标包括:遵守道路限速、跟随前车行驶、超车、变道、避免碰撞障碍物中的至少两个速度规划目标;
其中,所述跟随前车行驶的优先级以及所述超车优先级,均高于所述避免碰撞障碍物的优先级;所述避免碰撞障碍物的优先级,高于所述变道的优先级。
在一个实施例中,其特征在于,所述根据多个不同的速度规划目标的优先级,从所述多个目标距离中确定出所述速度规划周期中的目标规划时刻对应的执行时距,包括:
根据所述跟随前车行驶的速度规划目标对应的第一目标距离和/或所述超车的速度规划目标对应的第二目标距离,对第一距离区间的边界值进行更新,得到第二距离区间;
根据所述避免碰撞障碍物的速度规划目标对应的第三目标距离,对所述第二距离区间的边界值进行更新,得到第三距离区间;
根据所述变道的速度规划目标对应的第四目标距离,对所述第三距离区间的边界值进行更新,得到第四距离区间;
根据所述第四距离区间与所述遵守道路限速的速度规划目标对应的第五目标距离,确定速度规划周期中的目标规划时刻对应的执行时距;其中,所述执行时距为所述第四距离区间的上限值与边界参考值之间的较小值,所述边界参考值为所述第四距离区间的下限值与所述第五目标距离中的较大值。
在一个实施例中,所述根据所述跟随前车行驶的速度规划目标对应的第一目标距离,对第一距离区间的边界值进行更新,得到第二距离区间,包括:
若所述跟随前车行驶的速度规划目标对应的第一目标距离小于所述第一距离区间的上限值,则将所述第一目标距离更新为所述第一距离区间新的上限值,得到第二距离区间;
或者,所述根据所述超车的速度规划目标对应的第二目标距离,对第一距离区间的边界值进行更新,得到第二距离区间,包括:
将所述超车的速度规划目标对应的第二目标距离更新为所述第一距离区间新的下限值,得到第二距离区间。
在一个实施例中,所述根据所述跟随前车行驶的速度规划目标对应的第一目标距离和所述超车的速度规划目标对应的第二目标距离,对第一距离区间的边界值进行更新,得到第二距离区间,包括:
若所述跟随前车行驶的速度规划目标对应的第一目标距离小于所述第一距离区间的上限值,且所述超车的速度规划目标对应的第二目标距离小于所述第一目标距离,则将所述第二目标距离更新为所述第一距离区间新的下限值,得到第二距离区间。
在一个实施例中,所述方法还包括:
若所述跟随前车行驶的速度规划目标对应的第一目标距离小于所述第一距离区间的上限值,且所述超车的速度规划目标对应的第二目标距离大于所述跟随前车行驶的速度规划目标对应的第一目标距离,则将所述第二目标距离确定为所述速度规划周期中的目标规划时刻对应的执行时距。
在一个实施例中,所述避免碰撞障碍物的速度规划目标对应的第三目标距离,包括:第三跟车目标距离或者第三超车目标距离,所述第三跟车目标距离与跟车时避免碰撞障碍物的速度规划目标对应,所述第三超车目标距离与超车时避免碰撞障碍物的速度规划目标对应;
以及,所述根据所述避免碰撞障碍物的速度规划目标对应的第三目标距离,对所述第二距离区间的边界值进行更新,得到第三距离区间,包括:
若所述第三跟车目标距离处于所述第二距离区间内,则将所述第三跟车目标距离更新为所述第二距离区间新的上限值,得到第三距离区间;或者,
若所述第三超车目标距离处于所述第二距离区间内,且所述第三超车目标距离小于遵守道路限速的速度规划目标对应的第五目标距离,则将所述第三超车目标距离更新为所述第二距离区间新的下限值,得到第三距离区间。
在一个实施例中,所述所述避免碰撞障碍物的速度规划目标对应的第三目标距离,包括:第三跟车目标距离和第三超车目标距离,所述第三跟车目标距离与跟车时避免碰撞障碍物的速度规划目标对应,所述第三超车目标距离与超车时避免碰撞障碍物的速度规划目标对应;
以及,所述根据所述避免碰撞障碍物的速度规划目标对应的第三目标距离,对所述第二距离区间的边界值进行更新,得到第三距离区间,包括:
若所述第三超车距离和所述第三跟车距离的第一平均值处于所述第二距离区间内,则将所述第一平均值更新为所述第二距离区间新的上限值,得到第三距离区间。
在一个实施例中,所述变道的速度规划目标对应的第四目标距离,包括:第四让车目标距离或者第四超车目标距离,所述第四让车目标距离与变道时让车的速度规划目标对应,所述第四超车目标距离与变道时超车的速度规划目标对应;
以及,所述根据所述变道的速度规划目标对应的第四目标距离,对所述第三距离区间的边界值进行更新,得到第四距离区间,包括:
若第四让车目标距离处于所述第三距离区间内,则将所述第四让车距离更新为所述第三距离区间新的上限值,得到第四距离区间;或者,
若所述第四超车目标距离处于所述第三距离区间内,则将所述第四超车距离更新为所述第三距离区间新的下限值,得到第四距离区间。
在一个实施例中,所述变道的速度规划目标对应的第四目标距离,包括:第四让车目标距离和第四超车目标距离,所述第四让车目标距离与变道时让车的速度规划目标对应,所述第四超车目标距离与变道时超车的速度规划目标对应;
以及,在得到所述第三距离区间之后,以及在所述根据所述变道的速度规划目标对应的第四目标距离,对所述第三距离区间的边界值进行更新,得到第四距离区间之前,所述方法还包括:
若所述第四让车目标距离与所述第四超车目标距离的第二平均值处于所述第三距离区间内,则将所述速度规划周期中的目标规划时刻对应的跟车距离确定为所述第二平均值。
本申请实施例公开一种自动驾驶的速度规划装置,包括:
获取模块,用于获取速度规划周期包括的目标规划时刻中车辆对应的多个目标距离;所述多个目标距离根据不同的速度规划目标计算得到;
第一确定模块,用于根据多个不同的速度规划目标的优先级,从所述多个目标距离中确定出所述目标规划时刻对应的执行时距;
第二确定模块,用于根据所述执行时距确定所述车辆的自动驾驶速度。
本申请实施例公开一种车辆,包括存储器及处理器,所述存储器中存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器实现本申请实施例公开的任一项自动驾驶的速度规划方法。
本申请实施例公开一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现本申请实施例公开的任一项自动驾驶的速度规划方法。
与相关技术相比,本申请实施例具有以下有益效果:
车辆可以获取多个不同的速度规划目标分别对应的目标距离,并根据不同速度规划目标分别对应的优先级,从多个目标距离中确定出目标规划时刻对应的执行时距。使得车辆在进行速度规划时,可以考虑复杂交通场景中可能影响车辆安全的多种不同因素,并通过优先级的设置体现不同因素在速度规划中的重要性,使得最终根据执行时距确定出的自动驾驶速度安全且舒适,能够满足复杂交通场景下对车辆行驶的安全性和舒适性的需求,可以有效提高自动驾驶的安全性。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
需要说明的是,本申请实施例及附图中的术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
本申请实施例公开的自动驾驶的速度规划方法、装置、车辆及存储介质,能够提高复杂交通场景中自动驾驶速度规划的准确性,提高自动驾驶安全性。以下分别进行详细说明。
首先,对本申请实施例公开的速度规划场景进行介绍。
具有自动驾驶功能的车辆可搭载有一种或多种不同的传感器,车辆可通过传感器采集到车辆周边环境的环境信息,从而识别出处于车辆前、后、左、右等各个方向上的动态或静态的障碍物。为了保持驾驶的安全性和舒适性,车辆在进行速度规划时,可以考虑以下一种或多种速度规划目标,但不限于此:遵守道路限速、跟随前车行驶、超车、变道、避免碰撞障碍物。
遵守道路限速的速度规划目标,可指车辆在进行速度规划时,确定出的自动驾驶速度需不超过车辆当前行驶道路在法律法规中的规定限速。例如,速度不可超过50公里/小时、不可超过120公里/小时等。
跟随前车行驶的速度规划目标,可指车辆在进行速度规划时,确定出的自动驾驶速度需要满足车辆与跟随的前车之间保持安全距离。
超车的速度规划目标,可指车辆在进行速度规划时,确定出的自动驾驶速度需满足车辆能够超过前车。
变道的速度规划目标,可指车辆在进行速度规划时,确定出的自动驾驶速度需满足车辆能够插入作为变道目标的相邻车道,并且在变道过程中,与原本行驶在相邻车道上的其它车辆保持安全距离。
避免碰撞障碍物的速度规划目标,可指车辆在进行速度规划时,确定出的自动驾驶速度需满足车辆能够与路面上可能存在的障碍物保持安全距离。
请参阅图1,图1是一个实施例公开的一种自动驾驶的速度规划方法的方法流程示意图,该方法可应用于车辆,可由车辆的电子控制单元(Electronic Control Unit,ECU)、微控制器(Micro Control Unit,MCU)等处理单元执行,具体不做限定。如图1所示,该方法可包括以下步骤:
110、获取速度规划周期包括的目标规划时刻中车辆对应的多个目标距离。
多个目标距离可以是根据不同的速度规划目标计算得到的。需要说明的是,为了便于计算,速度规划的任务可以转换成距离进行表示,将车辆在多个时刻对应的速度对时间进行积分,可得到车辆的移动距离。
速度规划周期可根据实际的业务需求设置的,例如可设置为4秒、5秒、6秒等,具体不做限定。在一个速度规划周期中可包括多个的规划时刻。每个规划时刻均可对应有一个或多个速度规划目标,基于每个速度规划目标车辆可计算得到一个目标距离。
根据车辆当前所处的交通场景的不同,车辆获取到的目标距离可能是上述各种速度规划目标中的部分或全部速度规划目标对应的目标距离。
示例性的,车辆检测到前方存在其它车辆,并且车辆开启了自动跟车功能,则车辆可以根据检测到前车移动速度、前车与本车之间的距离等参数计算得到跟随前车行驶的速度规划目标对应的第一目标距离。
示例性的,若车辆开启了自动驾驶功能,且车辆检测到前车的行驶速度过慢需要超越前车行驶,则车辆可以根据前车移动速度、本车超越前车之后的需要达到的超车目标等参数计算得到超车的速度规划目标对应的第二目标距离。
示例性的,在车辆跟随前车行驶、变道或者超车等任意一种行驶过程中,都可能检测到影响车辆行驶安全的障碍物。若车辆检测到障碍物,则可以根据障碍物的移动速度、障碍物与车辆之间的距离等参数计算得到避免碰撞障碍物的速度规划目标对应的第三目标距离。
示例性的,若车辆开启了自动变道功能,则车辆可以确定本车在相邻车道上的变道目标区域,并检测位于变道目标区域之前或者之后的其它车辆的移动速度、相邻车道上的前车或后车与变道目标区域之间的距离等参数。车辆可根据相邻车道上前车或后车的移动距离、前车或后车与变道目标区域之间的距离等参数计算得到变道的速度规划目标对应的第四目标距离。
示例性的,大部分道路都设置有道路限速,车辆可以始终获取到与遵守道路限速的速度规划目标对应的第五目标距离。
示例性的,若车辆行驶在设置有道路限速的道路,并开启了自动跟车功能时,车辆可以获取到遵守道路限速的速度规划目标对应的第五目标距离,以及跟随前车行驶的速度规划目标对应的第一目标距离。
120、根据多个不同的速度规划目标的优先级,从多个目标距离中确定出速度规划周期中的目标规划时刻对应的执行时距。
各个速度规划目标对应的优先级可根据实际的业务需求设置,具体不做限定。优先级越高的速度规划目标对应的目标距离,约有可能被确定为目标规划时刻对应的执行时距。
可选的,跟随前车行驶的优先级以及所述超车优先级,均高于避免碰撞障碍物的优先级;避免碰撞障碍物的优先级,高于变道的优先级。其余各个速度规划目标对应的优先级不做限定,例如跟随前车行驶的优先级与超车的优先级可以相同,或者超车的优先级可高于跟随前车行驶的优先级。遵守道路限速的优先级可以是最高的优先级,也可以是最低的优先级,具体不做限定。
车辆在根据多个不同的速度规划的优先级,从多个目标距离中确定执行时距,可以是车辆按照从高到低的优先级顺序,在多个目标距离之间进行逐个比较,从多个目标距离中确定出符合条件的目标距离作为执行时距。
130、根据执行时距确定车辆的自动驾驶速度。
车辆在确定出执行时距之后,可以利用执行时距对时间微分,得到车辆的自动驾驶速度。
可见,在本申请实施例中,可以同时考虑多种不同的速度规划目标,通过不同速度规划目标分别对应的优先级,从多个目标距离中确定出执行时距,使得根据执行时距确定出的自动驾驶速度安全且舒适,能够满足复杂交通场景下对车辆行驶的安全性和舒适性的需求。
在一个实施例中,车辆在步骤110中获取到的多个目标距离可能包括:跟随前车行驶的速度规划目标对应的第一目标距离,以及超车的速度规划目标对应的第二目标距离中的至少一个;避免碰撞障碍物的速度规划目标对应的第三目标距离、变道的速度规划目标对应的第四目标距离以及遵守道路限速的速度规划目标对应的第五目标距离。
由于获取到的目标距离数量较多,可至少获取到4个不同的目标距离,为了使得执行时距的确定更准确,在对多个目标距离进行比较时更有逻辑性,以提高计算速度,车辆可以通过以下实施方式从多个目标距离中确定出执行时距。
请参阅图2,图2是一个实施例公开的一种车辆根据优先级从多个目标距离中确定出执行时距的方法流程示意图。如图2所示,可包括以下步骤:
210、根据跟随前车行驶的速度规划目标对应的第一目标距离和/或超车的速度规划目标对应的第二目标距离,对第一距离区间的边界值进行更新,得到第二距离区间。
车辆可能只获取到第一目标距离和第二目标距离中的其中一个目标距离,也可能两个目标距离都能获取到,具体不做限定。
当车辆获取到第一目标距离和第二目标距离中的至少一个目标距离时,可以将第一目标距离和/或第二目标距离与第一距离区间的边界值进行比较。
第一距离区间可以根据实际的业务需求设置,具体不做限定。示例性的,第一距离区间的上限值可以设置为正无穷,下限值可以设置为负无穷。
在一个实施例中,若车辆只能获取到第一目标距离,则车辆可以将第一目标距离与第一距离区间的上限值进行比较。若第一目标距离小于第一距离区间的上限值,则可以将第一目标距离更新为所述第一距离区间新的上限值,得到第二距离区间。
在一个实施例中,若车辆只能获取到第二目标距离,则车辆可以直接将第二目标距离更新为第二距离区间新的下限值,得到第二距离区间。
在一个实施例中,若车辆能够获取到第一目标距离和第二目标距离,则车辆将第一目标距离与第一距离区间的上限值进行比较,并进一步对第一目标距离和第二目标距离进行比较。
可选的,若第一目标距离小于所述第一距离区间的上限值,且第二目标距离小于所述第一目标距离,则车辆可将所述第二目标距离更新为所述第一距离区间新的下限值,得到第二距离区间。
可选的,若第一目标距离小于所述第一距离区间的上限值,且第二目标距离大于所述跟随前车行驶的速度规划目标对应的第一目标距离,则将所述第二目标距离确定为所述速度规划周期中的目标规划时刻对应的执行时距。
需要说明的是,若车辆在执行步骤210时,根据第一目标距离与第一距离区间的上限值之间的比较结果,以及第一目标距离与第二目标距离之间的比较结果,已将目标规划时刻对应的执行时距确定为第二目标距离,则车辆可以不再执行下述的步骤220-步骤240。
可见,跟随前车行驶的速度规划目标和超车的速度规划目标对应的优先级较高,因此车辆可以首先将上述两种速度规划目标分别对应的第一目标距离和第二目标距离与第一距离区间的边界值进行比较,然后再执行下述的步骤220。
220、根据避免碰撞障碍物的速度规划目标对应的第三目标距离,对第二距离区间的边界值进行更新,得到第三距离区间。
在本申请实施例中,根据车辆面临的交通场景的不同,避免碰撞障碍物的速度规划目标对应的第三目标距离可进一步细分为以下两种:第三跟车目标距离、第三超车目标距离。其中,
第三跟车目标距离与跟车时避免碰撞障碍物的速度规划目标对应。跟车时避免碰撞障碍物的速度规划目标,可指车辆在进行速度规划时,确定出的自动驾驶速度既需要满足使得车辆能够在安全距离内跟随前车行驶,又需要车辆能够与跟随前车行驶时路面上可能存在的障碍物保持安全距离。
第三超车目标距离与超车时避免碰撞障碍物的速度规划目标对应。超车时避免碰撞障碍物的速度规划目标,可指车辆在进行速度规划时,确定出的自动驾驶速度既需要满足使得车辆能够超越前车,又需要车辆能够在超越前车的过程中与路面上可能存在的障碍物保持安全距离。
车辆在获取目标距离时,可能也只能获取到第三跟车目标距离与第三超车目标距离中的其中一个目标距离,也可能第三跟车目标距离和第三超车目标距离都能获取到,具体不做限定。
在一个实施例中,若车辆只能获取到第三跟车目标距离,则车辆在执行步骤220时,可以将第三跟车目标距离与第二距离区间的上限值和下限值进行比较。若第三跟车目标距离处于第二距离区间内,即第三跟车目标距离小于第二距离区间的上限值,且大于第二距离区间的下限值,则车辆可以将第三跟车目标距离更新为所述第二距离区间新的上限值,得到第三距离区间。
在一个实施例中,若车辆只能获取到第三超车目标距离,则车辆在执行步骤220时,可以将第三超车目标距离与第二距离区间的上限值和下限值进行比较,并且将第三超车目标距离与遵守道路限速的速度规划目标对应的第五目标距离进行比较。这是因为车辆在超车时为了避免碰撞障碍物,例如为了与被超车辆发生碰撞,很可能会加快车速,以尽快完成超车的动作。此时,车辆很有可能会超速。
因此,车辆可以在第三超车目标距离处于第二距离区间内,即第三跟车目标距离小于第二距离区间的上限值,且大于第二距离区间的下限值,以及第三超车目标距离小于第五目标距离时,将第三超车目标距离更新为第二距离区间新的下限值,得到第三距离区间。
在一个实施例中,车辆可以获取到第三跟车目标距离以及第三超车目标距离,则车辆在执行步骤220时,可计算第三跟车目标距离与第三超车目标距离的第一平均值,并将第一平均值与第二距离区间的边界值进行比较。若第三超车距离和第三跟车距离的第一平均值处于第二距离区间内,即第一平均值小于第二距离区间的上限值,且大于第二距离区间的下限值,则将第一平均值更新为第二距离区间新的上限值,得到点距离区间。
可见,由于避免碰撞障碍物的速度规划目标对应的优先级低于跟随前车的速度规划目标对应的优先级,以及低于超车的速度规划目标对应的优先级,因此车辆在利用第一目标距离和/或第二目标距离与第一距离区间进行对比,得到第二距离区间之后,再利用避免碰撞障碍物的速度规划目标对应的第三目标距离与第二距离区间进行比较,以利用第三目标距离更新第二距离区间的边界值。
由于避免碰撞障碍物的速度规划目标对应的优先级高于变道的速度规划目标对应的优先级,因此车辆可以在得到第三距离区间之后,执行下述的步骤230。
230、根据变道的速度规划目标对应的第四目标距离,对第三距离区间的边界值进行更新,得到第四距离区间。
在本申请实施例中,根据车辆面临的交通场景的不同,避变道的速度规划目标对应的第四目标距离可进一步细分为以下两种:第四超车目标距离、让车超车目标距离。其中,
第四让车目标距离与变道时让车的速度规划目标对应。变道时让车的速度规划目标,可指车辆在进行速度规划时,确定出的自动驾驶速度需满足车辆能够变道至相邻车道,并且在让行相邻车道上的后车之后再完成变道操作。其中,相邻车道上的后车是变道前处于相邻车道上,且位于本车之后的其它车辆。即,若车辆变道时让车,则在本车完成变道操作时,原本属于相邻车道上的后车变成了本车的前车。
第四超车目标距离与变道时超车的速度规划目标对应。变道时超车的速度规划目标,可指车辆再进行速度规划时,确定出的自动驾驶速度需满足车道能够变道至相邻车道,并且通过超越相邻车道上后车的方式完成变道操作。即,若车辆变道时超车,则在本车完成变道操作时,原本属于相邻车道上的后车仍然是本车的后车。
车辆在获取目标距离时,可能也只能获取到第四让车目标距离与第四超车目标距离中的其中一个目标距离,也可能第四让车目标距离和第四超车目标距离都能获取到,具体不做限定。
在一个实施例中,若车辆只能获取到第四让车目标距离,则可将第四让车目标距离与第三距离区间的边界值进行比较。若第四让车目标距离处于第三距离区间内,即第四让车目标距离大于第三距离区间的下限值,小于第三距离区间的上限值,则车辆可将第四让车距离更新为第三距离区间新的上限值。
在一个实施例中,若车辆只能获取到第四超车目标距离,则可将第四超车目标距离与第三距离区间的边界值进行比较。若第四超车目标距离处于第三距离区间内,即第四超车目标距离大于第三距离区间的下限值,小于第三距离区间的上限值,则车辆可将第四跟车距离更新为第四距离区间新的下限值。
在一个实施例中,若车辆能够获取到第四让车目标距离与第四超车目标距离,则车辆可以计算第四让车目标距离和第四跟车目标距离的第二平均值,并将第二平均值与第三距离区间的边界值进行比较。若第二平均值处于第三距离区间内,即第四超车目标距离大于第三距离区间的下限值,小于第三距离区间的上限值,则车辆可以直接将目标规划时刻对应的跟车距离确定为该第二平均值。也就是说,若第四让车目标距离与第四超车目标距离的第二平均值处于第三距离区间内,则车辆可以不再执行下述的步骤240,直接将第二平均值确定为执行时距。
240、根据第四距离区间与遵守道路限速的速度规划目标对应的第五目标距离,速度规划周期中的目标规划时刻对应的执行时距。
其中,执行距离为第四距离区间的上限值与边界参考值之间的较小值,边界参考值为第四距离区间的下限值与第五目标距离中的较大值。
也就是说,执行时距可参考以下的公式确定得到:
执行时距=min(第四距离区间的上限值,max(第四距离区间的下限值,第五目标距离));min(·)用于表示取较小值,max(·)用于表示取较大值。
可见,在本申请实施例中,车辆可以根据实际获取到的目标距离对应的速度规划目标的类型,以及各个目标距离对应的速度规划目标的优先级,通过逐次更新距离区间的方式在多个目标距离之间进行比较,以确定出目标规划时刻对应的执行时距。
为了更清楚地说明本申请实施例公开的自动驾驶的速度规划方法,请参阅图3,图3是一个实施例公开的另一种根据优先级从多个目标距离中确定出执行时距的方法流程示意图。为了便于描述,前述实施例公开的各种目标距离在该示例中通过以下简称进行表示:
f:跟随前车行驶的速度规划目标对应的第一目标距离;
o:超车的速度规划目标对应的第二目标距离;
c:避免碰撞障碍物的速度规划目标对应的第三目标距离。并且,第三目标距离c可进一步包括:cf、co、cmiddle。
cf:跟车时避免碰撞障碍物的速度规划目标对应的第三跟车目标距离;co:超车时避免碰撞障碍物的速度规划目标对应的第三超车目标距离;cmiddle:第三超车距离和第三跟车距离的第一平均值。
n:变道的速度规划目标对应的第四目标距离。并且,第四目标距离n可进一步包括:yield、overtake,nmiddle。
yield:变道时让车的速度规划目标对应的第四让车目标距离;overtake:变道时超车的速度规划目标对应的第四超车目标距离;nmiddle:第四让车目标距离与第四超车目标距离的第二平均值。
r:遵守道路限速的速度规划目标对应的第五目标距离。
如图3所示,自动驾驶的速度规划方法可包括以下步骤:
310、初始化第一距离区间。其中,第一距离区间的上限值可以是正无穷,下限值可以是负无穷。
312、若获取到f,且f小于第一距离区间的上限值,则执行步骤314。
314、判断是否获取到o;若获取到o,则执行步骤316或步骤318;若无法获取到o,则执行步骤320。
316、若获取到o,且o大于f,则将目标规划时刻对应的执行时距确定为o,并结束本流程。
318、若获取到o,且o小于f,则将f更新为第一距离区间新的上限值,将o更新为第一距离区间新的下限值。
320、若无法获取到o,则将第一距离区间的上限值更新为f,第一距离区间的下限值保持不变。
322、若无法获取到f,但获取到o,则第一距离区间的上限值保持不变,将o更新为第一距离区间的下限值。
324、得到第二距离区间。
可见,步骤312-步骤324可以通过o、f更新第一距离区间的边界值。
326、若获取到cf但无法获取到co,且cf在第二距离区间内,则将cf更新为第二距离区间新的上限值,第二距离区间的下限值保持不变。
328、若获取到co但无法获取到cf,co在第二距离区间内且co小于r,则第二距离区间的上限值保持不变,将co更新为第二距离区间新的下限值。
330、若同时获取到co和cf,且根据co和cf计算出的cmiddle在第二距离区间内,则将cmiddle更新为第二距离区间新的上限值,第二距离区间的下限值保持不变。
332、得到第三距离区间。
可见,步骤326-步骤332可通过co、cf、cmiddle中的其中一项更新第二距离区间的边界值。
334、若获取到yield,且yield处于第三距离区间内,则将yield更新为第三距离区间新的上限值,第三距离区间的下限值保持不变。
336、若获取到overtake,且overtake处于第三距离区间内,则第三距离区间的上限值保持不变,将overtake更新为第三距离区间新的下限值。
338、得到第四距离区间。
340、若同时获取到overtake和yield,且根据overtake和yield计算出的nmiddle处于第三距离区间内,则可将目标规划时刻对应的执行时距确定为nmiddle,并结束本流程。
可见,步骤330-步骤334可通过yield、overtake中的其中一项更新第三距离区间的边界值;或者,可根据nmiddle确定执行时距。
342、根据第四距离区间的边界值以及r确定目标规划时刻对应的执行时距。
其中,执行时距=min(第四距离区间的上限值,max(第四距离区间的下限值,r))。
请参阅图4,图4是一个实施例公开的一种自动驾驶的速度规划装置的结构示意图,该装置可应用于前述的任意一种车辆。如图4所示,自动驾驶的速度规划装置400可包括:获取模块410、第一确定模块420、第二确定模块430。
获取模块410,可用于获取速度规划周期包括的目标规划时刻中车辆对应的多个目标距离;多个目标距离根据不同的速度规划目标计算得到;
第一确定模块420,可用于根据多个不同的速度规划目标的优先级,从多个目标距离中确定出目标规划时刻对应的执行时距;
第二确定模块430,可用于根据执行时距确定车辆的自动驾驶速度。
在一个实施例中,多个不同的速度规划目标包括:遵守道路限速、跟随前车行驶、超车、变道、避免碰撞障碍物中的至少两个速度规划目标;
其中,跟随前车行驶的优先级以及超车优先级,均高于避免碰撞障碍物的优先级;避免碰撞障碍物的优先级,高于变道的优先级。
在一个实施例中,第一确定模块420可包括:第一更新单元、第二更新单元、第三更新单元和距离确定单元。
第一更新单元,可用于根据跟随前车行驶的速度规划目标对应的第一目标距离和/或超车的速度规划目标对应的第二目标距离,对第一距离区间的边界值进行更新,得到第二距离区间;
第二更新单元,可用于根据避免碰撞障碍物的速度规划目标对应的第三目标距离,对第二距离区间的边界值进行更新,得到第三距离区间;
第三更新单元,可用于根据变道的速度规划目标对应的第四目标距离,对第三距离区间的边界值进行更新,得到第四距离区间;
距离确定单元,可用于根据第四距离区间与遵守道路限速的速度规划目标对应的第五目标距离,确定速度规划周期中的目标规划时刻对应的执行时距;其中,执行时距为第四距离区间的上限值与边界参考值之间的较小值,边界参考值为第四距离区间的下限值与第五目标距离中的较大值。
在一个实施例中,第一更新单元,还可用于在跟随前车行驶的速度规划目标对应的第一目标距离小于第一距离区间的上限值时,将第一目标距离更新为第一距离区间新的上限值,得到第二距离区间;
或者,第一更新单元,还可用于将超车的速度规划目标对应的第二目标距离更新为第一距离区间新的下限值,得到第二距离区间。
或者,第一更新单元,还可用于在跟随前车行驶的速度规划目标对应的第一目标距离小于第一距离区间的上限值,且超车的速度规划目标对应的第二目标距离小于第一目标距离时,将第二目标距离更新为第一距离区间新的下限值,得到第二距离区间。
在一个实施例中,距离确定单元,还可用于在跟随前车行驶的速度规划目标对应的第一目标距离小于第一距离区间的上限值,且超车的速度规划目标对应的第二目标距离大于跟随前车行驶的速度规划目标对应的第一目标距离时,将第二目标距离确定为速度规划周期中的目标规划时刻对应的执行时距。
在一个实施例中,避免碰撞障碍物的速度规划目标对应的第三目标距离,包括:第三跟车目标距离或者第三超车目标距离,第三跟车目标距离与跟车时避免碰撞障碍物的速度规划目标对应,第三超车目标距离与超车时避免碰撞障碍物的速度规划目标对应。
第二更新单元,还可用于在第三跟车目标距离处于第二距离区间内时,将第三跟车目标距离更新为第二距离区间新的上限值,得到第三距离区间;或者,在第三超车目标距离处于第二距离区间内,且第三超车目标距离小于遵守道路限速的速度规划目标对应的第五目标距离时,将第三超车目标距离更新为第二距离区间新的下限值,得到第三距离区间。
在一个实施例中,避免碰撞障碍物的速度规划目标对应的第三目标距离,可包括:第三跟车目标距离和第三超车目标距离。
第二更新单元,还可用于在第三超车距离和第三跟车距离的第一平均值处于第二距离区间内时,将第一平均值更新为第二距离区间新的上限值,得到第三距离区间。
在一个实施例中,变道的速度规划目标对应的第四目标距离,包括:第四让车目标距离或者第四超车目标距离,第四让车目标距离与变道时让车的速度规划目标对应,第四超车目标距离与变道时超车的速度规划目标对应。
第三更新单元,还可用于在第四让车目标距离处于第三距离区间内时,将第四让车距离更新为第三距离区间新的上限值,得到第四距离区间;或者,在哪第四超车目标距离处于第三距离区间内时,将第四超车距离更新为第三距离区间新的下限值,得到第四距离区间。
在一个实施例中,变道的速度规划目标对应的第四目标距离,包括:第四让车目标距离和第四超车目标距离。
距离确定单元,还可用于在第四让车目标距离与第四超车目标距离的第二平均值处于第三距离区间内时,将速度规划周期中的目标规划时刻对应的跟车距离确定为第二平均值。
可见,实施本申请实施例公开的自动驾驶的速度规划装置,可以同时考虑多种不同的速度规划目标,通过不同速度规划目标分别对应的优先级,从多个目标距离中确定出执行时距,使得根据执行时距确定出的自动驾驶速度安全且舒适,能够满足复杂交通场景下对车辆行驶的安全性和舒适性的需求。
请参阅图5,图5是一个实施例公开的一种车辆的结构示意图。如图5所示,该车辆500可以包括:
存储有可执行程序代码的存储器510;
与存储器510耦合的处理器520;
其中,处理器520调用存储器510中存储的可执行程序代码,执行本申请实施例公开的任意一种自动驾驶的速度规划方法。
本申请实施例公开一种计算机可读存储介质,其存储计算机程序,其中,该计算机程序使得计算机执行本申请实施例公开的任意一种自动驾驶的速度规划方法。
本申请实施例公开一种计算机程序产品,该计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,且该计算机程序可操作来使计算机执行本申请实施例公开的任意一种自动驾驶的速度规划方法。
应理解,说明书通篇中提到的“一个实施例”或“一实施例”意味着与实施例有关的特定特征、结构或特性包括在本申请的至少一个实施例中。因此,在整个说明书各处出现的“在一个实施例中”或“在一实施例中”未必一定指相同的实施例。此外,这些特定特征、结构或特性可以以任意适合的方式结合在一个或多个实施例中。本领域技术人员也应该知悉,说明书中所描述的实施例均属于可选实施例,所涉及的动作和模块并不一定是本申请所必须的。
在本申请的各种实施例中,应理解,上述各过程的序号的大小并不意味着执行顺序的必然先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物单元,即可位于一个地方,或者也可以分布到多个网络单元上。可根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。
另外,在本申请各实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
上述集成的单元若以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可获取的存储器中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或者部分,可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储器中,包括若干请求用以使得一台计算机设备(可以为个人计算机、服务器或者网络设备等,具体可以是计算机设备中的处理器)执行本申请的各个实施例上述方法的部分或全部步骤。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质包括只读存储器(Read-Only Memory,ROM)、随机存储器(Random Access Memory,RAM)、可编程只读存储器(Programmable Read-only Memory,PROM)、可擦除可编程只读存储器(Erasable Programmable Read Only Memory,EPROM)、一次可编程只读存储器(One-time Programmable Read-Only Memory,OTPROM)、电子抹除式可复写只读存储器(Electrically-Erasable Programmable Read-Only Memory,EEPROM)、只读光盘(CompactDisc Read-Only Memory,CD-ROM)或其他光盘存储器、磁盘存储器、磁带存储器、或者能够用于携带或存储数据的计算机可读的任何其他介质。
以上对本申请实施例公开的一种自动驾驶的速度规划方法、装置、车辆及存储介质进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想。同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。