原博文地址:http://www.cnblogs.com/nobadfish/articles/5244637.html

原论文名叫Byeond bags of features:Spatial Pyramid Matching for Recognizing Natural Scene Categories.

这篇文章的中心思想就是基于词袋模型+金字塔结构的识别算法。首先简单介绍词袋模型。

1.词袋模型

Bag of words模型也成为“词袋”模型,在最初多是用来做自然语言处理,Svetlana在进行图片分类时,使用了“词袋”模型。词袋模型的主要思想是利用每一个“word”的频率作为特征来分类,忽略它的单词顺序和语法、句法等要素。

在图像分类应用时,图像每一个提取出来的特征被当做一个单词来考虑,那么一张图片就是一篇文章的,只不过这个文章是由图片特征组成,在此我们并不考虑特征的前后顺序。

Bag Of Words 主要有两步,第一步基础特征提取,第二步,字典生成(高级特征),最后一步,分类器分类。

1.1基础特征提取

Svetlana在此篇论文中选取的基础特征是SIFT算子,每一个SIFT点会提取一个128维的特征向量。SIFT特征点的提取,和特征向量的计算在其他的博客有所介绍不赘述,本实验代码中提取SIFT特征的代码是用的vlfeat库的vl_sift函数。

1.2 字典生成

基础特征提取之后,我们就获得到了“word”,由于word之间有一定的信息冗余和噪音干扰,并且数据量往往很大,直接用来分类可能效果并不好。因此我们需要设计一些“bag”。在此我们是通过聚类实现的,本文中的聚类方法选择的是K-means算法构造,构造的“bag”数量为400。

生成“bag”之后,我们会将“word”在各个bag中的频率作为一幅图像的特征描述向量。如下图

1.3分类器

分类器选用的是比较简单的线性SVM分类器。

2.金字塔结构

对原始的词袋模型加入金字塔结构。

典型词袋模型只是在原图上进行直方图统计,在金字塔结构中,每一层都会将图像分成不同的区域,分别统计直方图。整个金字塔空间统计出的直方图向量则为最终的特征向量,可以用来分类。示意图如图,此图为3层金字塔结构的直方图统计。

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

  1. 【CV知识学习】神经网络梯度与归一化问题总结+highway network、ResNet的思考

    这是一篇水货写的笔记,希望路过的大牛可以指出其中的错误,带蒟蒻飞啊~ 一.    梯度消失/梯度爆炸的问题 首先来说说梯度消失问题产生的原因吧,虽然是已经被各大牛说烂的东西.不如先看一个简单的网络结构 ...

  2. 【CV知识学习】early stop、regularation、fine-tuning and some other trick to be known

    深度学习有不少的trick,而且这些trick有时还挺管用的,所以,了解一些trick还是必要的.上篇说的normalization.initialization就是trick的一种,下面再总结一下自 ...

  3. 【CV知识学习】Fisher Vector

    在论文<action recognition with improved trajectories>中看到fisher vector,所以学习一下.但网上很多的资料我觉得都写的不好,查了一 ...

  4. 网络知识学习2---(IP地址、子网掩码)(学习还不深入,待完善)

    紧接着:网络知识学习1 1.IP地址    IP包头的结构如图 A.B.C网络类别的IP地址范围(图表) A.B.C不同的分配网络数和主机的方式(A是前8个IP地址代表网络,后24个代表主机:B是16 ...

  5. HTML5标签汇总及知识学习线路总结

    HTML5标签汇总,以及知识学习线路总结.

  6. 安全测试3_Web后端知识学习

    其实中间还应该学习下web服务和数据库的基础,对于web服务大家可以回家玩下tomcat或者wamp等东西,数据库的话大家掌握基本的增删该查就好了,另外最好掌握下数据库的内置函数,如:concat() ...

  7. GCC基础知识学习

    GCC基础知识学习 一.GCC编译选项解析 常用编译选项 命令格式:gcc [选项] [文件名] -E:仅执行编译预处理: -S:将C代码转换为汇编代码: -c:仅执行编译操作,不进行连接操作: -o ...

  8. 毕业设计预习:VHDL入门知识学习(一) VHDL程序基本结构

    VHDL入门知识学习(一) VHDL程序基本结构 简介 VHDL程序基本结构 简介 概念: HDL-Hardware Description Language-硬件描述语言-描述硬件电路的功能.信号连 ...

  9. 「日常训练&知识学习」单调栈

    这几天的知识学习比较多,因为时间不够了.加油吧,为了梦想. 这里写几条简单的单调栈作为题解记录,因为单调栈的用法很简单,可是想到并转化成用这个需要一些题目的积淀. 相关博客参见:https://blo ...

随机推荐

  1. 最简单的SPA(单页应用)实现

    $(function(){ var replacePage = function(href, onFinish){ $.get(href,{},function(raw){ var data = ra ...

  2. 通信协议------Http、TCP、UDP

    CP   HTTP   UDP: 都是通信协议,也就是通信时所遵守的规则,只有双方按照这个规则“说话”,对方才能理解或为之服务. TCP   HTTP   UDP三者的关系: TCP/IP是个协议组, ...

  3. Laravel5.1学习笔记23 Eloquent 序列化

    Eloquent: Serialization Introduction Basic Usage Hiding Attributes From JSON Appending Values To JSO ...

  4. http协议对照表

    1**:请求收到,继续处理 2**:操作成功收到,分析.接受 3**:完成此请求必须进一步处理 4**:请求包含一个错误语法或不能完成 5**:服务器执行一个完全有效请求失败 100——客户必须继续发 ...

  5. C++为什么抓不到除0错“异常”?

    http://blog.csdn.net/nanyu/article/details/6475555 有人问这个问题: try { std::cout << 10/0 << s ...

  6. CAD把自定义实体,变成普通实体(com接口VB语言)

    主要用到函数说明: MxDrawXCustomEvent::MxDrawXCustomEntity::explode 把自定义实体,变成普通实体,详细说明如下: 参数 说明 LONGLONG lEnt ...

  7. java求两个集合的交集和并集,比较器

    求连个集合的交集: import java.util.ArrayList; import java.util.List; public class TestCollection { public st ...

  8. 微服务网关从零搭建——(九)网关部署到linux服务器

    环境准备 公司电脑已安装core环境所以此处略过core环境安装 可参看此处 consul安装 如果没有wget命令 执行以下命令 yum install wget 下载consul wget htt ...

  9. Linux常用命令——链接命令

    链接命令:ln ln -s [原文件] [目标文件] 命令英文原意:link 功能描述:生成链接文件 选项:-s 创建软链接,也叫符号链接 硬链接特征: 1.拥有相同的i节点和存储block块,可以看 ...

  10. share——Alpha版(内部测试版)发布

    我们产品的下载二维码: 使用说明: 后期会进行更新,文件下载位置