一种激光雷达地图构建方法和机器人自主导航方法技术

技术编号:30429562 阅读:17 留言:0更新日期:2021-10-24 17:19
本发明专利技术实施例公开一种激光雷达地图构建方法、机器人自主导航方法,存储介质和计算机设备,所述激光雷达地图构建方法包括:S1、采集初始雷达点云数据;S2、根据所示点云数据构建初始地图;S3、利于改进的霍夫变换算法对所述点云数据进行直线特征提取,得到多个点云候选区域;S4、利于最小二乘法对候选区域的点云进行直线拟合,得到候选点云数据的线段表示;S5、输出更清晰的地图。该实施例降低点云波动幅度过大对地图精度造成的不利影响,使得构建出的地图中障碍物的轮廓更加清晰。地图中障碍物的轮廓更加清晰。地图中障碍物的轮廓更加清晰。

【技术实现步骤摘要】
一种激光雷达地图构建方法和机器人自主导航方法


[0001]本专利技术涉及激光雷达领域。更具体地,涉及一种激光雷达地图构建方法、机器人自主导航方法、存储介质和计算机设备。

技术介绍

[0002]同步定位和建图(SLAM)技术一直是机器人领域的一个研究热点。SLAM有两个基本的任务,分别是定位与建图,定位是指确定机器人的位置和方向,而建图是指对环境进行测绘。机器人位于未知环境中,通过传感器收集环境测量数据。SLAM算法会逐步建立起一致环境地图,同时确定机器人在地图中相对位姿。SLAM具有十分重要的学术价值和应用价值,它在自动驾驶、服务型机器人、无人机、AR/VR等场景有着广泛的应用。该技术被认为是机器人实现自主功能的必备技术。
[0003]在技术发展方向来说,激光雷达具有很好的稳定性和精度,被广泛应用于移动机器人自主导航。机器人在运动过程中通过编码器与惯性测量单元计算获得里程数据,根据机器人的运动模型计算机器人的位姿,通过激光雷达数据,建立基本地图模型,在移动过程中,更新地图,同时结合观测模型对机器人的位姿进行精确校正,得到机器人精准定位,然后把机器人位置添加到栅格地图中,反复如此,最后完成整个场景的地图构建。
[0004]由于使用场景中结构化障碍物占大多数,激光雷达扫描使用环境中的平直的物体,如墙面、地面、门等表面返回的点云数据,应是一条平直的点云线段。然而,实际情况中,由于误差的存在,激光返回的测量扫描数据中存在大量点云波动的现象,导致最终建立的地图中也会存在许多波动,可以清晰的看到地图中障碍物的真实轮廓附近出现大量的误差点,导致障碍物轮廓不够平直清晰,影响移动机器人的自主性能发挥。

技术实现思路

[0005]有鉴于此,本专利技术实施例提供一种激光雷达地图构建方法、机器人自主导航方法、存储介质和计算机设备,以实现对于激光雷达地图构建算法进一步的优化,添加建图算法对直线特征的描述,减少测量的激光数据噪点对最终地图呈现效果的影响。
[0006]本专利技术实施例第一方面提供一种激光雷达地图构建方法,包括:
[0007]S1、采集初始雷达点云数据;
[0008]S2、根据所示点云数据构建初始地图;
[0009]S3、利于改进的霍夫变换算法对所述点云数据进行直线特征提取,得到多个点云候选区域;
[0010]S4、利于最小二乘法对候选区域的点云进行直线拟合,得到候选点云数据的线段表示;
[0011]S5、输出更清晰的地图。
[0012]在一个具体实施方式中,所述S3包括:
[0013]S31、对所述初始地图进行预处理;
[0014]S32、从预处理后地图的边缘点中随机抽取两个中心像素点(x1,y1)和(x2,y2),通过交叉扫描算法在两个中心像素点间进行扫描,返回遍历次数N,并统计得到经过的实际核心像素点数量M,其中,M,N为大于等于0的整数;
[0015]S33、判断M/N是否大于预定值,若是,就在(x1,y1)和(x2,y2)构成的直线参数(r,θ)上累加M次,并删除刚经过的点;重复S32过程K次,并统计满足M/N大于预定值的空间以及对应的实际核心像素点数量,其中,K为大于0的整数;
[0016]S34、通过对K条直线参数空间进行聚类,统计聚类结果中每一类别包含的实际核心像素点总数,M
cj
=∑
i
M
i
,其中,M
cj
为j类别中的实际核心像素点总数,M
i
为j类别中i组对应的实际核心像素点数量;
[0017]S35、如果类别的实际核心像素点总数M
cj
大于设定阈值,则返回该类别的所有点云。
[0018]在一个具体实施方式中,所述交叉扫描算法包括:
[0019]S321、如|x1

x2|≥|y1

y2|,设置初始扫描方向为正x方向,横坐标小的像素点作为起始点(x3,y3),另外的像素点中心点(x4,y4)作为终点;如|x1

x2|≤|y1

y2|,设置初始扫描方向为正y方向,纵坐标小的像素点作为起始点(x3,y3),另一个的像素点(x4,y4)作为终点;
[0020]S322、判断(x3,y3)和(x4,y4)是否重合,若是,则扫描过程中止,返回M和N;
[0021]S323、若扫描方向为正x轴,则x3=x3+1;若扫描方向为正y轴,则y3=y3+1;判断点(x3,y3)处是否是实际核心像素点,如果是则M=M+1,N=N+1;如果否,则M=M,N=N+1;
[0022]S324、判断点(x3,y3)是否在点(x1,y1)和点(x2,y2)构成直线的区间内,如果点(x3,y3)位于两条直线的区间内转至步骤S322,否则改变方向扫描一次再转至步骤S322。
[0023]在一个具体实施方式中,所述预处理包括图像二值化和边缘检测。
[0024]在一个具体实施方式中,所述S4包括:
[0025]将S35返回的点云映射到图像空间,依次计算第k条直线附近的点到该直线的距离,其中,k为大于0的整数;
[0026]将距离大于误差阈值的点排除,得到第k条直线附近的一个点集P
k

[0027]将点集P
k
作为拟合数据集,利用最小二乘法拟合出直线,以点集P
k
中横坐标最大和最小的两点作为直线的端点,以此得到拟合第k条直线段的区间。
[0028]本专利技术实施例第二方面提供一种移动机器人自主导航方法,
[0029]获取所述机器人里程数据和位姿;
[0030]通过本专利技术实施例第一方面提供方法构建地图;
[0031]计算出机器人的实际位置,与栅格地图进行匹配,实时获取精准位置和位姿;
[0032]根据当前位置、目标位置和四周环境进行路径规划。
[0033]本专利技术实施例第三方面提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本专利技术实施例第一方面提供的方法或者本专利技术实施例第二方面提供的方法。
[0034]本专利技术实施例第四方面提供一种计算设备,包括处理器,其特征在于,所述处理器执行程序时实现如本专利技术实施例第一方面提供的方法或者本专利技术实施例第二方面提供的方法。
[0035]本专利技术的有益效果如下:本专利技术实施例的对地图构建算法进一步的优化,添加建图算法对直线特征的描述,降低点云波动幅度过大对地图精度造成的不利影响,使得构建出的地图中障碍物的轮廓更加清晰。
附图说明
[0036]下面结合附图对本专利技术的具体实施方式作进一步详细的说明。
[0037]图1示出一种激光雷达地图构建方法结构图。
[0038]图2示出本专利技术实施例的原始扫描点建图和直线拟合后的建图。
[0039]图3示出本专利技术实施例的一种计算机设备结构示意图。
具体实施方式...

【技术保护点】

【技术特征摘要】
1.一种激光雷达地图构建方法,其特征在于,包括:S1、采集初始雷达点云数据;S2、根据所示点云数据构建初始地图;S3、利于改进的霍夫变换算法对所述点云数据进行直线特征提取,得到多个点云候选区域;S4、利于最小二乘法对候选区域的点云进行直线拟合,得到候选点云数据的线段表示;S5、输出更清晰的地图。2.根据权利要求1所述的方法,其特征在于,所述S3包括:S31、对所述初始地图进行预处理;S32、从预处理后地图的边缘点中随机抽取两个中心像素点(x1,y1)和(x2,y2),通过交叉扫描算法在两个中心像素点间进行扫描,返回遍历次数N,并统计得到经过的实际核心像素点数量M,其中,M,N为大于等于0的整数;S33、判断M/N是否大于预定值,若是,就在(x1,y1)和(x2,y2)构成的直线参数(r,θ)上累加M次,并删除刚经过的点;重复S32过程K次,并统计满足M/N大于预定值的空间以及对应的实际核心像素点数量,其中,K为大于0的整数;S34、通过对K条直线参数空间进行聚类,统计聚类结果中每一类别包含的实际核心像素点总数,M
cj
=∑
i
M
i
,其中,M
cj
为j类别中的实际核心像素点总数,M
i
为j类别中i组对应的实际核心像素点数量;S35、如果类别的实际核心像素点总数M
cj
大于设定阈值,则返回该类别的所有点云。3.根据权利要求2所述的方法,其特征在于,所述交叉扫描算法包括:S321、如|x1

x2|≥|y1

y2|,设置初始扫描方向为正x方向,横坐标小的像素点作为起始点(x3,y3),另外的像素点中心点(x4,y4)作为终点;如|x1

x2|≤|y1

y2|,设置初始扫描方向为正y方向,纵坐...

【专利技术属性】
技术研发人员:陈昊陈刚张春妍
申请(专利权)人:北京电子工程总体研究所
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1