sift特征匹配步骤
SIFT/SURF为了实现不同图像中相同场景的匹配,主要包括三个步骤:
1. 尺度空间的建立;
2.特征点的提取;
3.利用特征点周围邻域的信息生成特征描述子;
4.特征点匹配。
SIFT
1.生成高斯差分金字塔(DOG),尺度空间构建
(1)通过对原始图像进行尺度变换,获得图像多尺度下的尺度空间表示序列
(2)对这些序列进行尺度空间主轮廓的提取,并以该主轮廓作为一种特征向量,实现边缘、角点检测不同分辨率上的关键点提取等
(3)尺度空间构建的基础是DOG金字塔,DOG金字塔构建的基础是高斯金字塔
2.空间极值点检测(关键点的初步查探)
(1)为了寻找DOG函数的极值点,每一个像素点要和它所有的相邻点比较,看其是否比它的图像域和尺度空间域的相邻点大或者小
(2)在二维图像空间,中心点与它3×3邻域内大的8个点做比较,在同一组内的尺度空间上,中心点和上下相邻的两层图像2×9个点作比较,如此可以保证检测到的关键点在尺度空间和二维图像空间上都是局部极值点。
3.稳定关键点的精确定位
(1)DOG值对噪声和边缘比较敏感,所以在第2步的尺度空间中检测到的局部极值点还要经过进一步的筛选,去除不稳定和错误检测出的极值点,另一点就是在构建高斯金字塔过程中采用了下采样的图像,在下采样图像中提取的极值点对应在原始图像中的确切位置,也是要在本步骤中解决的问题。
4.稳定关键点方向信息分配
(1)稳定的极值点是在不同尺度空间下提取的,这保证了关键点的尺度不变性。为关键点分配方向信息所要解决的问题是使得关键点对图像角度和旋转具有不变性,方向的分配是通过求每个极值点的梯度来实现的。
(2)分配给关键点的方向并不直接是关键点的梯度方向,当然梯度方向一定是在0~360度范围内,对这些梯度方向归一化到36个方向内,每个方向代表了10度的范围。然后累计落到每个方向内的关键点个数,以此生成梯度方向直方图。
5.关键点描述
(1)对关键点的描述是后续实现匹配的关键步骤,描述其实就是一种以数学方式定义关键的过程。描述子不但包含关键点,也包括关键点周围对其有贡献的邻域点。
(2)描述的思路是:对关键点周围像素区域分块,计算块内梯度直方图,生成具有独特性的向量,这个向量是该区域图像信息的一种抽象表述。
6.特征点匹配
(1)特征点的匹配是通过计算两组特征点的128维的关键点的欧式距离实现的。欧式距离越小,则相似度越高,当欧式距离小于设定的阈值时,可以判定为匹配成功。