1、提取 特征点 、特征描述子 与 提取特征向量 之间的区别:

  (1)、特征点:指的是一张图片上比较有代表性的‘位置’,提取特征点就是把图片中这些有代表性的位置给标出来。

  

  (2)、特征描述子:当提取出特征点之后,由于特征点是图片的某个位置,为了能够进行数学计算,我们需要给这些“位置”用一个数学方法来描述,于是可以用一个向量v来表示每一个位置。而这个向量就叫做 特征描述子。

  (3)、特征向量:指的是通过对图片在像素层面上做一些变换(LBP、颜色特征、Sift、surf)之后,生成一个向量V,用这个向量就可以表示整张图片,这个向量就称为特征向量

2、理解SIFT图像检索与聚类算法的关系。

  (1)SIFT特征提取的流程:

    ①图片描述子建立:对一张图片进行特征点的提取(找到图片中有代表性的位置),并分别对这张图片中的每个特征点用特征描述子描述来描述(设这张图片有1000个特征点,每个描述子是128维向量)。

      

      

      

      算法核心思想:https://blog.csdn.net/weixin_38404120/article/details/73740612

                              https://blog.csdn.net/dcrmg/article/details/52577555

    

引入词袋模型:https://blog.csdn.net/garfielder007/article/details/51475550

      - 现在对图像库中所有图片(设有50张图片)的所有特征点(设每张图片特征点个数都为1000)进行提取并且建立描述子(这样总共有50 x 1000个描述子,且每个描述子维度为128)。而这50 x 1000 个描述子可以称为“词”

      - 现在引入 K-means 聚类算法,给这50 x 1000个描述子分成64类,即设定聚类中心为64,然后通过学习得到这50 x 1000个描述子应该各自在哪一类下。

      - 这样这64个类的每一类中都有 >不同个数;> 来自不同图片的描述子。

      - 当完成聚类后,这样64维的每一维度就相当于一个描述子集合,把每一个维度的这样的描述子集合称为“词袋

      

    ③特征向量的形成

      - 给这64为词袋建立一个对应的64维直方图。

      - 再看看一张图片中的所有特征描述子都对应在64维词袋哪些词袋中,只要某一个维度的词袋包含图片的一个特征描述子,那么在直方图上的对应维度就加一,知道这一张图片中的所有特征点描述子都遍历完全。这样最终的64维直方图就是这张图片的特征向量。

      

  (2)、图像检索:即比较 待检索 与 图片库中每张图片间 的特征向量距离,设定一个阈值,小于这个阈值的图片就检索出来。

by 小恶魔

———————————————————————————————————————————————————————————————————————————————

【第2次会议记录_2018.5.27】—— [ 算法原理 ]:手工特征提取的概念问题。(by_wanghao)的更多相关文章

  1. OpenCV学习笔记(27)KAZE 算法原理与源码分析(一)非线性扩散滤波

    http://blog.csdn.net/chenyusiyuan/article/details/8710462 OpenCV学习笔记(27)KAZE 算法原理与源码分析(一)非线性扩散滤波 201 ...

  2. 字符串匹配--kmp算法原理整理

    kmp算法原理:求出P0···Pi的最大相同前后缀长度k: 字符串匹配是计算机的基本任务之一.举例,字符串"BBC ABCDAB ABCDABCDABDE",里面是否包含另一个字符 ...

  3. 广告系统中weak-and算法原理及编码验证

    wand(weak and)算法基本思路 一般搜索的query比较短,但如果query比较长,如是一段文本,需要搜索相似的文本,这时候一般就需要wand算法,该算法在广告系统中有比较成熟的应 该,主要 ...

  4. geohash 算法原理及实现方式

    转自:http://www.cnblogs.com/dengxinglin/archive/2012/12/14/2817761.html geohash 算法原理及实现方式 1.geohash 特点 ...

  5. Bagging与随机森林算法原理小结

    在集成学习原理小结中,我们讲到了集成学习有两个流派,一个是boosting派系,它的特点是各个弱学习器之间有依赖关系.另一种是bagging流派,它的特点是各个弱学习器之间没有依赖关系,可以并行拟合. ...

  6. RSA算法原理

    一直以来对linux中的ssh认证.SSL.TLS这些安全认证似懂非懂的.看到阮一峰博客中对RSA算法的原理做了非常详细的解释,看完之后茅塞顿开,关于RSA的相关文章如下 RSA算法原理(一) RSA ...

  7. LruCache算法原理及实现

    LruCache算法原理及实现 LruCache算法原理 LRU为Least Recently Used的缩写,意思也就是近期最少使用算法.LruCache将LinkedHashMap的顺序设置为LR ...

  8. MySQL索引背后的数据结构及算法原理【转】

    本文来自:张洋的MySQL索引背后的数据结构及算法原理 摘要 本文以MySQL数据库为研究对象,讨论与数据库索引相关的一些话题.特别需要说明的是,MySQL支持诸多存储引擎,而各种存储引擎对索引的支持 ...

  9. OpenGL学习进程(13)第十课:基本图形的底层实现及算法原理

        本节介绍OpenGL中绘制直线.圆.椭圆,多边形的算法原理.     (1)绘制任意方向(任意斜率)的直线: 1)中点画线法: 中点画线法的算法原理不做介绍,但这里用到最基本的画0<=k ...

随机推荐

  1. 使用寄存器点亮LED等

    最基本的输入功能是检测外部输入电平,如把 GPIO引脚连接到按键,通过电平高低区分按键是否被按下. 基本结构分析 2. P-MOS管和 N-MOS管 main.c中的main函数

  2. [原创]Cef3 2623.1397 开启ppapi flash插件

    最近发现WKE播放Flash或者游戏时会有很多BUG,例如视频无法播放或者是Stage3D无法使用等问题. 经过研究应该是精简版本导致的,所以决定尝试使用CEF3移植入SOUI,但是DEMO中版本有点 ...

  3. 高性能mysql第三版(文摘)

    第1章 mysql架构与历史 1.1处理和存储相分离,用户可以选择合适的存储引擎 1.2并发控制 表锁:开销小 行级锁:开销大 1.3事务 acid特性:原子性,一致性,隔离性,持久性 1.4 多版本 ...

  4. PL/SQL Developer 窥探事务

    一次登录代表一个连接 一个SQL Window 代表一个会话(session),有唯一的SID 事务(transaction) 由 insert .update 或者 delete 开启 由 comm ...

  5. .NET基础 (19)多线程

    多线程编程的基本概念1 请解释操作系统层面上的线程和进程2 多线程程序在操作系统里是并行执行的吗3 什么是纤程 .NET中的多线程1 如何在.NET程序中手动控制多个线程2 如何使用.NET的线程池3 ...

  6. devexpress停靠菜单

    dxDockSite1.Width := 27; dxDockPanel1.DockTo(dxDockSite1, dtLeft, 0); dxDockPanel2.DockTo(dxDockPane ...

  7. 由于没有公钥,无法验证下列签名 Ubuntu

    问题:执行 apt-get update 时错误 W: GPG 错误:https://apt.dockerproject.org ubuntu-trusty InRelease: 由于没有公钥,无法验 ...

  8. 记一次Angular2环境搭建及My First Angular App小demo呈现

    参考连接?不如说是照搬链接.AngularJs官网地址快速起步地址. 对于一个一直只是用jq,偶尔学习点Knockout js,了解一点mvvm结构的前端来说,学习Angular2还是有点困难的.好了 ...

  9. Devexpress Winform初学笔记

    作为一个软件开发人员来说,得有自己的博客,可以用来ZB,哈哈!玩笑话..... 写博客并不仅仅是用来ZB的,他可以用来记录你在技术道路上探索遇到的坎,当然也有提高逼格的次然因素啦!小弟刚入博客园不久, ...

  10. roadflow企业微信工作流程的配置与使用

    1.在您的微信后台添加应用 应用地址: 待办事项 :http://demo.roadflow.net/RoadFlowCore/Mobile/WaitTask 已办事项:http://demo.roa ...