简介
SIFT算法是用来提取图像局部特征的经典算法,SIFT算法的实质是在不同的尺度空间上查找关键点(特征点),并计算出关键点的方向。SIFT所查找到的关键点是一些十分突出,不会因光照,仿射变换和噪音等因素而变化的点,如角点、边缘点、暗区的亮点及亮区的暗点等。
主要步骤
1、构建DOG尺度空间
2、关键点搜索和定位
3、方向赋值
4、关键点描述子的生成
算法详细流程
————————————————————————————————————————————————————————————————1,构建DOG尺度空间
(1)基础知识
(a)尺度空间:
在视觉信息处理模型中引入一个被视为尺度的参数,通过连续变化尺度参数获得不同尺度下的视觉处理信息,然后综合这些信息以深入地挖掘图像的本质特征。尺度空间方法将传统的单尺度视觉信息处理技术纳入尺度不断变化的动态分析框架中,因此更容易获得图像的本质特征。尺度空间的生成目的是模拟图像数据多尺度特征。
尺度空间中各尺度图像的模糊程度逐渐变大,能够模拟人在距离目标由近到远时目标在视网膜上的形成过程。大尺度对应图像的概貌特征,小尺度对应图像的细节特征。所以对不同尺度的图像检测关键点,最终得到的sift特征点具有尺度不变性。尺度空间是客观存在的,我们使用高斯卷积的形式来表现尺度空间。一幅二维图像的尺度空间可以定义为
其中I(x,y)是图像区域,G(x,y,σ)是尺度可变高斯函数,x,y是空间坐标,σ大小决定图像的平滑程度。
参考材料:http://blog.csdn.net/tanxinwhu/article/details/7048370
(b)高斯模糊:
这里尺度空间的生成需要使用高斯模糊来实现,Lindeberg等人已经证明高斯卷积核是实现尺度变换的唯一线性核。高斯模糊是一种图像滤波器,它使用正态分布(高斯函数)计算模糊模板,并使用该模板与原图像做卷积运算,达到模糊图像的目的。N维空间正态分布方程为:
其中,是正态分布的标准差,值越大,图像越模糊(平滑)。r为模糊半径,模糊半径是指模板元素到模板中心的距离。如二维模板大小为m*n,则模板上的元素(x,y)对应的高斯计算公式为:
对图像做卷积运算可以看做是加权求和的过程,把使用到的图像区域中的每个元素分别与卷积核的每个对应位置的元素相乘,所有乘积之和作为区域中心的像素值。一个5*5的高斯模板:可以看出高斯模板是圆对称的,且卷积的结果使原始像素值有最大的权重,距离中心越远的相邻像素值权重也越小。在实际应用中,在计算高斯函数的离散近似时,在大概3σ距离之外的像素都可以看作不起作用,这些像素的计算也就可以忽略。所以,通常程序只计算(6σ+1)*(6σ+1)就可以保证相关像素影响。
sift特征提取算法
最新推荐文章于 2024-10-31 19:07:57 发布
本文详细介绍了SIFT特征提取的整个过程,包括构建DOG尺度空间、关键点搜索与定位、方向赋值以及关键点描述子的生成。通过高斯模糊、DOG金字塔等方法寻找图像本质特征,并利用梯度直方图确定关键点方向,确保算法的尺度、旋转不变性。
摘要由CSDN通过智能技术生成