图像特征点提取及描述子汇总:FIST、SURF、FAST、BRIEF、ORB、BRISK、FREAK

-------------------------做图像处理的可以往这个方向深挖-------------------------------
(博客园)大佬文章 FAST算法原理(博客园)
FAST角点检测分析:Features From Accelerated Segment Test
Opencv2.4.9源码分析——FAST
斑点检测
——————————————————参考资料---------------------------------------------
1.FAST角点检测
Edward Rosten和Tom Drummond在2006年发表的“Machine learning for high-speed corner detection”,并在2010年稍作修改后发表了《Features From Accelerated Segment Test》,以后简称FAST。

Rosten等人将FAST角点定义为:若某像素点与其周围领域内足够多的像素点处于不同的区域,则该像素点可能为角点。对于灰度图像,即若该点的灰度值比其周围领域内足够多的像素点的灰度值大或者小,则该点可能为角点
图像特征点提取及描述子汇总:FIST、SURF、FAST、BRIEF、ORB、BRISK、FREAK
如上图所示,我们先选择特征点p,其次选择四个点依次为1,9,5,13.如果四个点中与点p的灰度值之差的绝对值大于给定的阈值有三个,我们就假设该点p为候选特征点。如果该店为候选特征点然后再将该点与图像上这16个像素遍历,如果至少有9个或12满足之前的阈值差,那么该点就是角点。

2.BRIEF描述子提取算法
BRIEF是2010年发表在ECCV的一篇名为《BRIEF: Binary Robust Independent Elementary Features》的文章中提出,BRIEF是对已检测到的特征点进行描述,它是一种二进制编码的描述子。

算法步骤如下:

•以特征点P为中心,取一个S×S大小的Patch邻域

•在这个邻域内随机取N对点,然后对这2×N点分别做高斯平滑。比较N对像素点的像素值的大小

•最后把步骤2得到的N个二进制编码组成一个N维向量,这个编码就是对特征点的描述,即特征描述子。

使用BRIEF描述子具有以下特点:
• 优点:BRIEF描述子计算和比较速度非常快
•缺点:不具备尺度不变性和旋转不变性,对噪声较敏感。
如图为计算第i位特征的描述子:
图像特征点提取及描述子汇总:FIST、SURF、FAST、BRIEF、ORB、BRISK、FREAK
其中Bi(p)是描述符的第i位,I(·)为平滑图像中像素的强度,以及ai和bi相对于贴片中心第i测试点的2D偏移,其值在中提前进行随机选择。
论文中对于描述符长度和贴片大小,我们选择Lb=256和Sb=48。

BRIEF描述符的主要优点是它们计算和比较速度非常快,由于这些描述符之一只是位的向量,所以可以通过计算两个向量之间的不同位的数量(Hamming距离)来测量两个向量之间的距离,这通过异或操作实现。在这种情况下,这比计算欧几里得距离更合适,正如通常使用SIFT或SURF描述符所做的那样,它由浮点值组成。

图像特征点提取及描述子汇总:FIST、SURF、FAST、BRIEF、ORB、BRISK、FREAK