论文部分内容阅读
随着计算机视觉的发展,人机需要进行三维世界的交互和感知。但目前,作为图像主要采集设备的相机获取的二维图像存在歧义性,无法支持计算机视觉进入更高级的三维阶段。与此同时,越来越多的三维应用如虚拟现实、服务机器人导航、增强现实等需要底层三维稠密点云地图的支撑。而要恢复场景的三维坐标,就需要对图像逆投影进行三维重建。传统三维重建中最常用的SFM技术,在进行重建时,需要消耗巨大的内存和计算资源,且恢复的是三维稀疏点云,要恢复稠密结构还需要进行点云的稠密重建。基于视觉的SLAM技术则能够实现三维点云的快速重建。视觉SLAM通过相机采集周围环境的数据进行三维重建,而RGB-D相机是一种能够同时采集环境的RGB信息和深度信息的传感器,相比其他传感器更有利于场景的稠密结构恢复。本研究针对RGB-D SLAM系统存在的实时性差、初始化容易失败、相机的姿态估计不准确、重建结果存在“漂移”现象等问题,构建了一种基于特征点的RGB-D SLAM系统对上述问题进行了优化。该系统以RGB-D相机作为采集数据的传感器,通过提取并匹配图像的特征点来计算相机的初始位姿并进行优化,最后根据点云数据和相机坐标系的对应性,将所有深度图像恢复的点云转换到同一个坐标系下,从而实现了三维稠密点云的重建。主要研究内容如下:(1)针对目前现有特征匹配算法匹配准确度差、匹配速度慢的问题,本研究对特征点检测算法进行了改进,并使用基于四叉树的特征点均匀化策略对提取的特征点进行处理。结合词袋模型,在特征匹配阶段限制了特征匹配的范围,从而提高了匹配的准确度,同时k叉树提高了特征匹配的速度。实验证明,本研究提出的方法在速度和精度上较传统算法都有所提高。(2)在特征匹配的基础上,提出一种系统自动初始化的方法。为应对采集的初始图像中可能存在纹理单一、深度图中值为0的像素点过多的情况,建立了两种初始化模型。在系统初始化阶段,计算模型的得分,根据得分情况选择初始化模型,使用二维特征匹配关系估计相机姿态,并使用三角化的方法恢复特征点对应的三维空间点。(3)针对相机姿态估计不准确及由此导致的重建结果出现“漂移”的问题。当系统初始化成功之后,在帧到帧的相机姿态初始值估计中,采用了RANSAC+公式求解+非线性优化的方法,从而保证为关键帧局部和全局Bundle Adjustment提供一个较好的初始值。在后续优化中,为了降低优化的数据维度,采用共视图对图像进行筛选,挑选出图像序列中的关键帧。并在关键帧的基础上,构建系统的重新定位功能,保证系统在跟踪丢失的情况下,依然可以依靠关键帧恢复相机姿态。同时,使用回环检测为系统添加回环约束,减小累积误差。在TUM数据集中的实验结果表明,本研究提出的算法在相机姿态估计准确度、重建结果、重建时间方面较RGB-D SLAM v2系统均有所提高。最后,选择大量纹理单一的室内场景,进行实地三维稠密重建的实验,结果表明,本研究提出的优化方法具有较好的鲁棒性和实时性。