基于fast-surf的移动端实时特征检测匹配方法
【技术领域】
[0001] 本发明涉及一种基于FAST-SURF的移动端实时特征检测匹配方法,属于移动端增 强现实技术领域。
【背景技术】
[0002] 在增强现实技术中,基于自然特征的跟踪注册方法复杂度高,对计算能力的要求 相当高,其中的基于计算机视觉的跟踪注册方法主要涉及的就是特征点的检测和匹配。而 移动设备因其计算设施(吞吐量低,浮点运算能力差)和内存带宽(内存大小有限,速度缓 慢,缓存小)方面不足,使得技术表现效果受到了限制。因此在移动设备上兼顾效果跟效率 是一个难题。FAST算法最大的特点就在于其计算效率。正是由于其高速性能,适合应用在移 动平台的实时视频图像处理中。但传统FAST算法检测出来的角点包含伪角点,需要增加计 算量通过非极值约束来去除伪角点。采用SURF描述子来进行描述特征点,匹配精度高,但是 由于其计算复杂度过大,需要对其进行简化以便于在移动端实时运行。
【发明内容】
[0003] 针对移动终端自然特征提取和匹配的处理能力不足的技术问题,本发明提供了一 种基于FAST-SURF的移动端实时特征检测匹配方法,采用改进的FAST算法检测特征点,再采 用简化过的SURF算法计算特征点的方向,并建立特征描述符,然后将建立好的特征点描述 符与数据库中的特征描述符进行匹配。该算法处理图像花费时间短,在移动端能实时处理 自然特征检测与匹配。
[0004] 为解决上述技术问题,本发明提供一种基于FAST-SURF的移动端实时特征检测匹 配方法,包括以下步骤:
[0005] 步骤一,对采集的图片建立特征库:对图片上的特征点建立KD-tree,形成特征库 数据;
[0006] 步骤二,读入图像,并将图像转换成灰度图,计算灰度图上每个点的灰度值;
[0007] 步骤三,采用改进的FAST算法检测特征点;
[0008] 步骤四,采用简化的SURF算法对特征点建立描述符;
[0009] 步骤五,将描述符与特征库中的特征点进行匹配。
[0010]其中,所述步骤三具体为,以待测点P为圆心,选取半径为3的圆,将圆周上的16个 像素点分别用1、2、、、15、16进行标记;设待测点?的灰度值为1[)、圆上每个像素点的灰度值 为I x、灰度阈值为t、圆周上连续N个像素点组成的集合为S,其中x=l、2、、、15、16,N=9;
[0011 ]若圆周上任意一象素点X满足射牛:綠:获良【k % +1或者Vk. t - t,贝ij 以待测点p为对称中心,将圆内的点分成对称的点对di-di,,若点对di-di,满足条件I Ip-di I < t,I Ip-dr I <t,则待测点P为角点,即特征点,否则不是;
[0012]若圆周上任意一个像素点X不满足条件:r ^ ls: > ip 4、t或者Vx e心k - t, 贝ij选取下一个待测点。
[0013] 所述步骤四包括,一,计算特征点的方向,以特征点为圆心,半径为3的圆计算特征 点的方向;二,建立描述符,以特征点为中心,选取9 X 9的区域,并分成9个3 X 3的子域,每个 子域计算得到4个数据,产生一个36维的向量作为特征点的描述符。
[0014] 计算特征点的方向具体为,1.以特征点为圆心,选取半径为3的圆形区域,将圆心 角为兰的扇形绕圆心旋转,每次旋转15°,得到24个扇形区域;2.采用边长为2的滤波器,计 算每个扇形区域内的每个点在X轴方向的Haar小波响应和y轴方向的Haar小波响应,并以特 征点为中心的二阶高斯函数值对X轴方向的Haar小波响应和y轴方向的Haar小波响应分别 进行加权,加权后的X轴方向的Haar小波响应和y轴方向的Haar小波响应分别作为扇形区域 内的点在扇形区域内沿横坐标X轴方向的水平响应和沿纵坐标y轴方向的垂直响应;3.将每 个扇形区域内所有点的水平响应和垂直响应分别相加,得到一个局部向量,在24个扇形区 域中,长度最长的局部向量作为特征点的方向,记特征点的方向角为Θ。
[0015] 建立描述符具体为,1.以特征点为中心,选取9X9的区域,并分成9个3X3的子域 2.采用边长为2的滤波器,分别计算每个子域的水平方向Haar小波响应hxi,j和垂直方向Haar 小波响应hyi, j,其中i = 1,2,、、、,4,j = 1,2,、、、,9,并以特征点为中心的二阶高斯函数值分别对 水平方向Haar小波响应hxi,j和垂直方向Haar小波响应h yi,j进行加权,得到加权后的水平方向 Haar小波响应h\ j和垂直方向Haar小波响应h\ j,分别对水平方向Haar小波响应h\ j和垂直方向 Haar小波响应hyi,j进行旋转变换,得到在特征点方向上的分景dJJ,旋转变换公式分别为旋 转变换公式分别为
其中w为以特征点为中心的二阶高斯权值,Θ为特征点的方向角;3.对于每个子域,分别计算 Η
则每个子域就产生一个4维描述向量
得9个子域产生的描述向量连接起来,得到长度为 36的描述向量,即36维的描述符。
[00?6] 所述步骤五为,将步骤四得到的36维描述与步骤一建立的KD-tree中的节点进行 比对,找出与描述向量处在同一个空间的点。
[0017] 本发明所达到的有益技术效果:本发明提供的方法相比于传统的FAST算法提高了 特征点检测的准确性,减少了特征点中的伪角点。同时,简化了 SURF描述符生成方法,大大 降低了运算复杂度。采用该方法开发的程序能在移动平台上实时运行。
【附图说明】
[0018] 图1本发明的流程框图;
[0019] 图2本发明之以待测点P为圆心,半径为3的圆形区域示意图;
[0020] 图3本发明之X方向(a)和y方向(b)的Haar小波响应滤波器;
[0021] 图4本发明之以特征点为圆心,半径为3的圆形区域示意图。
【具体实施方式】
[0022]为了能更好的了解本发明的技术特征、技术内容及其达到的技术效果,现将本发 明的附图结合实施例进行更详细的说明。
[0023]下面结合附图和实施例对本发明专利进一步说明。
[0024]如图1所示,本发明提供一种基于FAST-SURF的移动端实时特征检测匹配方法,包 括以下步骤:
[0025]步骤一,对采集的图片建立特征库:对图片上的特征点建立KD-tree,形成特征库 数据;
[0026]步骤二,读入图像,并将图像转换成灰度图,计算灰度图上每个点的灰度值;
[0027]步骤三,采用改进的FAST算法检测特征点;
[0028] 如图2所示,以待测点P为圆心,选取半径为3的圆,将圆周上的16个像素点分别用 1、2、、、15、16进行标记;设待测点P的灰度值为Ip、圆上每个像素点的灰度值为I x、灰度阈值 为t、圆周上连续N个像素点组成的集合为S,其中x = l、2、、、15、16,N=9;
[0029] 若圆周上任意一个像素点X满足条件+ t或者 贝1J以待测点P为对称中心,将圆内的点分成对称的点对di-di,,若点对di-di,满足条件I Ip-di <t,I Ip-dr I <t,则待测点P为角点,即特征点,否则不是;
[0030] 若圆周上任意一个像素点X不满足条件?或者1 则选取下一个待测点。
[0031 ]步骤四,采用简化的SURF算法对特征点建立描述符,包括: