基于视词袋模型的场景识别

一、问题

场景内容的自动识别是计算机视觉领域的一个重要问题,对目标识别、检测基于内容的图像检索等计算机视觉方面的应用具有重要意义,最近12306的图片验证码系统就可以看做一个场景识别的很好例子,由此可见场景识别在我们的日常生活中的意义重大。

本实验的主要内容是利用词袋模型对场景进行识别分类。

图1-1几种常见场景

(左上为卧室,右上为厨房)

二、算法介绍

2.1 基本词袋模型(Bag of words)

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

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

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

2.1.1基础特征提取

我们选取的基础特征是SIFT算子,每一个SIFT点会提取一个128维的特征向量。SIFT特征点的提取,和特征向量的计算已经在之前的实验中有所介绍,在此不做赘述。

2.1.2 字典生成

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

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

图 2-1 词袋模型示意图

2.1.3 分类器分类

实验中选择了两种分类器,并对结果进行了比较。

1)      K近邻法(K-NN)

K近邻法(k-NN)是一种基本的分类方法,示意图如图(2-2)。设训练集 其中, 为训练样本个数 , 为表示第 个训练样本的特征词频次向量, 为其对应的类别(类别的个数与样本个数没有直接联系)。

图 2-2 K近邻示意图

根据给定的距离度量(如欧式距离),在训练 中找出与输入实例 距离最近的 个点,将这 个点的集合记为 ,然后在里面选择出现最多的样本类。影响KNN算法效率的关键点主要是距离度量公式的选择和K值的选取两个方面。

2)      线性SVM分类器

支持向量机是一种二分类问题,它的基本模型是定义在特征空间上的间隔最大的线性分类器,间隔最大使它有别于感知机;支持向量机的学习策略是间隔最大化。

分类作为数据挖掘领域中一项非常重要的任务,它的目的是学会一个分类函数或分类模型(或者叫做分类器),该模型能把数据库中的数据项映射到给定类别中的某一个,从而可以用于预测未知类别。将要介绍的支持向量机算法便是一种分类方法。

假设给定一个特征空间上的训练数据集

其中, , 为第 个特征向量,也称为实例, 为 的类标记,当 时,称 为正例;当 时,称 为负例; 称为样本点,再假设训练数据集是线性可分的。

通过间隔最大化学习得到的分类超平面为:

以及相应的分类决策函数

2.2 金字塔词袋模型

本实验参考了Svetlana对词袋模型的改进方法,对原始的词袋模型加入金字塔结构。

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

图2-3金字塔结构直方图统计

在本实验中,字典特征M=400,则当level=2时,特征向量为400*(1+4+16)=8400维向量。

五、参考文献

[1]  SvetlanaLazebnik, CordeliaSchmid, Jean Ponce. Beyond Bags of Features: spatial PyramidMatching for Recognizing Natural Scene Categories. CVPR.2006.

[2]  李航,《统计学习方法》.

[3]  [美] NelloCristianini/ John Shawe-Taylor,《支持向量机导论》.

[4]  http://www.vlfeat.org/overview/hog.html.

[5]  http://en.wikipedia.org/wiki/Bag_of_words_model

基于视词袋模型的场景识别相关推荐

  1. 视觉SLAM回环检测、词袋模型和视觉位置识别--论文记录和实验简析

    一.传统方法部分(词袋模型,bag of words,BoW) 1. 预先在环境中采集足够多的图像或者所有位置的图像(成千上万张图片)之后构建视觉词汇表 参考论文:2012年的TRO顶刊 Gálvez ...

  2. 基于SIFT+Kmeans+SVM的场景识别,参数需注意的问题(Matlab实现)

    具体细节请参考我的论文 http://download.csdn.net/detail/m0_37393277/9895391 1.试验目的: 实现20类的建筑图片分类. 2.实现方法及正确率: 可参 ...

  3. 计算机视觉:场景识别(Scene Recognition)

    计算机视觉:场景识别(Scene Recognition) 场景识别 图像分类 特征提取 词袋模型 集成学习分类器 算法设计 结果分析 总结与展望 总结 展望 完整程序请移步至此链接下载 场景识别 在 ...

  4. 用词袋(bag of word)实现场景识别

    前段时间在standford university的计算机视觉:算法与应用这门课上做了一个小作业--利用词袋实现场景识别(Scene recognition with bag of words),下面 ...

  5. 计算机视觉识别游戏人物,基于机器视觉的室内人物检测与场景识别

    摘要: 室内环境下的场景理解是室内移动机器人必须具备的能力之一,随着全球服务机器人行业的兴起,半结构化环境下的室内场景理解成为计算机视觉领域的研究热点,也是一个难点,其主要体现在室内环境的复杂性,识别 ...

  6. 作为SLAM中最常用的闭环检测方法,视觉词袋模型技术详解来了

    摘自:https://mp.weixin.qq.com/s/OZnnuA31tEaVt0vnDOy5hQ 作为SLAM中最常用的闭环检测方法,视觉词袋模型技术详解来了 原创 小翼 飞思实验室 今天 基 ...

  7. 论文阅读:基于多模态词向量的语句距离计算方法

    论文信息 华阳. 基于多模态词向量的语句距离计算方法[D].哈尔滨工业大学,2018. 1.主要工作 简述语句间的距离问题:自然语言处理任务是度量文本间的距离:不同阶段语言学习的难度可以抽象为距离,本 ...

  8. ICCV 2019 | 视频综合理解:行为识别、场景识别以及视频综述

    点击我爱计算机视觉标星,更快获取CVML新技术 本文经作者授权转载自知乎: https://zhuanlan.zhihu.com/p/91986833 未经许可,禁止二次转载. 导语:计算机视觉领域顶 ...

  9. 自动驾驶系统进阶与项目实战(四)自动驾驶高精度地图构建中的三维场景识别和闭环检测

    自动驾驶系统进阶与项目实战(四)自动驾驶高精度地图构建中的三维场景识别和闭环检测 闭环检测(loop-closure detection)是SLAM中非常关键的一部分,当然也是自动驾驶高精度地图(HD ...

最新文章

  1. 三十八、页面分配策略
  2. 远看像乱序执行,近看是内存屏障的 BUG 是如何解决的?
  3. 强行删除文件 windwos10_如何彻底删除 Windows 当中的顽固文件?
  4. 5.7 echo:显示一行文本
  5. django的orm指定字段名,表名 verbose_name_plural
  6. Android 应用开发(40)---TextView(文本框)详解
  7. 单片机学校实训老师上课需要的工具以及源码分享
  8. 郑州大学远程教育c语言程序设计答案,郑州大学远程教育C语言考试试卷.doc
  9. oracle查询多个加锁,解析oracle对select加锁的方法以及锁的查询 转
  10. 归并排序(包含逆序数对的个数51Nod1019)
  11. 通过IP查询地址之纯真IP数据库
  12. oracle11 odac,oracle 11g odac 下载
  13. java 生成分页sql_DataGrid连接Access的快速分页法——动态生成SQL语句
  14. 用python从gbff文件中提取cds序列
  15. 最全的有道云笔记实用功能大盘点!PS:遇到优质的文章想收藏下来怎么办?在这里您就可以找到答案!
  16. 苹果共享文件服务器无效,苹果发布解决方案指导用户处理macOS无法共享访问Windows的问题...
  17. 新闻事件脉络挖掘思路
  18. c++ 数组置0_鸣小亮C语言笔记(5)——数组
  19. 阿里云安装iis步骤
  20. linux环境安装mysql8.0以及使用Navicat连接Linux中的mysql

热门文章

  1. 开发那些坑之使用百川趣拍sd集成真实项目
  2. python编程基础—类与对象
  3. 华为HCIE 数通认证 基础必学GVRP协议是什么
  4. uni-app 父传子、子传父、路径传参、本地存储
  5. 强化学习入坑之路04
  6. 【金猿人物展】深演智能黄晓南:在数字化营销的趋势下,智能和算法将重塑营销价值的评估标准...
  7. Exception in thread main org.hibernate.TransientObjectException: object references an unsaved tran
  8. 批量挖掘SRC思路与实践一
  9. HTML5实现动态视频背景
  10. 桌面右下角任务栏图标消失问题解决