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. Android targetSdkVersion 原理

    前几天 Google 官方发布文章解析 compileSdkVersion.minSdkVersion 以及 targetSdkVersion 的含义,以及合理设置各个值的意义,原文 Picking ...

  2. 数据结构(c语言版)文摘

    第一章  绪论 数据结构:是一门研究非数值计算的程序设计问题中计算机的操作对象以及它们之间的关系和操作等的学科. 数据:是对客观事物的符号表示,在计算机科学中是指所有能输入到计算机中并被计算机程序处理 ...

  3. Lamda表达式,map和集合操作

    1.Lamda表达式,map快速获取对象的某一个属性生成集合 List<String> elementSlugs = elementInstanceBOList.stream().map( ...

  4. pv和pvc状态

    原文地址:https://kubernetes.cn/topics/46 API Server 和 PVController API Server: 这个组件提供对API的支持,响应REST操作,验证 ...

  5. 6 scrapy框架之分布式操作

    分布式爬虫 一.redis简单回顾 1.启动redis: mac/linux:   redis-server redis.conf windows: redis-server.exe redis-wi ...

  6. 企业搜索引擎开发之连接器connector(二十)

    连接器里面衔接数据源与数据推送对象的是QueryTraverser类对象,该类实现了Traverser接口 /** * Interface presented by a Traverser. Used ...

  7. 作业 c++编写

    1.第一版本程序Prog1:+ 给定一个数组,实现数组元素求和:,具体要求:实现对一维数组(a[100])的所有元素相加运算.+ 数据准备:a)数组长度:100:b)数组数据来源:实验数据A列:1~1 ...

  8. [Erlang34]erlang.mk的源码阅读1-入门makefile

    通过erlang.mk项目,掌握基本的makefile语法,可以自己定制makefile. 1. makefile 基本规则: 1. 所有的源文件没有被编译过,则对各个源文件进行编译并进行链接,生成最 ...

  9. asp.net——上传图片生成缩略图

    上传图片生成缩略图,原图和缩略图地址一样的时候缩略图会把原图覆盖掉 /// <summary> /// 生成缩略图 /// </summary> /// <param n ...

  10. ASP.NET WebApi总结之自定义权限验证

    在.NET中有两个AuthorizeAttribute类, 一个定义在System.Web.Http命名空间下 #region 程序集 System.Web.Http, Version=5.2.3.0 ...