Surf(Speeded Up Robust Features)改进了特征的提取和描述方式,用一种更为高效的方式完成特征的提取和描述。
背景
计算机视觉中,引入尺度不变的特征,主要思想是每个检测到的特征点都伴随着对应的尺度因子。然而经常会遇到图像尺度不同的问题,不同图像中特征点的距离也会不同,如果通过修正特征点的大小就会造成强度不匹配。为了解决这个问题,提出了尺度不变的SURF特征检测,在计算特征点的时候把尺度因素加入其中。SURF与SIFT类似,SIFT算法比较稳定,检测特征点更多,但复杂性更高,而SURF要运算简单,效率高,运算时间也较短。
优缺点
Sift算法的优点是特征稳定,对旋转、尺度变换、亮度保持不变性,对视角变换、噪声也有一定程度的稳定性;缺点是实时性不高,并且对于边缘光滑目标的特征点提取能力较弱。
算法流程
1. 构建Hessian(黑塞矩阵),生成所有的兴趣点,用于特征的提取;
2. 构建尺度空间
3. 特征点定位
4. 特征点主方向分配
5. 生成特征点描述子
6. 特征点匹配
算法描述