霍夫变换

http://blog.csdn.net/sudohello/article/details/51335237

http://blog.csdn.net/glouds/article/details/39002113

在参数空间相交于同一点的所有直线,在图像坐标空间都有共线的点与之对应。根据这个特性,给定图像坐标空间的一些边缘点,就可以通过Hough变换确定连接这些点的直线方程。

参数空间ab上的细分程度决定了最终找到直线上点的共线精度。上述的二维累加数组A也被称为Hough矩阵。

参数空间中对应各个间断点的曲线或者曲面不能相交,则说明间断点不符合某已知曲线。

在xy空间中,垂直于x轴的直线斜率无穷大,所以在坐标空间无法表示---极坐标

ppt中---

点越亮,则表示原图中线越长,因为投票的点越多

opencv中分为 传统hough变换、概率hough变换(多少长度的线段时,将两段视为一段)、多尺度霍夫变换(不同精度)

 

角点检测

https://www.cnblogs.com/polly333/p/5416172.html

M为梯度的协方差矩阵 ,在实际应用中为了能够应用更好的编程,定义了角点响应函数R,通过判定R大小来判断像素是否为角点。R取决于M的特征值,对于角点|R|很大,平坦的区域|R|很小,边缘的R为负值。

ppt----

bloc斑点 --如树上的小斑点 海森矩阵、高斯拉普拉斯算子

corner角点--如拐点

M的计算---

  w可以表示各个方向上灰度的变化率

  M-协方差矩阵-两个特征值-角点位置,两个值都很大

  角点响应函数R-在浮点计算很弱时,计算很耗时,这样不需要把两个特征值都算出来

由两张图片的对比可知,无论位置、光强等如何,都可以将角点检测出来

 

SIFT

http://blog.csdn.net/zddblog/article/details/7521424

 关键点描述:在每个关键点周围的邻域内,在选定的尺度上测量图像局部的梯度。这些梯度被变换成一种表示,这种表示允许比较大的局部形状的变形和光照变化。

SIFT算法是在不同的尺度空间上查找关键点,而尺度空间的获取需要使用高斯模糊来实现,Lindeberg等人已证明高斯卷积核是实现尺度变换的唯一变换核,并且是唯一的线性核。

高斯模糊是一种图像滤波器,它使用正态分布(高斯函数)计算模糊模板,并使用该模板与原图像做卷积运算,达到模糊图像的目的。    

高斯函数的可分离性是指使用二维矩阵变换得到的效果也可以通过在水平方向进行一维高斯矩阵变换加上竖直方向的一维高斯矩阵变换得到。

ppt----

Automatic Scale Selection中式子的意思是:需要定义一种函数,使得在不同尺度下图像同一位置的响应相同

scale space尺度空间-相当于从外太空到近距离不断拉近距离:高斯核是尺度变换唯一的核,图像-尺度不断变大,越小越细腻,越大越模糊模糊的越粗糙--相当于模拟人体看物体

使用opencv的sift来检测某一尺度上对DOG(高斯差分)的响应值-跟图像越相似,响应值越高

DOG是LOG的近似

scale space in SIFT的过程--原图像用不同的均方差的值对应的高斯核进行高斯模糊,再分别2倍降采样再高斯模糊,构建金字塔;DOG就是高斯模糊后再高斯模糊来做特征点检测,不包括做降采样;SIFT使用了图像金字塔,SIFT是DOG的一种应用,使用了下采样

computation in gaussian scale pyramid--octave层数是由图像大小决定的 log512/log2 - 2,减去2是为了往后退两层,要不然最后一层是1*1,来做高斯模糊是没有意义的

把前一次的尺度减掉,算出新的sigma值--每一幅是用前一幅做的高斯模糊

 

https://www.cnblogs.com/JiePro/p/sift_1.html

 

s=3---用前一个octave中的倒数第三幅图像生成下一octave中的第一幅图像- 不同层且下采样是为了保证空间的连续性

DOG定义的是五个尺度,所以一个octive需要六个图像-因为是要做差,6-1=5

DOG空间为什么是连续的?

添加高斯项,是指成为连续的-所以添加ksigma的平方。。

 

 

SURF:海森矩阵进行特征提取+高斯滤波  -》 box filter来简化了运算

   sift是改变图像大小,滤波模板没变;SURF是图像没变,改变了filter大小,没有构建金字塔

  提到特征点,就要确定尺度范围--60度范围内,对梯度进行直方图统计,最大的作为主方向

  每个区域四个描述子-共16*4个-64维的特征向量