基于BRISK特征的图像配准提取与描述研究

2012-01-20 06:49
湖北工业职业技术学院学报 2012年1期
关键词:尺度空间角点关键点

杜 军

(1.湖北工业大学计算机学院,湖北武汉430068;2.十堰职业技术学院经济贸易系湖北十堰442000)

人类获取的信息75%来源于视觉,人眼所能感知外界物体的形状、颜色、大小位置等信息,这些信息汇总成为图像。当人类对同一场景获取两幅或多幅图像时,为得到该场景的更多信息,就需要采用图像配准方法对图像进行处理。图像配准是寻找在不同时间点、不同的视角下或由不同传感器拍摄的关于同一场景的两幅图像或多幅图像之间的空间变换关系,并对其中的一幅或多幅进行匹配和叠加的过程。

BRISK算子是一种新的具有尺度不变和旋转不变的特征检测与描述算子,与其他的特征检测与描述算子如SIFT和SURF相比,在具有较高性能的同时,计算量显著减少。与其他局部不变描述子类似,BRISK算子可以分为尺度空间关键点检测与描述两个步骤。关键点检测算法思想源自AGAST算法,而AGAST算法则是对FAST特征点检测算法性能的扩展。本文将首先介绍FAST算法,然后再对BRISK算法进行详细介绍。

1 FAST角点特征提取算法

角点(corner)通常是指小的几何不连续的二维兴趣点。角点检测算法通常都由以下几步来实现:(1)在图像上每一个点计算角点强度函数,生成角点强度图像;(2)设置强度阈值T,角点强度超过门限T的点将被保留;(3)最大值抑制[1]。

Mohannah和Mokhtarian。提出了度量角点检测器性能的方法:CCN和ACU。

其中,no是原始图像中检测出的角点个数,nw是在对原始图像利用参数已知的仿射变换模型变换后的图像中检测出的角点个数,ng是人工选取的角点个数,na是检测出的角点中与人工选取的角点匹配上的个数。CCN(consistency of corner numbers)表示该检测算子能稳定检测出角点的性能,CCN越高,检测算子稳定性越高。当变换前后检测出的角点个数不变时,CCN趋向于100;ACU代表了检测精度,然而由于有人员参与,因此主观性变强。

1.1 Segment-test角点检测算子

Segment-test[1]角点检测算子基本思想是如果在一个点周围有足够数量的点在一个不同的区域,那么这个点是角点。假设候选点为p,存在一个以该点为中心的圆弧R。若

则该点为角点。其中θ为灰度值全部大于或全部小于p点灰度值的点组成的最长连续圆弧的角度,θt为门限。若θt=2π或θ=2π,则中心点p为亮点或暗点。

在离散情况下,圆形区域半径r通常取为3,圆弧上的像素点分别标记为x(x=1,2,3…16),如图1所示。中心点p周围圆弧上的每一个点相对于中心点有3种状态:darker,similar,brighter。

其中t为阈值,x=1,2,3…16。

式(3)可以重新写为:

其中S为灰度值全部大于或全部小于p点灰度值的点组成的最长连续圆弧的像素个数,n为门限。若连续处于darker或brighter状态的像素点数目大于等于n,则该中心点为角点。

该算子具有运算简单直观的优点,大大提高了计算速度。然而,该算法存在多个相邻的点可能被检测到以及快速检测的优势在门限时不明显的缺点[2]。

图1 segment-test算子

1.2 FAST角点提取算法

FAST算子[1]是针对segment-test算子缺点的改进。segment-test算子有可能会检测到多个相邻的特征点,因此必须通过度量局部最大性来去除这些不是局部极值的点。定义得分函数V:

其中

假设P点满足P∈C,其中C为通过segmenttest算法检测出的点集,其得分函数响应值为Vp。若在点P的3*3邻域内还存在一点∈C,且满足则P不是角点,否则,P是角点。

文献[1][3]引入了机器学习,文献[4]引入ID3决策树对FAST角点检测算子进行了改进,进一步提高了算法速度。

图2 FAST算法检测结果图

2 尺度空间关键点检测

尺度不变性是衡量特征点检测算法质量的关键指标之一。BRISK算法将FAST算法扩展到图像平面和尺度空间,而且给出了连续尺度空间下得的尺度最优解。

在BRISK算法框架下,尺度空间金字塔由n层ci以及n个中间层di(i=0,1,2…n-1),并且一般情况下n=4。每一层从原始图像(对应于c0)开始由上一层下采样得到,每一个中间层di位于层ci和层ci+1之间,如图3所示。第一个中间层d0通过对原始图像c0进行1.5倍下采样,其他的中间层则是对上一个中间层进行下采样得到。需要说明的是,FAST和AGAST算子都提供了不同的模板进行关键点检测,但BRISK算子主要采用9-16的模板进行特征点检测,也就是说要求16个像素中至少有9个连续的像素与中心像素相比或者充分亮或者充分暗。

关键点检测主要通过以下两步来实现。首先,具有相同阈值T的FAST算子应用于每一层以及每一中间层,用于识别潜在的感兴趣区域。第二步,对这些潜在区域中的点在尺度空间进行非极大值抑制:(1)在同一层待检测点FAST积分s必须大于与它相邻的其他八个点;(2)上一层和下一层的其他所有点的积分都必须要低于该点的积分。满足这两个条件的点称为关键点。对于c0层的关键点检测,采用5-8FAST关键点检测算法。

考虑到图像显著性不仅对于图像是连续的,而且对于尺度维而言也是连续的。因此,对每一个检测出的极大值进行亚像素和连续尺度校正。为了减少计算复杂度,首先对每个极值对应的三个层的积分分别进行最小二乘意义上的2D二次函数拟合,这样就能得到三个亚像素级的极大值,为了避免重采样,每一层采用3*3大小的块;下一步,对这些校正后的积分沿尺度坐标拟合1D抛物线以便得到最终的积分估计值和最优尺度估计值。最后一步,对图像坐标进行重插值。

图3 BRISK算子关键点检测

3 关键点描述

关键点的描述对后续的关键点匹配的效率具有十分重要的作用,也对整个特征检测算子的性能产生重大影响。SIFT算子每个特征点具有128位的描述符,SURF算子每个特征点也有64位描述符,在特征匹配阶段,通常只能采用欧氏距离等方法来进行匹配,效率很低。BRISK算子采用的二进制字符串的方法来描述每个特征点,采用二进制位间的异或(XOR)运算来实现特征匹配。采用二进制字符串来进行特征描述的方法已经被证明是十分有效[5]。考虑到旋转不变性,BRISK算子识别出每一个关键点的典型方向以得到归一化的方向描述。

BRISK描述符采用了如图4所示的邻域采样模式即在以关键点为中心构建的多个同心圆上取相同间距的N个点。为了避免采样时图像灰度混叠的影响,利用高斯函数进行平滑滤波,高斯函数的标准差σ正比于每个同心圆上点之间的距离。考虑所有采样点构成的点对中的一对,记为(Pi,Pj),平滑后的灰度值分别为I(Pi,σi)和I(Pj,σj)则两点之间的梯度g(Pi,Pj)为

考虑所有的采样点对构成的集合,记为A

定义短距离采样点对构成的集合S以及长距离采样点对构成的集合L

通常距离门限δmax=9.75t,距离门限δmin= 13.67t,t为关键点的尺度。

假设局部的梯度互相抵消,可以通过在集合L估计出关键点的总体模式方向为

图4 BRISK算子60个点的采样模式

为了实现旋转不变和尺度不变,将采样模式围绕关键点旋转角度∂=arctan2(gy,gx)。通过对短距离采样点对集合S内的所有点对进行以下运算就可以构成二进制描述符。

BRISK算法可以进行灰度比较的理由,(1)BRISK算子采用的是确定的采样模式,在以关键点为中心的给定半径上具有统一的采样密度,因此定制的高斯平滑不会影响到灰度比较;(2)BRISK使用很少的采样点参与比较,减少了寻找像素点灰度值的复杂度;(3)对参与比较的像素点进行了空间上的限制,只要求灰度变化的局部一致性。

通过给定采样模式和距离门限,BRISK算子获得了512位的字符串。特征点之间的匹配可以按位进行异或运算实现。算法基本流图如下:

图5 BRISK算法基本流程图

图6给出了存在视觉变化的两幅图,图7给出了两幅图BRISK算子的特征检测与匹配结果。圆表示在两幅图像上检测出的特征点,其中绿色圆表示两幅图像匹配上的特征点,红色圆表示检测出但未在另一幅图像上找到匹配点的特征。圆上半径所指的方向为特征点的典型方向,绿色直线连接起来的两个圆则为匹配上的特征点对。

本文介绍了BRISK算法,分析了BRISK算子具有旋转和尺度不变形的原因。给出了算法实现的基本流程图以及典型的实验结果,证明了算法的有效性。

[1]Edward Rosten.High performance rigid body tracking[D].Churchill College University of Cambridge,2006.

[2]汪汉云.异类遥感图像配准技术研究[D].国防科技大学,2010:18-21.

[3]E Rosten,T Drummond.Machine learning for highspeed corner detection[C]//Proceedings of the European Conference on Computer Vision,2006.

[4]J R quinlan.Introduction of decision trees[M].Mach Learn,1986:81-106.

[5]M Calonder,V Lepetit,C Strecha,P Fua.BRIEF:Binary Robust Independent Elementary Features[C]//In Proceedings of the European Conference on Computer Vision(ECCV),2010.

猜你喜欢
尺度空间角点关键点
聚焦金属关键点
肉兔育肥抓好七个关键点
基于AHP的大尺度空间域矿山地质环境评价研究
基于FAST角点检测算法上对Y型与X型角点的检测
居住区园林空间尺度研究
基于边缘的角点分类和描述算法
基于圆环模板的改进Harris角点检测算法
基于降采样归一化割的多尺度分层分割方法研究
基于尺度空间的体数据边界不确定性可视化研究
医联体要把握三个关键点