资源预览内容
第1页 / 共4页
第2页 / 共4页
第3页 / 共4页
第4页 / 共4页
亲,该文档总共4页全部预览完了,如果喜欢就下载吧!
资源描述
SURF算法是SIFT算法的加速版,opencv的SURF算法在适中的 条件下完成两幅图像中物体的匹配基本实现了实时处理 其快速的基 础实际上只有一个一一积分图像haar求导,对于它们其他方面的不 同可以参考本blog的另外一篇关于SIFT的文章。不论科研还是应用上都希望可以和人类的视觉一样通过程序自动 找出两幅图像里面相同的景物,并且建立它们之间的对应,前几年才 被提出的SIFT (尺度不变特征)算法提供了一种解决方法,通过这 个算法可以使得满足一定条件下两幅图像中相同景物的某些点(后面 提到的关键点)可以匹配起来,为什么不是每一点都匹配呢?下面的 论述将会提到。SIFT算法实现物体识别主要有三大工序,1、提取关键点;2、对 关键点附加详细的信息(局部特征)也就是所谓的描述器;3、通过 两方特征点(附带上特征向量的关键点)的两两比较找出相互匹配的 若干对特征点,也就建立了景物间的对应关系。日常的应用中,多数情况是给出一幅包含物体的参考图像,然后 在另外一幅同样含有该物体的图像中实现它们的匹配3两幅图像中的 物体一般只是旋转和缩放的关系,加上图像的亮度及对比度的不同, 这些就是最常见的情形。基于这些条件下要实现物体之间的匹配, SIFT算法的先驱及其发明者想到只要找到多于三对物体间的匹配点 就可以通过射影几何的理论建立它们的一一对应 首先在形状上物体 既有旋转又有缩小放大的变化如何找到这样的对应点呢?于是他们的想法是首先找到图像中的一些“稳定点”,这些点是一些十分突出的 点不会因光照条件的改变而消失,比如角点、边缘点、暗区域的亮点 以及亮区域的暗点,既然两幅图像中有相同的景物,那么使用某种方 法分别提取各自的稳定点,这些点之间会有相互对应的匹配点,正是 基于这样合理的假设,SIFT算法的基础是稳定点。SIFT算法找稳定 点的方法是找灰度图的局部最值,由于数字图像是离散的,想求导和 求最值这些操作都是使用滤波器,而滤波器是有尺寸大小的,使用同 一尺寸的滤波器对两幅包含有不同尺寸的同一物体的图像求局部最 值将有可能出现一方求得最值而另一方却没有的情况 但是容易知道 假如物体的尺寸都一致的话它们的局部最值将会相同。SIFT的精妙 之处在于采用图像金字塔的方法解决这一问题 我们可以把两幅图像 想象成是连续的,分别以它们作为底面作四棱锥,就像金字塔,那么 每一个截面与原图像相彳似那么两个金字塔中必然会有包含大小一致 的物体的无穷个截面,但应用只能是离散的,所以我们只能构造有限 层,层数越多当然越好,但处理时间会相应增加,层数太少不行,因 为向下采样的截面中可能找不到尺寸大小一致的两个物体的图像有 了图像金字塔就可以对每一层求出局部最值,但是这样的稳定点数目 将会十分可观,所以需要使用某种方法抑制去除一部分点,但又使得 同一尺度下的稳定点得以保存。有了稳定点之后如何去让程序明白它 们之间是物体的同一位置?研究者想到以该点为中心挖出一小块区 域,然后找出区域内的某些特征,让这些特征附件在稳定点上,SIFT 的又一个精妙之处在于稳定点附加上特征向量之后就像一个根系发达的树根一样牢牢的抓住它的“土地”,使之成为更稳固的特征点,但 是问题又来了,遇到旋转的情况怎么办?发明者的解决方法是找一个 “主方向”然后以它看齐,就可以知道两个物体的旋转夹角了。下面就 讨论一下SIFT算法的缺陷。SIFT/SURT采用henssian矩阵获取图像局部最值还是十分稳定 的,但是在求主方向阶段太过于依赖局部区域像素的梯度方向,有可 能使得找到的主方向不准确 后面的特征向量提取以及匹配都严重依 赖于主方向,即使不大偏差角度也可以造成后面特征匹配的放大误 差,从而匹配不成功;另外图像金字塔的层取得不足够紧密也会使得 尺度有误差,后面的特征向量提取同样依赖相应的尺度,发明者在这 个问题上的折中解决方法是取适量的层然后进行插值。SIFT是一种 只利用到灰度性质的算法,忽略了色彩信息,后面又出现了几种据说 比SIFT更稳定的描述器其中一些利用到了色彩信息,让我们拭目以 待。最后要提一下,我们知道同样的景物在不同的照片中可能出现不 同的形状、大小、角度、亮度,甚至扭曲;计算机视觉的知识表明通 过光学镜头获取的图像,对于平面形状的两个物体它们之间可以建立 射影对应,对于像人脸这种曲面物体在不同角度距离不同相机参数下 获取的两幅图像,它们之间不是一个线性对应关系,就是说我们即使 获得两张图像中的脸上若干匹配好的点对,还是无法从中推导出其他 点的对应。
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号