1 基于内容的图像检索

在大型图像数据库上,CBIR(Content-Based Image Retrieval,基于内容的图像检索) 技术用于检索在视觉上具相似性的图像。这样返回的图像可以是颜色相似、纹理相 似、图像中的物体或场景相似;总之,基本上可以是这些图像自身共有的任何信息。

对于高层查询,比如寻找相似的物体,将查询图像与数据库中所有的图像进行完全 比较(比如用特征匹配)往往是不可行的。在数据库很大的情况下,这样的查询方 式会耗费过多时间。在过去的几年里,研究者成功地引入文本挖掘技术到 CBIR 中 处理问题,使在数百万图像中搜索具有相似内容的图像成为可能。

从文本挖掘中获取灵感——矢量空间模型

矢量空间模型是一个用于表示和搜索文本文档的模型。我们将看到,它基本上可以 应用于任何对象类型,包括图像。该名字来源于用矢量来表示文本文档,这些矢量 是由文本词频直方图构成的 1。换句话说,矢量包含了每个单词出现的次数,而且在

注 1: 经常可以看到用“术语”替代“词”,两者在矢量空间模型中表达的意义相同。

其他别的地方包含很多 0 元素。由于其忽略了单词出现的顺序及位置,该模型也被 称为 BOW 表示模型。

通过单词计数来构建文档直方图向量 v,从而建立文档索引。通常,在单词计数时 会忽略掉一些常用词,如“这”“和”“是”等,这些常用词称为停用词。由于每篇 文档长度不同,故除以直方图总和将向量归一化成单位长度。对于直方图向量中的 每个元素,一般根据每个单词的重要性来赋予相应的权重。通常,数据集(或语料 库)中一个单词的重要性与它在文档中出现的次数成正比,而与它在语料库中出现 的次数成反比。

2 视觉单词

将文本挖掘技术应用到图像中,我们首先需要建立视觉等效单词;这通常可以 采用 2.2 节中介绍的 SIFT 局部描述子做到。它的思想是将描述子空间量化成一些典 型实例,并将图像中的每个描述子指派到其中的某个实例中。这些典型实例可以通 过分析训练图像集确定,并被视为视觉单词。所有这些视觉单词构成的集合称为视 觉词汇,有时也称为视觉码本。对于给定的问题、图像类型,或在通常情况下仅需 呈现视觉内容,可以创建特定的词汇。

从一个(很大的训练图像)集提取特征描述子,利用一些聚类算法可以构建出视觉

单词。聚类算法中最常用的是 K-means1,这里也将采用 K-means。视觉单词并不高 端,只是在给定特征描述子空间中的一组向量集,在采用 K-means 进行聚类时得到的 视觉单词是聚类质心。用视觉单词直方图来表示图像,则该模型便称为 BOW 模型。

3 图像索引

3.1 建立数据库

在索引图像前,我们需要建立一个数据库。这里,对图像进行索引就是从这些图像中 提取描述子,利用词汇将描述子转换成视觉单词,并保存视觉单词及对应图像的单词 直方图。从而可以利用图像对数据库进行查询,并返回相似的图像作为搜索结果