计算机视觉(二)图像局部描述符
1.Harris角点检测器
Harris 角点检测算法(也称 Harris & Stephens 角点检测器)是一个极为简单的角点
检测算法。该算法的主要思想是,如果像素周围显示存在多于一个方向的边,我们
认为该点为兴趣点。该点就称为角点。
上述的定义说是不是觉得很深奥?稍微有点看不懂?那么,这里给出比较简单的例子来帮助我们理解
如下图所示:
我们可以直观的概括下角点所具有的特征:
轮廓之间的交点;
对于同一场景,即使视角发生变化,通常具备稳定性质的特征;
该点附近区域的像素点无论在梯度方向上还是其梯度幅值上有着较大变化;
2. 什么是好的角点检测算法?
3.Harris角点检测算法基本思想是什么?
4.如何用数学公式的方法描述角点
经过一系列E(u,v)表达式的演化, E(u,v)表达式可以更新为:
5. 如何用度量角点响应?
6.Harris角点检测器实例
以下采用此图片进行测试:
代码:
from pylab import *
from PIL import Image
from PCV.localdescriptors import harris
# 读入图像
im = array(Image.open('测试图片2.jpg').convert('L'))
# 检测harris角点
harrisim = harris.compute_harris_response(im)
# Harris响应函数
harrisim1 = 255 - harrisim
figure()
gray()
# 画出Harris响应图
subplot(141)
imshow(harrisim1)
print(harrisim1.shape)
axis('off')
axis('equal')
threshold = [0.01, 0.05, 0.1]
for i, thres in enumerate(threshold):
filtered_coords = harris.get_harris_points(harrisim, 6, thres)
subplot(1, 4, i +