论文部分内容阅读
随着传感器技术和人工智能技术的发展,智能移动机器人逐渐进入到使用阶段,代替人类进行重复劳动以及危险工作。而在机器人众多研究方向中有关移动机器人同时定位与建图(Simultaneous Localization And Mapping,SLAM)问题的解决是移动机器人实现完全自主工作的重要一环。SLAM主要应用场景是在陌生环境中,机器人最初没有周围环境的信息,这时就需要机器人通过安装在本体上的传感器获得周围环境和自身状态的信息,然后对信息进行分析加工,从而得到陌生环境的地图以及自己所在地图的位置。但是单一的传感器误差较大,由此本文进行了基于多传感器融合的SLAM算法的研究与应用。双目相机可以通过立体匹配恢复出空间路标点的深度信息,相比于激光等其它传感器,鲁棒性好获取信息更加丰富。惯性测量单元(Inertial Measurement Unit,IMU)在较短时间内精度较高。通过结合IMU和双目相机的优点,本文提出了一种融合IMU和双目相机的改进FastSLAM算法。首先,研究了双目立体视觉工作原理。通过实验分析比较了立体匹配常用的特征算法,决定选用ORB(Oriented FAST and Rotated BRIEF)算法。本文对于ORB算法的提取和误匹配筛选做了改进。针对光线不好时图像噪声较多影响特征点的采集和匹配的问题,在采集特征点之前先通过对比度被限制的直方图均衡化方法对图像进行预处理,减少噪声的影响。针对SLAM系统对于特征点匹配精度要求较高的问题,通过结合汉明距离设定阈值方法,随机采样一致性算法以及匹配对间距离比和角度比误匹配筛选算法进行误匹配剔除,明显减少了误匹配的数量。然后,分析了SLAM算法的运动过程模型和观测模型。针对现有的基于粒子群改进的FastSLAM算法可能会使采样粒子丧失多样性,使粒子向局部最优解聚集的问题,在已有的粒子群FastSLAM算法的基础上做出改进。通过引入免疫算法增加粒子的多样性,改善了FastSLAM在迭代过程中粒子退化问题和由于多次重采样造成的粒子耗尽问题。最后,在深入研究改进的SLAM算法的基础上,实现了双目相机和IMU融合的SLAM系统。该系统是在机器人操作系统(Robot Operating System,ROS)下开发的,并且进行了系统测试,对于改进的Fast SLAM算法的有效性进行了验证。