SIFT算法理论部分目录
一、介绍
1.1 SIFT算法
SIFT(Scale invariant feature transform)是尺度不变特征变换,是一种用来检测和描述图像局部特征的算法。算法实际上是要在不同尺度空间中寻找极值点,并提取其位置、尺度和旋转不变量,这些关键点不会因光照、仿射变换和噪音而变化。
1.2 SIFT特征的获取方法
-
尺度空间极值检测
利用高斯差分函数搜索所有尺度和图像位置,找到对尺度和方向不变的候选关键点。
-
关键点定位
对每一个候选关键点都需要确定其位置和尺度,并要保证其稳定性。
-
方向分配
根据局部图像的梯度方向,为每个关键点分配一个或多个方向。
-
关键点描述
在每个关键点周围区域的选定尺度上测量局部图像的梯度,这些信息表示了允许的局部形状失真和光照变化。
1.3 图像匹配和识别的方法
- 先从一组目标物体的参考图像中提取SIFT特征并存储在数据库。
- 将新图像的每个特征与之前的数据库逐一比较,根据特征向量的欧几里得距离找到匹配特征。
1.4 如何提高匹配准确率
-
利用识别与新图像中对象的位置、比例和方向一致的关键点子集,可以在匹配集中过滤出正确的匹配。几个特征共同作为判断依据匹配出错率远小于单一特征匹配。
-
匹配方法
①先对物体姿态的放射近似作最小二乘估计,与此姿态一致的其它图像特征被识别出来,异常值被丢弃。
②给出你和的准确性和可能的错误匹配的数量,对一组特征表明对象存在的概率进行详细计算。
③通过所有测试的对象匹配可被标为正确且具有高可信度。
二、尺度空间极值检测
SIFT算法是在不同的尺度空间上查找关键点,尺度空间的获取需要使用高斯模糊。
2.1 高斯模糊
(1)高斯函数
高斯模糊使用高斯函数(正态分布)计算模糊模板,并使用该模板与原图像做卷积运算,以此模糊图像。
N维空间的高斯计算公示:

- σ \sigma σ为正态分布的标准差, σ \sigma σ越大图像越模糊、越平滑
- r r r为模糊半径,指模板元素到模板中心的距离
二维空间的高斯计算公式:

- σ \sigma σ为正态分布的标准差, σ \sigma σ越大图像越模糊、越平滑
- m,n为二维模板的大小m*n
- x,y为模板上元素的位置(x,y)
二维高斯函数生成的曲面是从中心开始的正态分布同心圆。每个像素的值都是周围相邻像素的加权平均。原始像素具有最大的权重,边缘像素权重越来越小,因此更高的保留了边缘效果。
在计算每个像素的离散近似时, 3 σ 3\sigma 3σ之外的像素都可以视为不起作用,因此图像处理程序只需要计算 $(6\sigma+1)\times(6\sigma+1) $的矩阵就可以了。
(2)二维高斯模糊
根据 σ \sigma σ计算出高斯模板矩阵(大小为$(6\sigma+1)\times(6\sigma+1) , 值 根 据 ,值根据 ,值根据G(x,y)$计算)
对高斯模板矩阵进行归一化处理(确保矩阵元素在 [ 0 , 1 ] [0,1] [0,1]范围内),例如 5 × 5 5\times5 5×5的高斯模板如下图,可以看出高斯模板是中心对称的。

利用此高斯模板矩阵与原图像做卷积,即可获得原图像的高斯模糊图像。卷积过程示意图如下:


(3)分离高斯模糊
二维高斯模糊有两个不足之处:
- 使用二维高斯模糊会造成边缘图像缺失, σ \sigma σ越大,缺失像素越多
- 模板变大时,高斯核的卷据运算量会大幅度提高
解决方法:
利用高斯函数的可分离性(二维矩阵的变换效果等效于水平方向一维高斯矩阵变换加竖直方向一维高斯矩阵变换)。
- 两次一维的高斯卷积将消除二维高斯矩阵所产生的边缘。
- 卷积运算只需要O(n×M×N)+O(m×M×N)次计算,而二维矩阵需要O(m×n×M×N)次计算。其中m,n为高斯矩阵的维数。M,N为二维图像的维数。

2.2 尺度空间
(1)尺度空间的概念
-
概念
在图像信息处理模型中引入一个被视为尺度的参数,通过连续变化尺度参数获得多尺度下的尺度空间表示序列,对这些序列进行尺度空间主轮廓的提取,并以该主轮廓作为特征向量,实现边缘、角点检测和不同分辨率的特征提取。
-
特点
将传统的但尺度图像信息处理技术纳入尺度不断变化的动态分析框架中。更容易获取图像的本质特征。尺度空间中各尺度图像的模糊程度逐渐变大,能够模拟人在距离目标由近到远时目标在视网膜上的形成过程。
-
优点
1)尺度空间算子对图像的分析不受图像的灰度水平和对比度变化的影响,即满足灰度不变性和对比度不变性;
2)尺度空间算子对图像的分析和图像的位置、大小、角度以及仿射变换无关,即满足平移不变性、尺度不变性、欧几里德不变性以及仿射不变性。
(2)尺度空间的表示
尺度空间 L ( x , y , z ) L(x,y,z) L(x,

本文详细介绍SIFT算法原理及实现步骤,包括尺度空间极值检测、关键点定位与方向分配、关键点描述子构建等核心内容。
最低0.47元/天 解锁文章
52

被折叠的 条评论
为什么被折叠?



