论文部分内容阅读
同时定位和建图(SLAM,Simultaneous Localization and Mapping)是智能机器人自主导航中的一个关键问题,对该问题的研究有利于推进工业智能化的进程。视觉传感器因为具有成本低、信息量多、可以获取语义信息等优势,广受研究者们的青睐。但是以ORB-SLAM为代表的单目视觉SLAM方案应用在实际动态场景中时,仍存在着鲁棒性差、缺乏尺度信息、精度较低等缺点。本课题利用里程计信息与图像信息的融合解决尺度问题,并提出了利用多目标跟踪来提高系统在动态环境中的鲁棒性,且构建了语义地图。为解决单目视觉SLAM中缺乏尺度信息的问题,建立了将里程计与单目相机结合构成多传感器融合的SLAM系统。分析了舵轮驱动的移动机器人的运动模型和ORB-SLAM的系统框架之后,将整个系统分为前端和后端。在系统前端中,在利用RANSAC剔除不正确的特征点匹配之后,利用里程计数据跟踪相机位姿,然后利用当前帧与参考关键帧之间的位姿变换矩阵对匹配特征点对进行三角化,恢复出其在世界坐标系中的位置,当当前帧满足一定条件时,考虑将其作为新的参考关键帧;在系统的后端中,除了利用相机位姿和与其关联的地图点位置构成的光束法平差(即最小化投影误差)优化问题之外,两两连续的关键帧之间也有由里程计信息带来的约束,在发生闭环做全局优化时,可以消除由里程计带来的累积误差。在真实的工厂场景中,对融合后SLAM系统进行了测试,结果显示该系统解决了尺度问题,并且能达到10cm级的精度。为提高单目视觉SLAM系统在复杂动态环境中的鲁棒性,提出了将多目标跟踪融入到SLAM框架中的方案。使用重新训练后的卷积神经网络YOLOv2对图像中的物体进行检测,以此来获取视野中可能运动的物体在图像上的位置。将神经网络检测的结果,一方面送入单目视觉SLAM的前端,仅使用图像中未在物体上的特征点进行相机位姿的跟踪;另一方面作为多目标跟踪模块的测量值。在多目标跟踪模块中,利用SLAM对环境稀疏三维重建估计出目标在世界坐标系中的位置,利用相机的位姿变换以及匈牙利算法完成对连续两帧图像中检测结果的关联。对于由于偶尔出现的遮挡和光照条件突变引起的检测网络失效,采用将目标三维特征点投影到图像平面后进行匹配的方式找回。对于成功关联的目标,通过极线约束分辨出目标的运动状态,其中静态目标得以保留,构建成语义地图。最后在高动态数据集Robot Car和带有真值验证的KITTI数据集中进行仿真测试,验证了结合多目标跟踪后的单目视觉SLAM系统的鲁棒性和精度。