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. 深入浅出谈数据挖掘zz

    编者的话:本文对数据挖掘概念的产生,数据挖掘与常规数据分析的主要区别,所能解决的几大类问题和所应用的领域都有着非常清晰的论述.作者在此篇文章中认为数据挖掘最重要的要素是分析人员的相关业务知识和思维模式 ...

  2. python 命令行工具 fire

    简介 A library for automatically generating command line interfaces. Python Fire is a library for auto ...

  3. (转)【经验之谈】Git使用之Windows环境下配置

    原文地址:http://www.cnblogs.com/xishuai/p/3590434.html 前言 安装 配置 关于git使用的几个问题 后记 关于代码托管,以前用过vss和svn,看博客或论 ...

  4. CWnd::MoveWindow 详解

    CWnd::MoveWindow void MoveWindow( int x, int y, int nWidth, int nHeight, BOOL bRepaint = TRUE ); voi ...

  5. CodeForces - 669D——(思维题)

    Little Artem is fond of dancing. Most of all dances Artem likes rueda — Cuban dance that is danced b ...

  6. POJ 3685 Matrix (二分套二分)

    Matrix Time Limit: 6000MS   Memory Limit: 65536K Total Submissions: 8674   Accepted: 2634 Descriptio ...

  7. 解决PL/SQL Developer连接数据库时出现 “ORA-12541:TNS:无监听程序”错误

    在用PL/SQL Developer连接数据库时出现“ORA-12541:TNS:无监听程序”错误. 1.检查listener.log日志发现下面错误:TNSLSNR for 32-bit Windo ...

  8. 使用 log4j 打印日志

    开发阶段:发现程序的问题,排错 产品阶段:记录程序运行的状况 Maven中配置依赖 通过配置文件输出日志的格式,输送的位置等 一.入门实例 1.新建一个JAva工程,导入包log4j-1.2.17.j ...

  9. Android-MediaPlayer-音频播放-异步准备

    在上一篇博客,Android-MediaPlayer-音频播放-普通准备,介绍了普通准备的播放: 一般在开发中,要使用异步准备比较好,因为准备是要去准备硬件来播放,是耗性能的 异步准备和普通准备的区别 ...

  10. [LeetCode 题解]: Rotate List

    Given a list, rotate the list to the right by k places, where k is non-negative. For example:Given 1 ...