论文部分内容阅读
虽然机器人同时定位与建图(SLAM)技术已经取得了很多优秀的研究成果,但是在大范围场景中的定位精度、运行速度以及稳定性均有待提高。此外,稀疏的点云地图不适用于实际场景的三维可视化与机器人的导航、避障。本文针对于以上问题,提出了一种结合单目和IMU的大范围场景同时定位与建图算法。首先,使用标定算法对单目相机、IMU传感器以及两者之间的相对位姿关系进行标定,并通过实验验证其标定的正确性。其次,本文使用均匀分布的ORB特征提取算法,实现连续图像帧的特征点提取,并根据四叉树的结构对其进行保存。对于特征匹配,本文提出一种滑动窗口模型与概率运动统计算法相结合的算法,消除图像中动态物体的影响,得到其静态区域的正确的ORB特征匹配点对。然后,根据得到的正确的特征匹配点对,结合IMU传感器的预积分信息,进行单目视觉的快速初始化。将IMU预积分信息与单目视觉初始化结果进行紧耦合,恢复出单目视觉的绝对尺度信息,实现系统初始化。根据初始化得到的三维稀疏点云,通过重投影误差和IMU的预积分信息实现当前帧的位姿跟踪,同时进行关键帧的筛选。在局部地图模块中,本文通过连续的关键帧之间得到的静态ORB特征匹配点对,向其中添加静态的三维地图点。通过该地图点与局部地图中的关键帧,实现机器人在移动过程中的闭环检测与重定位。最后,通过两个连续的关键帧图像信息的立体匹配,获得其对应的视差图。结合关键帧之间的相对位姿关系,将视差图转换为到世界坐标下的三维点云,并对其进行网格化,生成可视化的全局三维稠密地图。在公开的TUM、KITTI、Euroc数据集以及实际场景中进行实验验证,结果表明:本文算法可以获得场景中静态区域的正确的特征匹配点对,实现系统的快速且稳定的初始化,且单目视觉初始化时间为1.7s。在机器人定位精度和实时性方面,Euroc数据集上的定位精度可以达到0.039m,优于VINS-Fusion和VI-ORB算法。实际场景的定位精度在0.1%~0.2%,定位精度高。此外,该算法可以在数据集和实际环境中构建三维稠密地图,实现三维场景的可视化。