发明内容
本发明实施例的目的是提供一种原地转向车辆的局部路径规划方法及装置,以解决现有技术中的直接将符合阿克曼约束的车辆的空间探索算法应用在原地转向车辆中所导致的搜索出的圆心路径无法行驶的问题。
为解决上述问题,第一方面,本发明提供了一种原地转向车辆的局部路径规划方法,所述原地转向车辆的局部路径规划方法包括:
获取全局路径和车辆的当前位置信息;所述全局路径包括车辆行驶的起点和终点;
根据所述当前位置信息、所述起点和所述终点,确定当前探索圆;
判断所述当前探索圆的半径是否小于预设的标准探索半径;所述当前探索圆具有位置信息和圆心朝向信息;
当当前探索圆的半径小于预设的标准探索半径时,在预设的采样角度区间内,以所述当前探索圆的位置信息为中心点,以所述当前探索圆的圆心朝向信息为基准线,在所述基准线的两侧以递增的夹角进行采样;所述夹角为经过所述中心点与所述基准线的夹角;
判断每次以递增的夹角进行采样后,所述车辆与障碍物是否存在碰撞;
当存在碰撞时,确定发生碰撞时所对应的夹角为目标夹角;
根据所述目标夹角对应的上一次采样的夹角,确定目标采样角度区间;
以所述当前探索圆为母探索圆,在所述目标采样角度区间内,进行空间探索。
在一种可能的实现方式中,所述标准探索圆的半径为车辆原地旋转时,以后轴中心为圆心的旋转半径。
在一种可能的实现方式中,所述判断每次以递增的夹角进行采样后,所述车辆与障碍物是否存在碰撞具体包括:
在每次采样时,根据所述夹角,确定车辆的矩形框;其中,每次采样的所述夹角具体为所述中心点与所述矩形框的第一角点的连线,与所述基准线的夹角;当在所述基准线的左侧进行采样时,所述第一角点为车头左侧所对应的角点,当在所述基准线的右侧进行采样时,所述第一角点为车头右侧所对应的角点;
对所述矩形框进行膨胀处理;
获取障碍物信息;
将所述障碍物信息和膨胀处理后的所述矩形框进行碰撞检测,判断所述矩形框中是否存在障碍物信息;
当所述矩形框中存在障碍物信息时,确定车辆与障碍物存在碰撞。
在一种可能的实现方式中,所述方法之后还包括:
确定所述母探索圆的子探索圆;
以所述子探索圆作为当前探索圆,确定对应的目标采样角度区间,直至得到空间探索结果;所述空间探索结果包括起点、母探索圆的圆心、多级子探索圆的圆心和终点;
根据所述起点、所述母探索圆的圆心、所述多级子探索圆的圆心和所述终点,进行连线,得到圆心路径;
对所述圆心路径进行平滑处理,得到局部规划路径。
在一种可能的实现方式中,所述判断所述当前探索圆的半径是否小于预设的标准探索半径之后,所述方法还包括:
当当前探索圆的半径不小于预设的标准探索半径且小于最大探索圆的半径时,根据所述预设的采样角度区间内,进行空间探索;所述最大空间探索圆的半径是所述标准探索圆的半径的n倍数,n为大于1的实数。
第二方面,本发明提供了一种原地转向车辆的局部路径规划装置,所述局部路径规划装置包括:
获取单元,所述获取单元用于获取全局路径和车辆的当前位置信息;所述全局路径包括车辆行驶的起点和终点;
确定单元,所述确定单元用于根据所述当前位置信息、所述起点和所述终点,确定当前探索圆;
判断单元,所述判断单元用于判断所述当前探索圆的半径是否小于预设的标准探索半径;所述当前探索圆具有位置信息和圆心朝向信息;
采样单元,所述采样单元用于当当前探索圆的半径小于预设的标准探索半径时,在预设的采样角度区间内,以所述当前探索圆的位置信息为中心点,以所述当前探索圆的圆心朝向信息为基准线,在所述基准线的两侧以递增的夹角进行采样;所述夹角为经过所述中心点与所述基准线的夹角;
所述判断单元还用于判断每次以递增的夹角进行采样后,所述车辆与障碍物是否存在碰撞;
所述确定单元还用于,当存在碰撞时,确定发生碰撞时所对应的夹角为目标夹角;
所述确定单元还用于,根据所述目标夹角对应的上一次采样的夹角,确定目标采样角度区间;
探索单元,所述探索单元用于以所述当前探索圆为母探索圆,在所述目标采样角度区间内,进行空间探索。
在一种可能的实现方式中,所述装置还包括平滑单元;
所述平滑单元用于,当当前探索圆的半径不小于预设的标准探索半径且小于最大探索圆的半径时,根据所述预设的采样角度区间内,进行空间探索;所述最大空间探索圆的半径是所述标准探索圆的半径的n倍数,n为大于1的实数。
第三方面,本发明提供了一种设备,包括存储器和处理器,存储器用于存储程序,处理器用于执行第一方面任一所述的方法。
第四方面,本发明提供了一种包含指令的计算机程序产品,当计算机程序产品在计算机上运行时,使得计算机执行如第一方面任一所述的方法。
第五方面,本发明提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如第一方面任一所述的方法。
通过应用本发明实施例提供的局部路径规划方法,适配原地转向车辆,对空间探索圆的采样方式进行优化,增加标准探索圆的半径进行判别,再利用采样角度上的车框碰撞校验,保证了最终圆心路径的合理性,从而对空间探索得到的圆心路径加以利用,使得启发式搜索失败的情况下仍有规划路径使用,增加了路径规划的成功几率。
具体实施方式
下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为便于描述,附图中仅示出了与有关发明相关的部分。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
现有技术中的通过空间探索得到一条由探索圆组成的“探索走廊”,即在该区域内是不存在碰撞风险的,然后在该“探索走廊”中进行启发式搜索,得到一条符合阿克曼转向约束的路径。启发式搜索其实完全是为了使得路径能够符合阿克曼约束,而对于原地转向车辆来讲,其不需要符合阿克曼约束,因此启发式搜索针对原地转向车辆来说有些冗余,而本申请主要针对原地转向车辆进行局部路径规划,以规划出一条符合原地转向车辆的局部路径,该局部路径更加激进,甚至存在“折线”,从而增强了原地转向车辆的避障能力。
图3为本发明实施例一提供的原地转向车辆的局部路径规划方法流程示意图,本申请的执行主体为具有计算功能的终端、服务器或者处理器。本申请以将该方法应用在无人驾驶车辆为例进行说明,当将该方法应用在无人驾驶车辆时,该方法的执行主体为自动驾驶车辆控制单元(Automated Vehicle Control Unit,AVCU),即无人驾驶车辆的中央处理器相当于无人驾驶车辆的“大脑”,此处的无人驾驶车辆,专指具有原地转向能力的无人驾驶车辆。本申请还包括以下步骤:
步骤310,获取全局路径和车辆的当前位置信息;全局路径包括车辆行驶的起点和终点;
其中,全局路径,指车辆离线或实时规划的全局路径,该路径不考虑道路上临时出现的障碍物。全局路径用来指导路径规划算法的规划目标,保证车辆在躲避障碍的同时,能够返回既定道路。
示例而非限定,可以通过如下方法获取到全局路径,首先,接收服务器发送的行程的起点和行程的终点;然后,根据行程的起点和行程的终点,调用环境地图文件;最后,根据行程的起点、行程的终点和环境地图文件,生成全局路径。
其中,服务器可以接收用户终端发送的行程的起点或终点,环境地图文件可以是存储在服务器中,比如,车辆将包括自车当前位置的请求消息发送给服务器,服务器根据自车当前位置,将包括自车当前位置、起点和终点的环境地图文件发送给车辆。也可以是车辆中存储有环境地图文件。
车辆从服务器获取到行程的起点和终点,然后,根据环境地图文件,进行路径规划,生成全局路径。
步骤320,根据当前位置信息、起点和终点,确定当前探索圆;
其中,车辆行驶过程中,会实时的进行局部路径规划,以进行避障行驶。在一个实现方式中,车辆可以通过空间探索,进行局部路径规划。
具体的,以自车当前位置为圆心为母探索圆的圆心,以设定的最小半径为母探索圆的半径,逐渐扩大半径,在不超过设定的最大半径前提下,在当前母探索圆圆周上采样得到子探索圆的圆心,再继续以该子探索圆作为母探索圆,确定其子探索圆的圆心。
具体的,本发明在现有技术的基础上,设计了如图4所示的空间探索圆,其中,灰色矩形框表示车辆模型,车辆模型主要包括车辆的长宽、车辆轴距、最小转弯半径、加速度极限值、安全距离等固有参数,其一般在配置文件中定义。黑色圆点表示车辆后轴中心位置,最小圆表示“最小探索圆”,其半径Rmin与车辆模型的半车宽相同,第二小圆表示“标准探索圆”,其半径Rstandard为车辆模型以其后轴中心为圆心,原地旋转时的旋转半径;最大圆表示“最大探索圆”,其半径Rmax为n倍的Rstandard,n>1,且n为实数,本申请中,根据多次实验,n取值为1.5。
步骤330,判断当前探索圆的半径是否小于预设的标准探索半径;当前探索圆具有位置信息和圆心朝向信息;
在探索过程中,该探索是在车辆坐标系下进行的,在车辆坐标系中,以自车车后轴的中点为原点,以自车前向为x轴,左侧为y轴。
当前探索圆是由圆心与半径确定的,圆心不仅包含位置信息,还包含朝向角度信息。空间探索圆半径表示圆心距离最近障碍物的最大距离。朝向角信息为车辆坐标系下的角度。
具体的,对于起点探索圆来说,其朝向就是起点,即自车当前位置的朝向;对于终点探索圆来说,其朝向就是终点位置的朝向;对于探索过程中的探索圆,其朝向就是生成时,母探索圆圆心指向子探索圆圆心的方向,也可以理解为假定车辆沿着圆心路径走时,到达该子探索圆位置时的朝向。
在进行空间探索时,会先判断当前探索圆的半径Rcurrent与标准探索半径Rstandard的关系,当Rcurrent∈[Rstandard,Rmax]时,探索示意图如图5所示,其中,圆形表示当前探索圆,实线边框矩形表示后轴中心位于探索圆圆心,且车头朝向为沿着当前探索圆的圆心朝向的车辆模型;实线边框矩形的两侧虚线矩形框表示车辆以其后轴中心可旋转到达的位置;δ表示当前探索圆的采样范围。显然在当前探索圆内,车辆可以旋转任意角度,δ可以为360°,但一般为了让车辆尽量前进行驶,往往对采样范围加以限制,以保证其子探索圆位于前进方向上,因此一般限制δ<180°。
当Rcurrent∈[Rmin,Rstandard)时,探索示意图如图6所示,其中,圆形表示当前探索圆,黑色矩形框表示障碍物。显然在该场景下,虚线矩形框所表示的车辆以其后轴中心可旋转到达的位置受限,因此采样角度区间δ会相应受限。这意味着此时如果不对δ进行限制,则后续使用圆心路径作为规划路径使用时,在该探索圆圆心进行原地转向操作时会发生碰撞。
步骤340,当当前探索圆的半径小于预设的标准探索半径时,在预设的采样角度区间内,以当前探索圆的位置信息为中心点,以当前探索圆的圆心朝向信息为基准线,在基准线的两侧以递增的夹角进行采样;夹角为经过中心点与基准线的夹角;
其中,由于希望能够使用探索圆的圆心路径,因此需要考虑如果车辆沿着圆心路径进行原地转向时,是否会发生碰撞。所以在当前探索圆的半径小于标准探索圆的半径的情况下,通过一点一点旋转,既均匀采样的方式校验车辆矩形框到底有没有发生碰撞,如果发生了碰撞那么就要相应的缩小采样角度区间δ的范围,从而得到目标夹角,这样在目标夹角的范围内,生成子探索圆时,不用担心车辆实际旋转的时候会发生碰撞了。
可以理解的是,当当前探索圆的半径大于标准探索圆的半径时不需要检查,因为车辆可以任意旋转而不发生碰撞。
具体的,此处的采样,指的是均匀采样。均匀采样即假定车辆在当前圆心位置朝向开始,沿顺、逆时针分别多次旋转固定的角度,得到一系列渐变的不同朝向的车辆矩形框。从而根据车辆硬件条件以及出于“尽量前进姿态行进”考量设定的最大范围。
在一个示例中,夹角可以逐渐是以10°进行递增,比如10°,20°,30°……,假设当前探索圆朝向为0°,预设的采样角度区间δ为180°,即取值范围[-90°,90°],在采样角度区间δ内以10°为单位进行均匀采样。得到:
-90°,-80°,-70°,-60°,-50°,.....-10°,0°,10°,.......50°,60°,70°,80°,90°。
步骤350,判断每次以递增的夹角进行采样后,车辆与障碍物是否存在碰撞;
其中,车框的碰撞校验一般是校验矩形边框内是否存在障碍物点,是一种业内常用的碰撞校验处理。
示例而非限定,碰撞校验的步骤为:
继续参见图6,在每次采样时,根据夹角,确定车辆的矩形框;其中,每次采样的夹角具体为中心点与矩形框的第一角点的连线,与基准线的夹角;当在基准线的左侧进行采样时,第一角点为车头左侧所对应的角点,当在基准线的右侧进行采样时,第一角点为车头右侧所对应的角点对矩形框进行膨胀处理;获取障碍物信息;将障碍物信息和膨胀处理后的矩形框进行碰撞检测,判断矩形框中是否存在障碍物信息;当矩形框中存在障碍物信息时,确定车辆与障碍物存在碰撞。
其中,车辆在行驶过程中,可以实时的获取障碍物信息,障碍物信息主要通过从上游节点,如感知、预测等节点获取障碍物位置、速度信息,将这些信息统一储存并按照距自车的相对距离大小进行排序。
步骤360,当存在碰撞时,确定发生碰撞时所对应的夹角为目标夹角;
步骤370,根据目标夹角对应的上一次采样的夹角,确定目标采样角度区间;
即在每个采样角度上,从中间至两侧校验车框碰撞。假设左侧0~-90°均没有碰撞,而右侧0-30°无碰撞,校验到40°的时候发生了碰撞,那么碰撞校验后的目标采样角度区间就是[-90°,30°]。
步骤380,以当前探索圆为母探索圆,在目标采样角度区间内,进行空间探索。
从而,继续在目标采样角度区间内进行探索。
进行上述优化后,空间探索得到的圆心路径即为一条原地转向车辆能够安全行驶的路径解,在搜索走廊中进行启发式搜索时,即便启发式搜索失败,圆心路径也将作为备用解输出,保证路径规划算法的成功率。
通过应用本发明前后的对比图分别如图7和图8所示,在图7和图8中,黑色小矩形表示障碍物,灰色矩形框表示车辆模型,其后轴中心与起点探索圆的圆心重合,左侧的深色圆和右侧的深色圆分别表示起点探索圆和终点探索圆,中间的一串圆表示最终的探索走廊,黑色的小圆点表示探索走廊每个圆所对应的圆心,将圆心依次连接可以得到圆心路径,在没有采用本申请的局部路径规划方法之前,空间探索由于没有对半径小于标准探索圆的半径的探索圆进行采样范围筛选,导致直接生成了朝向终点侧的探索走廊以及圆心路径,在车辆跟踪圆心路径时,需要首先原地转向至路径朝向方向,显然由于障碍物的存在,导致车辆无论顺、逆时针旋转均无法达到路径朝向的方向,生成的路径实际无法使用。在采用本申请的局部路径规划方法之后,在空间探索时由于根据碰撞检测限制了采样范围,因此不会生成直接朝向终点的探索走廊,车辆原地转向时不会发生碰撞,圆心路径更加合理。
进一步的,在步骤380之后,还包括:
确定母探索圆的子探索圆;以子探索圆作为当前探索圆,确定对应的目标采样角度区间,直至得到空间探索结果;空间探索结果包括起点、母探索圆的圆心、多级子探索圆的圆心和终点;根据起点、母探索圆的圆心、多级子探索圆的圆心和终点,进行连线,得到圆心路径;对圆心路径进行平滑处理,得到局部规划路径。
其中,可以使用通过平滑拟合方式,比如B-样条拟合,均值滤波等,对圆心路径加以平滑,得到最终的规划路径如图9所示。在图9中,浅色曲线表示平滑后的圆心路径,车辆仅需要在起始位置执行原地转向动作,旋转至路径方向,后续行走时不需要其余的原地转向动作,保证了行走的连续性。
通过应用本发明实施例提供的局部路径规划方法,适配原地转向车辆,对空间探索圆的采样方式进行优化,增加标准探索圆的半径进行判别,再利用采样角度上的车框碰撞校验,保证了最终圆心路径的合理性,从而对空间探索得到的圆心路径加以利用,使得启发式搜索失败的情况下仍有规划路径使用,增加了路径规划的成功几率。
图10为本发明实施例二提供的原地转向车辆的局部路径规划装置结构示意图,该原地转向车辆的局部路径规划装置应用在原地转向车辆的局部路径规划方法中,如图10所示,局部路径规划装置包括:获取单元1010,确定单元1020,判断单元1030,采样单元1040和探索单元1050。
获取单元1010用于获取全局路径和车辆的当前位置信息;全局路径包括车辆行驶的起点和终点;
确定单元1020用于根据当前位置信息、起点和终点,确定当前探索圆;
判断单元1030用于判断当前探索圆的半径是否小于预设的标准探索半径;当前探索圆具有位置信息和圆心朝向信息;
采样单元1040用于当当前探索圆的半径小于预设的标准探索半径时,在预设的采样角度区间内,以当前探索圆的位置信息为中心点,以当前探索圆的圆心朝向信息为基准线,在基准线的两侧以递增的夹角进行采样;夹角为经过中心点与基准线的夹角;
判断单元1030还用于判断每次以递增的夹角进行采样后,车辆与障碍物是否存在碰撞;
确定单元1020还用于,当存在碰撞时,确定发生碰撞时所对应的夹角为目标夹角;
确定单元1020还用于,根据目标夹角对应的上一次采样的夹角,确定目标采样角度区间;
探索单元1050用于以当前探索圆为母探索圆,在目标采样角度区间内,进行空间探索。
进一步的,在一种可能的实施方案中,标准探索圆的半径为车辆原地旋转时,以后轴中心为圆心的旋转半径。
进一步的,在一种可能的实施方案中,判断单元具体用于:
在每次采样时,根据夹角,确定车辆的矩形框;其中,每次采样的夹角具体为中心点与矩形框的第一角点的连线,与基准线的夹角;当在基准线的左侧进行采样时,第一角点为车头左侧所对应的角点,当在基准线的右侧进行采样时,第一角点为车头右侧所对应的角点;
对矩形框进行膨胀处理;
获取障碍物信息;
将障碍物信息和膨胀处理后的矩形框进行碰撞检测,判断矩形框中是否存在障碍物信息;
当矩形框中存在障碍物信息时,确定车辆与障碍物存在碰撞。
进一步的,在一种可能的实施方案中,本申请的局部路径规划方法还包括平滑单元1060;
确定单元还用于,确定母探索圆的子探索圆;
以子探索圆作为当前探索圆,确定对应的目标采样角度区间,直至得到空间探索结果;空间探索结果包括起点、母探索圆的圆心、多级子探索圆的圆心和终点;
根据起点、母探索圆的圆心、多级子探索圆的圆心和终点,进行连线,得到圆心路径;
平滑单元1060用于对圆心路径进行平滑处理,得到局部规划路径。
进一步的,在一种可能的实施方案中,探索单元还用于,当当前探索圆的半径不小于预设的标准探索半径且小于最大探索圆的半径时,根据预设的采样角度区间内,进行空间探索;最大空间探索圆的半径是标准探索圆的半径的n倍数,n为大于1的实数。
通过应用本发明实施例提供的原地转向车辆的局部路径规划装置,适配原地转向车辆,对空间探索圆的采样方式进行优化,增加标准探索圆的半径进行判别,再利用采样角度上的车框碰撞校验,保证了最终圆心路径的合理性,从而对空间探索得到的圆心路径加以利用,使得启发式搜索失败的情况下仍有规划路径使用,增加了路径规划的成功几率。
本发明实施例三提供了一种设备,包括存储器和处理器,存储器用于存储程序,存储器可通过总线与处理器连接。存储器可以是非易失存储器,例如硬盘驱动器和闪存,存储器中存储有软件程序和设备驱动程序。软件程序能够执行本发明实施例提供的上述方法的各种功能;设备驱动程序可以是网络和接口驱动程序。处理器用于执行软件程序,该软件程序被执行时,能够实现本发明实施例一提供的方法。
本发明实施例四提供了一种包含指令的计算机程序产品,当计算机程序产品在计算机上运行时,使得计算机执行本发明实施例一提供的方法。
本发明实施例五提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现本发明实施例一提供的方法。
专业人员应该还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。