初始化定位方法、装置、终端及存储介质转让专利

申请号 : CN202211155768.7

文献号 : CN115248040B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 顾维灏艾锐王殿政曹东璞王聪张凯梁东艺王开李韶淼

申请人 : 毫末智行科技有限公司

摘要 :

本申请提供了一种初始化定位方法、装置、终端及存储介质,上述初始化定位方法包括:获取感知图像和目标车辆的初始姿态,感知图像是通过对目标车辆上图像采集装置采集的包含道路信息的图像进行识别得到的,初始姿态包括目标车辆的初始位置和目标车辆的初始角度;根据初始位置确定位置搜索范围,根据初始角度确定角度搜索范围;根据初始角度和角度搜索范围,在位置搜索范围内撒播粒子;根据感知图像计算每个粒子的权重,并根据权重对粒子进行筛选;根据筛选后的粒子,确定目标车辆的最终姿态。本申请实施例提供的初始化定位方法通过确定位置搜索范围,并在位置搜索范围内撒播粒子,实现了全局优化搜索,提高了初始化定位结果的精准度。

权利要求 :

1.一种初始化定位方法,其特征在于,包括:

获取感知图像和目标车辆的初始姿态,其中,所述感知图像是通过对所述目标车辆上图像采集装置采集的包含道路信息的图像进行识别得到的,所述初始姿态包括所述目标车辆的初始位置和所述目标车辆的初始角度;

根据所述初始位置确定位置搜索范围,根据所述初始角度确定角度搜索范围;

根据所述初始角度和所述角度搜索范围,在所述位置搜索范围内撒播粒子;

根据所述感知图像计算每个粒子的权重,并根据权重对粒子进行筛选;

根据筛选后的粒子,确定目标车辆的最终姿态;

所述根据所述初始角度和所述角度搜索范围,在所述位置搜索范围内撒播粒子,包括:在所述位置搜索范围内撒播多个不同位置的第一粒子,其中,所有所述第一粒子的角度均为所述初始角度;

在每个所述第一粒子的位置上撒播多个不同角度的第二粒子,其中,同一位置上的所有所述第二粒子的角度均在所述角度搜索范围内;

所述根据所述感知图像计算每个粒子的权重,包括:

将每个所述第一粒子和每个所述第二粒子投影到高精度地图中,在所述高精度地图中确定与所述第一粒子或所述第二粒子对应的地图元素;

将所述地图元素投影到所述感知图像中,根据所述地图元素和感知元素建立匹配关系;其中,所述感知元素为所述感知图像中与所述地图元素对应的元素;

根据所述匹配关系确定每个所述第一粒子和每个所述第二粒子的权重。

2.根据权利要求1所述的初始化定位方法,其特征在于,所述根据权重对粒子进行筛选,包括:在同一位置上的所有所述第一粒子和所有所述第二粒子中,选取预设比例的粒子作为目标粒子;其中,同一位置上的任意所述目标粒子的权重大于任意剩余粒子的权重,所述剩余粒子为同一位置上所述目标粒子之外的粒子;

或者,在同一位置上的所有所述第一粒子和所有所述第二粒子中,选取权重最大的粒子作为目标粒子。

3.根据权利要求2所述的初始化定位方法,其特征在于,所述根据筛选后的粒子,确定目标车辆的最终姿态,包括:在所有所述目标粒子中选取权重最大的目标粒子,并将该权重最大的目标粒子的姿态作为所述目标车辆的最终姿态;

或者,计算所有所述目标粒子的平均姿态,并将所述平均姿态作为所述目标车辆的最终姿态。

4.根据权利要求1‑3任一项所述的初始化定位方法,其特征在于,所述初始化定位方法还包括:将第N次得到的最终姿态和第N‑1次得到的最终姿态进行比较;其中,N为大于等于2的整数;

当第N次得到的最终姿态和第N‑1次得到的最终姿态的偏差大于预设偏差时,执行所述根据所述初始角度和所述角度搜索范围,在所述位置搜索范围内撒播粒子步骤。

5.根据权利要求4所述的初始化定位方法,其特征在于,所述当第N次得到的最终姿态和第N‑1次得到的最终姿态的偏差大于预设偏差时,执行所述根据所述初始角度和所述角度搜索范围,在所述位置搜索范围内撒播粒子步骤,包括:当第N次得到的所述目标车辆的位置和第N‑1次得到的所述目标车辆的位置之间距离大于预设距离,和/或,第N次得到的所述目标车辆的角度和第N‑1次得到的所述目标车辆的角度差值的绝对值大于预设角度时,执行所述根据所述初始角度和所述角度搜索范围,在所述位置搜索范围内撒播粒子步骤。

6.一种初始化定位装置,其特征在于,包括:

获取模块,用于获取感知图像和目标车辆的初始姿态,其中,所述感知图像是通过对所述目标车辆上图像采集装置采集的包含道路信息的图像进行识别得到的,所述初始姿态包括所述目标车辆的初始位置和所述目标车辆的初始角度;

搜索范围确定模块,用于根据所述初始位置确定位置搜索范围,根据所述初始角度确定角度搜索范围;

撒播模块,用于根据所述初始角度和所述角度搜索范围,在所述位置搜索范围内撒播粒子;

筛选模块,用于根据所述感知图像计算每个粒子的权重,并根据权重对粒子进行筛选;

最终姿态确定模块,用于根据筛选后的粒子,确定目标车辆的最终姿态;

所述撒播模块还用于:

在所述位置搜索范围内撒播多个不同位置的第一粒子,其中,所有所述第一粒子的角度均为所述初始角度;

在每个所述第一粒子的位置上撒播多个不同角度的第二粒子,其中,同一位置上的所有所述第二粒子的角度均在所述角度搜索范围内;

所述筛选模块还用于:

将每个所述第一粒子和每个所述第二粒子投影到高精度地图中,在所述高精度地图中确定与所述第一粒子或所述第二粒子对应的地图元素;

将所述地图元素投影到所述感知图像中,根据所述地图元素和感知元素建立匹配关系;其中,所述感知元素为所述感知图像中与所述地图元素对应的元素;

根据所述匹配关系确定每个所述第一粒子和每个所述第二粒子的权重。

7.一种终端,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至5任一项所述的方法。

8.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至5任一项所述的方法。

说明书 :

初始化定位方法、装置、终端及存储介质

技术领域

[0001] 本申请属于车辆定位技术领域,尤其涉及一种初始化定位方法、装置、终端及存储介质。

背景技术

[0002] 实现精准定位是车辆自动驾驶的关键环节,通常来说,车辆定位分为初始化和追踪两个环节。只有在初始化环节完成准确的定位,车辆才能在追踪环节进行自身位姿的连续追踪定位,因此,初始化定位是实现车辆高精定位的关键。但是,目前车辆的初始化定位存在定位不精确的问题。

发明内容

[0003] 本申请实施例提供了一种初始化定位方法、装置、终端及存储介质,可以解决车辆初始化定位不精确的问题。
[0004] 第一方面,本申请实施例提供了一种初始化定位方法,包括:
[0005] 获取感知图像和目标车辆的初始姿态,其中,所述感知图像是通过对所述目标车辆上图像采集装置采集的包含道路信息的图像进行识别得到的,所述初始姿态包括所述目标车辆的初始位置和所述目标车辆的初始角度;
[0006] 根据所述初始位置确定位置搜索范围,根据所述初始角度确定角度搜索范围;
[0007] 根据所述初始角度和所述角度搜索范围,在所述位置搜索范围内撒播粒子;
[0008] 根据所述感知图像计算每个粒子的权重,并根据权重对粒子进行筛选;
[0009] 根据筛选后的粒子,确定目标车辆的最终姿态。
[0010] 在第一方面的一种可能的实现方式中,所述根据所述初始角度和所述角度搜索范围,在所述位置搜索范围内撒播粒子,包括:
[0011] 在所述位置搜索范围内撒播多个不同位置的第一粒子,其中,所有所述第一粒子的角度均为所述初始角度;
[0012] 在每个所述第一粒子的位置上撒播多个不同角度的第二粒子,其中,同一位置上的所有所述第二粒子的角度均在所述角度搜索范围内。
[0013] 在第一方面的一种可能的实现方式中,所述根据所述感知图像计算每个粒子的权重,包括:
[0014] 将每个所述第一粒子和每个所述第二粒子投影到高精度地图中,在所述高精度地图中确定与所述第一粒子或所述第二粒子对应的地图元素;
[0015] 将所述地图元素投影到所述感知图像中,根据所述地图元素和感知元素建立匹配关系;其中,所述感知元素为所述感知图像中与所述地图元素对应的元素;
[0016] 根据所述匹配关系确定每个所述第一粒子和每个所述第二粒子的权重。
[0017] 在第一方面的一种可能的实现方式中,所述根据权重对粒子进行筛选,包括:
[0018] 在同一位置上的所有所述第一粒子和所有所述第二粒子中,选取预设比例的粒子作为目标粒子;其中,同一位置上的任意所述目标粒子的权重大于任意剩余粒子的权重,所述剩余粒子为同一位置上所述目标粒子之外的粒子;
[0019] 或者,在同一位置上的所有所述第一粒子和所有所述第二粒子中,选取权重最大的粒子作为目标粒子。
[0020] 在第一方面的一种可能的实现方式中,所述根据筛选后的粒子,确定目标车辆的最终姿态,包括:
[0021] 在所有所述目标粒子中选取权重最大的目标粒子,并将该权重最大的目标粒子的姿态作为所述目标车辆的最终姿态;
[0022] 或者,计算所有所述目标粒子的平均姿态,并将所述平均姿态作为所述目标车辆的最终姿态。
[0023] 在第一方面的一种可能的实现方式中,所述初始化定位方法还包括:
[0024] 将第N次得到的最终姿态和第N‑1次得到的最终姿态进行比较;其中,N为大于等于2的整数;
[0025] 当第N次得到的最终姿态和第N‑1次得到的最终姿态的偏差大于预设偏差时,执行所述根据所述初始角度和所述角度搜索范围,在所述位置搜索范围内撒播粒子步骤。
[0026] 在第一方面的一种可能的实现方式中,所述当第N次得到的最终姿态和第N‑1次得到的最终姿态的偏差大于预设偏差时,执行所述根据所述初始角度和所述角度搜索范围,在所述位置搜索范围内撒播粒子步骤,包括:
[0027] 当第N次得到的所述目标车辆的位置和第N‑1次得到的所述目标车辆的位置之间距离大于预设距离,和/或,第N次得到的所述目标车辆的角度和第N‑1次得到的所述目标车辆的角度差值的绝对值大于预设角度时,执行所述根据所述初始角度和所述角度搜索范围,在所述位置搜索范围内撒播粒子步骤。
[0028] 第二方面,本申请实施例提供了一种初始化定位装置,包括:
[0029] 获取模块,用于获取感知图像和目标车辆的初始姿态,其中,所述感知图像是通过对所述目标车辆上图像采集装置采集的包含道路信息的图像进行识别得到的,所述初始姿态包括所述目标车辆的初始位置和所述目标车辆的初始角度;
[0030] 搜索范围确定模块,用于根据所述初始位置确定位置搜索范围,根据所述初始角度确定角度搜索范围;
[0031] 撒播模块,用于根据所述初始角度和所述角度搜索范围,在所述位置搜索范围内撒播粒子;
[0032] 筛选模块,用于根据所述感知图像计算每个粒子的权重,并根据权重对粒子进行筛选;
[0033] 最终姿态确定模块,用于根据筛选后的粒子,确定目标车辆的最终姿态。
[0034] 第三方面,本申请实施例提供了一种终端,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现第一方面中任一项所述的方法。
[0035] 第四方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现第一方面中任一项所述的方法。
[0036] 第五方面,本申请实施例提供了一种计算机程序产品,当计算机程序产品在终端上运行时,使得终端执行上述第一方面中任一项所述的方法。
[0037] 本申请实施例与现有技术相比存在的有益效果是:
[0038] 车辆在初始化定位时,首先获取感知图像和目标车辆的初始姿态,其中,感知图像是通过对目标车辆上图像采集装置采集的包含道路信息的图像进行识别得到的,初始姿态包括目标车辆的初始位置和目标车辆的初始角度。然后根据初始位置确定位置搜索范围,根据初始角度确定角度搜索范围。再根据初始角度和角度搜索范围,在位置搜索范围内撒播粒子。再根据感知图像计算每个粒子的权重,并根据权重对粒子进行筛选。最后根据筛选后的粒子,确定目标车辆的最终姿态。本申请实施例提供的初始化定位方法利用图像采集装置采集的感知图像作为初始化定位的基础数据,不需要使用激光雷达这种昂贵的设备,降低了车辆的成产成本,有助于该方法大规模的在车辆上使用。同时,在初始化定位过程中通过确定位置搜索范围,并在位置搜索范围内撒播粒子,实现了全局优化搜索,提高了初始化定位结果的精准度。
[0039] 可以理解的是,上述第二方面至第五方面的有益效果可以参见上述第一方面中的相关描述,在此不再赘述。

附图说明

[0040] 为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0041] 图1是本申请一实施例提供的初始化定位方法的流程示意图;
[0042] 图2是本申请另一实施例提供的初始化定位方法的流程示意图;
[0043] 图3是本申请另一实施例提供的初始化定位方法的流程示意图;
[0044] 图4是本申请另一实施例提供的初始化定位方法的流程示意图;
[0045] 图5是本申请实施例提供的初始化定位装置的结构示意图;
[0046] 图6是本申请实施例提供的终端的结构示意图。

具体实施方式

[0047] 以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。
[0048] 应当理解,当在本申请说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
[0049] 还应当理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
[0050] 如在本申请说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当…时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。
[0051] 另外,在本申请说明书和所附权利要求书的描述中,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
[0052] 在本申请说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。
[0053] 图1示出了本申请一实施例提供的初始化定位方法的流程示意图。参见图1所示,初始化定位方法包括步骤S101至步骤S105。
[0054] 步骤S101,获取感知图像和目标车辆的初始姿态,其中,感知图像是通过对目标车辆上图像采集装置采集的包含道路信息的图像进行识别得到的,初始姿态包括目标车辆的初始位置和目标车辆的初始角度。
[0055] 具体的,车辆上的图像采集装置(例如,车辆上的感知相机、摄像头等)可以采集包含道路信息的图像,再通过对图像进行识别得到感知图像,感知图像中包括感知元素,感知元素可以为路灯杆、交通牌、车道线以及虚线端点等。
[0056] 目标车辆的初始姿态可以通过RTK(Real Time Kinematic,实时动态)传感器采集获得。初始姿态包括目标车辆的初始位置和目标车辆的初始角度,初始角度为目标车辆在导航地图中的姿态角度,该姿态角度包括目标车辆的行驶方向角度(yaw角)、俯仰角度(pitch角)和翻滚角度(roll角),对于车辆初始化定位来说,车辆的角度信息主要考虑车辆的行驶方向角度(yaw角),因此,在本申请中可以将车辆的行驶方向角度作为初始角度。初始位置为目标车辆在导航地图中的坐标(x,y,z),对于车辆初始化定位来说,只考虑车辆在平面上的坐标,因此,本申请中可以将目标车辆在导航地图中的二维坐标(x,y)作为初始位置。
[0057] 步骤S102,根据初始位置确定位置搜索范围,根据初始角度确定角度搜索范围。
[0058] 具体的,当目标车辆的初始位置确定后,以初始位置为圆心,以第一预设距离为半径构成的区域为位置搜索范围。设计人员可以根据实际需求设定第一预设距离的具体数值,例如,将第一预设距离设定为15米,则确定的位置搜索范围为圆心为初始位置,半径为15米圆形的区域。
[0059] 当目标车辆的初始角度确定后,在初始角度的基础上加减第一预设角度构成角度搜索范围。设计人员可以根据实际需求设定第一角度的具体数值,例如,将第一预设角度设定为20°,初始角度为X,则确定的角度搜索范围为(X‑20°)(X+20°)。~
[0060] 除了设计人员认为设定第一预设角度的具体数值之外,第一预设角度数值还可以根据感知图像中的感知元素确定。例如,当感知图像中包含有感知元素时,例如,感知图像中包括路灯杆、交通牌、车道线或虚线端点等,此时,第一预设角度可以设定为15°,此时确定的角度搜索范围为(X‑15°)(X+15°)。当感知图像中不包含任何的感知元素时,确定的第~一预设角度为180°,此时确定的角度搜索范围为(X‑180°)(X+180°)。
~
[0061] 步骤S103,根据初始角度和角度搜索范围,在位置搜索范围内撒播粒子。
[0062] 具体的,根据初始角度和角度搜索范围,在位置搜索范围内撒播粒子,撒播的每个粒子的姿态均可能是目标车辆的实际姿态。后续通过对位置搜索范围内的粒子进行分析,可以得到目标车辆的精确姿态。
[0063] 示例性的,如图2所示,步骤S103具体可以包括步骤S1031和步骤S1032。
[0064] 步骤S1031,在位置搜索范围内撒播多个不同位置的第一粒子,其中,所有第一粒子的角度均为初始角度。
[0065] 具体的,撒播第一粒子的方式可以为:在位置搜索范围内随机撒播第一粒子,也可以在搜索范围内均匀的撒播第一粒子。设计人员可以根据实际需求设定撒播第一粒子的数量。
[0066] 步骤S1032,在每个第一粒子的位置上撒播多个不同角度的第二粒子,其中,同一位置上的所有第二粒子的角度均在角度搜索范围内。
[0067] 具体的,每个位置上的第二粒子的撒播数量以及各个粒子的角度可以根据角度搜索范围确定,例如,当确定的角度搜索范围为(X‑15°)(X+15°)时,可以在第一粒子的位置~上撒播10个第二粒子,10个第二粒子的角度分别为X‑15°、X‑12°、X‑9°、X‑6°、X‑3°、X+3°、X+
6°、X+9°、X+12°和X+15°。
[0068] 步骤S104,根据感知图像计算每个粒子的权重,并根据权重对粒子进行筛选。
[0069] 具体的,结合感知图像能够计算每个粒子的权重,粒子的权重越大,说明该粒子的姿态与目标车辆的实际姿态越接近;粒子的权重越小,说明该粒子的姿态与目标车辆的实际姿态相差越大。当确定每个粒子的权重后,根据粒子的权重对粒子进行筛选,筛选出权重大的粒子,以便于后续根据筛选出的粒子进行分析得到目标车辆的最终姿态。
[0070] 示例性的,如图3所示,步骤S104具体可以包括步骤S1041至步骤S1043。
[0071] 步骤S1041,将每个第一粒子和每个第二粒子投影到高精度地图中,在高精度地图中确定与第一粒子或第二粒子对应的地图元素。
[0072] 具体的,高精度地图简称为HD地图,高精度地图的精度更高,误差级别为厘米级。高精度地图中包括有地图元素,地图元素可以为路灯杆、交通牌、车道线以及虚线端点等。
将每个第一粒子和每个第二粒子按照各自的坐标投影到高精度地图中,然后在高精度地图中确定与第一粒子或第二粒子对应的地图元素。其中,第一粒子对应的地图元素为与第一粒子距离小于第一预设距离的地图元素,第二粒子对应的地图元素为与第二粒子距离小于第一预设距离的地图元素。设计人员可以根据实际需求设置第一预设距离的具体数值,例如,将第一预设距离设定为10米,第一粒子对应的地图元素可以为与第一粒子距离小于10的路灯杆、交通牌、车道线或虚线端点,第二粒子对应的地图元素可以为与第二粒子距离小于10的路灯杆、交通牌、车道线或虚线端点。
[0073] 步骤S1042,将地图元素投影到感知图像中,根据地图元素和感知元素建立匹配关系;其中,感知元素为感知图像中与地图元素对应的元素。
[0074] 具体的,当在高精度地图中确定地图元素后,将地图元素投影到感知图像中,感知图像中存在与地图元素对应的感知元素,例如,地图元素为距离粒子5米的车道线,感知图像中对应的感知元素同样为距离粒子5米的车道线。将地图元素投影到感知图像中,地图元素和感知元素会发生重叠,根据地图元素和感知元素的重合度可以建立二者之间的匹配关系。地图元素和感知元素的重叠越多,则地图元素和感知元素的匹配度越高;地图元素和感知元素的重叠越少,则地图元素和感知元素的匹配度越低。
[0075] 将地图元素投影到感知图像中,可以得到一个灰度图像,灰度图像中的每个像素点的灰度值为0 255,地图元素和感知元素重叠越多,则对应像素点的灰度值越大。通过累~加计算灰度图像中所有黑点像素的灰度值,再除以黑点像素的数量得到的商作为地图元素和感知元素的匹配度。
[0076] 步骤S1043,根据匹配关系确定每个第一粒子和每个第二粒子的权重。
[0077] 具体的,当得到地图元素和感知元素的匹配关系(即匹配度)后,将该匹配度除以255得到的商作为地图元素对应的第一粒子或第二粒子的权重。例如,第一粒子投影到高精度地图中对应的地图元素与感知图像中对应的感知元素的匹配度为204,则第一粒子的权重为204/255=0.8;某个第二粒子投影到高精度地图中对应的地图元素与感知图像中对应的感知元素的匹配度为229.5,则第一粒子的权重为229.5/255=0.9。粒子的权重数值分布在0 1,粒子的权重越大,说明粒子的姿态和目标车辆的实际姿态越接近。
~
[0078] 本申请的一个实施例中,在步骤S1043之后还可以包括:在同一位置上的所有第一粒子和所有第二粒子中,选取预设比例的粒子作为目标粒子;其中,同一位置上的任意目标粒子的权重大于任意剩余粒子的权重,剩余粒子为同一位置上目标粒子之外的粒子。
[0079] 具体的,根据步骤S1031和步骤S1032的描述可知,同一个位置上包括一个第一粒子和多个第二粒子,当通过步骤S1043得到每个粒子的权重后,在其中选取预设比例的粒子作为目标粒子。同一位置上的任意目标粒子的权重大于任意剩余粒子的权重,剩余粒子为同一位置上目标粒子之外的粒子。也就是说选取的目标粒子为同一位置上权重最大的粒子,最为接近目标车辆的实际姿态。设计人员可以根据实际需求设置预设比例的具体数值,例如,将预设比例设定为5%、10%或15%。
[0080] 或者,在同一位置上的所有第一粒子和所有第二粒子中,选取权重最大的粒子作为目标粒子。直接选取权重最大的粒子作为目标粒子,选取粒子的数量少,可以减少计算量,同时也更加接近目标车辆的实际姿态。
[0081] 步骤S105,根据筛选后的粒子,确定目标车辆的最终姿态。
[0082] 具体的,当粒子完成筛选后,可以得到多个目标粒子。在所有目标粒子中选取权重最大的目标粒子,该权重最大的目标粒子的姿态与目标车辆的最终姿态最为接近,因此,将该权重最大的目标粒子的姿态作为目标车辆的最终姿态。或者,计算所有目标粒子的平均姿态,并将平均姿态作为目标车辆的最终姿态。由此,得到了目标车辆的最终姿态。
[0083] 通过步骤S101至步骤S105,在对目标车辆进行初始化定位时,利用图像采集装置采集的感知图像作为初始化定位的基础数据,不需要使用激光雷达这种昂贵的设备,降低了车辆的成产成本,有助于该方法大规模的在车辆上使用。同时,在初始化定位过程中通过确定搜索范围,并在搜索范围内撒播粒子,实现了全局优化搜索,提高了初始化定位结果的精准度。利用高精度地图进行辅助定位,提高了最终初始化定位结果的准确性。
[0084] 为了提高目标车辆初始化定位的准确性,在步骤S105确定目标车辆的最终姿态后,需要对目标车辆的最终姿态进行验证。具体的,如图4所示,在步骤S105之后,还包括步骤S106至步骤S108。
[0085] 步骤S106,将第N次得到的最终姿态和第N‑1次得到的最终姿态进行比较;其中,N为大于等于2的整数。
[0086] 步骤S107,当第N次得到的最终姿态和第N‑1次得到的最终姿态的偏差大于预设偏差时,执行根据初始角度和角度搜索范围,在位置搜索范围内撒播粒子步骤。
[0087] 具体的,当第N次得到的最终姿态和第N‑1次得到的最终姿态的偏差大于预设偏差时,说明第N次得到的最终姿态可能不准确,不能够将第N次得到的最终姿态作为目标车辆初始化定位的最终姿态,此时重新执行根据初始角度和角度搜索范围,在位置搜索范围内撒播粒子步骤,重新进行粒子撒播,进行第N+1次的最终姿态的计算。
[0088] 示例性的,当第N次得到的所述目标车辆的位置和第N‑1次得到的所述目标车辆的位置之间距离大于预设距离,和/或,第N次得到的所述目标车辆的角度和第N‑1次得到的所述目标车辆的角度差值的绝对值大于预设角度时,执行所述根据所述初始角度和所述角度搜索范围,在所述位置搜索范围内撒播粒子步骤。设计人员可以根据实际需求设置预设距离和预设角度的具体数值,例如,将预设距离设定为0.2米,将预设角度设定为1°,当第N次得到的所述目标车辆的位置和第N‑1次得到的所述目标车辆的位置之间距离大于0.2米,和/或,第N次得到的所述目标车辆的角度和第N‑1次得到的所述目标车辆的角度差值的绝对值大于1°时,执行所述根据所述初始角度和所述角度搜索范围,在所述位置搜索范围内撒播粒子步骤。
[0089] 步骤S108,当第N次得到的最终姿态和第N‑1次得到的最终姿态的偏差小于等于预设偏差时,将N次得到的最终姿态作为目标车辆的最终姿态。
[0090] 具体的,当第N次得到的最终姿态和第N‑1次得到的最终姿态的偏差小于等于预设偏差时,说明第N次得到的最终姿态符合要求,此时可以将第N次得到的最终姿态作为目标车辆最终初始化定位的最终姿态。示例性的,当第N次得到的所述目标车辆的位置和第N‑1次得到的所述目标车辆的位置之间距离小于等于0.2米,和/或,第N次得到的所述目标车辆的角度和第N‑1次得到的所述目标车辆的角度差值的绝对值小于等于1°时,说明第N次得到的最终姿态符合要求,此时可以将第N次得到的最终姿态作为目标车辆最终初始化定位的最终姿态。
[0091] 应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
[0092] 图5示出了本申请实施例提供的初始化定位装置的结构示意图。参见图5所示,初始化定位装置包括:
[0093] 获取模块51,用于获取感知图像和目标车辆的初始姿态,其中,所述感知图像是通过对所述目标车辆上图像采集装置采集的包含道路信息的图像进行识别得到的,所述初始姿态包括所述目标车辆的初始位置和所述目标车辆的初始角度;
[0094] 搜索范围确定模块52,用于根据所述初始位置确定位置搜索范围,根据所述初始角度确定角度搜索范围;
[0095] 撒播模块53,用于根据所述初始角度和所述角度搜索范围,在所述位置搜索范围内撒播粒子;
[0096] 筛选模块54,用于根据所述感知图像计算每个粒子的权重,并根据权重对粒子进行筛选;
[0097] 最终姿态确定模块55,用于根据筛选后的粒子,确定目标车辆的最终姿态。
[0098] 本申请的一个实施例中,撒播模块53还用于:
[0099] 在所述位置搜索范围内撒播多个不同位置的第一粒子,其中,所有所述第一粒子的角度均为所述初始角度;
[0100] 在每个所述第一粒子的位置上撒播多个不同角度的第二粒子,其中,同一位置上的所有所述第二粒子的角度均在所述角度搜索范围内。
[0101] 本申请的一个实施例中,筛选模块54还用于:
[0102] 将每个所述第一粒子和每个所述第二粒子投影到高精度地图中,在所述高精度地图中确定与所述第一粒子或所述第二粒子对应的地图元素;
[0103] 将所述地图元素投影到所述感知图像中,根据所述地图元素和感知元素建立匹配关系;其中,所述感知元素为所述感知图像中与所述地图元素对应的元素;
[0104] 根据所述匹配关系确定每个所述第一粒子和每个所述第二粒子的权重。
[0105] 本申请的一个实施例中,筛选模块54还用于:
[0106] 在同一位置上的所有所述第一粒子和所有所述第二粒子中,选取预设比例的粒子作为目标粒子;其中,同一位置上的任意所述目标粒子的权重大于任意剩余粒子的权重,所述剩余粒子为同一位置上所述目标粒子之外的粒子;
[0107] 或者,在同一位置上的所有所述第一粒子和所有所述第二粒子中,选取权重最大的粒子作为目标粒子。
[0108] 本申请的一个实施例中,最终姿态确定模块55还用于:
[0109] 在所有所述目标粒子中选取权重最大的目标粒子,并将该权重最大的目标粒子的姿态作为所述目标车辆的最终姿态;
[0110] 或者,计算所有所述目标粒子的平均姿态,并将所述平均姿态作为所述目标车辆的最终姿态。
[0111] 本申请的一个实施例中,初始化定位装置还包括:
[0112] 比较模块,用于将第N次得到的最终姿态和第N‑1次得到的最终姿态进行比较;其中,N为大于等于2的整数;
[0113] 执行模块,用于当第N次得到的最终姿态和第N‑1次得到的最终姿态的偏差大于预设偏差时,执行所述根据所述初始角度和所述角度搜索范围,在所述位置搜索范围内撒播粒子步骤。
[0114] 本申请的一个实施例中,执行模块还用于:
[0115] 当第N次得到的所述目标车辆的位置和第N‑1次得到的所述目标车辆的位置之间距离大于预设距离,和/或,第N次得到的所述目标车辆的角度和第N‑1次得到的所述目标车辆的角度差值的绝对值大于预设角度时,执行所述根据所述初始角度和所述角度搜索范围,在所述位置搜索范围内撒播粒子步骤。
[0116] 所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0117] 图6为本申请实施例提供的终端的结构示意图。如图6所示,该实施例的终端6可以包括:至少一个处理器60(图6中仅示出一个处理器60)、存储器61以及存储在所述存储器61中并可在所述至少一个处理器60上运行的计算机程序62,所述处理器60执行所述计算机程序62时实现上述任意各个方法实施例中的步骤,例如图1所示实施例中的步骤S101至步骤S105。或者,处理器60执行所述计算机程序62时实现上述各装置实施例中各模块/单元的功能,例如图5所示模块51至55的功能。
[0118] 示例性的,所述计算机程序62可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器61中,并由所述处理器60执行,以完成本发明。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序62指令段,该指令段用于描述所述计算机程序62在所述终端6中的执行过程。本申请实施例中的终端6可以为云端服务器,也可以为车辆上的控制器。
[0119] 本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序62,所述计算机程序62被处理器60执行时实现可实现上述各个方法实施例中的步骤。
[0120] 本申请实施例提供了一种计算机程序产品,当计算机程序产品在移动终端上运行时,使得移动终端执行时实现可实现上述各个方法实施例中的步骤。
[0121] 所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,可以通过计算机程序62来指令相关的硬件来完成,所述的计算机程序62可存储于一计算机可读存储介质中,该计算机程序62在被处理器60执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序62包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质至少可以包括:能够将计算机程序代码携带到终端的任何实体或装置、记录介质、计算机存储器、只读存储器(ROM,Read‑Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质。例如U盘、移动硬盘、磁碟或者光盘等。在某些司法管辖区,根据立法和专利实践,计算机可读介质不可以是电载波信号和电信信号。
[0122] 在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
[0123] 本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
[0124] 在本申请所提供的实施例中,应该理解到,所揭露的装置/网络设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/网络设备实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
[0125] 所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0126] 以上所述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。