简介
SURF特征是对SIFT特征的改进,其基本结构、步骤与SIFT相近,但具体实现的过程有所不同。SURF算法的优点是速度远快于SIFT且稳定性好。
关于SIFT特征和Haar特征之前的文章有讲,这里主要就不赘述,请自行去查看~
SURF算法主要步骤:
1. Hessian矩阵构建
尺度空间构建
特征点精确定位
方向确定
特征点描述
SURF算法原理
Hessian矩阵构建
SIFT算法建立一幅图像的金字塔,在每一层进行高斯滤波并求取图像差(DOG)进行特征点的提取,而SURF则用的是Hessian矩阵进行特征点的提取,所以Hessian矩阵是SURF算法的核心。假设函数f(x,y),Hessian矩阵H是由函数偏导数组成。首先来看看图像中某个像素点的Hessian矩阵的定义为:
从而每一个像素点都可以求出一个Hessian矩阵,Hessian矩阵判别式为:
判别式的值是H矩阵的特征值,可以利用判定结果的符号将所有点分类,根据判别式取值正负,从来判别该点是或不是极点的值。在SURF算法中,通常用图像像素I(x,y)取代函数值f(x,y)。然后选用二阶标准高斯函数作为滤波器。通过特定核间的卷积计算二阶偏导数,这样便能计算出H矩阵的三个矩阵元素Lxx, Lxy, Lyy,从而计算出H矩阵公式如下:
但是由于我们的特征点需要尺度无关性,所以在进行Hessian矩阵构造前,需要对其进行高斯滤波。这样,经过滤波后在进行Hessian的计算,其公式如下:
L(x,t)是一幅图像在不同解析度下的表示,可以利