ImageVerifierCode 换一换
格式:DOCX , 页数:13 ,大小:471.21KB ,
资源ID:8353580      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/8353580.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(SIFT算法实现原理步骤.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

SIFT算法实现原理步骤.docx

1、SIFT算法实现原理步骤SIFT算法实现步骤 :1 关键点检测、2 关键点描述、3 关键点匹配、4 消除错配点1关键点检测1.1 建立尺度空间根据文献Scale-space theory: A basic tool for analysing structures at different scales我们可知,高斯核是唯一可以产生多尺度空间的核,一个图像的尺度空间,L(x,y,) ,定义为原始图像I(x,y)与一个可变尺度的2维高斯函数G(x,y,) 卷积运算。 高斯函数 高斯金字塔高斯金子塔的构建过程可分为两步:(1)对图像做高斯平滑;(2)对图像做降采样。 为了让尺度体现其连续性,在简单

2、下采样的基础上加上了高斯滤波。一幅图像可以产生几组(octave)图像,一组图像包括几层(interval)图像。 高斯图像金字塔共o组、s层,则有:尺度空间坐标;ssub-level层坐标;0初始尺度;S每组层数(一般为35)。当图像通过相机拍摄时,相机的镜头已经对图像进行了一次初始的模糊,所以根据高斯模糊的性质: -第0层尺度 -被相机镜头模糊后的尺度高斯金字塔的组数: M、N分别为图像的行数和列数高斯金字塔的组内尺度与组间尺度:组内尺度是指同一组(octave)内的尺度关系,组内相邻层尺度化简为:组间尺度是指不同组直接的尺度关系,相邻组的尺度可化为:最后可将组内和组间尺度归为:i金字塔组

3、数 n每组层数上一组图像的底层是由前一 组图像的倒数第二层图像隔点采样生成的。这样可以保持尺度的连续性。差分高斯金字塔Lindeberg在文献Scale-space theory: A basic tool for analysing structures at different scales指出尺度规范化的LoG算子具有真正的尺度不变性。LoG算子即(Laplacion of Gaussian),可以由高斯函数梯度算子GOG构建尺度规范化的GoG算子:尺度规范化的LoG算子: LOG算子与高斯核函数的关系通过推导可以看出,LOG算子与高斯核函数的差有直接关系,由此引入一种新的算子DOG(D

4、ifference of Gaussians),即高斯差分算子。DoG(Difference of Gaussian)函数:DoG在计算上只需相邻尺度高斯平滑后图像相减,因此简化了计算。对应DOG算子,我们要构建DOG金字塔我们可以通过高斯差分图像看出图像上的像素值变化情况。(如果没有变化,也就没有特征。特征必须是变化尽可能多的点。)DOG图像描绘的是目标的轮廓。在Lowe的论文中,将第0层的初始尺度定为1.6,图片的初始尺度定为0.5,则图像金字塔第0层的实际尺度为1.2 DoG的局部极值点检测关键点是由DOG空间的局部极值点组成的。为了寻找DoG函数的极值点,每一个像素点要和它所有的相邻点

5、比较,看其是否比它的图像域和尺度域的相邻点大或者小。中间的检测点和它同尺度的8个相邻点和上下相邻尺度对应的92个点共26个点比较,以确保在尺度空间和二维图像空间都检测到极值点。 在极值比较的过程中,每一组图像的首末两层是无法进行极值比较的,为了满足尺度变化的连续性,我们在每一组图像的顶层继续用高斯模糊生成了3幅图像,高斯金字塔有每组S+3层图像。DOG金字塔每组有S+2层图像。1.3 关键点精确定位由于DoG值对噪声和边缘较敏感,因此,在上面DoG尺度空间中检测到局部极值点还要经过进一步的检验才能精确定位为特征点。去除低对比度的极值点为了提高关键点的稳定性,需要对尺度空间DoG函数进行曲线拟合

6、。利用DoG函数在尺度空间的Taylor展开式:其极值点: 在计算过程中,分别对图像的行、列及尺度三个量进行了修正,其修正结果如下:求解得 为修正值。将修正后的结果代入式 上式去除那些对比度较低的不稳定极值点。Lowe的试验显示,所有取值小于0.04的极值点均可抛弃(像素灰度值范围0,1)。去除边缘响应仅仅去除低对比度的极值点对于极值点的对于特征点稳定性是远远不够的。DoG函数在图像边缘有较强的边缘响应,因此我们还需要排除边缘响应DoG函数的(欠佳的)峰值点在横跨边缘的方向有较大的主曲率,而在垂直边缘的方向有较小的主曲率。主曲率可以通过计算在该点位置尺度的22的Hessian矩阵得到,导数由采

7、样点相邻差来估计: 表示DOG金字塔中某一尺度的图像x方向求导两次。 D的主曲率和H的特征值成正比,为了避免直接的计算这些特征值,而只是考虑它们的之间的比率。令 为最大特征值, 为最小的特征值,则 在两特征值相等时达最小,随r的增长而增长。Lowe论文中建议r取10。 时将关键点保留,反之剔除。2 关键点描述2.1 关键点方向分配 通过尺度不变性求极值点,可以使其具有缩放不变的性质,利用关键点邻域像素的梯度方向分布特性,我们可以为每个关键点指定方向参数方向,从而使描述子对图像旋转具有不变性。 通过求每个极值点的梯度来为极值点赋予方向。 像素点的梯度表示 梯度幅值: 梯度方向:方向直方图的生成

8、确定关键点的方向采用梯度直方图统计法,统计以关键点为原点,一定区域内的图像像素点对关键点方向生成所作的贡献。 直方图以每10度方向为一个柱,共36个柱,柱所代表的方向为像素点梯度方向,柱的长短代表了梯度幅值。 根据Lowe的建议,直方图统计半径采用3*1.5* 在直方图统计时,每相邻三个像素点采用高斯加权,根据Lowe的建议,模板采用0.25,0.5,0.25,并连续加权两次。关键点的主方向与辅方向关键点主方向:极值点周围区域梯度直方图的主峰值,也是特征点方向关键点辅方向:在梯度方向直方图中,当存在另一个相当于主峰值80%能量的峰值时,则将这个方向认为是该关键点的辅方向。这可以增强匹配的鲁棒性

9、,Lowe的论文指出大概有15%关键点具有多方向,但这些点对匹配的稳定性至为关键。方向分配实现步骤1.确定计算关键点直方图的高斯函数权重函数参数 ;2.生成含有36柱的方向直方图,梯度直方图范围0360度,其中每10度一个柱。由半径为图像区域生成;3.对方向直方图进行两次平滑;4.求取关键点方向(可能是多个方向);5.对方向直方图的Taylor展开式进行二次曲线拟合,精确关键点方向; 图像的关键点已检测完毕,每个关键点有三个信息:位置、尺度、方向;同时也就使关键点具备平移、缩放、和旋转不变性。2.2 生成特征描述符 描述的目的是在关键点计算后,用一组向量将这个关键点描述出来,这个描述子不但包括

10、关键点,也包括关键点周围对其有贡献的像素点。用来作为目标匹配的依据,也可使关键点具有更多的不变特性,如光照变化、3D视点变化等。 通过对关键点周围图像区域分块,计算块内梯度直方图,生成具有独特性的向量,这个向量是该区域图像信息的一种抽象,具有唯一性。 下图是一个SIFT描述子事例。其中描述子由228维向量表征,也即是22个8方向的方向直方图组成。左图的种子点由88单元组成。每一个小格都代表了特征点邻域所在的尺度空间的一个像素,箭头方向代表了像素梯度方向,箭头长度代表该像素的幅值。然后在44的窗口内计算8个方向的梯度方向直方图。绘制每个梯度方向的累加可形成一个种子点,如右图所示:一个特征点由4个

11、种子点的信息所组成。 Lowe实验结果表明:描述子采用448128维向量表征,综合效果最优(不变性与独特性)。128维关键点描述子(就是特征描述符)生成步骤 1. 确定计算描述子所需的图像区域 描述子梯度方向直方图由关键点所在尺度的模糊图像计算产生。图像区域的半径通过下式计算: 是关键点所在组(octave)的组内尺度, 2. 将坐标移至关键点主方向 那么旋转角度后新坐标为: 3.在图像半径区域内对每个像素点求其梯度幅值和方向,然后对每个梯度幅值乘以高斯权重参数,生成方向直方图。 该点与关键点的列距离 该点与关键点的行距离 等于描述子窗口宽度 直方图列数(取4)的一半 4.在窗口宽度为2X2的

12、区域内计算8个方向的梯度方向直方图,绘制每个梯度方向的累加值,即可形成一个种子点。然后再在下一个2X2的区域内进行直方图统计,形成下一个种子点,共生成16个种子点。 5.描述子向量元素门限化及门限化后的描述子向量规范化。描述子向量元素门限化:方向直方图每个方向上梯度幅值限制在一定门限值以下(门限一般取0.2)。描述子向量元素规范化: 为得到的128描述子向量 为规范化后的向量 关键点描述子向量的规范化正是可去除满足此模型的光照影响。对于图像灰度值整体漂移 ,图像各点的梯度是邻域像素相减得到,所以也能去除。 3 关键点匹配分别对模板图(参考图,reference image)和实时图(观测图,o

13、bservation image)建立关键点描述子集合。目标的识别是通过两点集内关键点描述子的比对来完成。具有128维的关键点描述子的相似性度量采用欧式距离。 模板图中关键点描述子: 实时图中关键点描述子: 任意两描述子相似性度量: 要得到配对的关键点描述子, 需满足: 关键点的匹配可以采用穷举法来完成,但是这样耗费的时间太多,一般都采用一种叫k-d树的数据结构来完成搜索。搜索的内容是以目标图像的关键点为基准,搜索与目标图像的特征点最邻近的原图像特征点和次邻近的原图像特征点。 Kd树是一个平衡二叉树 关键点匹配并不能标志着算法的结束,因为在匹配的过程中存在着大量的错配点。 图中交叉的绿线为错配点4 消除错配点 RANSAC(Random Sample Consensus,随机抽样一致 )是一种鲁棒性的参数估计方法。 RANSAC实质上就是一个反复测试、不断迭代的过程。 RANSAC的基本思想: 首先根据具体问题设计出某个目标函数,然后通过反复提取最小点集估计该函数中参数的初始值,利用这些初始值把所有的数据分为“内点”( inlier )和“外点“(outlier),最后用所有的内点重新计算和估计函数的参数。RANSAC事例拟合直线:y=kx+b

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1