Opencv3笔记34——SURF特征点检测

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/huayunhualuo/article/details/82182757

1.算法概述

SURF(SpeededUp Robust Features)加速版的具体鲁棒性的特征。Bay在2006年首次提出了,SURF是尺度不变特征变换算法(SIFT算法)的加速版。一般来说,标准的SURF算子比SIFT算子快了好几倍。并且在多幅图片下具有更好的稳定性。SURF最大的特征在于采用了harr特征以及积分图像的概念。大大加快了程序的运行时间。SURF可以用于计算机视觉的物体识别以及3D重建中。

2.SURF算法原理

2.1 构建Hessian矩阵构建高斯金字塔尺度空间

SIFT采用的DOG图像,SURF采用的是Hessian矩阵行列式近似值图像。Hessian矩阵是SURF算法的核心。在数学中,海森矩阵是一个自变量为向量的实值函数的二阶偏导数组成的方块矩阵。假设函数 f ( z , y ) ,Hessian矩阵H是函数,偏导数组成。首先看图像中某个像素点的Hessian矩阵

H ( f ( x , y ) ) = [ 2 f x 2 2 f x y 2 f x y 2 f y 2 ]

即每一个像素点都可以求出一个Hessian矩阵

H矩阵判别式为:

d e t ( H ) = 2 f 2 f x 2 y 2 ( 2 f x y ) 2

判别式的值是H矩阵的特征值,可以利用判定结果的符号将所有点分类,根据判别式取值正负,来判别该点是或不是极值点。

在SURF算法中,用图像像素 I ( x , y ) 即为函数值 f ( x , y ) ,选用二阶标准高斯函数作为滤波器,通过特定核间的卷积计算二阶偏导数,这样便能计算出H矩阵的三个矩阵元素 L x x , L y y , L x y ,从而计算出H矩阵。

H ( x , σ ) = [ L x x ( x , σ ) L x , y ( x , σ ) L x y ( x , σ ) L y y ( x , σ ) ]

猜你喜欢

转载自blog.csdn.net/huayunhualuo/article/details/82182757