SIFT算法详解(附有完整代码).pdf

  1. 1、本文档共67页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
SIFT算法详解 (附有完整代码) ⼀⼀、、SIFT算算法法简简介介 SIFT,即尺度不变特征变换 (Sc le-inv ri nt fe ture tr nsform,SIFT),是⽤于领域的⼀种描述。这种描述具有尺度不变性, 可在图像中检测出关键点,是⼀种局部特征描述⼦。该⽅法于1999年由 ⾸先发表于计算机视觉国际会议 (Intern tion l Conference on Computer Vision,),2004年再次经D vid Lowe整理完善后发表于Intern tion l j ourn l of computer vision ()。截⽌20 14年8 ⽉,该论⽂单篇被引次数达25000余次。 1、、SIFT算算法法 的的特特点点 (1) SIFT特征是图像的局部特征,其对旋转、尺度缩放、亮度变化保持不变性,对视⾓变化、仿射变换、噪声也保持⼀定程度的稳定性 ; (2)独特性 (Distinctiveness)好,信息量丰富,适⽤于在海量特征数据库中进⾏快速、准确的匹配; (3)多量性,即使少数的⼏个物体也可以产⽣⼤量的SIFT特征向量 ; (4)⾼速性,经优化的SIFT匹配算法甚⾄可以达到实时的要求; (5)可扩展性,可以很⽅便的与其他形式的特征向量进⾏联合。 2、、SIFT算算法法可可 以以解解决决 的的问问题题 ⽬标的⾃⾝状态、场景所处的环境和成像器材的成像特性等因素影响图像配准/ ⽬标识别跟踪的性能。⽽SIFT算法在⼀定程度上可解 决 : (1) ⽬标的旋转、缩放、平移 (RST) (2)图像仿射/投影变换 (视点viewpoint) (3)光照影响 (illumin tion) (4) ⽬标遮挡 (occlusion) (5)杂物场景 (clutter) (6)噪声 SIFT算法的实质是在不同的尺度空间上查找关键点(特征点),并计算出关键点的⽅向。SIFT所查找到的关键点是⼀些⼗分突出,不会 因光照,仿射变换和噪⾳等因素⽽变化的点,如⾓点、边缘点、暗区的亮点及亮区的暗点等。 ⼆⼆、、SIFT算算法法分分为为如如下下四四步步 1. 尺尺度度 空空间间极极值值检检测测 有哪些信誉好的足球投注网站所有尺度上的图像位置。通过⾼斯微分函数来识别潜在的对于尺度和旋转不变的兴趣点。 2. 关关键键点点定定位位 在每个候选的位置上,通过⼀个拟合精细的模型来确定位置和尺度。关键点的选择依据于它们的稳定程度。 3. ⽅⽅ 向向确确 定定 基于图像局部的梯度⽅向,分配给每个关键点位置⼀个或多个⽅向。所有后⾯的对图像数据的操作都相对于关键点的⽅向、尺度和位 置进⾏变换,从⽽提供对于这些变换的不变性。 4. 关关键键点点描描述述 在每个关键点周围的邻域内,在选定的尺度上测量图像局部的梯度。这些梯度被变换成⼀种表⽰,这种表⽰允许⽐较⼤的局部形状的 变形和光照变化。 三三、、SIFT具具体体实实现现 说明:代码实现主要有七个源⽂件,我和⼤家⼀样有时候下载了好⼏个资源然⽽没有⼀个能⽤的,导致最后都不知道要下载哪⼀个、是否要 下载 ;所以这⾥直接把代码贴出来了! 1、、mySift.h #pragma once // 防⽌头⽂件重复包含和下⾯作⽤⼀样 #includeiostream #includevector #includeopencv2\core\core.hpp #includeopencv2\features2d\features2d.hpp using namespace std ; using namespace cv ; / 定义常量 / //⾼斯核⼤⼩和标准差关系,size=2 (GAUSS_ KERNEL_ RAT IO sigma)+1,经常设置GAUSS_ KERNEL_ RAT IO=2-3之间 const double GAUSS_ KERNEL_ RAT IO = 3 ; const int MAX_OCTAVES = 8 ; //⾦字塔最⼤组数 const float CONT R_T HR = 0.04f ; //默认是的对⽐度阈值(D(x)) const float CU

文档评论(0)

181****7662 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档