一种基于FAST和FREAK特征匹配算法的RGB-D和SLAM场景重建方法技术

技术编号:14600376 阅读:356 留言:0更新日期:2017-02-09 03:37
本发明专利技术属于计算机图形学领域,具体地说是一种基于FAST和FREAK特征匹配算法的RGB‑D和SLAM场景重建方法。本发明专利技术包括,首先对Kinect进行标定;对彩色图像进行FAST特征点提取,采用FREAK特征描述子进行图像匹配,然后再对特征点对采用RANSAC算法剔除掉外点,保留内点。本发明专利技术采用对关键帧进行筛选,仅对关键帧进行点云的拼接,这样极大地减少了点云的拼接次数。本发明专利技术还采用了基于图优化的回环检测算法,通过构建姿态图,对其进行全局优化,极大降低了误差的累积。

【技术实现步骤摘要】

本专利技术属于计算机图形学领域,具体地说是一种基于FAST和FREAK特征匹配算法的RGB-D和SLAM场景重建方法
技术介绍
三维重建技术涉及计算机图形学、传感技术、机器视觉、逆向工程、虚拟现实、机器人导航等领域,它的目的在于更加真实和客观地展示物体模型或者室内场景的空间形状及位置,因此,该技术是目前国内外众多学者研究的热点内容。Marr提出的视觉计算理论将视觉划分为三个阶段。第一阶段,三维重建的初级阶段,从简单的二维图像信息的获取开始,包括深度图像、边缘图、彩色纹理图像等基本几何形态或者特征要素等。通过灰度值表征了采样空间中物体表面的位置和形状信息,在这个阶段所获取的数据都是二维坐标上的。而进入第二阶段,这些二维信息需要转换到三维信息空间坐标系中。实际上,第二阶段并非真正意义的三维显示,我们称为2.5维坐标系下的信息还原。该阶段中所包含的空间信息是不完全的,并且是在以观察者为原点的坐标系中的三维形状和位置,是从观察值或者摄像头的位置出发对重建物体进行描述。这样物体背面的全部信息无法正常地获得。可见,前两个阶段只是“视觉的低层次的处理”。仅依靠在第二阶段获得的数据并不能真实、全面地展示一个场景的全部空间信息。所以对三维重建提出了更高的要求,进入了第三阶段。首先。坐标的原点应该是基于观察物体本身或者是客观世界中的固定位置;其次,应该从多个角度观察并获取场景中物体的三维数据信息,并将其转换至同一坐标系中。三维重建是连接摄像机与真实环境的一个重要桥梁,在虚拟现实与人机交互中有着重要额作用。作为图像处理和模式识别在工程应用上的重要分支,三维重建在3D打印、机器人导航、文物修复、3D视频、医学CT图像等领域都有着广泛的应用。本专利技术的研究意义在于通过个人消费级别的深度摄像头来获取室内三维场景的相关数据,采用OpenCV、G2O和PCL等工具包,使消费者在家里就可以完成小范围室内场景的重建。如果要实现场景的三维重建,一个完整的RGB-DSLAM方法主要包括图像匹配、回环检测以及图优化三大步骤,流程如3所示。(由于Kinect标定参数通过标定程序即可获得,所以在重建过程中,被当作已知参数,在框架中没有添加标定过程)。该框架又可分为两大部分:SLAM前端和SLAM后端。SLAM前端包括图像匹配和回环检测两步,完成场景重建;SLAM后端对重建场景点云数据进行全局图优化。下面我们详细介绍这两大部分。1.SLAM前端下面我们首先来介绍一下SLAM前端(SLAMfront-end):图像匹配主要解决连续图像帧间的匹配及相对Kinect摄像机的姿态估计问题,而回环检测则主要根据图像匹配判断摄像机是否先前来过该区域,这两部分密切相关。SLAM前端主要解决数据关联的问题,图像匹配考虑局部数据关系,而回环检测则处理全局数据关系。或者说,图像匹配与回环检测都是根据图像帧数据建立图节点间的约束,即完成场景图的重建。2.SLAM后端由于图像噪声以及匹配误差的存在,通过图像帧配准得到的位姿图通常不一致。反而,图中的边与边之间常常存在“冲突”。从理论上分析,若用Ti来表示图像帧间的相对变换矩阵并且T0,T1,T2…Tn构成一个回环的话,理论上讲,必然存在T0T1T2…Tn=I其中I为单位矩阵。但通过图像帧配准得到的相对变换矩阵通常不满足单位阵的理论约束。在采用图结构来表示摄像机位姿及其约束中,摄像机的位姿可看作随机变量,位姿间的约束则是与随机变量相关的观测,那么图优化结果则对应于位姿的最大似然估计。与图像匹配和回环检测不同,图优化部分不直接处理图像帧数据,而只是对SLAM前端构造的图进行优化。所以我们将图优化称为SLAM后端(SLAMback-end),与SLAM前端区分开来。
技术实现思路
本专利技术的目的在于提供一种基于FAST和FREAK特征匹配算法的RGB-D和SLAM场景重建方法。本专利技术具体包括如下步骤:(1)首先对Kinect进行标定;(2)对彩色图像进行FAST特征点提取,采用FREAK特征描述子进行图像匹配,然后再对特征点对采用RANSAC算法剔除掉外点,保留内点;(3)通过图像匹配获得的内点对当前帧与最近关键帧进行运动估计和获取变换矩阵,只有当运动距离在(Dmin,Dmax)之间,我们才将当前帧作为是关键帧。(4)根据获得的关键帧序列构建出姿态图,并且用图优化算法对姿态图进行全局误差一致性优化。(5)通过(4),得到的关键帧序列的变换关系是误差一致的,然后对关键帧的彩色图和深度图像进行融合,获得点云数据。再通过变换矩阵进行点云拼接,最终获得整个场景的点云数据。本专利技术的有益效果在于:现有的室内场景重建采用的特征匹配算法大多是SIFT、SURF、ORB和KAZE等。SIFT、SURF和KAZE等算法的鲁棒性较好,但是实时性较差。ORB算法实时性较好,鲁棒性较差。在实时性和鲁棒性上很难两者兼顾。以前的RGB-DSLAM方法通过特征匹配计算变换矩阵,直接点云帧数据进行拼接。这样做的弊端是加大了计算量,并且容易造成无匹配现象。本专利技术采用对关键帧进行筛选,仅对关键帧进行点云的拼接,这样极大地减少了点云的拼接次数。本专利技术还采用了基于图优化的回环检测算法,通过构建姿态图,对其进行全局优化,极大降低了误差的累积。附图说明图1是本专利技术方法的基本流程图;图2是本专利技术方法中Kinect的标定流程图;图3是待FAST和FREAK特征匹配的原始图像;图4是FAST和FREAK特征匹配结果图和RANSAC后的结果图;图5是SIFT、SURF、ORB、FREAK和KAZE匹配时间对比图;图6是SIFT、SURF、ORB、FREAK和KAZE匹配成功率对比图;图7是待拼接的一帧彩色图像和深度图像;图8是待拼接的另一帧彩色图像和深度图像;图9是两帧图像的点云拼接图;图10是RGB-DSLAM场景重建方法对场景的重建结果图;图11是RGB-DSLAM场景重建方法对场景的重建结果图。具体实施方式下面结合附图对本专利技术做进一步描述。传统的RGB-DSLAM采用的是SIFT、SURF和ORB等特征匹配算法,在实时性方面,SIFT和SURF等算法表现不理想,ORB和FREAK算法是为了在移动设备上运行提出的算法,所以实时性较好;在鲁棒性方面,SIFT的综合表现较好,SURF在光照变化时表现较差,其他条件下表现比较稳定,ORB算法的综合表现一般,FREAK算法在各种环境下表现出较好的稳定性。综合方法实时性和鲁棒性两方面的考虑,提出了一种基于FAST和FREAK的特征匹配算法的RGB-DSLAM场景重建方法。(1)首先对Kinect设备进行标定。本专利技术采用OpenCV库中的标定函数。通过这些函数,可以比较容易地完成摄像机标定,获得彩色摄像机和红外摄像机的内参数和外参数。Kinect标定流程如附图2所示。本专利技术采用cvFindChessboardCorners()计算棋盘图像上的角点位置,函数原型如下:intcvFindChessboardCorners(constvoid*image,CvSizepattern_size,CvPoint2D32f*corners,int*corner_count=NULL,intflags=CV_CALIB_CB_ADAPTIVE_TH本文档来自技高网
...

【技术保护点】
一种基于FAST和FREAK特征匹配算法的RGB‑D和SLAM场景重建方法,其特征在于,包括以下步骤:(1)在Kinect坐标系下建立数学模型,并对彩色摄像机和红外摄像机进行了标定,同时验证标定结果;(2)对彩色图像进行FAST特征点提取,采用FREAK特征描述子进行图像匹配,然后再对特征点对采用RANSAC算法剔除掉外点,保留内点;(3)通过图像匹配的方式对当前帧与最近关键帧进行运动估计并计算相应变换矩阵,当运动距离在(Dmin,Dmax)之间,将当前帧认为是关键帧;(4)由获得的关键帧序列,构建出姿态图,并且用图优化算法对姿态图进行全局误差一致性优化;(5)通过(4),对关键帧的彩色图和深度图像进行点云融合,获得当前帧点云数据。再通过变换矩阵进行点云拼接,最终获得整个场景的点云数据。

【技术特征摘要】
1.一种基于FAST和FREAK特征匹配算法的RGB-D和SLAM场景重建方法,其特征在于,包括以下步骤:(1)在Kinect坐标系下建立数学模型,并对彩色摄像机和红外摄像机进行了标定,同时验证标定结果;(2)对彩色图像进行FAST特征点提取,采用FREAK特征描述子进行图像匹配,然后再对特征点对采用RANSAC算法剔除掉外点,保留内点;(3)通过...

【专利技术属性】
技术研发人员:叶秀芬邢会明张建国王璘黄乐李鹏贾同超
申请(专利权)人:哈尔滨工程大学
类型:发明
国别省市:黑龙江;23

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1