【自己笔记】SIFT特征和SURF特征比较

SIFT特征和SURF特征都是优秀的尺度不变特征,常用来进行物体辨识和图像匹配。所谓的尺度不变特征是指每个检测到的特征点都伴随着对应的尺寸因子(特征点的局部尺寸参数与特征的尺度成正比),下面就这两种著名的尺度不变特征进行简要的介绍和比较。

1 SIFT特征简介

1.1 SIFT原理

SIFT(Scale-Invariant Feature Transform)特征,即尺度不变特征变换,是一种计算机视觉的特征提取算法,用来侦测与描述图像中的局部性特征。它在尺度空间中寻找极值点,并提取出其位置、尺度、旋转不变量,此算法由 David Lowe在1999年所发表,2004年完善总结。

1.2 SIFT特征提取步骤

  1. 尺度空间的极值检测:尺度空间指一个变化尺度(σσ)的二维高斯函数G(x,y,σ)G(x,y,σ)与原图像I(x,y)I(x,y)卷积(即高斯模糊)后形成的空间,尺度不变特征应该既是空间域上又是尺度域上的局部极值。极值检测的大致原理是根据不同尺度下的高斯模糊化图像差异(Difference of Gaussians,DoG)寻找局部极值,这些找到的极值所对应的点被称为关键点或特征点。
  2. 关键点定位:在不同尺寸空间下可能找出过多的关键点,有些关键点可能相对不易辨识或易受噪声干扰。该步借由关键点附近像素的信息、关键点的尺寸、关键点的主曲率来定位各个关键点,借此消除位于边上或是易受噪声干扰的关键点。
  3. 方向定位:为了使描述符具有旋转不变性,需要利用图像的局部特征为给每一个关键点分配一个基准方向。通过计算关键点局部邻域的方向直方图,寻找直方图中最大值的方向作为关键点的主方向。
  4. 关键点描述子:找到关键点的位置、尺寸并赋予关键点方向后,将可确保其移动、缩放、旋转的不变性。此外还需要为关键点建立一个描述子向量,使其在不同光线与视角下皆能保持其不变性。SIFT描述子是关键点邻域高斯图像梯度统计结果的一种表示,见下图。通过对关键点周围图像区域分块,计算块内梯度直方图,生成具有独特性的向量,这个向量是该区域图像信息的一种抽象,具有唯一性。Lowe在原论文中建议描述子使用在关键点尺度空间内4*4的窗口中计算的8个方向的梯度信息,共4*4*8=128维向量表征。
  5.                    
  6. 词袋模型的主要步骤:
  7. 第一步:利用SIFT算法从不同类别的图像中提取视觉词汇向量,这些向量代表的是图像中局部不变的特征点;

    第二步:将所有特征点向量集合到一块,利用K-Means算法合并词义相近的视觉词汇,构造一个包含K个词汇的单词表;

    第三步:统计单词表中每个单词在图像中出现的次数,从而将图像表示成为一个K维数值向量。


2 SURF特征简介

2.1 SURF原理

SURF(Speeded Up Robust Features, 加速稳健特征) 是一种稳健的图像识别和描述算法。它是SIFT的高效变种,也是提取尺度不变特征,算法步骤与SIFT算法大致相同,但采用的方法不一样,要比SIFT算法更高效(正如其名)。SURF使用海森(Hesseian)矩阵的行列式值作特征点检测并用积分图加速运算;SURF 的描述子基于 2D 离散小波变换响应并且有效地利用了积分图。

2.2 SURF特征提取步骤

  1. 特征点检测:SURF使用Hessian矩阵来检测特征点,该矩阵是x,y方向的二阶导数矩阵,可测量一个函数的局部曲率,其行列式值代表像素点周围的变化量,特征点需取行列式值的极值点。用方型滤波器取代SIFT中的高斯滤波器,利用积分图(计算位于滤波器方型的四个角落值)大幅提高运算速度。
  2. 特征点定位:与SIFT类似,通过特征点邻近信息插补来定位特征点。
  3. 方向定位:通过计算特征点周围像素点x,y方向的哈尔小波变换,并将x,y方向的变换值在xy平面某一角度区间内相加组成一个向量,在所有的向量当中最长的(即x、y分量最大的)即为此特征点的方向。
  4. 特征描述子:选定了特征点的方向后,其周围相素点需要以此方向为基准来建立描述子。此时以5*5个像素点为一个子区域,取特征点周围20*20个像素点的范围共16个子区域,计算子区域内的x、y方向(此时以平行特征点方向为x、垂直特征点方向为y)的哈尔小波转换总和ΣdxΣdyΣdx、Σdy与其向量长度总和Σ|dx|Σ|dy|Σ|dx|、Σ|dy|共四个量值,共可产生一个64维的描述子。

 SIFT特征和SURF特征比较

比较项目SIFTSURF
尺度空间极值检测使用高斯滤波器,根据不同尺度的高斯差(DOG)图像寻找局部极值使用方形滤波器,利用海森矩阵的行列式值检测极值,并利用积分图加速运算
关键点定位通过邻近信息插补来定位与SIFT类似
方向定位通过计算关键点局部邻域的方向直方图,寻找直方图中最大值的方向作为关键点的主方向通过计算特征点周围像素点x,y方向的哈尔小波变换,将x、y方向小波变换的和向量的最大值作为特征点方向
特征描述子是关键点邻域高斯图像梯度方向直方图统计结果的一种表示,是16*8=128维向量是关键点邻域2D离散小波变换响应的一种表示,是16*4=64维向量
应用中的主要区别通常在搜索正确的特征时更加精确,当然也更加耗时描述子大部分基于强度的差值,计算更快捷
SIFT(Scale Invariant Feature Transform) 特征对旋转、尺度缩放、亮度变化等保持不变性,是非常稳定的局部特征。 
SIFT的主要思路 :a)构造图像的尺度空间表示,b)在尺度空间中搜索图像的极值点,c)由极值点建立特征描述向量,d)用特征描述向量进行相似度匹配。 
检测 :通过图像与DOG算子卷积得到一幅二维图像在不同尺度下的尺度空间表示(即DOG图像);然后通过每个像素点与其三维领域的临近点进行比较,找出DOG局部极值点作为初步的特征点;然后通过曲线拟合(临近信息插补)得到特征点的精确位置,同时也会舍弃那些不明显关键点和边缘响应;接下来利用特征点邻域像素的梯度分布来确定特征点的方向。每个特征点都包含三个信息 (x,y,σ,θ)(x,y,σ,θ) ,即位置、尺度和方向。 
描述 :描述子将被用来作为目标匹配的依据,所以应具有较高的独特性以保证匹配率。特征描述大致包含三个步骤:1.旋转主方向,即将坐标轴旋转为关键点方向,以确保旋转不变性。2.然后在特征点对应的高斯图像上统计其 161616∗16 邻域内的方向梯度,将统计向量作为该点的sift描述子。3.特征向量的常规归一化,进一步去除光照变化等影响。 
匹配 :RANSAC(RANdom SAmple Consensus)方法是当前常用的一种特征点对的匹配算法,在OpenCV中我们可以使用暴力匹配(BruteForceMatcher)和FLANN(Fast Library for Approximate Nearest Neighbors,快速最近邻逼近搜索函数库)实现快速高效匹配。另外由于噪声等其他因素影响,有时次优匹配点可能和最优匹配点非常接近(接近 0.80.8 ),实验证明舍弃这些点效果会更好。 


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值