一种基于改进的Gmapping算法的移动机器人建图方法技术

技术编号:37979587 阅读:17 留言:0更新日期:2023-06-30 09:54
本发明专利技术提供的一种基于改进的Gmapping算法的移动机器人建图方法。在移动机器人建图过程中,Gmapping算法在室内环境下建图效果良好,但其存在着粒子退化的缺点,本发明专利技术主要这一缺点进行改进。移动机器人本体所载激光雷达散发粒子后,由于二维环境的改变,粒子对环境的描述能力就会有所改变。在Gmapping算法中,增加判断粒子状态的环节,根据退化粒子的多少,进行重采样步骤,完成粒子分配权重的合理性。最后,增加仿真对比过程,本发明专利技术对二维环境建图精确,充分表明了本发明专利技术方法的有效性和优越性。越性。越性。

【技术实现步骤摘要】
一种基于改进的Gmapping算法的移动机器人建图方法


[0001]本专利技术属于移动机器人同步定位与建图构建
,尤其涉及一种基于改进的Gmapping算法的移动机器人建图方法。

技术介绍

[0002]在未知的环境中,携带着激光雷达等传感器的移动机器人本体可以通过激光雷达采集到经历的位置、姿态和地图等,所以在这个时刻的位置和地图是固定的。Gmapping算法是基于粒子滤波的SLAM算法,此算法能够有效解决同时定位和建立二维地图,将定位和建立地图分割开来,相比粒子滤波,可以容易的估计出移动机器人所处的环境信息,实现其建图的效率和精度。Gmapping算法中每个粒子能够携带一个地图,通过这种方法描述移动机器人的实际位置姿态也更加高效。其具体算法过程如图1所示。在建立二维地图的过程中,Gmapping算法初始化产生的粒子总数n一直保持不变。随着移动机器人不断运动,粒子所携带的地图信息也在同步变化,但移动机器人本体所处位置的地图信息不一样,因而需要处理的数据量不一样,这就导致在一些简单的位置,粒子数目相对较多,建图准确,但是造成了粒子过多浪费计算资源。相反,在复杂的位置,需要的粒子数目偏多,但是提供的粒子数目相对偏少,因此导致建图效果不佳,无法全面表现环境地图。

技术实现思路

[0003]本专利技术的目的在于,针对粒子分配权重不均的情况,对算法进行优化,优化得到提高粒子分配权重的优化算法,保证粒子权重的统一性。
[0004]为实现上述目的,本专利技术采用如下技术方案。
[0005]一种基于改进的Gmapping算法的移动机器人建图方法,包括如下步骤:
[0006]步骤(1)、通过里程计和激光雷达采集数据,进行数据处理后,移动机器人本体通过这些数据判断出其所处位置的二维环境信息和位置姿态信息,具体而言:
[0007]初始化产生n个初始粒子,粒子记录了系统的状态,其中每个粒子独立记录一条可能的机器人轨迹和环境地图;每个粒子权重为
[0008]步骤(2)、根据k时刻的实际观测值和每个粒子的位置姿态,对每个粒子的权值进行更新和归一化处理,归一化的粒子权重
[0009]步骤(3)、根据据精度需求设定阈值N
t
h,将有效粒子数N
eff
值与阈值N
t
h相比较,如果N
eff
<N
t
h,则表示粒子退化,所携带的地图信息缺失,不能全面表现地图,则返回步骤(2)进行重采样操作;其中有效粒子数N
eff
=1/表示k时刻第i个粒子的权重值;
[0010]步骤(4)在机器人运动过程中,给运动的位置和姿态信息加上噪声,并在移动机器人本体周围放置各个粒子,对每个粒子进行扫描匹配;对于从激光雷达所得到的环境信息
结合移动机器人的位姿,通过粒子的运动轨迹,更新粒子的地图信息,判断所处状态下粒子所携带地图信息是否与预测值相近,若相近,则让其逐个匹配k时刻各帧的位置坐标,确定出匹配粒子的位置坐标后,使携带地图的粒子分布在当前位置坐标周围;定位未包含地图信息的退化粒子,将其删除,并对粒子的权重进行权值更新。
[0011]步骤(5)、进行重采样,分配粒子权重,将权重小的粒子舍弃,对其进行归一化权重后,再进行粒子状态的判断,基于重采样结果,更新粒子权重及其地图信息,完成地图更新。
[0012]对前述基于改进的Gmapping算法的移动机器人建图方法的进一步改进,所述步骤(1)中,若并不清楚其所处的位置和姿态信息,则随机生成N个粒子的姿态信息随机安排机器人的姿态;若已经通过粒子的信息明确初始位置,则则随机生成N个粒子并将其放置在初始位置周围,N个初始粒子的权重都为所述粒子表征系统的状态,记录一条可能的机器人轨迹和环境地图;
[0013]其有益效果在于:
[0014]相较于现有技术,本专利技术对2D环境下建图效果更好。得益于本专利技术中判断粒子状态的关键环节,如果粒子退化严重,需要对粒子进行重采样过程,进而使得所有粒子能够发挥作用。在二维环境简单的位置,移动机器人可以用很少的粒子进行地图的构建,相反,在较复杂的位置,其可以用大量的粒子进行描述地图。通过这样,移动机器人就可以建立出所处位置的二维地图。本专利技术对二维环境建图精确,能够输出和二维仿真环境相匹配的位置地图,地图噪点少,地图出现畸变小。
附图说明
[0015]图1为移动机器人建图算法的基本流程图;
[0016]图2为移动机器人建图改进算法的流程图;
[0017]图3为评价结果仿真图;
[0018]图4为基于未改进算法前的仿真图;
[0019]图5为基于改进算法的仿真图。
具体实施方式
[0020]下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
[0021]本专利技术的说明书实施例和权利要求书及附图中的术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元。
[0022]下面结合附图和实施例,对本专利技术的技术方案做进一步的详细描述。
[0023]如图1所示,Gmapping算法过程,包括如下步骤:
[0024](1)数据处理。通过里程计和激光雷达采集数据,进行数据处理后,移动机器人本体通过这些数据判断出其所处位置的二维环境信息和位置姿态信息,初始化产生n个初始粒子,粒子记录了系统的状态,每个粒子都独立的记录一条可能的机器人轨迹和环境地图。
其中每个粒子权重为其中每个粒子权重为
[0025](2)预测。根据k

1时刻移动机器人本体所处的状态和位姿信息x
k
‑1,通过贝叶斯估计来计算k时刻的分布概率密度函数p(x
k
|z
1:k
),从而对k时刻进行预测,得到k时刻的所处状态和位姿信息。由贝叶斯定理,预测方程为
[0026][0027](3)粒子匹配。在k时刻,移动机器人运动至某一环境下,判断所处状态下粒子所携带地图信息是否与预测值相近,若相近,则让其逐个匹配k时刻各帧的位置坐标,继续进行下一步。
[0028](4)粒子分布。通过第(3)步,确定出匹配粒子的位置坐标,使携带地图的粒子分布在当前位置坐标周围。
[0029](5)更新粒子权重。由于存在粒子退化的原因,部分粒子并没有表示出地图信息,所以对粒子的权重进行权值更新。
[0030](6)更新粒子重采样。通过设定一个阈值N
t
h,将有效粒子数N
eff
值与阈值相比较,如果N
eff
<N
t
h,则粒子退化,所携带的地图信息缺失,不能全面表现地图,本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于改进的Gmapping算法的移动机器人建图方法,其特征在于,包括如下步骤:步骤(1)、通过里程计和激光雷达采集数据,进行数据处理后,移动机器人本体通过这些数据判断出其所处位置的二维环境信息和位置姿态信息,初始化产生n个初始粒子,粒子记录了系统的状态,其中每个粒子独立记录一条可能的机器人轨迹和环境地图;每个粒子权重为步骤(2)、根据k时刻的实际观测值和每个粒子的位置姿态,对每个粒子的权值进行更新和归一化处理,归一化的粒子权重步骤(3)、根据据精度需求设定阈值N
t
h,将有效粒子数N
eff
值与阈值N
t
h相比较,如果N
eff
<N
t
h,则表示粒子退化,所携带的地图信息缺失,不能全面表现地图,则返回步骤(2)进行重采样操作;其中有效粒子数采样操作;其中有效粒子数采样操作;其中有效粒子数表示k时刻第i个粒子的权重值;步骤(4)在机器人运动过程中,给运动的位置和...

【专利技术属性】
技术研发人员:韩江桂郭文勇王波翔潘兴隆余丽伍哲曹承昊王晶航
申请(专利权)人:中国人民解放军海军工程大学
类型:发明
国别省市:

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

1