SIFT特征关键点检测算法-论文 - 图文 下载本文

第二章 相关研究 7

一、首先建立图像金字塔,形成三维的图像空间,通过Hessian矩阵获取每一层的局部极大值,然后进行在极值点周围26个点进行比较,从而得到粗略的特征点,再使用二次插值法得到精确特征点所在的层(尺度),即完成了尺度不变。

二、在特征点选取一个与尺度相应的邻域,求出主方向,其中SIFT采用在一个正方形邻域内统计的所有的点的梯度方向,找到占80%以上的方向作为主方向。

三、以主方向为轴,可以在每个特征点建立坐标,SIFT在特征点附近选择一块大小与尺度相应的方形区域,分成16块,统计每一块沿着八个方向占的比例,于是特征点形成了128维特征向量,对图像进行归一化则完成强度不变。

haar特征也是基于灰度图。

首先通过大量的具有比较明显的haar特征(矩形)的物体图像用模式识别的方法训练出分类器,分类器是个级联的,每级都以大概相同的识别率保留进入下一级的具有物体特征的候选物体,而每一级的子分类器则由许多haar特征构成(由积分图像计算得到,并保存下位置),有水平的、竖直的、倾斜的,并且每个特征带一个阈值和两个分支值,每级子分类器带一个总的阈值。识别物体的时候,同样计算积分图像为后面计算haar特征做准备,然后采用与训练的时候有物体的窗口同样大小的窗口遍历整幅图像,以后逐渐放大窗口,同样做遍历搜索物体;每当窗口移动到一个位置,即计算该窗口内的haar特征,加权后与分类器中haar特征的阈值比较从而选择左或者右分支值,累加一个级的分支值与相应级的阈值比较,大于该阈值才可以通过进入下一轮筛选。当通过分类器的时候说明这个物体以大概率被识别。

广义hough变换同样基于灰度图,使用轮廓作为特征,融合了梯度信息,以投票的方式识别物体特点异同对比及其适用场合:

8 SIFT特征关键点检测技术

三种算法都只是基于强度(灰度)信息,都是特征方法,但SIFT的特征是一种具有强烈方向性及亮度性的特征,这使得它适用于刚性形变,稍有透视形变的场合;haar特征识别方法带有一点人工智能的意味,对于像人脸这种有明显的、稳定结构的haar特征的物体最适用,只要结构相对固定即使发生扭曲等非线性形变依然可识别;广义hough变换完全是精确的匹配,可得到物体的位置方向等参数信息。前两种方法基本都是通过先获取局部特征然后再逐个匹配,只是局部特征的计算方法不同,SIFT比较复杂也相对稳定,haar方法比较简单,偏向一种统计的方法形成特征,这也使其具有一定的模糊弹性;广义hough变换则是一种全局的特征——轮廓梯度,也可以看成是整个轮廓的每一个点的位置和梯度都是特征,每个点都对识别有贡献,用直观的投票,看票数多少去确定是否识别出物体。

2.4 SIFT的应用

识别在机器视觉里被大量应用于观察,识别和操纵。然而目前商业的目标识别系统很大程度上依赖于基于相关模板的匹配。这些算法的目标姿态,光照被严格控制等一些特定的环境下,模板匹配时很有效,但是目标旋转,尺度,亮度,以及三位姿态变化的情况下,效果很差,在处理部分可见物体以及大型模型的时候更是如此。

一个可选的搜索用于匹配的特征的方法是从图像中提取那些对成像过程有一定不变性的特征,并且在匹配过程中进匹配这些特征。至今已经发现并推荐了许多候选特征类型,包括线段,边缘,区域,这些特征对于一些特定的目标效果很好,它们通常不能被高频检测或者不能有效的稳定的识别目标物。

对于目标识别问题,Schmid和Mohr也用harris角点提取算子去确定兴趣点。然后再按 DOG图像中的指向不变量给每一个兴趣点对应一个得到一个局部图像描述子。这些描述被用于通过寻找多个卯足目标指向的位置条件和匹配描述子对实现鲁棒目标识别。本文的方法在大数据量的速度上一级处理稳性上有很大的优越性。

先前的有关目标识别的工作中使用的角点检测算子都有一个共同的弱点,就是它们在处理的时候只是一个单一尺度进行处理。当图像间尺度变化较大的时候,这些算子得到不同的匹配点。同时,以为这些算子没有提供每张图像,这样就必

第二章 相关研究 9

要生成一个图像描述子并在很多个尺度上进行匹配。本文描述了一种快速稳定的获取描述子并进行特征匹配的算法。这就意味着不同的图像尺度不会影响特征匹配的结果。另外,对每一个特征都显示出其尺度,这样就使得这个点对应的图像描述子可以在每张图像中被长采样为同一尺度。每一个特征位置都有一个标准指向,从而可以在一个局部二维坐标框架下进行匹配。这就允许在Schimid和Mohr的方法中使用比旋转不变描述子更具有特色的描述子。这种描述子被改进了在放射变换和亮度变化下的不变性。

其他的基于表象的识别方法包括特征空间匹配,颜色直方图,及感受直方图。这些方法在鼓励对象或预先分割好的图像中表现良好,由于他们使用全局特征,很难将他们扩展到杂乱图像或部分遮挡的图像中去。OHba和IKeuchi通过使用许多小的局部特征窗口成功的将特征空间匹配应用到杂乱图像中去,但是这就是需要对每一个窗口和图像进行模板匹配。需要花费很长的时间。

2.5 SIFT算法优点

日常的应用中,多数情况是给出一幅包含物体的参考图像,然后在另外一幅

同样含有该物体的图像中实现它们的匹配。两幅图像中的物体一般只是旋转和缩放的关系,加上图像的亮度及对比度的不同,这些就是最常见的情形。基于这些条件下要实现物体之间的匹配,SIFT算法的先驱及其发明者想到只要找到多于三对物体间的匹配点就可以通过射影几何的理论建立它们的一一对应。首先在形状上物体既有旋转又有缩小放大的变化,如何找到这样的对应点呢?于是他们的想法是首先找到图像中的一些“稳定点”,这些点是一些十分突出的点,不会因光照条件的改变而消失,比如角点、边缘点、暗区域的亮点以及亮区域的暗点,既然两幅图像中有相同的景物,那么使用某种方法分别提取各自的稳定点,这些点之间会有相互对应的匹配点,正是基于这样合理的假设,SIFT算法的基础是稳定点。找稳定点的方法是找灰度图的局部最值,由于数字图像是离散的,求导和求最值,这些操作都是使用滤波器,而滤波器是有尺寸大小的,使用同一尺寸的滤波器对两幅包含有不同尺寸的同一物体的图像求局部最值将有可能出现

10 SIFT特征关键点检测技术

一方求得最值而另一方却没有的情况,但是容易知道假如物体的尺寸都一致的话它们的局部最值将会相同。SIFT的精妙之处在于采用图像金字塔的方法解决这一问题,我们可以把两幅图像想象成是连续的,分别以它们作为底面作四棱锥,就像金字塔,那么每一个截面与原图像相似,那么两个金字塔中必然会有包含大小一致的物体的无穷个截面,但应用只能是离散的,所以我们只能构造有限层,层数越多当然越好,但处理时间会相应增加,层数太少不行,因为向下采样的截面中可能找不到尺寸大小一致的两个物体的图像。有了图像金字塔就可以对每一层求出局部最值,但是这样的稳定点数目将会十分可观,所以需要使用某种方法抑制去除一部分点,但又使得同一尺度下的稳定的点得以保存。有了稳定点之后如何去让程序明白它们之间是物体的同一位置?研究者想到以该点为中心挖出一小块区域,然后找出区域内的某些特征,让这些特征附件在稳定点上,SIFT的又一个精妙之处在于稳定点附加上特征向量之后就像一个根系发达的树根一样牢牢的抓住它的“土地”,使之成为更稳固的特征点。

2.6 SIFT的一些缺点

SIFT采用Henssian矩阵获取图像局部最值是十分稳定的,但是在求主方向

阶段太过于依赖局部区域像素的梯度方向,有可能使得找到的主方向不准确,后面的特征向量提取以及匹配都严重依赖于主方向,即使不大偏差角度也可以造成后面特征匹配的放大误差,从而匹配不成功;另外图像金字塔的层数不足够紧密也会使得尺度有误差,后面的特征向量提取同样依赖相应的尺度,发明者在这个问题上的折中解决方法是取适量的层然后进行插值。PCA-SIFT是一种只利用到灰度性质的算法,忽略了色彩信息,较SIFT有提高之处,在以后的学习中我们将继续研究。