论文部分内容阅读
随着无人驾驶技术的兴起,移动机器人完全自主驾驶技术受到了越来越多的关注,其相关技术也得到了广泛研究。其中自主定位功能是移动机器人能否实现自主移动的关键技术,也是首先需要解决的问题。由于相机具有价格低廉、无零漂误差的优点,同时随着计算机处理能力的提升,通过相机实现机器人定位成为机器人自主定位的重要研究方向之一。针对复杂场景中,场景纹理稀疏、特征点稀少等因素会对相机定位算法产生影响,常通过增加相机数目以获取更多可用于定位的环境信息。因此,本文主要研究了通过移动机器人前方和后方的深度相机实现移动机器人局部定位的算法。根据机器人视觉定位系统,建立世界坐标系、相机坐标系等坐标系系统,分析深度相机的成像模型,标定深度相机的内外参系数,完成各个坐标系之间的变换关系。根据深度相机内外参系数,实现彩色图像和深度图像之间的图像配准。同时在ROS系统里的Gazebo仿真软件中搭建物理仿真模型,获取机器人在移动过程中的图像数据和自身的运动数据。根据移动机器人前后两个相机的图像信息设计视觉里程计,实现机器人局部定位。利用ORB特征点实现连续两帧图像中的数据关联,针对ORB特征点容易集中出现的特点,采用将图像分割成若干子区域后提取特征点的方法,提高了特征点分散性。在特征点匹配过程中,使用最小汉明距离和RANSAC算法相结合的方式,有效地提高了特征点匹配的正确性。利用两帧图像中匹配成功的特征点,通过ICP算法,分别使用单一相机图像数据和前后两个相机的图像数据,实现视觉里程计。通过仿真数据验证,表明通过前后相机协同的视觉里程计具有更高的定位精度和鲁棒性。根据机器人移动后前相机观测场景会在后相机中再次出现的特性,优化视觉里程计的局部定位结果。针对同一场景,前相机图像与后相机图像直接特征点匹配误差较大的情况,采用模板匹配和图像重投影相结合的方式,实现特征点的匹配,求取当前状态与历史状态之间的位姿关系。利用里程计累积结果和采用特征点直接估计结果,构建关于姿态的优化函数,通过非线性优化的方式,对视觉里程计的定位结果进行优化,并通过仿真数据验证该优化算法的有效性。