第三章 关键点提取 19
这些信息可以是我们去掉那些地对比度的点以及边缘不稳定的点。
开始的时候我们只是用这种方法去简单的确定中心位置的关键点的位置和尺度。但是经研究发现这样是不精确的,最近Brown已经提出了一种新的想法能够用二次函数来解决3D情况,获得最大值点。他已经用实验证明这种方法的对与匹配的可匹配性以及稳定性,我们下面就介绍这种方法。主要目的就是通过两个阈值去掉不符合条件的关键点。
首先我们通过三维二次拟合以精确确定关键点的位置和尺度,然后去除对比度比较低的点和不稳定的边缘响应点
3.7.1 三维二次拟合
目的是去除对比度比较低的关键点。 Taylor二次展开式:
D?x??D??DT?xx?12xT?D?x22x (3-7)
?D以及它的倒数是可倒的,X??x,y,??是这个点的偏移量。极值点的位置,x,是由这个函数以及它的倒数得到的。当x趋近于0的时候,求导得到:
?D???D?x??D?2?x??2?1T?D?x (3-8)
正如Brown所说,当用不同的临近点进行采样时,Hessian和D的倒数产生的
?结果是相近的。3x3的线性系统可以用最小代价来解决问题。如果偏移量x大于0.5了,而且是在各个方向上都是大于0.5的,那意味着这个点可能距离其他的采样点更近。这样观点的位置就变了,而且一个点就有可能代替另一个点。
将(3-8)式带入到(3-7)式子得到:
20 SIFT特征关键点检测技术
1?D????(3-9) D?x??D?x2?x??
???对于上式将得到一个数值|D?x?|,对于比这个值小于
??T0.03的点的值将会被认
为是对比度比较低的点而被抛弃。
在第六章的试验中 我们将对这个阈值进行调节,从而更好的理解这个阈值对采样以及匹配的影响。
3.7.2 去除不稳定边缘响应点
为了得到稳定的关键点,仅仅去除低对比度的关键点是不行的, DOG算子在图像的边缘有较大边缘响应,甚至这些地方的点几乎很难容下很小的噪音,因此我们需要去掉这些点。
目的是通过r的引进确定一个阈值去掉边缘响应点。
一个定义不好的高斯差分算子的极值在横跨边缘的地方有较大的主曲率,而在垂直边缘的方向有较小的主曲率。主曲率通过一个2x2 的Hessian矩阵H求出:
?DxxH???DxyDxy?? (3-10) Dyy?导数由采样点相邻差估计得到。
D的主曲率和H的特征值成正比,令?为最大特征值,?为最小的特征值,则
Tr?H??Dxx?Dyy????Det?H
(3-11)
??DxxDyy??Dxy????2 (3-12)
令??r?,则:
Tr?H?2Det?H?2
??????2????r???2?2r???r?1?r2 (3-13)
(r + 1)/r的值在两个特征值相等的时候最小,随着r的增大而增大,因此,为了检测主曲率是否在域值r下,只需检测
Tr?H?2Det?H???r?1?r2
(3-14)
第四章 局部图像描述子 21
若在此阈值之下说明这个关键点可用,否则将被抛弃,在Lowe算法中 r=10。
3.8 PCA-SIFT
SIFT发展到今天已经很成熟了,但是它固有的特点使得他有许多难以克服的缺点,比如在求主方向阶段太过于依赖局部区域像素的梯度方向,有可能使得找到的主方向不准确,后面的特征向量提取以及匹配都严重依赖于主方向,即使不大偏差角度也可以造成后面特征匹配的放大误差,从而匹配不成功;另外图像金字塔的层取 得不足够紧密也会使得尺度有误差,后面的特征向量提取同样依赖相应的尺度,发明者在这个问题上的折中解决方法是取适量的层然后进行插值。SIFT是一种只 利用到灰度性质的算法,忽略了色彩信息。
PCA-SIFT与标准SIFT有相同的亚像素位置,尺度和主方向,但在第4步计算描述子的时候,它用特征点周围的41×41的象素计算它的主元,并用PCA-SIFT将原来的2×39×39维的向量降成20维,以达到更精确的表示方式。
为了PCA-SIFT 投影矩阵首先选择一系列有代表性的图像并且检测这些图像的所有关键点,然后对每一个关键点进行如下的操作:
1、在它的周围选择一个大小为41×41象素的像斑
2、计算垂直和水平的梯度,形成一个大小为39×39×2=3042的矢量 3、将这些矢量放入一个k×3042大小的矩阵A,k是所检测的关键点数目。 4、计算矩阵A的协方差: A=A-mean A cov A =ATA 5、计算cov A 的特征值和特征矢量
6、选择前n个特征向量,投影矩阵是一个由这些特征向量组成的n×3042的矩阵
7、n可以是一个根据经验设置的固定值,也可以基于特征值动态选择。
22 SIFT特征关键点检测技术
8、投影矩阵只计算一次,并且存储 建立描述子建立步骤:
1 输入,在尺度空间关键点的位置和方向
2 在关键点周围提取一个41×41象素图像给定的尺度,旋转到它的主方向 3 计算39×39水平和垂直的梯度,形成一个大小为3042的矢量 4用预先计算好的投影矩阵n×3042与此矢量相乘 5 这样生成一个大小为n的PCA-SIFT描述子
上边介绍了PCA-SIFT特征的一些只是下面我们通过图表的形式对SIFT和PCA-SIFT进行比较。
表1 SIFT和PCA-SIFT的比较
名称 SIFT 维数 128 优点 缺点 需要较少的经验维数高、不完全的主义知识,易于开仿射不变 发 PCA-SIFT 可变,推荐20或保留不变性的同不完全的仿射不者更少 时低维,大大减少变;投影矩阵需要了计算时间 一系列有代表性的图像;一个矩阵只对相应类图像起作用