surf算法

兴趣点检测参考文献

感情迁移 提交于 2020-02-08 00:03:24
整理如下: OpenCV 尺度不变特征检测:SIFT、SURF、BRISK、ORB SIFT算法详解 SIFT特征匹配算法介绍——寻找图像特征点的原理 SURF特征提取分析 BRISK特征提取算法 ORB特征提取与匹配 来源: CSDN 作者: Wake_up. 链接: https://blog.csdn.net/qq_40851561/article/details/104216181

图片特征提取

醉酒当歌 提交于 2020-01-28 05:29:07
计算机视觉是一门研究如何使机器“看”的科学,让计算机学会处理和理解图像。这门学问有时需要借助机器学习。本文介绍一些机器学习在计算机视觉领域应用的基础技术。 通过像素值提取特征 数字图像通常是一张光栅图或像素图,将颜色映射到网格坐标里。一张图片可以看成是一个每个元素都是颜色值的矩阵。表示图像基本特征就是将矩阵每行连起来变成一个行向量。光学文字识别(Optical character recognition,OCR)是机器学习的经典问题。下面我们用这个技术来识别手写数字。 scikit-learn的digits数字集包括至少1700种0-9的手写数字图像。每个图像都有8x8像像素构成。每个像素的值是0-16,白色是0,黑色是16。如下图所示: % matplotlib inline from sklearn import datasets import matplotlib . pyplot as plt digits = datasets . load_digits ( ) print ( 'Digit:' , digits . target [ 0 ] ) print ( digits . images [ 0 ] ) plt . figure ( ) plt . axis ( 'off' ) plt . imshow ( digits . images [ 0 ] , cmap

SIFT/SURF、haar特征、广义hough变换的特性对比分析[z]

南笙酒味 提交于 2019-12-26 03:31:07
SIFT/SURF基于灰度图, 一、首先建立图像金字塔,形成三维的图像空间,通过Hessian矩阵获取每一层的局部极大值,然后进行在极值点周围26个点进行NMS,从而得到粗略的特征点,再使用二次插值法得到精确特征点所在的层(尺度),即完成了尺度不变。 二、在特征点选取一个与尺度相应的邻域,求出主方向,其中SIFT采用在一个正方形邻域内统计所有点的梯度方向,找到占80%以上的方向作为主方向;而SURF则选择圆形邻域,并且使用活动扇形的方法求出特征点主方向,以主方向对齐即完成旋转不变。 三、以主方向为轴可以在每个特征点建立坐标,SIFT在特征点选择一块大小与尺度相应的方形区域,分成16块,统计每一块沿着八个方向占的比例,于是特征点形成了128维特征向量,对图像进行归一化则完成强度不变;而SURF分成64块,统计每一块的dx,dy,|dx|,|dy|的累积和,同样形成128维向量,再进行归一化则完成了对比度不变与强度不变。 haar特征也是基于灰度图, 首先通过大量的具有比较明显的haar特征(矩形)的物体图像用模式识别的方法训练出分类器,分类器是个级联的,每级都以大概相同的识别率保留进入下一级的具有物体特征的候选物体,而每一级的子分类器则由许多haar特征构成(由积分图像计算得到,并保存下位置),有水平的、竖直的、倾斜的,并且每个特征带一个阈值和两个分支值,每级子分类器带一个总的阈值

SURF特征点检测原理

匿名 (未验证) 提交于 2019-12-03 00:15:02
SURF算法原理: 1、SURF特征检测的步骤 特征点过滤并进行精确定位。 特征方向赋值:统计特征点圆形邻域内的Harr小波特征。即在60度扇形内,每次将60度扇形区域旋转0.2弧度进行统计,将值最大的那个扇形的方向作为该特征点的主方向。 特征点描述:沿着特征点主方向周围的邻域内,取 4 × 4 4×4个矩形小区域,统计每个小区域的Haar特征,然后每个区域得到一个4维的特征向量。 2、构建Hessian(黑塞矩阵) 黑塞矩阵(Hessian Matrix)是由一个多元函数的二阶偏导数构成的方阵,描述了函数的局部曲率。由德国数学家Ludwin Otto Hessian于19世纪提出。 I ( x , y ) I(x,y),其Hessian矩阵如下: H矩阵的判别式是: 在构建Hessian矩阵前需要对图像进行高斯滤波,经过滤波后的Hessian矩阵表达式为: 其中 ( x , y ) (x,y)为像素位置, L ( x , y , σ ) = G ( σ ) I ( x , y ) ,代表着图像的高斯尺度空间,是由图像和不同的高斯卷积得到。 我们知道在离散数学图像中,一阶导数是相邻像素的灰度差: 反过来看Hessian矩阵的判别式,其实就是当前点对水平方向二阶偏导数乘以垂直方向二阶偏导数再减去当前水平、垂直二阶偏导的二次方: 通过这种方法可以为图像中每个像素计算出其H行列式的决定值

SURF特征点检测原理

故事扮演 提交于 2019-12-02 04:47:02
SURF算法原理: 1、SURF特征检测的步骤 1.尺度空间的极值检测:搜索所有尺度空间上的图像,通过Hessian来识别潜在的对尺度和选择不变的兴趣点。 2. 特征点过滤并进行精确定位。 3. 特征方向赋值:统计特征点圆形邻域内的Harr小波特征。即在60度扇形内,每次将60度扇形区域旋转0.2弧度进行统计,将值最大的那个扇形的方向作为该特征点的主方向。 4. 特征点描述:沿着特征点主方向周围的邻域内,取 4 × 4 4×4个矩形小区域,统计每个小区域的Haar特征,然后每个区域得到一个4维的特征向量。 一个特征点共有64维的特征向量作为SURF特征的描述子。 2、构建Hessian(黑塞矩阵) 构建Hessian矩阵的目的是为了生成图像稳定的边缘点(突变点),跟Canny、拉普拉斯边缘检测的作用类似,为特征提取做准备。构建Hessian矩阵的过程对应着SIFT算法中的DoG过程。 黑塞矩阵(Hessian Matrix)是由一个多元函数的二阶偏导数构成的方阵,描述了函数的局部曲率。由德国数学家Ludwin Otto Hessian于19世纪提出。 对于一个图像 I ( x , y ) I(x,y),其Hessian矩阵如下: H矩阵的判别式是: 在构建Hessian矩阵前需要对图像进行高斯滤波,经过滤波后的Hessian矩阵表达式为: 其中 ( x , y ) (x,y

opencv图像匹配常用特征点

与世无争的帅哥 提交于 2019-11-30 04:05:00
特征点又称兴趣点、关键点,它是在图像中突出且具有代表意义的一些点,通过这些点我们可以用来识别图像、进行图像配准、进行3D重建等。本文主要介绍OpenCV中几种定位与表示关键点的函数。 一、Harris角点 角点是图像中最基本的一种关键点,它是由图像中一些几何结构的关节点构成,很多都是线条之间产生的交点。Harris角点是一类比较经典的角点类型,它的基本原理是计算图像中每点与周围点变化率的平均值。 (1) (2) 其中I(x+u,y+u)代表了点(x,y)邻域点的灰度值。通过变换可以将上式变化为一个协方差矩阵求特征值的问题(2),具体数学原理本文不过多描述。 OpenCV的Hairrs角点检测的函数为cornerHairrs(),但是它的输出是一幅浮点值图像,浮点值越高,表明越可能是特征角点,我们需要对图像进行阈值化。我们使用一张建筑图像来显示: int main() { Mat image=imread( " ../buliding.png " ); Mat gray; cvtColor(image,gray,CV_BGR2GRAY); Mat cornerStrength; cornerHarris(gray,cornerStrength, 3 , 3 , 0.01 ); threshold(cornerStrength,cornerStrength, 0.001 , 255