2016年12月里番磁力:SIFT~
来源:百度文库 编辑:偶看新闻 时间:2024/05/07 04:34:14
0.前言
1.高斯金字塔
高斯核是唯一可以产生多尺度空间的核,一个图像的尺度空间为L等于原始图像I与一个可变尺度的2维高斯函数G作卷积运算:
为了让尺度体现其连续性,在简单采样的基础上加上了高斯滤波。一幅图像可以产生多组(octave)图像,一组图像包括多层(interval)图像。我们设构建高斯图像金字塔共有o组,每组有s层(一般为3-5之间):
其中高斯金字塔的组数o为:
高斯金字塔的组内尺度与组间尺度之间的递归关系为(其中i是金字塔组数,n代表每一组的层数):
接下来我们需要利用LoG算子的尺度不变性来把上面高斯模糊处理的多张图片作差分得到DoG高斯差分金字塔,DOG图像描绘的是目标的轮廓:
2.DoG的局部关键点
由于DoG值对噪声和边缘较敏感,因此,在上面DoG尺度空间中检测到局部极值点还要经过进一步的检验才能精确定位为特征点。为了提高关键点的稳定性,需要对尺度空间DoG函数进行曲线拟合。利用DoG函数在尺度空间Taylor展开式分别对图像的行、列及尺度三个分量进行修正:
去除那些对比度较低的不稳定极值点。一般取值小于0.04的极值点均可抛弃(灰度范围为0-1)。仅仅去除低对比度的极值点对于极值点的对于特征点稳定性是远远不够的。DoG函数在图像边缘有较强的边缘响应,因此我们还需要排除边缘响应。DoG函数的峰值点在横跨边缘的方向有较大的主曲率,而在垂直边缘的方向有较小的主曲率。主曲率可以通过计算在该点位置尺度的二阶Hessian矩阵得到,导数由采样点相邻差来估计:
D的主曲率和H的特征值成正比,为了避免直接的计算这些特征值,而只是考虑它们的之间的比率。我们设:
当满足下式时将关键点保留,反之则丢弃掉,r一般取为1.0f:
3.关键点方向
①直方图以每10度方向为一个柱,共36个柱,柱所代表的方向为像素点梯度方向,柱的长短代表了梯度幅值。
②在直方图统计时,每相邻三个像素点采用高斯加权,模板采用[0.25,0.5,0.25],并连续加权两次。
③直方图统计半径采用3*1.5*σ。
我们认为极值点周围区域梯度直方图的主峰值,也是特征点方向;在梯度方向直方图中,当存在另一个相当于主峰值80%能量的峰值时,则将这个方向认为是该关键点的辅方向。这可以增强匹配的鲁棒性,大概有15%关键点具有多方向,但这些点对匹配的稳定性至为关键。于是图像的关键点已检测完毕,每个关键点有三个信息:位置、尺度、方向;同时也就使关键点具备平移、缩放、和旋转不变性。
4.关键点描述特征向量
描述子梯度方向直方图由关键点所在尺度的模糊图像计算产生。图像区域的半径通过下式计算:
然后将坐标移至关键点主方向,在图像半径区域内对每个像素点求其梯度幅值和方向,然后对每个梯度幅值乘以高斯权重参数,生成方向直方图:
最后在窗口宽度为2X2的区域内计算8个方向的梯度方向直方图,绘制每个梯度方向的累加值,即可形成一个种子点。然后再在下一个2X2的区域内进行直方图统计,形成下一个种子点,共生成16个种子点。描述子向量元素门限化及门限化后的描述子向量规范化。描述子向量元素门限化:方向直方图每个方向上梯度幅值限制在一定门限值以下(一般为0.2)。于是我们得到了128描述特征向量,接下来就只需对样本进行模式识别中的匹配了,至于用到PCA降维或者KDTree加速等都属于人工智能和图形学的范畴了。