本申请涉及机器人自主定位,尤其涉及一种场景退化的处理方法、装置、电子设备及存储介质。
背景技术:
1、随着科学技术的发展,移动机器人的应用越来越广泛,而机器人的定位技术则是技术焦点,定位与建图(slam,simultaneous localization and mapping)技术就是主要用于解决机器人在未知环境中的定位和地图构建问题的,目前国内agv机器人的需求旺盛,在生产制造、物流、巡检等行业的应用也日益广泛,且需求稳定,但对于产品智能自动化的要求也越来越高,同时5g时代的到来,促使agv机器人再一次快速爆发。
2、在现有技术中,2d激光slam被广泛应用于agv小车中,主要用来计算点云线特征,但在场景退化的情况,如狭长的通道、单面很长的墙壁等等,小车无法从点云中求解出位姿,且原始增量式方法只对各个角度上方向与点一一对应的情况适用,对于已成型的点云地图,无法单纯使用增量式方法。
技术实现思路
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、于所述第三线特征集合与所述第二线特征集合的匹配率小于匹配阈值时,使用积分器计算各个第一线特征的位姿。
27、作为优选,所述方法还包括:
28、于场景未退化时,使用雷达匹配计算各个第一线特征的位姿。
29、一种场景退化的处理装置,包括:
30、第一提取模块,用于获取当前帧的顺序点云集合,并利用增量式算法从所述顺序点云集合中提取出第一线特征集合;
31、第二提取模块,用于获取先验点云地图,并利用搜索增量式算法对所述先验点云地图进行特征提取得到第二线特征集合;
32、判断模块,用于计算所述第一线特征集合中各个第一线特征的倾斜角,并根据所述倾斜角判断场景是否退化;
33、匹配模块,用于于场景退化时,将所述第一线特征集合中的各个第一线特征与所述第二线特征集合中的各个第二线特征进行匹配,并根据匹配结果进行位姿矫正。
34、一种电子设备,包括存储器和处理器,所述存储器用于存储一条或多条计算机指令,其中,所述一条或多条计算机指令被所述处理器执行以实现如上述中任一项所述的一种场景退化的处理方法。
35、一种存储有计算机程序的计算机可读存储介质,所述计算机程序使计算机执行时实现如上述中任一项所述的一种场景退化的处理方法。
36、本发明具有如下有益效果:
37、本申请使用搜索增量式算法对已建立的点云地图提取全局线特征,使得通过有序容器对地图邻近点进行搜索,确保了点遍历的连续性,同时,通过增量式算法和搜索增量式算法相结合的方法,使得在场景退化的情况下,仍可以从点云中求解出位姿。
1.一种场景退化的处理方法,其特征在于,包括以下步骤:
2.根据权利要求1所述的一种场景退化的处理方法,其特征在于,所述利用增量式算法从所述顺序点云集合中提取出第一线特征集合,包括:
3.根据权利要求1所述的一种场景退化的处理方法,其特征在于,所述利用搜索增量式算法对所述先验点云地图进行特征提取得到第二线特征集合,包括:
4.根据权利要求1所述的一种场景退化的处理方法,其特征在于,所述根据所述倾斜角判断场景是否退化,包括:
5.根据权利要求1所述的一种场景退化的处理方法,其特征在于,所述将所述第一线特征集合中的各个第一线特征与所述第二线特征集合中的各个第二线特征进行匹配,包括:
6.根据权利要求5所述的一种场景退化的处理方法,其特征在于,所述根据匹配结果进行位姿矫正,包括:
7.根据权利要求6所述的一种场景退化的处理方法,其特征在于,所述方法还包括:
8.一种场景退化的处理装置,其特征在于,包括:
9.一种电子设备,其特征在于,包括存储器和处理器,所述存储器用于存储一条或多条计算机指令,其中,所述一条或多条计算机指令被所述处理器执行以实现如权利要求1~7中任一项所述的一种场景退化的处理方法。
10.一种存储有计算机程序的计算机可读存储介质,其特征在于,所述计算机程序使计算机执行时实现如权利要求1~7中任一项所述的一种场景退化的处理方法。