语义地图更新方法、装置、计算机设备和存储介质与流程

文档序号:32741562发布日期:2022-12-30 18:56阅读:71来源:国知局
语义地图更新方法、装置、计算机设备和存储介质与流程

1.本技术涉及自动驾驶地图与定位技术领域,特别是涉及一种语义地图更新方法、装置、计算机设备、存储介质和计算机程序产品。


背景技术:

2.随着计算机技术的发展,自动驾驶技是未来趋势(如,人类出行、物流等领域)。在自动驾驶的解决方案中,原则上都是让汽车实现智能化的过程:“感知-定位-决策-执行”。而高精地图是感知和定位的核心所在。因此,地图的采集、生成和更新,也成了自动驾驶的核心技术之一。
3.目前,建图比较常见的方案有两种,专业采集和众包采集。专业采集方法传统,一般需要大量专业的数据采集人员、测绘设备、采集车等等。高精地图采集时,需要包含道路网络数据、车道网络数据、道路交通设施数据等等信息,因此往往需要一条道路上来回采集多遍,以确保数据的准确性。完成采集后,还需要经历数据融合、数据处理、发布和交付等诸多环节。这种方法的优点是生成的高精地图道路数据属性和粒度非常细致,但是缺点是更新频率低,相对耗时耗力。
4.众包采集,可以理解为用户通过自动驾驶车辆自身的传感器,或者其他低成本的传感器,收集道路数据传到云端进行数据融合,并通过这种融合的方式提高数据精度,来完成众包式高精地图或者语义地图的制作。现阶段众包建图方案大部分基于二维视觉数据,导致获取的三维点云稀疏性以及精度低,进而导致自动驾驶地图更新精度低。


技术实现要素:

5.基于此,有必要针对上述技术问题,提供一种能够提高地图更新精度的语义地图更新方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。
6.第一方面,本技术提供了一种语义地图更新方法。所述方法包括:
7.从当前采集区域对应的众包地图中提取目标物体点云;
8.根据所述目标物体点云构造第一点云物体并提取对应的第一语义信息;
9.当所述当前采集区域存在对应的语义地图时,获取所述语义地图中的所有第二点云物体以及对应的第二语义信息;
10.根据所述第一语义信息和所述第二语义信息,将所述众包地图与所述语义地图进行匹配,得到匹配结果;
11.根据所述匹配结果更新所述语义地图。
12.在其中一个实施例中,所述根据所述第一语义信息和所述第二语义信息,将所述众包地图与所述语义地图进行匹配,得到匹配结果,包括:
13.根据所述第一语义信息和所述第二语义信息,确定所述第一点云物体与各所述第二点云物体之间的语义距离;
14.基于所述语义距离,将所述众包地图与所述语义地图进行匹配,得到匹配结果。
15.在其中一个实施例中,所述根据所述第一语义信息和所述第二语义信息,确定所述第一点云物体与各所述第二点云物体之间的语义距离,包括:
16.根据所述第一语义信息和所述第二语义信息,确定所述第一点云物体与各所述第二点云物体之间的中心位置坐标距离差异值、点云物体方向差异、标定框尺寸差异以及外观特征差异;
17.根据所述中心位置坐标距离差异值、点云物体方向差异值、标定框尺寸差异值以及所述外观特征差异值确定所述语义距离。
18.在其中一个实施例中,所述第一语义信息和所述第二语义信息中包括点云中心坐标、点云标定框尺寸、点云主方向和点云直方图,所述根据所述第一语义信息和所述第二语义信息,确定所述第一点云物体与各所述第二点云物体之间的中心位置坐标距离差异值、点云物体方向差异值、标定框尺寸差异值以及所述外观特征差异值,包括:
19.根据所述第一点云物体的点云中心坐标和所述第二点云物体的点云中心坐标,确定中心位置坐标距离差异值;
20.根据所述第一点云物体的点云主方向和所述第二点云物体的点云主方向,确定点云物体方向差异值;
21.根据所述第一点云物体的标定框尺寸和所述第二点云物体的标定框尺寸,确定标定框尺寸差异值;
22.根据所述第一点云物体的点云直方图的形状要素和所述第二点云物体的点云直方图的形状要素,确定外观特征差异值。
23.在其中一个实施例中,所述根据所述中心位置坐标距离差异值、点云物体方向差异值、标定框尺寸差异值以及所述外观特征差异值确定所述语义距离,包括:
24.对所述中心位置坐标距离差异值、点云物体方向差异值、标定框尺寸差异值和所述外观特征差异值进行加权处理,得到各所述第一点云物体与所述语义地图中第二点云物体之间的语义距离。
25.在其中一个实施例中,所述基于所述语义距离,将所述众包地图与所述语义地图进行匹配,得到匹配结果,包括:
26.获取所述众包地图中第一点云物体的数量n和所述语义地图中第二点云物体的数量m,得到n*m的关联矩阵;
27.将所述语义距离作为所述关联矩阵的元素;
28.根据预定阈值和所述关联矩阵,得到所述众包地图中所述第一点云物体与所述语义地图中所述第二点云物体的匹配结果。
29.在其中一个实施例中,所述根据预定阈值和所述关联矩阵,得到所述众包地图中所述第一点云物体与所述语义地图中所述第二点云物体的匹配结果,包括:
30.当所述关联矩阵中存在第一元素大于或等于所述预定阈值时,确定所述第一元素对应的第一点云物体和第二点云物体不为点云物体匹配对。
31.在其中一个实施例中,所述根据预定阈值和所述关联矩阵,得到所述众包地图中所述第一点云物体与所述语义地图中所述第二点云物体的匹配结果,包括:
32.当所述关联矩阵中至少存在一个第二元素小于所述预定阈值时,确定所述第二元素对应的第一点云物体存在至少一个匹配的第二点云物体;
33.基于所述第二元素对所述关联矩阵进行分割,得到若干子图;
34.对各所述子图分别进行二分图匹配,确定与所述第一点云物体匹配的第二点云物体。
35.在其中一个实施例中,所述对各所述子图分别进行二分图匹配,确定与所述第一点云物体匹配的第二点云物体,包括:
36.对各所述子图分别进行二分图匹配,确定所述子图中第一点云物体与各所述第二点云物体的匹配代价值;
37.确定数值最小的匹配代价值对应的第二点云物体为所述第一点云物体的匹配点云物体。
38.在其中一个实施例中,所述根据所述匹配结果更新所述语义地图,包括:
39.当所述匹配结果为所述第一点云物体为新增点云物体时,将所述第一点云物体添加至所述语义地图中。
40.在其中一个实施例中,所述根据所述匹配结果更新所述语义地图,包括:
41.当所述匹配结果为所述第二点云物体为消失点云物体时,将所述第二点云物体从所述语义地图中删除。
42.在其中一个实施例中,所述根据所述匹配结果更新所述语义地图,包括:
43.对所述第一点云物体和所述匹配点云物体进行融合处理,得到融合点云物体,以及确定所述融合点云的融合语义信息;
44.根据所述融合语义信息更新所述语义地图。
45.在其中一个实施例中,所述方法还包括:
46.当所述当前采集区域不存在语义地图时,根据所述第一语义信息创建语义地图。
47.第二方面,本技术还提供了一种语义地图更新装置。所述装置包括:
48.提取模块,用于从当前采集区域对应的众包地图中提取目标物体点云目标;
49.构造模块,用于根据所述目标物体点云构造第一点云物体;所述提取模块还用于提取所述第一点云物体的第一语义信息;
50.第一获取模块,用于当所述当前采集区域存在对应的语义地图时,获取所述语义地图中的所有第二点云物体以及对应的第二语义信息;
51.匹配模块,用于根据所述第一语义信息和所述第二语义信息,将所述众包地图与所述语义地图进行匹配,得到匹配结果;
52.更新模块,用于根据所述匹配结果更新所述语义地图。
53.第三方面,本技术还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
54.从当前采集区域对应的众包地图中提取目标物体点云;
55.根据所述目标物体点云构造第一点云物体并提取对应的第一语义信息;
56.当所述当前采集区域存在对应的语义地图时,获取所述语义地图中的所有第二点云物体以及对应的第二语义信息;
57.根据所述第一语义信息和所述第二语义信息,将所述众包地图与所述语义地图进行匹配,得到匹配结果;
58.根据所述匹配结果更新所述语义地图。
59.第四方面,本技术还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
60.从当前采集区域对应的众包地图中提取目标物体点云;
61.根据所述目标物体点云构造第一点云物体并提取对应的第一语义信息;
62.当所述当前采集区域存在对应的语义地图时,获取所述语义地图中的所有第二点云物体以及对应的第二语义信息;
63.根据所述第一语义信息和所述第二语义信息,将所述众包地图与所述语义地图进行匹配,得到匹配结果;
64.根据所述匹配结果更新所述语义地图。
65.第五方面,本技术还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:
66.从当前采集区域对应的众包地图中提取目标物体点云;
67.根据所述目标物体点云构造第一点云物体并提取对应的第一语义信息;
68.当所述当前采集区域存在对应的语义地图时,获取所述语义地图中的所有第二点云物体以及对应的第二语义信息;
69.根据所述第一语义信息和所述第二语义信息,将所述众包地图与所述语义地图进行匹配,得到匹配结果;
70.根据所述匹配结果更新所述语义地图。
71.上述语义地图更新方法、装置、计算机设备、存储介质和计算机程序产品,通过从当前采集区域的众包地图中提取目标第一点云物体,以及提取第一点云物体的第一语义信息,即在保留有用信息的前提下,使得地图整体尺寸大大缩小,以及在提取语义信息,压缩数据大小的同时,得到更多的地图信息;当采集区域存在语义地图时,根据语义地图中的所有第二点云物体的第二语义信息和第一语义信息,将众包地图与语义地图进行匹配,即将众包采集到新的数据,与已有语义地图进行匹配更新,为地图匹配更新提供了保证,进而提高了地图更新精度。
附图说明
72.图1为一个实施例中语义地图更新方法的应用环境图;
73.图2为一个实施例中语义地图更新方法的流程示意图;
74.图3为一个实施例中点云物体的语义信息示意图;
75.图4为一个实施例中局部三维众包语义地图中一些物体的部分语义信息示意图;
76.图5为一个实施例中确定点云物体语义距离的方法的流程示意图;
77.图6为一个实施例中地图匹配方法的流程示意图;
78.图7为一个实施例中点云物体匹配对的示意图;
79.图8为一个实施例中语义地图更新步骤的流程示意图;
80.图9为另一个实施例中语义地图更新方法的流程示意图;
81.图10为一个实施例中语义地图更新方法的应用流程示意图;
82.图11为一个实施例中语义地图更新装置的结构框图;
83.图12为一个实施例中计算机设备的内部结构图。
components analysis)坐标系方向、点云主方向和点云直方图等。可以理解的是,这里的目标物体点云不仅限于是1个,可以是多个;对应第一点云物体也可以是一个或多个。
94.进一步地,每个物体的点云物体标识是不同的,即唯一的;点云最小标定框obb在世界坐标系可以用八个顶点表示;点云pca坐标系方向是通过点云协方差矩阵特征值分解,通过特征向量计算三个维度的方向(如图3所示),可定义此坐标系为物体的local坐标系;点云主方向是在pca计算之后,选取最小的特征值对应的特征向量,作为点云物体的主方向。比如交通牌点云近似平面,实际上平面法线方向对应的特征值最小,我们定义法线方向为主方向(如图3所示);点云凸包是中包含一个物体所有点的最小凸包;点云直方图将x,y,z三维的直方图存在一个一维的向量中。如图4所示,为一个实施例中局部三维众包语义地图中一些物体的部分语义信息(包括obb和pca坐标系)。
95.具体地,对目标物体点云进行聚类、去噪处理,得到一系列物体点云;通过点云构造每个物体(object类),即得到点云对应的第一点云物体,并提取对应的第一语义信息。
96.步骤206,当当前采集区域存在对应的语义地图时存在语义地图时,获取语义地图中的所有第二点云物体以及对应的第二语义信息。
97.其中,语义地图中存在至少一个第二点云物体,每个第二点云物体存在对应的第二语义信息。
98.具体地,判断采集区域是否已存在语义地图,当新采集的采集区域存在语义地图时,获取语义地图中的所有第二点云物体以及对应的第二语义信息;其中,语义地图中存在至少一个第二点云物体;第二点云物体的第二语义信息中至少包括语义信息中包括点云物体标识、点云中心、点云凸包、点云包围盒(oriented bounding box,obb)(可以理解为点云最小标定框obb)、点云pca(principal components analysis)坐标系方向、点云主方向和点云直方图等。“第一”和“第二”仅用于区分不同点云物体的语义信息,例如,第一语义信息也可以命名为第二语义信息,第二语义信息也可以命名为第一语义信息。
99.步骤208,根据第一语义信息和第二语义信息,将众包地图与语义地图进行匹配,得到匹配结果。
100.其中,匹配结果包括是点云物体匹配对和不存在点云物体匹配对;例如,第一点云物体a在语义地图中存在匹配的第二点云物体b,则第一点云物体a和第二点云物体b为点云物体匹配对;第一点云物体a在语义地图中不存在匹配的第二点云物体,则不存在点云物体匹配对。
101.具体地,根据第一语义信息和第二语义信息,确定第一点云物体与各第二点云物体之间的语义距离;也就是说,根据第一语义信息和第二语义信息,确定第一点云物体与各第二点云物体之间的中心位置坐标距离差异值、点云物体方向差异、标定框尺寸差异以及外观特征差异;根据中心位置坐标距离差异值、点云物体方向差异值、标定框尺寸差异值以及外观特征差异值确定语义距离。基于语义距离,将众包地图与语义地图进行匹配,得到匹配结果。
102.进一步地,确定众包地图中的第一点云物体的第一语义信息中的点云中心、点云主方向、点云最小标定框的尺寸等物理几何信息,以及确定和语义地图中第二点云物体的第二语义信息中的点云中心、点云主方向、点云最小标定框的尺寸等物理几何信息;根据第一语义信息和第二语义信息中的点云中心、点云主方向、点云最小标定框的尺寸计算众包
地图中的第一点云物体和语义地图中第二点云物体之间的语义距离;将得到的语义距离与预先设置的权值进行加权处理,得到最终的语义距离;获取众包地图中第一点云物体的数量n和语义地图中第二点云物体的数量m,得到n*m的关联矩阵;将语义距离作为关联矩阵的元素;根据预定阈值和关联矩阵,得到众包地图中第一点云物体与语义地图中第二点云物体的匹配结果。
103.以下为一个实施例中,确定点云物体语义距离的方法,包括以下步骤:
104.步骤502,根据第一点云物体的点云中心坐标和第二点云物体的点云中心坐标,确定中心位置坐标距离差异值。
105.其中,第一点云物体是根据新采集的众包地图中提取的目标物体点云构造得到的,第一语义信息是从第一点云物体中提取的点云的物理几何信息,包括点云物体标识、点云中心、点云凸包、点云最小标定框obb、点云pca坐标系方向、点云主方向和点云直方图等信息。
106.具体地,从众包地图中提取目标物体点云并构造对应的第一点云物体,以及提取第一点云物体的第一语义信息;从已有的语义地图中确定第二点云物体,以及第二点云物体的第二语义信息。例如,局部地图中(众包采集),第一点云物体object中心坐标为(x1,y1,z1),点云主方向为a,标定框尺寸为(w1,h1,d1),shape feature为30维向量s1,原始点云数量为n1。另一方面,语义地图中第二点云物体object中心坐标为(x2,y2,z2),点云主方向为b,标定框尺寸为(w2,h2,d2),shape feature为30维(也可以是其他数字维数)向量s2,原始点云数量为n2。
107.其中,根据第一点云物体的点云中心坐标(x1,y1,z1)和第二点云物体的点云中心坐标(x2,y2,z2),确定中心位置坐标距离差异值,可以表示为:),确定中心位置坐标距离差异值,可以表示为:
108.步骤504,根据第一点云物体的点云主方向和第二点云物体的点云主方向,确定点云物体方向差异值。
109.其中,点云物体方向差异值可以表示为:
110.cos(θ)=a
·
b/(|a|
·
|b|);夹角越大,差异越大,cos值越小;夹角越小,差异越小,cos值越大;
111.distance2=1-cos(θ),差异越小,方向距离越小。
112.步骤506,根据第一点云物体的标定框尺寸和第二点云物体的标定框尺寸,确定标定框尺寸差异值。
113.其中,第一点云物体的标定框尺寸为(w1,h1,d1),第二点云物体的标定框尺寸为(w2,h2,d2);标定框尺寸差异值可以表示为:
[0114][0115]
步骤508,根据第一点云物体的点云直方图的形状要素和第二点云物体的点云直方图的形状要素,确定外观特征差异值。
[0116]
其中,外观特征差异值可以表示为:
[0117]
[0118]
步骤510,通过对中心位置坐标距离差异值、点云物体方向差异值、标定框尺寸差异值和外观特征差异值进行加权处理,得到各第一点云物体与语义地图中第二点云物体之间的语义距离。
[0119]
具体地,获取中心位置坐标距离差异值distance1、点云物体方向差异值distance2、标定框尺寸差异值distance3和外观特征差异值distance4对应的权重值w1、w2、w3、w4;以w1、w2、w3、w4的权重加权求和去得到语义距离评分,其中权重值范围为0~1。也就是说通过每一个差异值加一个权重,然后线性相加一下,成为最终的语义距离;即语义距离=w1*distance1+w2*distance2+w3*distance3+w4*distance4。可选地,在一个实施例中,根据实际情况的区别,权重值w1、w2、w3、w4中可以存在w1、w2、w3、w4中其中一个权重值为0,也可以两个权重值为0,在这里不做限定。
[0120]
基于地图匹配算法,根据确定的各第一点云物体与语义地图中第二点云物体之间的语义距离将采集的众包地图与已有的语义地图进行匹配,确定众包地图与已有的语义地图之间点云物体之间的匹配情况,其中,匹配情况包括众包地图中的第一点云物体在语义地图有匹配的第二点云物体、众包地图中的第一点云物体在语义地图没有匹配的第二点云物体(即第一点云物体为新增点云物体)和语义地图中的第二点云物体在众包地图中没有匹配的第一点云物体(即第二点云物体消失)等。
[0121]
上述确定点云物体语义距离的方法中,通过提取中众包地图的第一点云物体的语义信息和已有的语义地图的第二点云物体的语义信息,根据物体几何信息确定众包地图中点云物体和语义地图中点云物体的语义距离,为地图匹配更新提供了保证。
[0122]
步骤210,根据匹配结果更新语义地图。
[0123]
其中,匹配方法采用但不仅限于匈牙利匹配,也可以是其他的地图匹配方法。匹配结果包括众包地图和语义地图中存在物体匹配对以及众包地图和语义地图中不存在物体匹配对两种情况。进一步地,众包地图和语义地图中存在物体匹配对,即众包地图第一点云物体在语义地图中存在匹配的第二点云物体;众包地图和语义地图中不存在物体匹配对包括两种情况:第一种情况是众包地图中的第一点云物体在语义地图中未找到对应的匹配点云物体,以及第二种情况是语义地图中的第二点云物体在众包地图中未找到对应的匹配点云物体。在本专利中,为便于理解,将第一种情况中的众包地图中的未匹配到的第一点云物体称为新的点云物体(即第一点云物体为新增物体),将第二种情况中语义地图中未匹配到的第二点云物体称为消失的点云物体(即第二点云物体在新采集的众包地图中不存在)。
[0124]
具体地,当匹配结果为众包地图第一点云物体在语义地图中存在匹配的第二点云物体时,对第一点云物体和第二点云物体的语义信息进行加权平均处理,得到新的点云物体的语义信息;根据新的点云物体的语义信息对语义地图进行更新;当众包地图的第一点云物体为新增物体时,在语义地图中添加第一点云物体;当第二点云物体在新采集的众包地图中不存在时,将语义地图中原有的第二点云物体进行删除,得到更新后的语义地图。
[0125]
上述语义地图更新方法中,通过从新采集的众包地图中提取目标第一点云物体,以及提取第一点云物体的第一语义信息,即在保留有用信息的前提下提取语义信息,使得地图更新过程中所需要的更新数据大大缩小,在压缩数据大小的同时,得到更多的地图信息;当采集区域不存在语义地图时,可以将新采集到的众包地图与语义地图进行拼接来更新整个地图;当采集区域存在语义地图时,可以仅对原有的语义地图进行增量更新,根据语
义地图中的所有第二点云物体的第二语义信息和第一语义信息,将众包地图与语义地图进行匹配,即将众包采集到新的数据,与已有语义地图进行匹配更新,为地图匹配更新提供了保证,进而提高了地图更新精度。
[0126]
在一个实施例中,如图6所示,提供了一种地图匹配方法,以该方法应用于图1中的终端为例进行说明,包括以下步骤:
[0127]
步骤602,从当前采集区域对应的众包地图中提取目标物体点云。
[0128]
步骤604,根据目标物体点云构造第一点云物体并提取对应的第一语义信息。
[0129]
具体地,对提取的目标物体点云进行去噪聚类,构造至少一个第一点云物体,并提取每个第一点云物体的第一语义信息。
[0130]
步骤606,获取语义地图中的所有第二点云物体以及对应的第二语义信息。
[0131]
步骤608,根据第一语义信息和第二语义信息,确定第一点云物体与各第二点云物体之间的语义距离。
[0132]
具体地,根据第一点云物体的点云中心坐标和第二点云物体的点云中心坐标,确定中心位置坐标距离差异值;根据第一点云物体的点云主方向和第二点云物体的点云主方向,确定点云物体方向差异值;根据第一点云物体的标定框尺寸和第二点云物体的标定框尺寸,确定标定框尺寸差异值;根据第一点云物体的点云直方图的形状要素和第二点云物体的点云直方图的形状要素,确定外观特征差异值;通过对中心位置坐标距离差异评分、点云物体方向差异评分、标定框尺寸差异评分和外观特征差异评分进行加权处理,得到各第一点云物体与语义地图中第二点云物体之间的语义距离。
[0133]
步骤610,获取众包地图中第一点云物体的数量n和语义地图中第二点云物体的数量m,得到n*m的关联矩阵。
[0134]
步骤612,将语义距离作为关联矩阵的元素。
[0135]
可以理解的是,关联矩阵中的每个元素代表众包地图中第一点云物体与语义地图中第二点云物体之间的语义距离;例如,众包地图中第一点云物体与语义地图中第二点云物体的数量为3,构成3*3的关联矩阵,关联矩阵中的每个元素为第一点云物体与语义地图中第二点云物体之间的语义距离。
[0136]
步骤614,根据预定阈值和关联矩阵,得到众包地图中第一点云物体与语义地图中第二点云物体的匹配结果。
[0137]
其中,语义距离小于预定阈值则表明对应的第一点云物体和第二点云物体之间存在关联。
[0138]
具体地,将语义距离作为关联矩阵的元素,当关联矩阵中存在第一元素大于或等于预定阈值时,确定第一元素对应的第一点云物体和第二点云物体不为点云物体匹配对;第一元素对应的第一点云物体和第二点云物体不为点云物体匹配对包括第一点云物体为新增的点云物体或第二点云物体为消失的点云物体。
[0139]
当关联矩阵中至少存在一个第二元素小于预定阈值时,确定第二元素对应的第一点云物体存在至少一个匹配的第二点云物体;基于第二元素对关联矩阵进行分割,得到若干子图;对各子图分别进行二分图匹配,确定与第一点云物体匹配的第二点云物体;也就是说对各子图分别进行二分图匹配,确定子图中第一点云物体与各第二点云物体的匹配代价值;确定数值最小的匹配代价值对应的第二点云物体为第一点云物体的匹配点云物体。其
中,二分图匹配采用的是匈牙利算法来实现的,使用匈牙利算法进行二分图匹配,得到cost最小的物体连接对(object,crowd_object),如图7所示,可能为点云物体匹配对;换言之,得到子图中的每个第二点云物体与对应第一点云物体的关联程度(关联程度可以理解为匹配代价值)。
[0140]
例如,众包采集地图的包括第一点云物体1、2、3,已有语义地图中有第二点云物体4、5、6,其中,第一点云物体2和第二点云物体4和第一点云物体2和第二点云物体5之间的语义距离大于预定值,为不匹配的点云物体,第一点云物体1和第二点云物体4,以及第一点云物体1和第二点云物体5的语义距离小于预定阈值,则需要将第一点云物体1和第二点云物体4,以及第一点云物体1和第二点云物体5的语义距离分割为一个子图,对第一点云物体1和第二点云物体4,以及第一点云物体1和第二点云物体5采用现有的匈牙利匹配算法,得到匹配代价值cost,将cost最小的确定为第一点云物体1最终的匹配点云物体。
[0141]
上述地图匹配方法中,通过从众包采集数据中提取目标物体点云,在提取到的物体点云的基础上进一步提取语义信息,压缩数据大小的同时,得到更多的信息;使得整个地图数据尺寸极小,又同时包含所有需要的信息;此处地图更新中添加匹配算法,而不是仅仅通过语义距离的远近来判断是否是同一物体;在局部地图中,当物体数目超过一定的阈值时,基于语义距离的匹配算法,会使得地图更新精度更高。
[0142]
在一个实施例中,如图8所示,提供了一种语义地图更新步骤,以该方法应用于图1中的终端为例进行说明,包括以下步骤:
[0143]
步骤802,从当前采集区域对应的众包地图中提取目标物体点云。
[0144]
步骤804,根据目标物体点云构造第一点云物体并提取对应的第一语义信息。
[0145]
步骤806,判断当前采集区域是否存在语义地图,若是,执行步骤808,否则,执行步骤814。
[0146]
其中,采集区域是指当前采集终端所在的采集区域。
[0147]
步骤808,当新采集的采集区域存在语义地图时,获取语义地图中的所有第二点云物体以及对应的第二语义信息。
[0148]
步骤810,根据第一语义信息和第二语义信息,将众包地图与语义地图进行匹配,得到匹配结果。
[0149]
具体地,根据第一语义信息和第二语义信息,确定第一点云物体与各第二点云物体之间的中心位置坐标距离差异值、点云物体方向差异、标定框尺寸差异以及外观特征差异;根据中心位置坐标距离差异值、点云物体方向差异值、标定框尺寸差异值以及外观特征差异值确定语义距离;获取众包地图中第一点云物体的数量n和语义地图中第二点云物体的数量m,得到n*m的关联矩阵;
[0150]
将语义距离作为关联矩阵的元素;当关联矩阵中存在第一元素大于或等于预定阈值时,确定第一元素对应的第一点云物体和第二点云物体不为点云物体匹配对;当关联矩阵中至少存在一个第二元素小于预定阈值时,确定第二元素对应的第一点云物体存在至少一个匹配的第二点云物体;基于第二元素对关联矩阵进行分割,得到若干子图;对各子图分别进行二分图匹配,确定子图中第一点云物体与各第二点云物体的匹配代价值;确定数值最小的匹配代价值对应的第二点云物体为第一点云物体的匹配点云物体。步骤812,根据匹配结果更新语义地图。
[0151]
具体地,当匹配结果为第一点云物体为新增点云物体时,将第一点云物体添加至语义地图中;当匹配结果为第二点云物体为消失点云物体时,将第二点云物体从语义地图中删除;当匹配结果为第一点云物体存在点云物体匹配对时,对第一点云物体和匹配点云物体进行融合处理,得到融合点云物体,以及确定融合点云的融合语义信息;根据融合语义信息更新语义地图。
[0152]
换言之,当语义地图中存在与第一点云物体匹配的匹配点云物体时,采用icp、ndt等算法融合对第一点云物体和匹配点云物体对应的物体点云进行融合得到融合点云,并对融合点云进行去噪聚类处理,对降采样后的融合点云,重新计算提取语义信息;重新计算提取融合点云的语义信息可以是将第一点云物体和与第一点云物体匹配的第二点云物体的语义信息进行加权均值处理得到的;例如,对两者语义信息中的点云中心、点云凸包、点云最小标定框obb、点云pca坐标系方向、点云主方向和点云直方图进行均值处理,具体方式可以通过现有的方式实现,在此不做赘述。
[0153]
步骤814,根据第一语义信息创建语义地图。
[0154]
上述语义地图更新步骤中,通过从新采集的众包地图中提取目标第一点云物体,以及提取第一点云物体的第一语义信息,即在保留有用信息的前提下,使得地图整体尺寸大大缩小,以及在提取语义信息,压缩数据大小的同时,得到更多的地图信息;基于语义信息确定的语义距离,确定众包地图和语义地图的匹配结果;根据不同匹配结果,对语义地图实现添加新增、删除物体和平均匹配对物体,为地图匹配更新提供了保证,进而提高了地图更新精度。
[0155]
在另一个实施例中,如图9所示,提供了一种语义地图更新方法,以该方法应用于图1中的终端为例进行说明,包括以下步骤:
[0156]
步骤902,从当前采集区域的众包地图中提取目标物体点云。
[0157]
步骤904,根据目标物体点云构造第一点云物体并提取对应的第一语义信息。
[0158]
步骤906,判断采集区域是否存在语义地图,若是,执行步骤908,否则,执行步骤922。
[0159]
其中,采集区域是指采集终端所在的采集区域。
[0160]
步骤908,当新采集的采集区域存在语义地图时,获取语义地图中的所有第二点云物体以及对应的第二语义信息。
[0161]
步骤910,根据第一语义信息和第二语义信息,将众包地图与语义地图进行匹配,得到匹配结果。
[0162]
步骤912,当匹配结果为第一点云物体为新增点云物体时,将第一点云物体添加至语义地图中。
[0163]
步骤914,当匹配结果为第二点云物体为消失点云物体时,将第二点云物体从语义地图中删除。
[0164]
步骤916,当匹配结果为第一点云物体存在点云物体匹配对时,从第二点云物体中获取与第一点云物体匹配的匹配点云物体。
[0165]
步骤918,对第一点云物体和匹配点云物体进行融合处理,得到融合点云物体,以及确定融合点云的融合语义信息。
[0166]
步骤920,根据融合语义信息更新语义地图。
[0167]
步骤922,当采集区域不存在语义地图时,根据第一语义信息创建语义地图。
[0168]
以下为语义地图更新方法的应用场景,如图10所示,包括原始数据处理,众包建图,定位与回环检测三部分,其中,原始数据处理是指对根据光学雷达(lightdetectionandranging,lidar)获取的3d lidar点云数据和图像采集设备(如,相机)采集的图像(如,2d相机图像)进行感知,得到新采集的众包地图,从新采集的众包地图中提取目标物体点云;如通过感知深度学习模型识别2d相机图像,确定2d交通灯标定框和2d车道线标定框,激光雷达的3dlidar点云投影到2d相机图像中,提取出交通灯标定框内的点,然后恢复3d,这些点认为是交通灯的点,得到交通灯对应的点云;通过感知组的深度学习方法确定点云中交通牌的感知标识点,标示为交通牌的这些点可以直接拿过来作为交通牌点云;通过感知深度学习模型感知2d相机图像中的2d车道线标定框,激光雷达的3d lidar点云投影到2d相机图像中,提取出车道线标定框内的点,然后恢复3d,这些点认为是车道线的点;还包括对其他具有交通标识的物体进行感知,得到对应的点云。
[0169]
根据目标物体点云构造第一点云物体(如物体object)并提取对应的第一语义信息,根据构造的第一点云物体进行众包建图;进一步地,判断新采集的采集区域是否有图(即是否存在语义地图),若不存在,根据第一点云物体进行建图;当存在语义地图时,通过匈牙利匹配对众包地图和已有语义地图进行匹配,实现变化检测,检测结果包括添加物体(可以理解为已有语义地图中新增的点云物体)、删除物体(可以理解为已有语义地图中消失的点云物体)和平均物体(可以理解为已有语义地图和众包地图中存在的匹配点云物体对);根据检测结果对语义地体进行更新。其中,具体的检测方法具体限定可以参见上文中对于语义地图更新方法的限定,在此不再赘述。
[0170]
进一步地,根据更新后的语义地图进行定位和回环检测,提升了回环检测的检测能力,减少累积误差,提高了定位的精度以及速度避障;其中,定位和回环检测的方法可以通过现有方式实现,在此不做赘述。例如,在得到更新的语义地图后,对语义地图进行定位和回环检测,对物体和车道线进行匹配,得到定位结果。其中,回环检测又称闭环检测,是指设备识别曾到达某场景,使得地图闭环的能力,即能将此刻生成的地图与刚刚生成的地图做匹配。上述语义地图更新方法中,通过从新采集的众包地图中提取目标第一点云物体,以及提取第一点云物体的第一语义信息,即在保留有用信息的前提下,使得地图整体尺寸大大缩小,以及在提取语义信息,压缩数据大小的同时,得到更多的地图信息;基于语义信息确定的语义距离,确定众包地图和语义地图的匹配结果;根据不同匹配结果,对语义地图实现添加新增、删除物体和平均匹配对物体,为地图匹配更新提供了保证,进而提高了地图更新精度。
[0171]
应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
[0172]
基于同样的发明构思,本技术实施例还提供了一种用于实现上述所涉及的语义地
图更新方法的语义地图更新装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个语义地图更新装置实施例中的具体限定可以参见上文中对于语义地图更新方法的限定,在此不再赘述。
[0173]
在一个实施例中,如图11所示,提供了一种语义地图更新装置,包括:提取模块1102、构造模块1104、第一获取模块1106、匹配模块1108和更新模块1111,其中:
[0174]
提取模块1102,用于从当前采集区域的众包地图中提取目标物体点云目标。
[0175]
构造模块1104,用于根据目标物体点云构造第一点云物体;提取模块还用于提取第一点云物体的第一语义信息。
[0176]
第一获取模块1106,用于当当前采集区域存在对应的语义地图时,获取语义地图中的所有第二点云物体以及对应的第二语义信息。
[0177]
匹配模块1108,用于根据第一语义信息和第二语义信息,将众包地图与语义地图进行匹配,得到匹配结果。
[0178]
更新模块1110,用于根据匹配结果更新语义地图。
[0179]
上述语义地图更新装置,通过从新采集的众包地图中提取目标第一点云物体,以及提取第一点云物体的第一语义信息,即在保留有用信息的前提下,使得地图整体尺寸大大缩小,以及在提取语义信息,压缩数据大小的同时,得到更多的地图信息;当采集区域存在语义地图时,根据语义地图中的所有第二点云物体的第二语义信息和第一语义信息,将众包地图与语义地图进行匹配,即将众包采集到新的数据,与已有语义地图进行匹配更新,为地图匹配更新提供了保证,进而提高了地图更新精度。
[0180]
可选地,在一个实施例中,语义地图更新装置还包括确定模块,用于根据第一语义信息和第二语义信息,确定第一点云物体与各第二点云物体之间的语义距离;
[0181]
可选地,在一个实施例中,匹配模块1108还用于基于语义距离,将众包地图与语义地图进行匹配,得到匹配结果。
[0182]
可选地,在一个实施例中,确定模块还用于根据第一语义信息和第二语义信息,确定第一点云物体与各第二点云物体之间的中心位置坐标距离差异值、点云物体方向差异、标定框尺寸差异以及外观特征差异;
[0183]
根据中心位置坐标距离差异值、点云物体方向差异值、标定框尺寸差异值以及外观特征差异值确定语义距离。
[0184]
可选地,在一个实施例中,确定模块还用于根据第一点云物体的点云中心坐标和第二点云物体的点云中心坐标,确定中心位置坐标距离差异值;
[0185]
根据第一点云物体的点云主方向和第二点云物体的点云主方向,确定点云物体方向差异值;
[0186]
根据第一点云物体的标定框尺寸和第二点云物体的标定框尺寸,确定标定框尺寸差异值;
[0187]
根据第一点云物体的点云直方图的形状要素和第二点云物体的点云直方图的形状要素,确定外观特征差异值;
[0188]
通过对中心位置坐标距离差异评分、点云物体方向差异评分、标定框尺寸差异评分和外观特征差异评分进行加权处理,得到各第一点云物体与语义地图中第二点云物体之间的语义距离。
[0189]
可选地,在一个实施例中,匹配模块1108包括第一获取模块,其中:
[0190]
第一获取模块用于获取众包地图中第一点云物体的数量n和语义地图中第二点云物体的数量m,得到n*m的关联矩阵。
[0191]
匹配模块1108,用于将语义距离作为关联矩阵的元素;根据预定阈值和关联矩阵,得到众包地图中第一点云物体与语义地图中第二点云物体的匹配结果。
[0192]
匹配模块1108还用于当关联矩阵中存在第一元素大于或等于预定阈值时,确定第一元素对应的第一点云物体和第二点云物体不为点云物体匹配对。
[0193]
匹配模块1108中包括分割模块,分割模块用于当关联矩阵中至少存在一个第二元素小于预定阈值时,确定第二元素对应的第一点云物体存在至少一个匹配的第二点云物体;基于第二元素对关联矩阵进行分割,得到若干子图。
[0194]
匹配模块1108还用于对各子图分别进行二分图匹配,确定与第一点云物体匹配的第二点云物体;
[0195]
还用于对各子图分别进行二分图匹配,确定子图中第一点云物体与各第二点云物体的匹配代价值;
[0196]
确定数值最小的匹配代价值对应的第二点云物体为第一点云物体的匹配点云物体。可选地,在一个实施例中,更新模块1110还用于当匹配结果为第一点云物体为新增点云物体时,将第一点云物体添加至语义地图中。
[0197]
可选地,在一个实施例中,更新模块1110还用于当匹配结果为第二点云物体为消失点云物体时,将第二点云物体从语义地图中删除。
[0198]
可选地,在一个实施例中,更新模块1110中还包括融合模块,其中:
[0199]
融合模块,用于对第一点云物体和匹配点云物体进行融合处理,得到融合点云物体,以及确定融合点云的融合语义信息;
[0200]
更新模块1110还用于根据融合语义信息更新语义地图。
[0201]
创建模块,用于当采集区域不存在语义地图时,根据第一语义信息创建语义地图。
[0202]
上述语义地图更新装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
[0203]
在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图12所示。该计算机设备包括通过系统总线连接的处理器、存储器、通信接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过wifi、移动蜂窝网络、nfc(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种语义地图更新方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
[0204]
本领域技术人员可以理解,图12中示出的结构,仅仅是与本技术方案相关的部分结构的框图,并不构成对本技术方案所应用于其上的计算机设备的限定,具体的计算机设
备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
[0205]
在一个实施例中,还提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。
[0206]
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
[0207]
在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
[0208]
需要说明的是,本技术所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据。
[0209]
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本技术所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(read-only memory,rom)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(reram)、磁变存储器(magnetoresistive random access memory,mram)、铁电存储器(ferroelectric random access memory,fram)、相变存储器(phase change memory,pcm)、石墨烯存储器等。易失性存储器可包括随机存取存储器(random access memory,ram)或外部高速缓冲存储器等。作为说明而非局限,ram可以是多种形式,比如静态随机存取存储器(static random access memory,sram)或动态随机存取存储器(dynamic random access memory,dram)等。本技术所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本技术所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
[0210]
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
[0211]
以上所述实施例仅表达了本技术的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本技术专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本技术构思的前提下,还可以做出若干变形和改进,这些都属于本技术的保护范围。因此,本技术的保护范围应以所附权利要求为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1