SIFT解析(三)生成特征描述子

以上两篇文章中检测在DOG空间中稳定的特征点,lowe已经提到这些特征点是比Harris角点等特征还要稳定的特征。下一步骤我们要考虑的就是如何去很好地描述这些DOG特征点。

下面好好说说如何来描述这些特征点。许多资料中都提到SIFT是一种局部特征,这是因为在SIFT描述子生成过程中,考虑的是该特征点邻域特征点的分布情况(而没有利用全局信息)。本步骤中主要计算过程包括:确定特征点的方向生成特征描述符

确定特征点方向

在特征点的确定过程中,特征点的坐标以及尺度被确定下来(坐标很重要,尺度更重要,到后来,你会发现尺度这个参量在整个描述子生成过程中越来越重要,因为正是运用尺度参量实现的Scale-Invariant,尺度不变!),根据特征点的尺度选择高斯金字塔中的图像,然后在这幅图像上确定该特征点的方向。这里体现的正是尺度不变的思想。

特征点方向的确定基于统计信息,以该特征点为中心,考察与该特征距离为**像素的梯度方向和梯度的幅值,梯度的方向和幅值的计算公式分别为:

构造该点邻域梯度方向直方图,将一圆周360°划分成36个槽,从0°开始每槽递增10°。根据邻域点的方向、梯度的幅值以及距离特征点的远近构建上述梯度方向直方图,如下图所示:

根据梯度直方图,直方图峰值所对应的的角度就是当前特征点A的方向,同时如果某角度的梯度幅值和>=峰值的80%,那么就产生一个新的特征点B,这个点的坐标、尺度等参数同A,但是角度不同。

至此,特征点的方向确定完毕。

生成图像局部描述符

到了本步骤,图像中每个特征点的坐标、尺度以及方向都确定了,下面开始根据这些信息获得描述子。

与上文中提到的确定特征点方向类似,生成描述子也是根据以特征点为中心的图像局部信息,首先根据特征点的尺度选择高斯金字塔中的图像,然后计算特征点邻域范围内各点的梯度方向和梯度的幅值,并根据上文得到的特征点梯度方向更新这些梯度的方向,以此达到描述子的方向不变性。

方向不变性完成后,开始计算特征描述符了。描述符计算过程同样基于梯度方向直方图,只是这次直方图的槽是以45°划分的(因此每个直方图只有8个槽),而不是10°。具体过程如下图所示:

统计每个4×4块的方向梯度直方图,为了去除光照对描述子的影响,对梯度直方图进行归一化处理。然后将每个直方图槽数据串联即可得到SIFT描述子,lowe提出当梯度方向直方图是4×4维的时候,SIFT描述子具有最好的区分度,因此这就诞生了老生长谈的128维SIFT特征向量,如下图所示:

至此,SIFT特征计算过程结束。

来自为知笔记(Wiz)

时间: 2024-08-05 10:18:27

SIFT解析(三)生成特征描述子的相关文章

BRIEF 特征描述子

Binary Robust Independent Elementary Features 1. BRIEF的基本原理 我们已经知道SIFT特征采用了128维的特征描述子,由于描述子用的浮点数,所以它将会占用512 bytes的空间.类似地,对于SURF特征,常见的是64维的描述子,它也将占用256bytes的空间.如果一幅图像中有1000个特征点(不要惊讶,这是很正常的事),那么SIFT或SURF特征描述子将占用大量的内存空间,对于那些资源紧张的应用,尤其是嵌入式的应用,这样的特征描述子显然是

【特征匹配】BRIEF特征描述子原理及源码解析

相关:Fast原理及源码解析 Harris原理及源码解析 SIFT原理及源码解析 SURF原理及源码解析 转载请注明出处: http://blog.csdn.net/luoshixian099/article/details/48338273 传统的特征点描述子如SIFT,SURF描述子,每个特征点采用128维(SIFT)或者64维(SURF)向量去描述,每个维度上占用4字节,SIFT需要128×4=512字节内存,SURF则需要256字节.如果对于内存资源有限的情况下,这种描述子方法显然不适应

8.2 特征描述子

8.1 尺度空间 图像特征中尺寸空间的相关理论基础. 8.1.1尺度与旋转不变性 局部不变性:尺度不变性(视觉远近与目标认知分析无关)和旋转不变性(旋转操作与目标认知分析无关) 特征描述 目标特征分析:关键点检测与关键点提取 8.2.1 SIFT特征 关键点检测和描述算法 优点:旋转.尺度.平移.视角及亮度不变性:对参数调整鲁棒性好(根据场景调整适宜特征点数量) 该算法对图像局部特征点提取包括4个步骤:疑似关键点检测.去除伪关键点.关键点梯度与方向匹配及特征向量生成 SIFT特征检测及匹配: h

SIFT解析(二)特征点位置确定

最近微博上有人发起投票那篇论文是自己最受益匪浅的论文,不少人说是lowe的这篇介绍SIFT的论文.确实,在图像特征识别领域,SIFT的出现是具有重大意义的,SIFT特征以其稳定的存在,较高的区分度推进了诸多领域的发展,比如识别和配准.上一篇文章,解析了SIFT特征提取的第一步高斯金字塔的构建,并详细分析了高斯金字塔以及差分高斯金字塔如何完成一个连续的尺度空间的构建.构建高斯金字塔不是目的,目的是如何利用高斯金字塔找到极值点. lowe在论文中阐述了为什么使用差分高斯金字塔: 1)差分高斯图像可以

BRIEF描述子生成算法

学习OpenCV关注微信公众号[OpenCV学堂] 一:介绍 我们知道SIFT算法通常通过对每个关键点生成128个特征向量作为描述子.SURF算法通常对关键点生成最少64个特征向量作为描述子.但是对于图像来说创建上千或者上万个这样的描述子内存开销比较大,运行速度受到严重影响.特别对嵌入式设备与一定设备来说,内存限制尤为明显,而且匹配的时候计算也比较耗时. 但是实际上这些特征数据OpenCV在匹配的时候并没有完全利用上,而是通过PCA.LDA等方法对它进行压缩,或者是LSH(局部敏感哈希)方法把这

(一)ORB描述子提取

ORBSLAM2中使用ORB描述子的方法 经典的视觉SLAM系统大体分为两种:其一是基于特征点法的,其二是基于直接法的.那么本文主要就讲特征点法的SLAM. 基于特征点法的视觉SLAM系统典型的有PTAM,ORBSLAM等.本文主要围绕ORBSLAM2的方案来阐述特征点法SLAM,因为ORBSLAM2可以说是特征点法SLAM的巅峰之作.ORBSLAM2采用三个主要线程:跟踪,局部建图和闭环以及一个额外线程:全局BA,该线程只有在闭环时才会触发.值得注意的是,ORBSLAM2中每个模块中都采用OR

【综述】(中科院)樊彬老师-“局部图像特征描述概述”

[综述](中科院)樊彬老师-“局部图像特征描述概述” 这次我们荣幸地邀请到中国科学院自动化研究所的樊彬老师为我们撰写图像特征描述符方面的最新综述.樊彬老师在图像特征描述方面已连续发表了包括TPAMI.PR.ICCV.CVPR在内的多篇高质量论文.他的个人主页为:http://www.sigvc.org/bfan/ 以后我们将持续邀请国内外众多老师做最新的视觉计算专业综述报告,如特征提取和描述.稀疏表达.人体跟踪.三维衣服布料动画.轻量级Web3D等,并陆续在学术论坛上发布.各位老师会尽量使综述通

线特征LSD and 描述子LBD(一)

最近在看有关特征提取的线特征,暑期就看了相关的论文:<基于点线综合特征的双目视觉SLAM方法_谢晓佳>,最近呢,把里面有关线特征提取LSD和描述子LBD的代码跑了一遍,记录如下: [1]LSD: a Line Segment Detector线段检测器 LSD是一种局部提取直线的算法,速度比Hough要快. LSD是一种直线检测分割算法,它能在线性的时间内得出亚像素级精度的检测结果.该算法被设计成可以在任何数字图像上都无需参数调节.它可以自己控制误检的数量:平均而言,每张图有一个误检. 有几篇

OpenCV之特征检测器(Feature Detector),描述子提取器(Descriptor Extractor)和描述子匹配器(Descriptor Matcher)

1.特征检测子 -Harris cv::cornerHarris(image,strength,3,3,0.01); -Fast cv::Ptr<cv::FastFeatureDetector> fast = cv::FastFeatureDetector::create(); //或 cv::FAST(InputArray image, std::vector<KeyPoint> &keypoints, int threshold) //或 cv::FAST(InputA