掌桥专利:专业的专利平台
掌桥专利
首页

一种无人车路径规划方法、客户端及服务器

文献发布时间:2023-06-19 11:42:32


一种无人车路径规划方法、客户端及服务器

技术领域

本发明涉及寻路算法技术领域,尤其涉及一种无人车路径规划方法、客户端、服务器及计算机可读存储介质。

背景技术

无人驾驶汽车是通过车载传感系统感知道路环境,自动规划行车路线并控制车辆到达预定目标的智能汽车。路径规划技术是无人驾驶汽车中关键技术之一,主要使无人车能够快速平稳到达目标地。其中需要考虑无人车以怎样的路径到达设定目标地,能否以最优的路径,能否遵守交通规则,以能否越过障碍物等。

在对无人车的路径规划中,A*算法是常用的一种无人车路径规划算法。A*算法需要给定地图信息,将地图信息栅格化,遍历周围节点寻找最优路径。但是A*算法适用于在平坦地带进行路径规划,即需要假定地面高度恒定,对于山路环境或者高低起伏的道路环境,通过常规的A*算法规划的路径可能会存在路面高度变化突变,导致无人车无法通行的情况。

发明内容

本发明提供了一种无人车路径规划方法、客户端、服务器及计算机可读存储介质,可以有效解决上述问题。

本发明是这样实现的:

本发明提供一种无人车路径规划方法,包括如下步骤:

S1,将地图导入无人车系统中,并将所述地图栅格化;

S2,在所述栅格化地图中设定起始节点和目标节点,基于改进的A*算法,在所述起始节点和目标节点之间的栅格节点中进行逐步遍历;

S3,逐步遍历相邻所述栅格节点间的平均高程值,得到满足车辆运动学的多条规划路径;

S4,计算所述多条规划路径的路径代价函数值,获取最小路径代价函数值所对应的规划路径为最优路径。

作为进一步改进的,在步骤S1中,所述地图为三维地图模型,且所述地图栅格化后得到每个栅格节点的尺寸和平均高程值。

作为进一步改进的,在步骤S2中,所述基于改进的A*算法,在所述起始节点和目标节点之间的栅格节点中进行逐步遍历的步骤包括:

基于路径代价函数:F(n)=G(n)+H(n)+C(n),在所述起始节点和目标节点之间的栅格节点中进行逐步遍历;其中,所述G(n)为所述栅格化地图中无人车从起始节点到当前节点的实际代价;所述H(n)为所述栅格化地图中无人车从当前节点到目标节点的估算代价;所述C(n)为曲率代价函数,用来计算所述栅格化地图中相邻栅格节点的曲率代价。

作为进一步改进的,所述曲率代价通过公式

作为进一步改进的,定义所述车辆运动学约束的无人车可通过高程值阈值为H,且在步骤S3中,所述逐步遍历相邻所述栅格节点间的平均高程值的步骤包括:

当|Z

作为进一步改进的,在步骤S4中,所述计算所述多条规划路径的路径代价函数值的步骤包括:

通过CUDA调用GPU加速多线程,计算每个所述栅格节点的路径代价函数,从而获得每条规划路径的路径代价函数值。

本发明进一步提供一种客户端,所述客户端包括存储器和处理器,所述存储器上存储有可在所述处理器上运行的数据处理程序,所述数据处理程序被所述处理器执行时实现如下步骤:

S1,将地图导入无人车系统中,并将所述地图栅格化;

S2,在所述栅格化地图中设定起始节点和目标节点,基于改进的A*算法,在所述起始节点和目标节点之间的栅格节点中进行逐步遍历;

S3,逐步遍历相邻所述栅格节点间的平均高程值,得到满足车辆运动学的多条规划路径;

S4,计算所述多条规划路径的路径代价函数值,获取最小路径代价函数值所对应的规划路径为最优路径。

本发明进一步提供一种服务器,所述服务器包括存储器和处理器,所述存储器上存储有可在所述处理器上运行的数据处理程序,所述数据处理程序被所述处理器执行时实现如下步骤:

S1,将地图导入无人车系统中,并将所述地图栅格化;

S2,在所述栅格化地图中设定起始节点和目标节点,基于改进的A*算法,在所述起始节点和目标节点之间的栅格节点中进行逐步遍历;

S3,逐步遍历相邻所述栅格节点间的平均高程值,得到满足车辆运动学的多条规划路径;

S4,计算所述多条规划路径的路径代价函数值,获取最小路径代价函数值所对应的规划路径为最优路径。

本发明进一步提供一种计算机可读存储介质,所述计算机可读存储介质上存储有数据处理程序,所述数据处理程序可被一个或者多个处理器执行,以实现以上所述的无人车路径规划方法的步骤。

本发明的有益效果是:

其一:本发明提供了一种无人车路径规划方法、客户端、服务器及计算机可读存储介质,在无人车系统中导入三维地图模型,并将地图栅格化,在栅格化的地图中确认起始节点和目标节点,基于改进的A*算法,逐步遍历起始节点和目标节点之间的栅格节点;其中,考虑每个相邻栅格节点之间的高程差值,并且基于车辆运动学约束,判断无人车能否从一个栅格节点进入下个栅格节点,最终得到多条能够通行的规划路径,并计算每个规划路径的路径代价函数值,其中路径代价函数值最小的即为最优路径;该路径规划方法可以考虑山路环境或者高低起伏的道路环境,得到一条考虑车辆运动学约束的最优路径,使车辆运动行驶更加平稳。

其二:本发明中通过CUDA调用GPU加速多线程的计算方式,计算每个所述栅格节点的路径代价函数,从而获得每条规划路径的路径代价函数值;有效提高了路径代价函数值的计算效率,降低路径规划时间,可以快速获取考虑路面高低起伏的最优路径规划。

附图说明

为了更清楚地说明本发明实施方式的技术方案,下面将对实施方式中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1是本发明实施例提供的一种无人车路径规划方法的流程图。

具体实施方式

为使本发明实施方式的目的、技术方案和优点更加清楚,下面将结合本发明实施方式中的附图,对本发明实施方式中的技术方案进行清楚、完整地描述,显然,所描述的实施方式是本发明一部分实施方式,而不是全部的实施方式。基于本发明中的实施方式,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施方式,都属于本发明保护的范围。因此,以下对在附图中提供的本发明的实施方式的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施方式。

在本发明的描述中,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本发明的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。

参照图1所示,本发明实施例提供了一种无人车路径规划方法,包括:

S1,将地图导入无人车系统中,并将所述地图栅格化;

S2,在所述栅格化地图中设定起始节点和目标节点,基于改进的A*算法,在所述起始节点和目标节点之间的栅格节点中进行逐步遍历;

S3,逐步遍历相邻所述栅格节点间的平均高程值,得到满足车辆运动学的多条规划路径;

S4,计算所述多条规划路径的路径代价函数值,获取最小路径代价函数值所对应的规划路径为最优路径。

作为进一步改进的,在步骤S1中,所述地图为三维地图模型,且所述地图栅格化后得到每个栅格节点的尺寸和平均高程值。具体的,本实施例中导入三维地图模型后将其栅格化,其中,栅格节点的边长不小于10cm,每个栅格节点的高程值为栅格节点四个角点处的平均高程值。

作为进一步改进的,在步骤S2中,所述基于改进的A*算法,在所述起始节点和目标节点之间的栅格节点中进行逐步遍历的步骤包括:

基于路径代价函数:F(n)=G(n)+H(n)+C(n),在所述起始节点和目标节点之间的栅格节点中进行逐步遍历;其中,所述G(n)为所述栅格化地图中无人车从起始节点到当前节点的实际代价;所述H(n)为所述栅格化地图中无人车从当前节点到目标节点的估算代价;所述C(n)为曲率代价函数,用来计算所述栅格化地图中相邻栅格节点的曲率代价。

具体的,本实施中的H(n)采用欧几里得距离计算得到,即在地图中无人车可以朝着任意方向行驶。欧几里得距离指两个栅格节点之间的直线距离。此时,本实施例中考虑栅格节点的高程值,其计算公式为:

作为进一步改进的,所述曲率代价通过公式

具体的,

作为进一步改进的,定义所述车辆运动学约束的无人车可通过高程值阈值为H,且在步骤S3中,所述逐步遍历相邻所述栅格节点间的平均高程值的步骤包括:

当|Z

具体的,所述车辆运动学约束的影响因素为无人车的轮胎直径、无人车车身尺寸以及无人车的转弯半径等,在本实施中,定义了无人车可通过高程值阈值为H,高程值阈值为H与无人车的轮胎直径、无人车车身尺寸以及无人车的转弯半径等有关,避免无人车通过规划路径时车身上下颠簸不平稳。当相邻栅格节点之间的高程差值超出了高程值阈值H时,此时,无人车可其他相邻的未超出高程值阈值H的栅格节点通过,并继续向目标节点遍历。

作为进一步改进的,在步骤S4中,所述计算所述多条规划路径的路径代价函数值的步骤包括:

通过CUDA调用GPU加速多线程,计算每个所述栅格节点的路径代价函数,从而获得每条规划路径的路径代价函数值。

本实施例中,使用了CUDA调用GPU加速多线程来计算路径代价函数公式,即公式F(n)=G(n)+H(n)+C(n)。有效提高了无人车路径规划的计算效率,降低最优路径的寻路时间,可以快速获取考虑路面高低起伏的最优路径规划。在栅格化的地图中,基于改进A*算法的路径规划后可以得到多条可通行的规划路径,但不是每条规划路径都是最优路径,其中,所有规划路径中的路径代价函数F(n)数值最小的才是最优路径。当其中一条规划路径的F(n)的数值比其他规划路径的F(n)大时,表示无人车从该条规划路径行驶时更为颠簸不平稳。通过CUDA调用GPU加速多线程得到多条规划路径的路径代价函数F(n)数值,并得到F(n)最小的规划路径,即为最优路径。

本发明进一步提供一种客户端,所述客户端包括存储器和处理器,所述存储器上存储有可在所述处理器上运行的数据处理程序,所述数据处理程序被所述处理器执行时实现如下步骤:

S1,将地图导入无人车系统中,并将所述地图栅格化;

S2,在所述栅格化地图中设定起始节点和目标节点,基于改进的A*算法,在所述起始节点和目标节点之间的栅格节点中进行逐步遍历;

S3,逐步遍历相邻所述栅格节点间的平均高程值,得到满足车辆运动学的多条规划路径;

S4,计算所述多条规划路径的路径代价函数值,获取最小路径代价函数值所对应的规划路径为最优路径。

所述客户端可以为手机、笔记本电脑、平板电脑或其他便携式电子设备等,在此不进行限定。

本发明进一步提供一种服务器,所述服务器包括存储器和处理器,所述存储器上存储有可在所述处理器上运行的数据处理程序,所述数据处理程序被所述处理器执行时实现如下步骤:

S1,将地图导入无人车系统中,并将所述地图栅格化;

S2,在所述栅格化地图中设定起始节点和目标节点,基于改进的A*算法,在所述起始节点和目标节点之间的栅格节点中进行逐步遍历;

S3,逐步遍历相邻所述栅格节点间的平均高程值,得到满足车辆运动学的多条规划路径;

S4,计算所述多条规划路径的路径代价函数值,获取最小路径代价函数值所对应的规划路径为最优路径。

本发明进一步提供一种计算机可读存储介质,所述计算机可读存储介质上存储有数据处理程序,所述数据处理程序可被一个或者多个处理器执行,以实现以上所述的无人车路径规划方法的步骤。

在本发明所提供的几个实施方式中,应该理解到,所揭露的系统和方法,可以通过其它的方式实现。例如,以上所描述的装置实施方式仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。

另外,在本发明各个实施方式中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本发明各个实施方式方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述仅为本发明的优选实施方式而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

相关技术
  • 一种无人车路径规划方法、客户端及服务器
  • 一种基于客户端屏幕录像的文件签署确认方法以及业务服务器、认证服务器和客户端
技术分类

06120113024568