针对机器人在复杂地形环境下定位不准确、建图精度不高和误差堆积等问题,设计了一种基于优化Hector-SLAM(simultaneous localization and mapping,实时定位与建图)算法的自主导航系统,以实现机器人在及时躲避障碍物的同时准确到达目标点。首先,采用双三次插值法代替原有插值法,以解决Hector-SLAM算法在使用低精度激光雷达数据建图时易出现地图不清晰等问题,从而提升扫描匹配的精准度。其次,采用扩展卡尔曼滤波算法对里程计和惯性测量单元的数据进行融合,以提高定位的准确性。再次,针对激光点数据无法瞬时获得而机器人持续运动所导致的运动畸变问题,结合里程计辅助法与PL-ICP(point to line iterative closest points,点到线迭代最近点)配准法,以实现运动畸变的校正;同时,设置倾斜角阈值以消除地图重影,并利用A*算法和动态窗口法规划最优路径。最后,以AGV(automated guided vehicle,自主导引车)为例,在实际场景中开展建图实验和自主导航实验。结果表明,优化后自主导航系统的平均建图相对误差约为0.44%,最小建图误差为0.236 m,较优化前减小了0.041 m,有效地解决了因误差堆积和运动畸变而导致的建图不清晰问题,增强了AGV在复杂地形环境中的适应能力,实现了高精度定位。研究结果对提高移动机器人在室内多障碍物环境下的自主导航能力具有一定的理论和工程意义。
Aiming at the problems of inaccurate positioning, low mapping accuracy and error accumulation of robots in complex terrain environments, an autonomous navigation system based on optimized Hector-SLAM (simultaneous localization and mapping) algorithm is designed, which ensures that the robot reaches the target point accurately while avoiding obstacles promptly. Firstly, the bicubic interpolation method was used to replace the original interpolation method to solve the problem of map blurring when the Hector-SLAM algorithm was used to build maps with low-precision lidar data, so as to improve the accuracy of scan matching. Secondly, the extended Kalman filter algorithm was used to fuse the data of odometer and inertial measurement unit, which could improve the positioning accuracy. Thirdly, in view of the problem of motion distortion caused by the inability to obtain instantaneous laser point data and the continuous movement of robot, the odometer auxiliary method and PL-ICP (point to line iterative closest points) registration method were combined to realize the correction of motion distortion. At the same time, the tilt angle threshold was set to eliminate the map ghosting, and the optimal path was planned by using A* algorithm and dynamic window approach. Finally, taking AGV (automated guided vehicle) as an example, the mapping experiments and autonomous navigation experiments were carried out in actual scenarios. The results showed that the average mapping relative error of the optimized autonomous navigation system was about 0.44%, and the minimum mapping error was 0.236 m, which was 0.041 m less than that before optimization. It effectively solved the problem of unclear mapping caused by error accumulation and motion distortion, and enhanced the adaptability of AGV in complex terrain environment, so as to achieve high-precision positioning. The research results have certain theoretical and engineering significance for improving the autonomous navigation ability of mobile robots in indoor multi-obstacle environment.
WANG Jianhua, HUANG Lei, SHI Yuting, ZHANG Xiaoqian, QI Liangjian. Design of robot autonomous navigation system based on optimized Hector-SLAM algorithm. Chinese Journal of Engineering Design[J], 2023, 30(6): 678-686 doi:10.3785/j.issn.1006-754X.2024.03.161
自主移动机器人必须具备自主导航和路径规划能力,而构建环境地图是实现路径规划的前提[1-5]。SLAM(simultaneous localization and mapping,实时定位与建图)是机器人自主导航中的一项关键技术[6-7],其是指机器人在未知环境中移动时,利用传感器定位自身位姿,并基于位姿增量式构建地图。近年来,随着激光雷达和中央处理器的性能不断提升,学者们通过不断改进和优化SLAM算法来满足这些设备的性能需求。支奕琛等[8]提出了一种基于ZBar算法和融合Cartographer-SLAM与Hector-SLAM算法的方法,以实现对二维码目标点的识别和标记。该方法先采用ZBar算法识别机器人的二维码信息,再采用Cartographer算法生成Geotiff地图,最后采用Hector-SLAM算法在地图上绘制目标点。经实验验证,该方法能识别远距离目标点的信息且精度较高,但对目标点的预估定位存在误差。Guan等[9]提出了一种集成Gmapping建议分布与Kullback-Leibler散度的粒子数适应算法。经实验验证,该算法能够采用较少的粒子实现较高的定位精度,但是其对单个粒子的计算负载较大,所耗费的计算时间较长。苏易衡等[10]提出了一种适用于低端激光雷达的优化Hector-SLAM算法:先采用插值法获取高精度的栅格地图,再通过图像相减与矩阵变换来减少系统对激光雷达刷新率的依赖,最后对SLAM中的关键帧判定机制进行优化,以消除旋转时所获取数据的干扰。经实验验证,该算法在搭载低精度激光雷达条件下也能构建清晰的地图。周燕[11]提出了一种利用卡尔曼滤波算法将Hector-SLAM与人工地标视觉定位结果相融合的组合定位算法。该算法可抑制Hector-SLAM所导致的累积误差,削弱人工地标视觉定位引发的跳变异常,提高了定位精度。
综上所述,二维SLAM算法已被广泛应用于实际场景。目前,常用的激光SLAM算法包括Gmapping、Karto-SLAM、Cartographer和Hector-SLAM等。其中,Hector-SLAM是一种基于高斯-牛顿(Gauss-Newton)扫描匹配的算法[12],该算法在构建地图时不需要里程计数据,更适用于无人机以及行驶在不平坦地面上的车辆的定位和建图,但其对激光雷达的精度和刷新率的要求较高。例如:美国Innovusion公司研制的猎鹰(Falcon)激光雷达,其探测距离高达500 m,测距精度为±2 cm,角分辨率为0.05°×0.05°,每秒发出的激光点云数高达100万个,但成本高昂;上海思岚科技有限公司面向低端消费电子产品推出了非接触式激光扫描测距雷达(型号为RPLIDAR-A1),其探测距离为0.15~12 m,最高测距精度为±3 cm,在5~12 m时的测距精度为实际距离的2.5%,角分辨率为1°,每秒发出的激光点云数仅为8 000个。显然,RPLIDAR-A1激光扫描测距雷达的精度远远不及猎鹰激光雷达,但胜在价格低廉。一般情况下,激光雷达的精度越高,价格越昂贵,在实际应用中会受到限制。但Hector-SLAM算法在使用低精度激光雷达数据建图时会产生大量累积误差,在导航定位时易引发故障。针对上述问题,笔者拟作如下改进:1)优化Hector-SLAM算法中的插值函数,即采用双三次插值法构建高精度的栅格地图,以提高扫描匹配的精准度;2)采用扩展卡尔曼滤波算法对里程计和惯性测量单元(inertial measurement unit, IMU)的数据进行融合,通过组合定位方法来降低漂移效应引起的累积误差,以提高定位的准确性;3)提出里程计辅助法与PL-ICP(point to line iterative closest points,点到线迭代最近点)配准法相融合的方法,以实现运动估计过程的快速收敛,从而达到校正运动畸变的目的;4)设置IMU的倾斜角阈值,以消除机器人旋转时出现的地图重影现象。在此基础上,利用优化的Hector-SLAM算法设计一种低成本、高性能的自主导航系统,并以AGV(automated guided vehicle,自动导引车)为例开展建图实验和自主导航实验,以验证系统的可行性。
Novel pedestrian navigation system based on zero velocity update procedure technology and improved Sage-Husa adaptive Kalman filter with index fading memory factor
[J]. IET Wireless Sensor System, 2023, 13(2): 48-57.
... 自主移动机器人必须具备自主导航和路径规划能力,而构建环境地图是实现路径规划的前提[1-5].SLAM(simultaneous localization and mapping,实时定位与建图)是机器人自主导航中的一项关键技术[6-7],其是指机器人在未知环境中移动时,利用传感器定位自身位姿,并基于位姿增量式构建地图.近年来,随着激光雷达和中央处理器的性能不断提升,学者们通过不断改进和优化SLAM算法来满足这些设备的性能需求.支奕琛等[8]提出了一种基于ZBar算法和融合Cartographer-SLAM与Hector-SLAM算法的方法,以实现对二维码目标点的识别和标记.该方法先采用ZBar算法识别机器人的二维码信息,再采用Cartographer算法生成Geotiff地图,最后采用Hector-SLAM算法在地图上绘制目标点.经实验验证,该方法能识别远距离目标点的信息且精度较高,但对目标点的预估定位存在误差.Guan等[9]提出了一种集成Gmapping建议分布与Kullback-Leibler散度的粒子数适应算法.经实验验证,该算法能够采用较少的粒子实现较高的定位精度,但是其对单个粒子的计算负载较大,所耗费的计算时间较长.苏易衡等[10]提出了一种适用于低端激光雷达的优化Hector-SLAM算法:先采用插值法获取高精度的栅格地图,再通过图像相减与矩阵变换来减少系统对激光雷达刷新率的依赖,最后对SLAM中的关键帧判定机制进行优化,以消除旋转时所获取数据的干扰.经实验验证,该算法在搭载低精度激光雷达条件下也能构建清晰的地图.周燕[11]提出了一种利用卡尔曼滤波算法将Hector-SLAM与人工地标视觉定位结果相融合的组合定位算法.该算法可抑制Hector-SLAM所导致的累积误差,削弱人工地标视觉定位引发的跳变异常,提高了定位精度. ...
一种基于RGB-D的移动机器人未知室内环境自主探索与地图构建方法
1
2017
... 自主移动机器人必须具备自主导航和路径规划能力,而构建环境地图是实现路径规划的前提[1-5].SLAM(simultaneous localization and mapping,实时定位与建图)是机器人自主导航中的一项关键技术[6-7],其是指机器人在未知环境中移动时,利用传感器定位自身位姿,并基于位姿增量式构建地图.近年来,随着激光雷达和中央处理器的性能不断提升,学者们通过不断改进和优化SLAM算法来满足这些设备的性能需求.支奕琛等[8]提出了一种基于ZBar算法和融合Cartographer-SLAM与Hector-SLAM算法的方法,以实现对二维码目标点的识别和标记.该方法先采用ZBar算法识别机器人的二维码信息,再采用Cartographer算法生成Geotiff地图,最后采用Hector-SLAM算法在地图上绘制目标点.经实验验证,该方法能识别远距离目标点的信息且精度较高,但对目标点的预估定位存在误差.Guan等[9]提出了一种集成Gmapping建议分布与Kullback-Leibler散度的粒子数适应算法.经实验验证,该算法能够采用较少的粒子实现较高的定位精度,但是其对单个粒子的计算负载较大,所耗费的计算时间较长.苏易衡等[10]提出了一种适用于低端激光雷达的优化Hector-SLAM算法:先采用插值法获取高精度的栅格地图,再通过图像相减与矩阵变换来减少系统对激光雷达刷新率的依赖,最后对SLAM中的关键帧判定机制进行优化,以消除旋转时所获取数据的干扰.经实验验证,该算法在搭载低精度激光雷达条件下也能构建清晰的地图.周燕[11]提出了一种利用卡尔曼滤波算法将Hector-SLAM与人工地标视觉定位结果相融合的组合定位算法.该算法可抑制Hector-SLAM所导致的累积误差,削弱人工地标视觉定位引发的跳变异常,提高了定位精度. ...
Dynamic local path planning method based on neutrosophic set theory for a mobile robot
0
2023
人工林立木整枝作业机械研究进展
0
2019
人工林立木整枝作业机械研究进展
0
2019
基于模糊控制的除草机器人自主导航
0
2010
基于模糊控制的除草机器人自主导航
0
2010
Dynamic path planning for forklift AGV based on smoothing A* and improved DWA hybrid algorithm
1
2022
... 自主移动机器人必须具备自主导航和路径规划能力,而构建环境地图是实现路径规划的前提[1-5].SLAM(simultaneous localization and mapping,实时定位与建图)是机器人自主导航中的一项关键技术[6-7],其是指机器人在未知环境中移动时,利用传感器定位自身位姿,并基于位姿增量式构建地图.近年来,随着激光雷达和中央处理器的性能不断提升,学者们通过不断改进和优化SLAM算法来满足这些设备的性能需求.支奕琛等[8]提出了一种基于ZBar算法和融合Cartographer-SLAM与Hector-SLAM算法的方法,以实现对二维码目标点的识别和标记.该方法先采用ZBar算法识别机器人的二维码信息,再采用Cartographer算法生成Geotiff地图,最后采用Hector-SLAM算法在地图上绘制目标点.经实验验证,该方法能识别远距离目标点的信息且精度较高,但对目标点的预估定位存在误差.Guan等[9]提出了一种集成Gmapping建议分布与Kullback-Leibler散度的粒子数适应算法.经实验验证,该算法能够采用较少的粒子实现较高的定位精度,但是其对单个粒子的计算负载较大,所耗费的计算时间较长.苏易衡等[10]提出了一种适用于低端激光雷达的优化Hector-SLAM算法:先采用插值法获取高精度的栅格地图,再通过图像相减与矩阵变换来减少系统对激光雷达刷新率的依赖,最后对SLAM中的关键帧判定机制进行优化,以消除旋转时所获取数据的干扰.经实验验证,该算法在搭载低精度激光雷达条件下也能构建清晰的地图.周燕[11]提出了一种利用卡尔曼滤波算法将Hector-SLAM与人工地标视觉定位结果相融合的组合定位算法.该算法可抑制Hector-SLAM所导致的累积误差,削弱人工地标视觉定位引发的跳变异常,提高了定位精度. ...
SLAM; definition and evolution
1
2021
... 自主移动机器人必须具备自主导航和路径规划能力,而构建环境地图是实现路径规划的前提[1-5].SLAM(simultaneous localization and mapping,实时定位与建图)是机器人自主导航中的一项关键技术[6-7],其是指机器人在未知环境中移动时,利用传感器定位自身位姿,并基于位姿增量式构建地图.近年来,随着激光雷达和中央处理器的性能不断提升,学者们通过不断改进和优化SLAM算法来满足这些设备的性能需求.支奕琛等[8]提出了一种基于ZBar算法和融合Cartographer-SLAM与Hector-SLAM算法的方法,以实现对二维码目标点的识别和标记.该方法先采用ZBar算法识别机器人的二维码信息,再采用Cartographer算法生成Geotiff地图,最后采用Hector-SLAM算法在地图上绘制目标点.经实验验证,该方法能识别远距离目标点的信息且精度较高,但对目标点的预估定位存在误差.Guan等[9]提出了一种集成Gmapping建议分布与Kullback-Leibler散度的粒子数适应算法.经实验验证,该算法能够采用较少的粒子实现较高的定位精度,但是其对单个粒子的计算负载较大,所耗费的计算时间较长.苏易衡等[10]提出了一种适用于低端激光雷达的优化Hector-SLAM算法:先采用插值法获取高精度的栅格地图,再通过图像相减与矩阵变换来减少系统对激光雷达刷新率的依赖,最后对SLAM中的关键帧判定机制进行优化,以消除旋转时所获取数据的干扰.经实验验证,该算法在搭载低精度激光雷达条件下也能构建清晰的地图.周燕[11]提出了一种利用卡尔曼滤波算法将Hector-SLAM与人工地标视觉定位结果相融合的组合定位算法.该算法可抑制Hector-SLAM所导致的累积误差,削弱人工地标视觉定位引发的跳变异常,提高了定位精度. ...
Novel pedestrian navigation system based on zero velocity update procedure technology and improved Sage-Husa adaptive Kalman filter with index fading memory factor
1
2023
... 自主移动机器人必须具备自主导航和路径规划能力,而构建环境地图是实现路径规划的前提[1-5].SLAM(simultaneous localization and mapping,实时定位与建图)是机器人自主导航中的一项关键技术[6-7],其是指机器人在未知环境中移动时,利用传感器定位自身位姿,并基于位姿增量式构建地图.近年来,随着激光雷达和中央处理器的性能不断提升,学者们通过不断改进和优化SLAM算法来满足这些设备的性能需求.支奕琛等[8]提出了一种基于ZBar算法和融合Cartographer-SLAM与Hector-SLAM算法的方法,以实现对二维码目标点的识别和标记.该方法先采用ZBar算法识别机器人的二维码信息,再采用Cartographer算法生成Geotiff地图,最后采用Hector-SLAM算法在地图上绘制目标点.经实验验证,该方法能识别远距离目标点的信息且精度较高,但对目标点的预估定位存在误差.Guan等[9]提出了一种集成Gmapping建议分布与Kullback-Leibler散度的粒子数适应算法.经实验验证,该算法能够采用较少的粒子实现较高的定位精度,但是其对单个粒子的计算负载较大,所耗费的计算时间较长.苏易衡等[10]提出了一种适用于低端激光雷达的优化Hector-SLAM算法:先采用插值法获取高精度的栅格地图,再通过图像相减与矩阵变换来减少系统对激光雷达刷新率的依赖,最后对SLAM中的关键帧判定机制进行优化,以消除旋转时所获取数据的干扰.经实验验证,该算法在搭载低精度激光雷达条件下也能构建清晰的地图.周燕[11]提出了一种利用卡尔曼滤波算法将Hector-SLAM与人工地标视觉定位结果相融合的组合定位算法.该算法可抑制Hector-SLAM所导致的累积误差,削弱人工地标视觉定位引发的跳变异常,提高了定位精度. ...
机器人二维码目标点识别与SLAM地图标记研究
1
2022
... 自主移动机器人必须具备自主导航和路径规划能力,而构建环境地图是实现路径规划的前提[1-5].SLAM(simultaneous localization and mapping,实时定位与建图)是机器人自主导航中的一项关键技术[6-7],其是指机器人在未知环境中移动时,利用传感器定位自身位姿,并基于位姿增量式构建地图.近年来,随着激光雷达和中央处理器的性能不断提升,学者们通过不断改进和优化SLAM算法来满足这些设备的性能需求.支奕琛等[8]提出了一种基于ZBar算法和融合Cartographer-SLAM与Hector-SLAM算法的方法,以实现对二维码目标点的识别和标记.该方法先采用ZBar算法识别机器人的二维码信息,再采用Cartographer算法生成Geotiff地图,最后采用Hector-SLAM算法在地图上绘制目标点.经实验验证,该方法能识别远距离目标点的信息且精度较高,但对目标点的预估定位存在误差.Guan等[9]提出了一种集成Gmapping建议分布与Kullback-Leibler散度的粒子数适应算法.经实验验证,该算法能够采用较少的粒子实现较高的定位精度,但是其对单个粒子的计算负载较大,所耗费的计算时间较长.苏易衡等[10]提出了一种适用于低端激光雷达的优化Hector-SLAM算法:先采用插值法获取高精度的栅格地图,再通过图像相减与矩阵变换来减少系统对激光雷达刷新率的依赖,最后对SLAM中的关键帧判定机制进行优化,以消除旋转时所获取数据的干扰.经实验验证,该算法在搭载低精度激光雷达条件下也能构建清晰的地图.周燕[11]提出了一种利用卡尔曼滤波算法将Hector-SLAM与人工地标视觉定位结果相融合的组合定位算法.该算法可抑制Hector-SLAM所导致的累积误差,削弱人工地标视觉定位引发的跳变异常,提高了定位精度. ...
机器人二维码目标点识别与SLAM地图标记研究
1
2022
... 自主移动机器人必须具备自主导航和路径规划能力,而构建环境地图是实现路径规划的前提[1-5].SLAM(simultaneous localization and mapping,实时定位与建图)是机器人自主导航中的一项关键技术[6-7],其是指机器人在未知环境中移动时,利用传感器定位自身位姿,并基于位姿增量式构建地图.近年来,随着激光雷达和中央处理器的性能不断提升,学者们通过不断改进和优化SLAM算法来满足这些设备的性能需求.支奕琛等[8]提出了一种基于ZBar算法和融合Cartographer-SLAM与Hector-SLAM算法的方法,以实现对二维码目标点的识别和标记.该方法先采用ZBar算法识别机器人的二维码信息,再采用Cartographer算法生成Geotiff地图,最后采用Hector-SLAM算法在地图上绘制目标点.经实验验证,该方法能识别远距离目标点的信息且精度较高,但对目标点的预估定位存在误差.Guan等[9]提出了一种集成Gmapping建议分布与Kullback-Leibler散度的粒子数适应算法.经实验验证,该算法能够采用较少的粒子实现较高的定位精度,但是其对单个粒子的计算负载较大,所耗费的计算时间较长.苏易衡等[10]提出了一种适用于低端激光雷达的优化Hector-SLAM算法:先采用插值法获取高精度的栅格地图,再通过图像相减与矩阵变换来减少系统对激光雷达刷新率的依赖,最后对SLAM中的关键帧判定机制进行优化,以消除旋转时所获取数据的干扰.经实验验证,该算法在搭载低精度激光雷达条件下也能构建清晰的地图.周燕[11]提出了一种利用卡尔曼滤波算法将Hector-SLAM与人工地标视觉定位结果相融合的组合定位算法.该算法可抑制Hector-SLAM所导致的累积误差,削弱人工地标视觉定位引发的跳变异常,提高了定位精度. ...
KLD sampling with Gmapping proposal for Monte Carlo localization of mobile robots
1
2019
... 自主移动机器人必须具备自主导航和路径规划能力,而构建环境地图是实现路径规划的前提[1-5].SLAM(simultaneous localization and mapping,实时定位与建图)是机器人自主导航中的一项关键技术[6-7],其是指机器人在未知环境中移动时,利用传感器定位自身位姿,并基于位姿增量式构建地图.近年来,随着激光雷达和中央处理器的性能不断提升,学者们通过不断改进和优化SLAM算法来满足这些设备的性能需求.支奕琛等[8]提出了一种基于ZBar算法和融合Cartographer-SLAM与Hector-SLAM算法的方法,以实现对二维码目标点的识别和标记.该方法先采用ZBar算法识别机器人的二维码信息,再采用Cartographer算法生成Geotiff地图,最后采用Hector-SLAM算法在地图上绘制目标点.经实验验证,该方法能识别远距离目标点的信息且精度较高,但对目标点的预估定位存在误差.Guan等[9]提出了一种集成Gmapping建议分布与Kullback-Leibler散度的粒子数适应算法.经实验验证,该算法能够采用较少的粒子实现较高的定位精度,但是其对单个粒子的计算负载较大,所耗费的计算时间较长.苏易衡等[10]提出了一种适用于低端激光雷达的优化Hector-SLAM算法:先采用插值法获取高精度的栅格地图,再通过图像相减与矩阵变换来减少系统对激光雷达刷新率的依赖,最后对SLAM中的关键帧判定机制进行优化,以消除旋转时所获取数据的干扰.经实验验证,该算法在搭载低精度激光雷达条件下也能构建清晰的地图.周燕[11]提出了一种利用卡尔曼滤波算法将Hector-SLAM与人工地标视觉定位结果相融合的组合定位算法.该算法可抑制Hector-SLAM所导致的累积误差,削弱人工地标视觉定位引发的跳变异常,提高了定位精度. ...
适用于低端激光雷达的优化Hector SLAM算法
1
2019
... 自主移动机器人必须具备自主导航和路径规划能力,而构建环境地图是实现路径规划的前提[1-5].SLAM(simultaneous localization and mapping,实时定位与建图)是机器人自主导航中的一项关键技术[6-7],其是指机器人在未知环境中移动时,利用传感器定位自身位姿,并基于位姿增量式构建地图.近年来,随着激光雷达和中央处理器的性能不断提升,学者们通过不断改进和优化SLAM算法来满足这些设备的性能需求.支奕琛等[8]提出了一种基于ZBar算法和融合Cartographer-SLAM与Hector-SLAM算法的方法,以实现对二维码目标点的识别和标记.该方法先采用ZBar算法识别机器人的二维码信息,再采用Cartographer算法生成Geotiff地图,最后采用Hector-SLAM算法在地图上绘制目标点.经实验验证,该方法能识别远距离目标点的信息且精度较高,但对目标点的预估定位存在误差.Guan等[9]提出了一种集成Gmapping建议分布与Kullback-Leibler散度的粒子数适应算法.经实验验证,该算法能够采用较少的粒子实现较高的定位精度,但是其对单个粒子的计算负载较大,所耗费的计算时间较长.苏易衡等[10]提出了一种适用于低端激光雷达的优化Hector-SLAM算法:先采用插值法获取高精度的栅格地图,再通过图像相减与矩阵变换来减少系统对激光雷达刷新率的依赖,最后对SLAM中的关键帧判定机制进行优化,以消除旋转时所获取数据的干扰.经实验验证,该算法在搭载低精度激光雷达条件下也能构建清晰的地图.周燕[11]提出了一种利用卡尔曼滤波算法将Hector-SLAM与人工地标视觉定位结果相融合的组合定位算法.该算法可抑制Hector-SLAM所导致的累积误差,削弱人工地标视觉定位引发的跳变异常,提高了定位精度. ...
适用于低端激光雷达的优化Hector SLAM算法
1
2019
... 自主移动机器人必须具备自主导航和路径规划能力,而构建环境地图是实现路径规划的前提[1-5].SLAM(simultaneous localization and mapping,实时定位与建图)是机器人自主导航中的一项关键技术[6-7],其是指机器人在未知环境中移动时,利用传感器定位自身位姿,并基于位姿增量式构建地图.近年来,随着激光雷达和中央处理器的性能不断提升,学者们通过不断改进和优化SLAM算法来满足这些设备的性能需求.支奕琛等[8]提出了一种基于ZBar算法和融合Cartographer-SLAM与Hector-SLAM算法的方法,以实现对二维码目标点的识别和标记.该方法先采用ZBar算法识别机器人的二维码信息,再采用Cartographer算法生成Geotiff地图,最后采用Hector-SLAM算法在地图上绘制目标点.经实验验证,该方法能识别远距离目标点的信息且精度较高,但对目标点的预估定位存在误差.Guan等[9]提出了一种集成Gmapping建议分布与Kullback-Leibler散度的粒子数适应算法.经实验验证,该算法能够采用较少的粒子实现较高的定位精度,但是其对单个粒子的计算负载较大,所耗费的计算时间较长.苏易衡等[10]提出了一种适用于低端激光雷达的优化Hector-SLAM算法:先采用插值法获取高精度的栅格地图,再通过图像相减与矩阵变换来减少系统对激光雷达刷新率的依赖,最后对SLAM中的关键帧判定机制进行优化,以消除旋转时所获取数据的干扰.经实验验证,该算法在搭载低精度激光雷达条件下也能构建清晰的地图.周燕[11]提出了一种利用卡尔曼滤波算法将Hector-SLAM与人工地标视觉定位结果相融合的组合定位算法.该算法可抑制Hector-SLAM所导致的累积误差,削弱人工地标视觉定位引发的跳变异常,提高了定位精度. ...
地铁隧道内四旋翼自主导航系统设计
1
2021
... 自主移动机器人必须具备自主导航和路径规划能力,而构建环境地图是实现路径规划的前提[1-5].SLAM(simultaneous localization and mapping,实时定位与建图)是机器人自主导航中的一项关键技术[6-7],其是指机器人在未知环境中移动时,利用传感器定位自身位姿,并基于位姿增量式构建地图.近年来,随着激光雷达和中央处理器的性能不断提升,学者们通过不断改进和优化SLAM算法来满足这些设备的性能需求.支奕琛等[8]提出了一种基于ZBar算法和融合Cartographer-SLAM与Hector-SLAM算法的方法,以实现对二维码目标点的识别和标记.该方法先采用ZBar算法识别机器人的二维码信息,再采用Cartographer算法生成Geotiff地图,最后采用Hector-SLAM算法在地图上绘制目标点.经实验验证,该方法能识别远距离目标点的信息且精度较高,但对目标点的预估定位存在误差.Guan等[9]提出了一种集成Gmapping建议分布与Kullback-Leibler散度的粒子数适应算法.经实验验证,该算法能够采用较少的粒子实现较高的定位精度,但是其对单个粒子的计算负载较大,所耗费的计算时间较长.苏易衡等[10]提出了一种适用于低端激光雷达的优化Hector-SLAM算法:先采用插值法获取高精度的栅格地图,再通过图像相减与矩阵变换来减少系统对激光雷达刷新率的依赖,最后对SLAM中的关键帧判定机制进行优化,以消除旋转时所获取数据的干扰.经实验验证,该算法在搭载低精度激光雷达条件下也能构建清晰的地图.周燕[11]提出了一种利用卡尔曼滤波算法将Hector-SLAM与人工地标视觉定位结果相融合的组合定位算法.该算法可抑制Hector-SLAM所导致的累积误差,削弱人工地标视觉定位引发的跳变异常,提高了定位精度. ...
地铁隧道内四旋翼自主导航系统设计
1
2021
... 自主移动机器人必须具备自主导航和路径规划能力,而构建环境地图是实现路径规划的前提[1-5].SLAM(simultaneous localization and mapping,实时定位与建图)是机器人自主导航中的一项关键技术[6-7],其是指机器人在未知环境中移动时,利用传感器定位自身位姿,并基于位姿增量式构建地图.近年来,随着激光雷达和中央处理器的性能不断提升,学者们通过不断改进和优化SLAM算法来满足这些设备的性能需求.支奕琛等[8]提出了一种基于ZBar算法和融合Cartographer-SLAM与Hector-SLAM算法的方法,以实现对二维码目标点的识别和标记.该方法先采用ZBar算法识别机器人的二维码信息,再采用Cartographer算法生成Geotiff地图,最后采用Hector-SLAM算法在地图上绘制目标点.经实验验证,该方法能识别远距离目标点的信息且精度较高,但对目标点的预估定位存在误差.Guan等[9]提出了一种集成Gmapping建议分布与Kullback-Leibler散度的粒子数适应算法.经实验验证,该算法能够采用较少的粒子实现较高的定位精度,但是其对单个粒子的计算负载较大,所耗费的计算时间较长.苏易衡等[10]提出了一种适用于低端激光雷达的优化Hector-SLAM算法:先采用插值法获取高精度的栅格地图,再通过图像相减与矩阵变换来减少系统对激光雷达刷新率的依赖,最后对SLAM中的关键帧判定机制进行优化,以消除旋转时所获取数据的干扰.经实验验证,该算法在搭载低精度激光雷达条件下也能构建清晰的地图.周燕[11]提出了一种利用卡尔曼滤波算法将Hector-SLAM与人工地标视觉定位结果相融合的组合定位算法.该算法可抑制Hector-SLAM所导致的累积误差,削弱人工地标视觉定位引发的跳变异常,提高了定位精度. ...
Sensor fusion based model for collision free mobile robot navigation
1
2016
... 综上所述,二维SLAM算法已被广泛应用于实际场景.目前,常用的激光SLAM算法包括Gmapping、Karto-SLAM、Cartographer和Hector-SLAM等.其中,Hector-SLAM是一种基于高斯-牛顿(Gauss-Newton)扫描匹配的算法[12],该算法在构建地图时不需要里程计数据,更适用于无人机以及行驶在不平坦地面上的车辆的定位和建图,但其对激光雷达的精度和刷新率的要求较高.例如:美国Innovusion公司研制的猎鹰(Falcon)激光雷达,其探测距离高达500 m,测距精度为±2 cm,角分辨率为0.05°×0.05°,每秒发出的激光点云数高达100万个,但成本高昂;上海思岚科技有限公司面向低端消费电子产品推出了非接触式激光扫描测距雷达(型号为RPLIDAR-A1),其探测距离为0.15~12 m,最高测距精度为±3 cm,在5~12 m时的测距精度为实际距离的2.5%,角分辨率为1°,每秒发出的激光点云数仅为8 000个.显然,RPLIDAR-A1激光扫描测距雷达的精度远远不及猎鹰激光雷达,但胜在价格低廉.一般情况下,激光雷达的精度越高,价格越昂贵,在实际应用中会受到限制.但Hector-SLAM算法在使用低精度激光雷达数据建图时会产生大量累积误差,在导航定位时易引发故障.针对上述问题,笔者拟作如下改进:1)优化Hector-SLAM算法中的插值函数,即采用双三次插值法构建高精度的栅格地图,以提高扫描匹配的精准度;2)采用扩展卡尔曼滤波算法对里程计和惯性测量单元(inertial measurement unit, IMU)的数据进行融合,通过组合定位方法来降低漂移效应引起的累积误差,以提高定位的准确性;3)提出里程计辅助法与PL-ICP(point to line iterative closest points,点到线迭代最近点)配准法相融合的方法,以实现运动估计过程的快速收敛,从而达到校正运动畸变的目的;4)设置IMU的倾斜角阈值,以消除机器人旋转时出现的地图重影现象.在此基础上,利用优化的Hector-SLAM算法设计一种低成本、高性能的自主导航系统,并以AGV(automated guided vehicle,自动导引车)为例开展建图实验和自主导航实验,以验证系统的可行性. ...
Research and implementation of autonomous navigation for mobile robots based on SLAM algorithm under ROS