本文主要介绍:BOF(Bag-of-Featrures)的原理及其应用。
1.1 引言
文档分类领域有一种模型称为词袋(Bag of words)模型,它是自然语言处理与信息检索过程中的一种简化模型。在这种模型中,文本(段落或文档)被视为忽略了语法甚至语序的无序词汇集合。文本中每个单词的出现都是独立的,不依赖于其他词是否出现。词袋模型对文档分类有着重要的作用,它提出了一种基于统计的文档描述思想,这种思想首先将训练集文档中的词汇进行训练,产生含有独一无二的单词的字典。然后使用字典对目标文档进行处理,统计字典中单词在文档中出现的频率,以此构建出能够描述整个文档的描述向量(注:其中,与主题相关的词一般在文档中出现频率较高,因此可以根据词的频率,对文档进行归类)。之后就可以在此向量基础上对文档进行检索或分类操作。词袋模型虽然简单,但是高效。在文本分类中,词袋模型与 SVM 分类器、朴素贝叶斯分类器结合能得到非常好的分类效果。
1.2 算法原理
图像可以视为一种文档对象,图像中不同的局部区域或其特征可看做构成图像的词汇,其中相近的区域或其特征可以视作为一个词。这样,就能够把文本检索及分类的方法用到图像分类及检索中去。
Bag-of-Features模型仿照文本检索领域的Bag-of-Words方法,把每幅图像描述为一个局部区域/关键点(Patches/Key Points)特征的无序集合。使用某种聚类算法(如K-means)将局部特征进行聚类,每个聚类中心被看作是词典中的一个视觉词汇(Visual Word),相当于文本检索中的词,视觉词汇由聚类中心对应特征形成的码字(code word)来表示(可看当为一种特征量化过程,可理解为:码字表示聚类中心的特征矢量,如该类的平均矢量等)。所有视觉词汇形成一个视觉词典(Visual Vocabulary),对应一个码书(code book)(<