Abstract摘要
本文提出了一种从图像中提取特征不变性的方法,该方法可用于在对象或场景的不同视图之间进行可靠的匹配(适用场景和任务)。这些特征对图像的尺度和旋转不变性,并且在很大范围的仿射失真、3d视点的变化、噪声的增加和光照的变化中提供了鲁棒的匹配。从某种意义上说,一个单一的特征可以与来自许多图像的特征的大型数据库进行高概率的正确匹配。本文还介绍了一种利用这些特征进行目标识别的方法。识别的过程是使用快速最近邻算法将单个特征与来自已知对象的特征数据库相匹配,然后进行hough变换以识别属于单个对象的簇,最后通过一致姿态参数的最小二乘解进行验证。这种识别方法在保证近实时性的同时,能够在杂波和遮挡中稳健地识别出目标。

1 Introduction简介
图像匹配是计算机视觉中问题的一个基础方面,包括物体或场景识别,SFM,追踪等。本文描述了具有很多属性的图像特征,能够适应一个物体或场景的不同图像上的匹配。这些特征对图像的缩放和旋转具有不变性,对光照和三维摄像机视点的变化具有部分不变性。它们在空间域和频率域都具有很好的定位,减少了被遮挡、杂波或噪声破坏的可能。利用有效的算法可以从典型图像中提取大量特征。此外,这些特征具有很强的区分性,使得单个特征能够以很高的概率与一个庞大的特征数据库进行正确匹配,为目标和场景识别提供了基础。

通过采用级联滤波方法,将提取这些特征的成本降到最低,在这种方法中,更昂贵的操作仅应用于通过初始测试的位置。以下是用于生成图像特征集的主要计算阶段:

(1)尺度-空间极值检测:计算的第一阶段搜索所有尺度和图像位置。利用高斯函数差分来识别对尺度和方向不变的潜在兴趣点,有效地实现了该算法。

(2)关键点定位:在每一个候选位置,选择一个详细的模型用来确定位置和尺度。关键点是根据它们的稳定性来选择的。

(3)方向指定:基于局部图像梯度方向,为每个关键点位置指定一个或多个方向。所有未来的操作都是对已经相对于每个特征的指定方向、比例和位置进行变换的图像数据执行的,从而为这些变换提供不变性。

(4)关键点描述子:在每个关键点周围的区域中,以选定的比例测量局部图像梯度。它们被转换成一种表示形式,允许显著程度的局部形状失真和照明变化。

这种方法被称为尺度不变特征变换(sift),因为它将图像数据转换为相对于局部特征的尺度不变坐标。

这种方法的一个重要方面是,它生成了大量的特征,这些特征在整个尺度和位置范围内密集地覆盖了图像。一个500x500像素大小的典型图像将产生大约2000个稳定的特征(尽管这个数字取决于图像内容和各种参数的选择)。特征的数量对于目标识别尤为重要,因为在杂乱的背景中检测小目标的能力要求每个目标至少有3个特征被正确匹配,以便可靠地识别。

为了进行图像匹配和识别,首先从一组参考图像中提取sift特征并存储在数据库中。通过将新图像中的每个特征与之前的数据库进行单独比较,并根据特征向量的欧几里德距离寻找候选匹配特征,来匹配新图像。本文将讨论快速近邻算法,该算法可以对大型数据库快速执行此计算。

关键点描述符非常独特,它允许单个特征在一个大的特征数据库中以很高的概率找到其正确匹配。然而,在一个杂乱的图像中,来自背景的许多特征在数据库中没有任何正确的匹配,除了正确的匹配之外,还会导致许多错误的匹配。通过识别与对象及其在新图像中的位置、比例和方向一致的关键点子集,可以从完整的匹配集中筛选正确的匹配。多个特征偶然同意这些参数的概率远低于任何单个特征匹配出错的概率。利用广义hough变换的高效哈希表实现,可以快速确定这些一致的簇。

Distinctive Image Features from Scale-Invariant Keypoints(SIFT) 基于尺度不变关键点的特征描述子——2004年的更多相关文章

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

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

  2. SIFT算法:特征描述子

    SIFT算法:DoG尺度空间生产  SIFT算法:KeyPoint找寻.定位与优化 SIFT算法:确定特征点方向  SIFT算法:特征描述子 目录: 1.确定描述子采样区域 2.生成描述子 2.1 旋 ...

  3. Distinctive Image Features from Scale-Invariant Keypoints(个人翻译+笔记)-介绍

    Distinctive Image Features from Scale-Invariant Keypoints,这篇论文是图像识别领域SIFT算法最为经典的一篇论文,导师给布置的第一篇任务就是它. ...

  4. Opencv Surf算子中keyPoints,描述子Mat矩阵,配对向量DMatch里都包含了哪些好玩的东东?

    Surf算法是一把牛刀,我们可以很轻易的从网上或各种Opencv教程里找到Surf的用例,把例程中的代码或贴或敲过来,满心期待的按下F5,当屏幕终于被满屏花花绿绿的小圆点或者N多道连接线条霸占时,内心 ...

  5. Computer Vision_33_SIFT:Distinctive Image Features from Scale-Invariant Keypoints——2004

    此部分是计算机视觉部分,主要侧重在底层特征提取,视频分析,跟踪,目标检测和识别方面等方面.对于自己不太熟悉的领域比如摄像机标定和立体视觉,仅仅列出上google上引用次数比较多的文献.有一些刚刚出版的 ...

  6. Distinctive Image Features from Scale-Invariant

    http://nichol.as/papers/Lowe/Distinctive Image Features from Scale-Invariant.pdf Abstract This paper ...

  7. 基于SIFT的点云关键点提取

    这篇博文主要介绍SIFT算法在提取点云图像关键点时的具体用法. 尺度不变特征转换(Scale-invariant feature transform,SIFT)是David Lowe在1999年发表, ...

  8. 【CV知识学习】【转】beyond Bags of features for rec scenen categories。基于词袋模型改进的自然场景识别方法

    原博文地址:http://www.cnblogs.com/nobadfish/articles/5244637.html 原论文名叫Byeond bags of features:Spatial Py ...

  9. 特征描述算子-sift

    特征描述算子-sift http://boche.github.io/download/sift/Introduction%20to%20SIFT.pdf

随机推荐

  1. 各种开源许可 license 区别

    copy from http://www.ruanyifeng.com/blog/2011/05/how_to_choose_free_software_licenses.html

  2. Linux 项目上线流程

    命令行样式修改 1 打开配置文件vim /etc/bashrc2 添加配置信息PS1="\[\e[37;40m\][\[\e[32;1m\]\u\[\e[37;40m\]@\h \[\e[3 ...

  3. vue使用笔记二

    es6\es2015特性http://lib.csdn.net/article/reactnative/58021?knId=1405 使用express-generator初始化你的项目目录http ...

  4. 正斜杠"/"与反斜杠"\"

    刚开始做前端,发现前端路径都用正斜杠"/"与Windows下路径定义完全不同 查了一下资料总结如下: Windows 用反斜杠(“\”)的历史来自 DOS,而 DOS 的另一个传统 ...

  5. HNUSTOJ-1695 跳格子(略感头疼)

    1695: 跳格子 时间限制: 1 Sec  内存限制: 128 MB提交: 230  解决: 57[提交][状态][讨论版] 题目描述 逸夫楼的大厅的地面有10行10列的石砖,我们用坐标(x,y)来 ...

  6. 通过编写串口助手工具学习MFC过程——(二)通过“打开串口”按钮了解基本操作

    通过编写串口助手工具学习MFC过程 因为以前也做过几次MFC的编程,每次都是项目完成时,MFC基本操作清楚了,但是过好长时间不再接触MFC的项目,再次做MFC的项目时,又要从头开始熟悉.这次通过做一个 ...

  7. “程序包com.sun.tools.javac.util不存在” 问题解决

    最近工作中在编译打包项目的时候遇到了如标题所示的问题,报这个错误的类是 com.sun.tools.javac.util.Pair.问题很诡异,在Idea可以导入此类,项目启动运行也很正常,但就是在打 ...

  8. js日期格式验证

    js日期格式验证 <input type="text" maxLength='10' onkeyup='checkDate(this.value,jQuery(this)); ...

  9. 执行npm publish 报错:401 Unauthorized - PUT https://registry.npmjs.org/kunmomotest - You must be logged in to publish packages.

    前言 执行npm publish 报错:401 Unauthorized - PUT https://registry.npmjs.org/kunmomotest - You must be logg ...

  10. vue项目1-pizza点餐系统10-axios实现登陆

    一.登陆思路 从数据库中拿到数据,每个用户信息都是一个对象,需要用数组存储对象信息,然后对比输入的用户信息,如果匹配成功就跳转到home主页,否则提示用户或密码错误. 二.具体操作 1.导入axios ...