当前位置: 首页 > 专利查询>江南大学专利>正文

基于测距点边界膨胀的激光测距噪声抑制及定位建图方法技术

技术编号:38732814 阅读:12 留言:0更新日期:2023-09-08 23:21
本发明专利技术公开了基于测距点边界膨胀的激光测距噪声抑制及定位建图方法,包括:根据实际情况选择一定的膨胀系数ρ;利用激光雷达遍历待建图地点,记录所有的激光雷达的点云数据;对激光雷达点云数据进行边界膨胀和抑制噪声处理,得到处理后测距数据的标称实际值;利用SLAM算法对处理后的激光的点云数据进行建图,得到所选地点的完整地图。本发明专利技术有效抑制了激光雷达噪声,增强了激光雷达定位能力,强化了机器人避障能力,且简单易操作。且简单易操作。且简单易操作。

【技术实现步骤摘要】
基于测距点边界膨胀的激光测距噪声抑制及定位建图方法


[0001]本专利技术属于SLAM建图领域,特别涉及基于测距点物膨胀处理的激光雷达数据噪声抑制及定位建图方法。

技术介绍

[0002]随着SLAM(simultaneous localization and mapping,即时定位与地图构建)建图技术的快速发展,多种基于回环检测、视觉里程计与激光雷达数据结合、IMU与激光SLAM结合的算法产生,大大提高了目前SLAM建图精度。目前比较成熟的算法有cartographer、Gmapping等,其中cartographer通过位姿优化和闭环检测的方式来建图,能够在尽量减少计算量的情况下进行大面积的建图。Gmapping基于一种改进的RBPF粒子滤波算法,先进行定位再进行建图,能够实现室内小场景下的实时建图。但目前这些SLAM算法并未对激光雷达点云数据进行初步处理,最终得到的地图会因激光雷达数据噪声而没有足够精确。尤其对于噪声较大的环境,如树林、灌木丛或有防护网的环境,这些传统SLAM建图方法就不能实现精准建图,不利于机器人的避障研究。因此,对激光雷达数据进行处理是有必要的。

技术实现思路

[0003]本专利技术所要解决的技术问题:提供基于测距点边界膨胀的激光测距噪声抑制及定位建图方法,利用测距点边界膨胀对原始激光雷达点云数据进行处理,选择膨胀系数ρ的数值,完成SLAM建图,减少噪声对SLAM建图的影响,强化机器人避障能力,并具有可移植性和灵活性。
[0004]本专利技术为解决以上技术问题而采用以下技术方案:
[0005]本专利技术提出的基于测距点边界膨胀的激光测距噪声抑制及定位建图方法,包括如下步骤:
[0006]S1、根据待建图地点的环境和激光雷达最大量程范围选择合适的膨胀系数ρ。
[0007]S2、利用激光雷达遍历待建图地点,记录下整个过程中激光雷达的点云数据,此数据为原始数据。
[0008]S3、对原始数据进行边界膨胀和抑制噪声处理,得到测距数据的标称最大值。
[0009]S4、选定一条激光并定义为激光1,计算剩下激光中激光2在激光1上的映射长度与激光1的长度之比s;若s<0或s>1,则将激光1对应的测距数据的标称最大值作为激光1的新数据;若0<s<1,则进入到步骤S5。
[0010]S5、计算激光2在激光1上的映射点与激光2之间的横纵坐标差,得到激光2终点与激光1的最短线段距离L的平方。
[0011]S6、以激光2终点为圆点,ρ为半径画圆,计算此圆与激光1形成的弦长的一半的平方d;若d<0,则将激光1对应的测距数据的标称最大值作为激光1的新数据,否则进入到步骤S7。
[0012]S7、定义步骤S6中圆与激光1的两个交点中,靠近所有激光原点的交点与所有激光
原点之间的长度为h;将h与步骤S3中得到的测距数据的标称最大值作比较,若h<max_r,则把h作为激光1的新数据;若max_r<0,则0作为激光1的新数据;否则将测距数据的标称最大值作为激光1的新数据。
[0013]S8、返回步骤S4,将剩下激光中的其他激光进行S4至S7的处理,直至全部激光数据更新为测距数据的标称实际值,并将这一帧数据输入SLAM算法进行建图。
[0014]S9、重复步骤S4至S8,对另一帧激光雷达点云数据进行处理,直至激光雷达点云数据的所有帧都被处理并进行建图。
[0015]S10、此时已将所有原始数据更新为新数据,并利用SLAM算法对处理后数据进行建图,最终得到所选地点的完整地图。
[0016]进一步的,步骤S3中,利用步骤S2中激光雷达点云数据的其中一帧点云数据的长度ranges、最小角度angle_min和角度间隔angle_increment,计算出每一条激光所对应的横、纵坐标,即x
i
和y
i
,并计算每一条激光所对应的max_r,具体计算公式为:
[0017]x
i
=range
i
*cosα
i
[0018]y
i
=range
i
*sinα
i
[0019]max_r
i
=range
i

ρ
[0020]其中,max_r
i
为第i条激光的测距数据的标称最大值,ρ为膨胀系数,range
i
为点云数据中的第i条激光的长度,α
i
为点云数据中第i条激光的角度。
[0021]进一步的,步骤S4中,设定激光1所对应坐标为(x1,y1),激光2所对应坐标为(x2,y2),计算激光2在激光1上的映射长度与激光1长度之比s的具体公式为:
[0022][0023]若s<0,则表示激光1与激光2之间夹角大于90
°
,激光2不会对激光1产生影响,故不做任何其余计算,直接将激光1对应的max_r作为激光1的新数据;若s>1,则表示激光2在激光1的映射长度大于激光1长度range1,激光2不会对激光1产生影响,故不做任何其余计算,直接将激光1对应的max_r作为激光1的新数据;若0<s<1,则表示激光2会对激光1造成影响,进行步骤S5的操作。
[0024]进一步的,步骤S5中,设定激光2在激光1上的映射点为(x
′1,y
′1),计算该映射点与激光2之间的横纵坐标差,即nx=x
′1‑
x2,ny=y
′1‑
y2,得到激光2终点与激光1的最短线段距离L的平方。具体计算公式为:
[0025]nx=x1*s

x2[0026]ny=y1*s

y2[0027]L2=nx2+ny2。
[0028]进一步的,步骤S6中,d的具体计算公式为:
[0029]d=ρ2‑
L2[0030]若d<0,则表示此圆与激光1无交点,不会对激光1产生影响,故不做任何其余计算,直接将激光1对应的max_r作为激光1的新数据;否则进行步骤S7的操作。
[0031]进一步的,步骤S7中,h的具体计算公式为:
[0032][0033]进一步的,本专利技术还提出了一种电子设备,包括存储器、处理器及存储在存储器上
并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现前文所述的基于测距点边界膨胀的激光测距噪声抑制及定位建图方法的步骤。
[0034]进一步的,本专利技术还提出了一种计算机可读的存储介质,所述计算机可读的存储介质存储有计算机程序,所述计算机程序被处理器运行时执行所述基于测距点边界膨胀的激光测距噪声抑制及定位建图方法。
[0035]本专利技术采用以上技术方案,与现有技术相比,其显著技术效果如下本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.基于测距点边界膨胀的激光测距噪声抑制及定位建图方法,其特征在于,包括如下步骤:S1、根据待建图地点的环境和激光雷达最大量程范围选择一定的膨胀系数ρ;S2、利用激光雷达遍历待建图地点,记录所有的激光雷达的点云数据;S3、对步骤S2中的激光雷达点云数据进行边界膨胀和抑制噪声处理,得到测距数据的标称最大值;S4、选定一条激光并定义为激光1,计算剩下激光中激光2在激光1上的映射长度与激光1的长度之比s;若s<0或s>1,则将激光1对应的测距数据的标称最大值作为激光1的新数据;若0<s<1,则进入到步骤S5;S5、计算激光2在激光1上的映射点与激光2之间的横纵坐标差,得到激光2终点与激光1的最短线段距离L的平方;S6、以激光2终点为圆点,ρ为半径画圆,计算此圆与激光1形成的弦长的一半的平方d;若d<0,则将激光1对应的测距数据的标称最大值作为激光1的新数据,否则进入到步骤S7;S7、定义步骤S6中圆与激光1的两个交点中,靠近所有激光原点的交点与所有激光原点之间的长度为h;将h与步骤S3中得到的测距数据的标称最大值作比较,若h<max_r,则把h作为激光1的新数据;若max_r<0,则0作为激光1的新数据;否则将测距数据的标称最大值作为激光1的新数据;S8、返回步骤S4,将剩下激光中的其他激光进行S4至S7的处理,直至全部激光数据更新为测距数据的标称实际值,并将这一帧数据输入SLAM算法进行建图;S9、重复步骤S4至S8,对另一帧激光雷达点云数据进行处理,直至激光雷达点云数据的所有帧都被处理并进行建图;S10、利用SLAM算法对处理后数据进行建图,最终得到所选地点的完整地图。2.根据权利要求1所述的基于测距点边界膨胀的激光测距噪声抑制及定位建图方法,其特征在于,步骤S3中,利用步骤S2中激光雷达点云数据的其中一帧点云数据的长度ranges、最小角度angle_min和角度间隔angle_increment,计算出每一条激光所对应的横、纵坐标,即x
i
和y
i
,并计算每一条激光所对应的max_r,具体计算公式为:x
i
=range
i
*cosα
i
y
i
=range
i
*sinα
i
max_r
i
=range
i

【专利技术属性】
技术研发人员:张一鸣李聃丘潘淳王蛟龙
申请(专利权)人:江南大学
类型:发明
国别省市:

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

1