发明内容
为了解决上述问题中而提出了本申请。根据本申请一方面,提供了一种自动驾驶车辆脱困的路径规划方法,所述方法包括:
在阻塞绕行模式下,获取自动驾驶车辆的车辆方位和车周感知信息;
根据所述车周感知信息确定所述车周感知信息中的目标点和终点;
根据所述车辆方位、所述目标点和所述终点计算绕行路径;
对所述绕行路径进行检查,当所述自动驾驶车辆按所述绕行路径行驶时,不会与周围障碍物碰撞时,则输出所述绕行路径。
在本申请的一个实施例中,在阻塞绕行模式下,获取自动驾驶车辆的车辆方位和车周感知信息之前,所述方法还包括:
当所述自动驾驶车辆的车速为零时,判断所述自动驾驶车辆是否处于阻塞环境;
当所述自动驾驶车辆处于阻塞环境时,触发所述阻塞绕行模式。
在本申请的一个实施例中,根据所述车周感知信息确定所述车周感知信息中的目标点和终点,包括:
将所述车周感知信息中不存在障碍物的位置作为所述终点;
确定所述自动驾驶车辆处至所述终点处的复杂行驶通道,将所述复杂行驶通道拆分为至少两个简单行驶通道,将每两个所述简单行驶通道的连接处作为所述目标点。
在本申请的一个实施例中,根据所述车辆方位、所述目标点和所述终点计算绕行路径,包括:
基于开放化道路的避障路径规划算法进行计算,得到所述绕行路径。
在本申请的一个实施例中,基于开放化道路的避障路径规划算法进行计算,得到所述绕行路径,包括:
根据所述车辆方位、所述目标点和所述终点,通过混合A*算法规划出无碰撞路径;
通过二次凸优化算法对所述无碰撞路径进行优化,得到所述绕行路径。
在本申请的一个实施例中,对所述绕行路径进行检查,包括:
检查所述绕行路径中的静态障碍物,确定所述自动驾驶车辆是否会与所述静态障碍物发生碰撞;
计算所述自动驾驶车辆的速度曲线,确定所述自动驾驶车辆是否会与动态障碍物发生碰撞;
当所述自动驾驶车辆与所述静态障碍物和所述动态障碍物均不会发生碰撞时,确定所述自动驾驶车辆不会与所述周围障碍物发生碰撞。
在本申请的一个实施例中,输出所述绕行路径之后,所述方法还包括:
根据所述绕行路径引导所述车辆行驶至所述终点。
在本申请的一个实施例中,根据所述绕行路径引导所述车辆的行驶至所述终点之后,所述方法还包括:
判断所述驾驶车辆是否符合退出所述阻塞绕行模式的条件;
当符合退出所述阻塞绕行模式的条件时,则退出所述阻塞绕行模式。
在本申请的一个实施例中,判断所述自动驾驶车辆是否符合退出所述阻塞绕行模式的条件,包括:
重新获取所述自动驾驶车辆的当前方位和当前车周感知信息,以确定所述自动驾驶车辆的前方是否存在障碍物;
规划所述自动驾驶车辆处于非阻塞模式下的驾驶路径,以确定所述自动驾驶车辆是否会与障碍物发生碰撞;
当所述自动驾驶车辆的前方不存在障碍物,且所述自动驾驶车辆不会与障碍物发生碰撞时,确定所述自动驾驶车辆符合退出所述阻塞绕行模式的条件。
根据本申请另一方面,提供一种自动驾驶车辆脱困的路径规划装置,所述装置包括:
存储器和处理器,所述存储器上存储有由所述处理器运行的计算机程序,所述计算机程序在被所述处理器运行时,使得所述处理器执行前述的自动驾驶车辆脱困的路径规划方法。
根据本申请再一方面,提供了一种存储介质,所述存储介质上存储有计算机程序,所述计算机程序在被处理器运行时使得所述处理器执行上述自动驾驶车辆脱困的路径规划方法。
根据本申请的自动驾驶车辆脱困的路径规划方法、装置和存储介质,通过在阻塞绕行模式下,根据车辆方位、目标点和终点计算绕行路径,且当自动驾驶车辆按所述绕行路径行驶时,不会与周围障碍物碰撞时,则输出所述绕行路径,使得自动驾驶车辆在复杂道路环境下发生阻塞时,能够主动进行路径规划,以实现脱困。
具体实施方式
为了使得本申请的目的、技术方案和优点更为明显,下面将参照附图详细描述根据本申请的示例实施例。显然,所描述的实施例仅仅是本申请的一部分实施例,而不是本申请的全部实施例,应理解,本申请不受这里描述的示例实施例的限制。基于本申请中描述的本申请实施例,本领域技术人员在没有付出创造性劳动的情况下所得到的所有其它实施例都应落入本申请的保护范围之内。
目前,自动驾驶控制技术由于技术要求高、难度高、问题复杂,而成为驾驶领域中的热点。我国城市道路的特点为是,常规的大路(6车道,8车道)和高速路较少,市区内的道路较多,而更多的是城乡之间路况复杂的窄路(不超过3车道)和非机动车、机动车混行的道路。尤其对于非结构化道路,还经常会遇到临时停车、违章停车、路边摆摊占道、施工占道等非常规场景。相比常规路段,非结构化道路更加狭小,道路结构更加复杂,行人、非机动车交互更多,经常会遇到阻塞无法通行的问题。因此如何在这种环境下实现阻塞脱困对自动驾驶能力来说尤为重要,是自动驾驶能否落地城市道路的重要技术保障。
基于前述的技术问题,本申请提供了一种自动驾驶车辆脱困的路径规划方法。所述方法包括:在阻塞绕行模式下,获取自动驾驶车辆的车辆方位和车周感知信息;根据所述车周感知信息确定所述车周感知信息中的目标点和终点;根据所述车辆方位、所述目标点和所述终点计算绕行路径;对所述绕行路径进行检查,当所述自动驾驶车辆按所述绕行路径行驶时,不会与周围障碍物碰撞时,则输出所述绕行路径。通过在阻塞绕行模式下,根据车辆方位、目标点和终点计算绕行路径,且当自动驾驶车辆按所述绕行路径行驶时,不会与周围障碍物碰撞时,则输出所述绕行路径,使得自动驾驶车辆在复杂道路环境下发生阻塞时,能够主动进行路径规划,以实现脱困。
下面结合附图来详细描述根据本申请实施例的自动驾驶车辆脱困的路径规划方法的方案。在不冲突的前提下,本申请的各个实施例的特征可以相互结合。
图1示出根据本申请实施例的自动驾驶车辆脱困的路径规划方法的示意性流程图;如图1所示,根据本申请实施例的自动驾驶车辆脱困的路径规划方法100可以包括如下步骤S101、步骤S102、步骤S103和步骤S104:
在步骤S101,在阻塞绕行模式下,获取自动驾驶车辆的车辆方位和车周感知信息。
在本申请的一个实施例中,在阻塞绕行模式下,获取自动驾驶车辆的车辆方位和车周感知信息之前,所述方法还包括:
A1,当所述自动驾驶车辆的车速为零时,判断所述自动驾驶车辆是否处于阻塞环境;A2,当所述自动驾驶车辆处于阻塞环境时,触发所述阻塞绕行模式。
在本申请中,当判断是否需要触发阻塞绕行模式时,需要结合自动驾驶车辆的状态,例如,触发阻塞绕行模式的前提是自动驾驶车辆必须处于静止状态。同时,还需要结合自动驾驶车辆周围静态障碍物的状态,以判断自动驾驶辆是否真正发生阻塞还是临时停车,例如,周围的不存在障碍物或障碍物较少的情形,可能是临时停车。同时,还需要结合障碍物与自动驾驶车辆的相对位置关系,来判断前方阻塞还是侧方阻塞。通过以上判断,可以过滤掉一些特殊场景,例如,车辆在排队等红灯等临时停车的情形,以免发生错误的操作。
在步骤S102,根据所述车周感知信息确定所述车周感知信息中的目标点和终点。
在本申请的一个实施例中,根据所述车周感知信息确定所述车周感知信息中的目标点(goalpoint)和终点,包括:
B1,将所述车周感知信息中不存在障碍物的位置作为所述终点;
B2,确定所述自动驾驶车辆处至所述终点处的复杂行驶通道,将所述复杂行驶通道拆分为至少两个简单行驶通道,将每两个所述简单行驶通道的连接处作为所述目标点。
在本申请实施例中,目标点的选取,对绕行路径的计算至关重要,合理的目标点可以大幅加快计算,提升绕行成功率。目标点选取的基本原则是:将复杂的行驶通道拆分为几个简单的行驶通道的拼接,要避免将一个直接绕出来的点作为目标点,而是选一个简单的途径点,并且目标点能够一点点逼近终点。本申请实施例中自动驾驶车辆能够主动且灵活地寻找目标点,能够更加有效地进行脱困。
本申请的终点指的是自动驾驶车辆脱离阻塞环境下的位置。
在步骤S103,根据所述车辆方位、所述目标点和所述终点计算绕行路径。
在本申请的一个实施例中,根据所述车辆方位、所述目标点和所述终点计算绕行路径,包括:基于开放化道路(openspace)的避障路径规划算法进行计算,得到所述绕行路径。
在本申请实施例中,实现绕行路径的计算的基本算法是一种基于openspace的避障路径规划,传统技术中的很多方法都可以用于实现基于openspace的避障路径规划。例如,其中一种经过实践验证比较可靠的方法为:首先,设置合理的启发函数,通过混合A*(hybridA*)算法搜索出一条粗糙的无碰撞路径,然后通过二次凸优化(QP)的方法,得到一条光滑的无碰撞的最终路径。
在一个具体的示例中,基于开放化道路的避障路径规划算法进行计算,得到所述绕行路径,包括:
C1,根据所述车辆方位、所述目标点和所述终点,通过混合A*(hybridA*)算法规划出无碰撞路径;
C2,通过二次凸优化(QP)算法对所述无碰撞路径进行优化,得到所述绕行路径。
在步骤S104,对所述绕行路径进行检查,当所述自动驾驶车辆按所述绕行路径行驶时,不会与周围障碍物碰撞时,则输出所述绕行路径。
在本申请的一个实施例中,对所述绕行路径进行检查,包括:
D1,检查所述绕行路径中的静态障碍物,确定所述自动驾驶车辆是否会与所述静态障碍物发生碰撞;
D2,计算所述自动驾驶车辆的速度曲线,确定所述自动驾驶车辆是否会与动态障碍物发生碰撞;
D3,当所述自动驾驶车辆与所述静态障碍物和所述动态障碍物均不会发生碰撞时,确定所述自动驾驶车辆不会与所述周围障碍物发生碰撞。
本申请实施例中,在规划完成绕行路径之后,还可以对绕行路径进行检查,以确定绕行路径的可行性,保证脱困的成功率。
在本申请的一个实施例中,输出所述绕行路径之后,所述方法还包括:根据所述绕行路径引导所述车辆行驶至所述终点。
在一个示例中,根据所述绕行路径引导所述车辆的行驶至所述终点之后,所述方法还包括:
E1,判断所述驾驶车辆是否符合退出所述阻塞绕行模式的条件;
E2,当符合退出所述阻塞绕行模式的条件时,则退出所述阻塞绕行模式。
在一个示例中,判断所述自动驾驶车辆是否符合退出所述阻塞绕行模式的条件,包括:
F1,重新获取所述自动驾驶车辆的当前方位和当前车周感知信息,以确定所述自动驾驶车辆的前方是否存在障碍物;
F2,规划所述自动驾驶车辆处于非阻塞模式下的驾驶路径,以确定所述自动驾驶车辆是否会与障碍物发生碰撞;
F3,当所述自动驾驶车辆的前方不存在障碍物,且所述自动驾驶车辆不会与障碍物发生碰撞时,确定所述自动驾驶车辆符合退出所述阻塞绕行模式的条件。
在本申请中,当脱困成功后,自动驾驶车辆将返回到正常驾驶模式下进行驾驶。因此,当自动驾驶车辆到达终点后,将进行判断,以确认是否退出阻塞绕行模式,如果满足退出阻塞绕行模式的条件,将退出阻塞绕行模式,返回到正常驾驶模式,如果不满足退出阻塞绕行模式的条件,则在阻塞绕行模式下,重新规划绕行路径。确认阻塞绕行模式一定要满足以下条件:1、前方没有阻塞障碍物;2、切换回的正常模式状态是可行的。因此,需要规划一次在正常模式下的规划路线,以确定自动驾驶车辆在正常模式下行驶不会与障碍物发生碰撞。
本申请实施例通过在阻塞绕行模式下,根据车辆方位、目标点和终点计算绕行路径,且当自动驾驶车辆按所述绕行路径行驶时,不会与周围障碍物碰撞时,则输出所述绕行路径,使得自动驾驶车辆在复杂道路环境下发生阻塞时,能够主动进行路径规划,以实现脱困。
下面结合图2对本申请的自动驾驶车辆脱困的路径规划装置进行描述,其中,图2示出根据本申请实施例的自动驾驶车辆脱困的路径规划装置的示意性框图。
如图2所示,自动驾驶车辆脱困的路径规划装置200包括:一个或多个存储器201和一个或多个处理器202,所述存储器201上存储有由所述处理器202运行的计算机程序,所述计算机程序在被所述处理器202运行时,使得所述处理器202执行前文所述的自动驾驶车辆脱困的路径规划方法。
装置200可以是可以通过软件、硬件或者软硬件结合的方式实现自动驾驶车辆脱困的路径规划方法的计算机设备的部分或者全部。
如图2所示,自动驾驶车辆脱困的路径规划装置200包括一个或多个存储器201、一个或多个处理器202、显示器(未示出)和通信接口等,这些组件通过总线系统和/或其它形式的连接机构(未示出)互连。应当注意,图2所示的自动驾驶车辆脱困的路径规划装置200的组件和结构只是示例性的,而非限制性的,根据需要,自动驾驶车辆脱困的路径规划装置200也可以具有其他组件和结构。
存储器201用于存储本申请方法运行过程中产生的各种数据和可执行程序指令,例如用于存储各种应用程序或实现各种具体功能的算法。可以包括一个或多个计算机程序产品,所述计算机程序产品可以包括各种形式的计算机可读存储介质,例如易失性存储器和/或非易失性存储器。所述易失性存储器例如可以包括随机存取存储器(RAM)和/或高速缓冲存储器(cache)等。所述非易失性存储器例如可以包括只读存储器(ROM)、硬盘、闪存等。
处理器202可以是中央处理单元(CPU)、图像处理单元(GPU)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或者具有数据处理能力和/或指令执行能力的其它形式的处理单元,并且可以装置200中的其它组件以执行期望的功能。
在一个示例中,自动驾驶车辆脱困的路径规划装置200还包括输出装置可以向外部(例如用户)输出各种信息(例如图像或声音),并且可以包括显示装置、扬声器等中的一个或多个。
通信接口是可以是目前已知的任意通信协议的接口,例如有线接口或无线接口,其中,通信接口可以包括一个或者多个串口、USB接口、以太网端口、WiFi、有线网络、DVI接口,设备集成互联模块或其他适合的各种端口、接口,或者连接。
此外,根据本申请实施例,还提供了一种存储介质,在所述存储介质上存储了程序指令,在所述程序指令被计算机或处理器运行时用于执行本申请实施例的自动驾驶车辆脱困的路径规划方法的相应步骤。所述存储介质例如可以包括智能电话的存储卡、平板电脑的存储部件、个人计算机的硬盘、只读存储器(ROM)、可擦除可编程只读存储器(EPROM)、便携式紧致盘只读存储器(CD-ROM)、USB存储器、或者上述存储介质的任意组合。
本申请实施例的自动驾驶车辆脱困的路径规划装置和存储介质,由于能够实现前述的自动驾驶车辆脱困的路径规划方法,因此具有和前述的自动驾驶车辆脱困的路径规划方法相同的优点。
尽管这里已经参考附图描述了示例实施例,应理解上述示例实施例仅仅是示例性的,并且不意图将本申请的范围限制于此。本领域普通技术人员可以在其中进行各种改变和修改,而不偏离本申请的范围和精神。所有这些改变和修改意在被包括在所附权利要求所要求的本申请的范围之内。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本申请的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本申请并帮助理解各个发明方面中的一个或多个,在对本申请的示例性实施例的描述中,本申请的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该本申请的方法解释成反映如下意图:即所要求保护的本申请要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如相应的权利要求书所反映的那样,其发明点在于可以用少于某个公开的单个实施例的所有特征的特征来解决相应的技术问题。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本申请的单独实施例。
本领域的技术人员可以理解,除了特征之间相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本申请的范围之内并且形成不同的实施例。例如,在权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本申请的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本申请实施例的一些模块的一些或者全部功能。本申请还可以实现为用于执行这里所描述的方法的一部分或者全部的装置程序(例如,计算机程序和计算机程序产品)。这样的实现本申请的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
以上所述,仅为本申请的具体实施方式或对具体实施方式的说明,本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。本申请的保护范围应以权利要求的保护范围为准。