(2)w(x,y):窗口函数,不同的点给不同的weight;
(3)在Moravec detector中的箱子函数,这个块里的每个点都给它一样的权重;
(4)测量shift(u,v)产生出的error有多大,希望找对所有的(u,v),E(u,v)都很大的点(x,y),表示不管怎么动,看到的窗口都很不一样,才是好的特征;
(5)把所有可能的(u,v)都算一次太慢,所以只做四个方向的移动。对(u,v)=(1,0),(1,1),(0,1),(-1,1),找最小的那个E(u,v),如果连最小的都很大,那其他E(u,v)一定很大;
(6)所以对每个点产生4个向量((1,0),(1,1),(0,1),(-1,1)),对这四个点找到最小的E(u,v),产生一张图像,然后再找这张图像的局部最大值,把这样的点当作是特征。
(7)找右上角的方向会覆盖到上面,找四个跟八个(u,v)应该差不多。
但是这里也存在一些问题:
(1)二分窗口函数,其响应是含噪声的,E的最小值产生的图像不是一个很平滑的图像,所以在检测局部最大值时可能会含有噪声;
(2)它只用了4个方向,都是45度角或水平,能检测的shift有限;
(3)对边缘也会有很强的反映,如果边缘不是沿着45度角或水平,它的E的最小值很大。
所以针对上述三个问题,Harris corner detector分别提出了改进:
(1)用高斯函数解决平滑问题;
(2)不只测试4个方向,但是计算量太大,用泰勒展开式考虑所有的小shift。(泰勒展开:公式,E(x,y)变成了平方函数,它的E(u,v)=E的(u,v)画出来的圆表示一个椭圆,不用把所有的(u,v)带入原本的函数,只要利用这个近似法加矩阵运算即可得到E(u,v),而这个矩阵可以直接由图像得到。
(3)对边缘反映太强烈,利用新的测量方法。对M做本征的分解找本征值λ1、λ2. λ1,λ2表示E(u,v)在该轴方向上变化较大,再根据λ1,λ2的大小关系判断是否为corner。
从另一个角度来看:对flat而言,梯度分布在一个很小的圆内;对edge而言,梯度分布在一个很细长的椭圆内;对corner而言,梯度分布在一个很大的圆内。
Harris一些特性:
(1)对拟似的强度是不变的,因为是用梯度,整张图亮度提升没有影响
(2)对强度的缩放比例也是不变的,临界值再乘上一个比例因子。
(3)对旋转也是不变的,旋转后还是得到同样的椭圆,只是方向变了
(4)最大的问题,对图像的缩放比例不是不变的,缩放改变,特征就不见了。
3.SIFT(尺度不变特征转换)
SIFT算法首先在尺度空间进行特征检测,并确定关键点的位置和关键点所处的尺度,然后使用关键点邻域梯度的主方向作为该点的方向特征,以实现算子对尺度和方向的无关性。
SIFT算法提取的SIFT特征向量具有如下特性:
a)SIFT特征是图像的局部特征,其对旋转、尺度缩放、亮度变化保持不变性,对视角变化、仿射变换、噪声也保持一定程度的稳定性。
b)独特性好,信息量丰富,适用于在海里特征数据库中进行快速、准确的匹配。
c)多量性,即使少数的几个物体也可以产生大量的SIFT特征向量。
d)高速性,经优化的SIFT匹配算法甚至可以达到实时的要求。
e)可扩展性,可以很方便的与其他形式的特征向量进行联合。
1.2.3特征匹配
当前的特征匹配方法基本上分为2种:
1. 基于局部灰度信息的特征匹配方法——局部区域灰度统计特性
2. 基于特征向量的特征匹配方法——特征向量之间的距离
(1) 欧氏距离: = 面向图像素描的sift特征边缘图生成和特征匹配技术(4):http://www.751com.cn/jisuanji/lunwen_9069.html