计算视觉——Bag of features:图像检索
一、BOW模型简介
Bag-of-words模型应用于文档表示:
在信息检索中,BOW模型假定对于一个文档,忽略它的单词顺序和语法、句法等要素,将其仅仅看作是若干个词汇的集合,文档中每个单词的出现都是独立的,不依赖于其它单词是否出现。 也就是说,文档中任意一个位置出现的任何单词,都不受该文档语意影响而独立选择的。
Bag-of-features模型应用于图像:
采用k -means 聚类方法对所提取的大量特征进行无监督聚类,将具有相似性较强的特征归入到一个聚类类别里,定义每个聚类的中心即为图像的“单词”,聚类类别的数量即为整个视觉词典的大小。这样,每个图像就可以由一系列具有代表性的视觉单词来表示, 在得到每类图像的视觉单词袋表示之后,便可以应用这些视觉单词来构造视觉词典,然后对待分类图像进行同样方法的特征提取和描述,最后将这些特征对应到视觉词典库中进行匹配,去寻找每个特征所对应的最相似的视觉单词,得到直方图统计表示,然后应用分类器进行分类。这样就将应用于文档处理的BOW模型思想成功地移植到了图像处理领域。
二、 Bag of features基础流程
图像库–>sift特征提取–>局部特征描述子–>K-means算法聚类–> 视觉词典
2.1 特征提取
运用sift算子提取图像特征。
2.2 学习"视觉词典"
利用K-Means算法构造单词表。用K-means对第二步中提取的N个SIFT特征进行聚类,K-Means算法是一种基于样本间相似性度量的间接聚类方法,此算法以K为参数,把N个对象分为K个簇,以使簇内具有较高的相似度,而簇间相似度较低。聚类中心有k个(在BOW模型中聚类中心我们称它们为视觉词),码本的长度也就为k,计算每一幅图像的每一个SIFT特征到这k个视觉词的距离,并将其映射到距离最近的视觉词中(即将该视觉词的对应词频+1)。完成这一步后,每一幅图像就变成了一个与视觉词序列相对应的词频矢量。
2.3 将输入的图像,根据TF-IDF转化成视觉单词的频率直方图
在文本检索中,不同的单词对文本检索的贡献有差异。运用到图像检索中也是同样的道理,每张图片都具有的共性特征的权重应该被降低。
投票值的大小也就是直方图上柱体的高度。
-
TF-IDF的主要思想是:如果某个单词在一篇文章中出现的频率TF高,并且在其他文章中很少出现,则认为此词或者短语具有很好的类别区分能力,适合用来分类。
-
TF是词频(Term Frequency)
词频(TF)表示词条(关键字)在文本中出现的频率。
其中 ni,j 是该词在文件 dj 中出现的次数,分母则是文件 dj 中所有词汇出现的次数总和; -
IDF是逆向文件频率(Inverse Document Frequency)
逆向文件频率 (IDF) :某一特定词语的IDF,可以由总文件数目除以包含该词语的文件的数目,再将得到的商取对数得到。如果包含词条t的文档越少, IDF越大,则说明词条具有很好的类别区分能力。
|D| 是语料库中的文件总数。