准备
库:PCV、VLfeat、Graphivz等库的安装教程
环境配置:OpenCV、Python等配置教程
特征匹配基本流程
1.根据准则,提取图像中的特征点
2.提取特征点周围的图像块,构造特征描述符
3.通过特征描述符对比,实现特征匹配
Harris角点检测算法
Harris角点检测算法是一个极简单的角点检测算法。该算法的主要思想是,如果像素周围显示存在多于一个方向的边,我们认为该点为兴趣点,该点便称为角点。
角点:局部窗口沿各方向移动,均产生明显变化的点;图像局部曲率突变的点。
→窗口向任意方向的移动都导致图像灰度的明显变化
数学表达
将图像窗口平移[u,v]产生的灰度定义为E(u,v)
我们记矩阵M的特征值为λ1,λ2
然后定义一个角点响应函数R
R=detM-k(traceM)²
detM=λ1×λ2
traceM=λ1+λ2
- -R 只与M的特征值有关
- 角点:R 为大数值正数
- 边缘:R为大数值负数
- 平坦区:R为小数值
python实现
from pylab import *
from PIL import Image
from PCV.localdescriptors import harris
from PCV.tools.imtools import imresize
im1 = array(Image.open("9.jpg").convert("L"))
im2 = array(Image.open("12.