Print

发布时间: 2016-09-25
摘要点击次数:
全文下载次数:
DOI: 10.11834/jig.20160903
2016 | Volumn 21 | Number 9




    图像分析和识别    




  <<上一篇 




  下一篇>> 





哈希编码结合空间金字塔的图像分类
expand article info 彭天强1, 栗芳2
1. 河南工程学院计算机学院, 郑州 451191;
2. 河南图像识别工程技术中心, 郑州 450002

摘要

目的 稀疏编码是当前广泛使用的一种图像表示方法,针对稀疏编码及其改进算法计算过程复杂、费时等问题,提出一种哈希编码结合空间金字塔的图像分类算法。 方法 首先,提取图像的局部特征点,构成局部特征点描述集。其次,学习自编码哈希函数,将局部特征点表示为二进制哈希编码。然后,在二进制哈希编码的基础上进行K均值聚类生成二进制视觉词典。最后,结合空间金字塔模型,将图像表示为空间金字塔直方图向量,并应用于图像分类。 结果 在常用的Caltech-101和Scene-15数据集上进行实验验证,并和目前与稀疏编码相关的算法进行实验对比。与稀疏编码相关的算法相比,本文算法词典学习时间缩短了50%,在线编码速度提高了1.3~12.4倍,分类正确率提高了1%~5%。 结论 提出了一种哈希编码结合空间金字塔的图像分类算法,利用哈希编码代替稀疏编码对局部特征点进行编码,并结合空间金字塔模型用于图像分类。实验结果表明,本文算法词典学习时间更短、编码速度更快,适用于在线词典学习和应用。

关键词

哈希编码; 空间金字塔匹配模型; 稀疏编码; 二进制K均值聚类; 图像分类

Image classification algorithm based on hash codes and space pyramid
expand article info Peng Tianqiang1, Li Fang2
1. Department of Computer Science and Engineering, Henan Institute of Engineering, Zhengzhou 451191, China;
2. Henan Image Recognition Engineering Center, Zhengzhou 450002, China
Supported by: National Natural Science Foundation of China(61301232)

Abstract

Objective Sparse coding is widely used to represent images. However, this method and its improved algorithms require complex computation and long running times, among other drawbacks. An image classification algorithm, based on hash codes and space pyramids, is proposed to solve these issues. Method The algorithm consists of four steps. First, extract local feature points from the images. Second, learn binary auto-encoder hashing functions, which map the local feature points into hash codes. Third, perform binary k-means cluster on the binary hash codes and generate the binary visual vocabularies. Finally, combine with a spatial pyramid matching model, and represent the image by the histogram vector of the space pyramid, which is used for image classification. Result In order to verify the efficiency of the proposed algorithm, we used two common datasets, Caltech-101 and Scene-15. The results were compared with state-of-the-art sparse coding algorithms, which showed the time of learning vocabularies of our method was 50% left, the online encoder speed was increased 1.3~12.4 times, and the classification accuracy increased 1%~5%. We also compared the classification performance of different hash encode methods, such as PCA-ITQ and KSH. Conclusion In this paper, a novel image classification algorithm was proposed. The proposed algorithm, encoded local feature points by hash codes rather than sparse coding, and image classification was achieved with a spatial pyramid matching model. Experimental results showed that the proposed algorithm had faster learning vocabulary and encoder speed, and could be used for online vocabulary learning and other online applications.

Key words

hash codes; spatial pyramid matching model; sparse coding; binary K-means cluster; image classification

0 引 言

图像分类是计算机视觉领域中的一个重要问题,在目标识别、图像检索和视觉监控等领域中均有着广泛应用。视觉词袋(BoVW)模型[1]被广泛应用于图像分类中,但BoVW模型未考虑局部特征之间的空间关系,这严重限制了该方法的图像表示能力。文献[2]提出了一种基于空间金字塔匹配(SPM)模型的BoVW, 首先将图像在空间上进行不同尺度的划分,然后在每个尺度上将各个图像子块表示为直方图向量,最后将每个尺度的向量进行组合,得到图像的空间金子塔向量表示。

早期BoVW模型主要采用硬分配策略,选择词典中与局部特征最近的视觉单词为量化结果,但是这种量化方式造成信息损失较大。文献[3]提出了一种软分配策略,让局部特征与多个视觉词汇相关联,降低量化误差,提高编码能力。为了提高编码能力,Yang等人[4]采用稀疏编码(SC)方法对图像局部特征进行量化,将局部特征表示为过完备词典的稀疏表示。通过对稀疏编码进一步深入研究,Yu等人[5]在图像稀疏表示加入局部性,并提出了局部约束线性编码(LLC)以保证相近的局部特征具有相近的编码,提高了局部特征的表示精度。文献[6]在稀疏编码的基础上,加入稀疏系数非负性约束并加入保持局部相似性信息的优化目标,提出了拉普拉斯非负稀疏编码(LNNSC),在图像分类中取得了不错的效果。文献[7]在LLC基础上进行改进,提出了非负稀疏局部线性编码(NSLLC)。文献[8]在NSLLC基础上,引入Fisher判别约束准则,提出了基于Fisher判别约束的非负稀疏局部线性编码模型,提高了图像的分类性能。以上这些与稀疏编码相关的算法均以局部特征点重构误差最小化为目标,且后续改进算法加入了保持局部相似性信息,即相似的局部特征点应具有相近的稀疏编码。这些与稀疏编码相关的算法,虽然提高了对局部特征的表示精度,但需要反复迭代求得过完备词典,计算过程复杂、费时。

针对与稀疏编码相关算法计算过程复杂的问题,提出了利用哈希编码代替稀疏编码对局部特征点进行编码的思想。局部敏感哈希[9]可以将相似的对象映射为相似的编码,特别地,自编码哈希[10]的哈希函数的构造目标是哈希编码与原样本点的重构误差最小,与SC[4]的优化目标一致。由于哈希编码不具有稀疏性,利用空间金字塔视觉词袋模型表示图像,提出了一种哈希编码结合空间金字塔的图像分类算法。首先提取图像的局部特征点,构成局部特征点描述集;其次,学习自编码哈希函数,将局部特征点表示为二进制哈希编码;然后,在二进制哈希码的基础上进行K均值聚类生成二进制视觉词典;最后,结合空间金字塔模型,将图像表示为空间金字塔直方图向量,并应用于图像分类。本文方法将局部特征点进行哈希编码,提高了编码速度和精度,并考虑局部特征之间的空间信息,将图像表示为空间金字塔直方图向量,在图像分类中达到了不错的分类效果。

1 相关工作

1.1 稀疏编码

稀疏编码[4]将图像的局部特征表示为过完备词典的几个基向量的线性组合。给定局部SIFT(scale-invariant feature transform)特征点构成的集合X=[x1, …, xM]∈RD×M,需要求解过完备词典V和局部特征点的稀疏表示系数um, m=1, 2, …, M,其目标为用过完备词典的基向量重构局部特征集,优化约束为

$\begin{array}{l} \;\;\;\;\;\;\;\mathop {\min }\limits_{U,V} {\sum\limits_{m = 1}^M {\left\| {{\boldsymbol{x}_m} - {\boldsymbol{u}_m}\boldsymbol{V}} \right\|} ^2} + \lambda \left| {{\boldsymbol{u}_m}} \right|\\ {\rm{s}}{\rm{.t}}{\rm{.}}\;\;\;\;\left\| {{\boldsymbol{v}_k}} \right\| \le 1,k = 1,2, \cdot \cdot \cdot ,K \end{array}$ (1)

式中,过完备词典V=[v1, …, vK]T中基向量的个数K$ \gg $D。利用这种方式得到的编码,具有稀疏性但不能保证相似的局部特征点具有相似的稀疏编码。

局部线性编码[5],在稀疏编码的目标函数上增加了编码的局部性,优化约束为

$\begin{array}{l} \;\;\;\;\;\;\;\mathop {\min }\limits_{U,V} {\sum\limits_{m = 1}^M {\left\| {{\boldsymbol{x}_m} - {\boldsymbol{u}_m}\boldsymbol{V}} \right\|} ^2} + \lambda \left| {{\boldsymbol{d}_m} \odot {\boldsymbol{u}_m}} \right|\\ {\rm{s}}{\rm{.t}}{\rm{.}}\;\;\;\;\;\;\;\;{\boldsymbol{1}^{\rm{T}}}{\boldsymbol{u}_m} = 1,m = 1,2, \cdot \cdot \cdot ,K \end{array}$ (2)

式中,dmRK是特征点xm与词典V的每一个基向量之间的距离,用公式表示为

$\begin{array}{l} \;\;\;\;\;{\boldsymbol{d}_m} = \exp \left( {\frac{{dist\left( {{\boldsymbol{x}_m},\boldsymbol{V}} \right)}}{\sigma }} \right)\\ \;\;\;\;\;dist\left( {{\boldsymbol{x}_m},\boldsymbol{V}} \right) = \\ {\left[ {dist\left( {{\boldsymbol{x}_1},{\boldsymbol{v}_1}} \right), \cdot \cdot \cdot ,dist\left( {{\boldsymbol{x}_m},{\boldsymbol{v}_K}} \right)} \right]^{\rm{T}}} \end{array}$ (3)

式中,σ表示局部性适应权重,dmum是由向量dmum对应分量相乘得到,体现了编码的局部性。利用这种方式得到的编码,具有稀疏性且能够保证相似的局部特征点具有相似的稀疏编码。

文献[6-8]在稀疏编码和局部线性编码上的改进,其优化目标与它们都基本相同,只是加上了编码表示系数umk≥0的约束。

1.2 哈希编码

原始数据空间中的两个相邻数据点通过相同的映射后,这两个数据点在新的数据空间中仍然相邻的概率很大,而不相邻的数据点被映射为相同值的概率很小,满足这种性质的映射称为哈希函数。在不同的度量下,哈希函数的构造方法是不同的,特别地,在Cosine度量下,对应的哈希函数为h(x)=sgn(W·x),其中W是服从高斯分布的随机向量,这种哈希函数也称为二进制哈希函数。二进制哈希函数将高维数据映射到汉明空间中,为每一个对象产生二进制哈希编码,且保证在原空间中相近的对象,具有相近的二进制哈希编码。

二进制哈希方法可以分为无监督的哈希算法、半监督的哈希算法和监督的哈希算法。无监督的哈希方法不考虑数据的标签信息,包括Isotropic hashing[11]、谱哈希(SH)[12]、PCA-ITQ[13]和自编码哈希(BA)[10]等;半监督的哈希方法考虑部分的相似性信息,包括半监督哈希(SSH)[14];监督的哈希方法利用数据集的标签信息或者相似性点对信息作为监督信息,包括BRE Binary Reconstructive Embedding[15]、监督的核哈希(KSH)[16]等。上述的这些二进制哈希算法的目标是构造出能够较好地保持特征在原空间中的相似性信息且能够生成紧致哈希码的哈希函数。

BA[10]构造的哈希函数,不仅能够保持原始空间数据间的相似性,且能够保证哈希编码与原始数据之间的重构误差最小。给定哈希函数h:xz将向量xRD映射到低维汉明空间z∈{0, 1}L中的L维二进制哈希码L < D。解码函数f:zx将二进制哈希码z重新映射到RD空间以重构向量x。BA的优化目标函数为

$\begin{array}{l} \;\;\;\;\;\;\;\;\;\;E\left( {h,f} \right) = \sum\limits_{n = 1}^N {{{\left\| {{\boldsymbol{x}_n} - f\left( {h\left( {{\boldsymbol{x}_n}} \right)} \right)} \right\|}^2}} \\ {\rm{s}}{\rm{.t}}{\rm{.}}\;\;\;\;\;h\left( {{\boldsymbol{x}_n}} \right) \in {\left\{ {0,1} \right\}^L} \end{array}$ (4)

引入中间变量,上述问题的最优解等价于

$\begin{array}{l} \mathop {\min }\limits_{h,f,Z} {\sum\limits_{n = 1}^N {\left\| {{\boldsymbol{x}_n} - f\left( {{z_n}} \right)} \right\|} ^2} + \mu {\left\| {{z_n} - h\left( {{\boldsymbol{x}_n}} \right)} \right\|^2}\\ {\rm{s}}{\rm{.t}}{\rm{.}}\;\;\;\;\;\;{z_n} \in {\left\{ {0,1} \right\}^L},n = 1, \cdot \cdot \cdot ,N \end{array}$ (5)

从优化目标中可以看出,BA学习到哈希函数,可以保证数据的二进制哈希编码与数据的重构误差最小,由于哈希函数的特性,它同时也能保证相近的数据具有相近的二进制哈希码。

二进制哈希编码也具有空间上的优势,例如给定原始数据大小N=1 000 000,每个数据的维数D=300, 映射为二进制编码的长度为L=32,则在数据在原始空间中需要占用2.4 GB的存储空间,而其相应的二进制编码只需要占用4 MB的存储空间。因此,将局部特征点进行哈希编码,可以大大降低存储空间,适用于大规模图像集的后续处理(例如聚类)。

由于不同的哈希算法可以构造出不同的哈希编码,在无监督的哈希算法中PCA-ITQ的性能较优,在监督的哈希算法中,KSH的性能较优,在实验部分,将BA的哈希编码分别与PCA-ITQ、KSH的哈希编码在图像分类中的性能作对比。

1.3 空间金字塔视觉词袋模型

空间金字塔视觉词袋模型[17]将金字塔匹配原理[18]与视觉词袋模型相结合,首先将图像在不同尺度l=0, 1, …, L上进行划分为2l×2l个子区域,对于每一个子区域,分别计算所有视觉单词在该区域出现的次数,构成该区域的视觉词频直方图向量。然后将一个尺度下所有子区域的词频直方图向量按顺序组成一个向量,即

$\boldsymbol{H}_X^l = \left[ {\boldsymbol{H}_X^{l,1}, \cdot \cdot \cdot ,\boldsymbol{H}_X^{l,k}, \cdot \cdot \cdot \boldsymbol{H}_X^{l,{4^l}}} \right]$ (6)

式中, HXl表示图像X在第l尺度下的词频向量,HXl, k表示图像在第l尺度的第k个子区域的词频向量。

对于两幅图像XY,它们在第l尺度下的相似性可用直方图交叉函数来计算,即

$\begin{array}{l} \;\;\;\;\;\;\;\;\;\;\;I\left( {\boldsymbol{H}_X^l,\boldsymbol{H}_Y^l} \right) = \\ \sum\limits_{k = 1}^{{4^l}} {\sum\limits_{m = 1}^M {\min \left( {\boldsymbol{H}_X^{l,k}\left( m \right),\boldsymbol{H}_Y^{l,k}\left( m \right)} \right)} } \end{array}$ (7)

式中, HXl, k(m)表示图像X的第l尺度中第k个子区域的直方图向量的第m维的值。

根据金字塔匹配原理可知,区域划分越稠密,匹配精度越高,不同尺度需要设置不同的权重。对所有尺度的子区域进行计算,得到空间金字塔匹配核,即

${K_{{\rm{SPM}}}} = {I^L} + \sum\limits_{l = 0}^{L - 1} {\frac{1}{{{2^{L - 1}}}}\left( {{I^l} - {I^{l + 1}}} \right)} $ (8)

式中,Il是式(7)中定义的第l尺度下两幅图像的相似性。在本文中利用特征点的空间信息,用空间金字塔直方图向量表示图像。

2 基于哈希编码和空间金字塔的图像分类算法

为了应用局部特征的空间信息、提高局部特征点的编码速度和精度,提出了一种哈希编码结合空间金字塔的图像分类算法。

2.1 基于二进制哈希编码的K均值聚类算法

为了适用于大规模图像的聚类,Gong等人[19]提出了基于二进制哈希编码的K均值聚类算法。基于二进制哈希码的K-means算法的目标函数为

$\begin{array}{l} \mathop {\min }\limits_{{c_j}} \sum\limits_{i = 1}^n {\sum\limits_{j = 1}^k {{{\left\| {{\boldsymbol{x}_i} - {\boldsymbol{c}_j}} \right\|}^2}} } \\ {\rm{s}}{\rm{.t}}{\rm{.}}\;\;\;\;\;\;{\boldsymbol{c}_j} \in \left\{ { - 1,1} \right\} \end{array}$ (9)

该目标函数类似于K-means算法的目标函数,只是聚类中心和样本均为离散的二进制值。该优化可以利用EM算法来求解,首先需要将每个二进制哈希码分配到与之最近的聚类中心,对于二进制哈希码的最近邻问题,可以通过多索引哈希技术(MIH)[20]快速地进行精确的r邻域搜索。其次,更新二进制聚类中心,可以通过求解问题式(9)的最优解得到其计算公式。

仅考虑某个聚类中心cj,假设有p个样本点x1, x2, …, xp与该聚类中心最近,问题式(9)优化问题转化为

$\begin{array}{l} \;\;\;\;\;{\min _{cj}}\sum\limits_{i = 1}^p {\left\| {{\boldsymbol{x}_i} - {\boldsymbol{c}_j}} \right\|_2^2} = \\ \sum\limits_{i = 1}^p {\left\| {{\boldsymbol{x}_i}} \right\|_2^2} + \sum\limits_{i = 1}^p {\left\| {{\boldsymbol{c}_j}} \right\|_2^2} - \sum\limits_{i = 1}^p {{\boldsymbol{x}_i}\boldsymbol{c}_j^{\rm{T}}} \end{array}$ (10)

由于式(10)中第1项和第2项均为常数值,问题式(10)的最小化问题可以转化为等价的最大值问题,即

$\begin{array}{l} \;\;\;\;\;\;\mathop {\max }\limits_{{c_j}} \sum\limits_{i = 1}^p {{\boldsymbol{x}_i}\boldsymbol{c}_j^{\rm{T}}} = \mathop {\max }\limits_{{c_j}} \left( {\sum\limits_{i = 1}^p {{\boldsymbol{x}_i}} } \right)\boldsymbol{c}_j^{\rm{T}}\\ {\rm{s}}{\rm{.t}}{\rm{.}}\;\;\;\;\;\;{\boldsymbol{c}_j} \in \left\{ { - 1,1} \right\} \end{array}$ (11)

问题式(11)有解析形式的最优解,且其最优解为

${c_{jk}} = {\mathop{\rm sgn}} \left( {{m_{jk}}} \right) = \left\{ \begin{array}{l} 1\;\;\;\;\;\;\;{m_{jk}} \ge 0\\ - 1\;\;\;\;\;{m_{jk}} < 0 \end{array} \right.$ (12)

式中,mj=$\sum\limits_{i = 1}^p {{\boldsymbol{x}_i}} $表示属于聚类中心cj的所有样本xi的连和。具体过程为:

算法1:基于二进制哈希码的聚类算法(Bk-means)

给定二进制哈希码样本集X={x1, …, xn}和聚类个数k以及最大迭代次数maxInter

从样本集X中随机选择k个值,构成聚类中心的初始值C={c1, …, ck}。

for i=1, …, maxInter

for j=1, …, n//为每个样本选择与它最近的聚类中心

idx=M.Lookup1NN(xj)//按照MIH技术为聚类中心集C建立多索引哈希表M.

end for

for j=1, …, k//更新聚类中心C

计算每个聚类中心的均值mj

更新聚类中心cj=sgn(mj)

end for

if i > 1

计算本次迭代产生的聚类中心Ci与上次迭代产生的聚类中心Ci-1之间的差别,若集合Ci=Ci-1,则退出整个for循环,聚类算法结束.

end if

end for

2.2 基于哈希编码和空间金字塔的图像表示

BA生成的哈希编码与稀疏编码具有类似的特性,因此利用哈希编码表示图像的局部描述子是合理的。基于哈希编码和空间金字塔的图像表示分为视觉词典构造和向量表示两步。采用哈希编码表示局部特征描述子,并在哈希编码上进行二进制K均值聚类生成视觉词典。在构建视觉词典后,结合空间金字塔模型,将图像表示为空间金字塔直方图向量。

基于哈希编码的视觉词典构造过程的主要步骤:

1)提取训练图像集的SIFT特征,得到了包含M个SIFT特征点的图像局部特征库R={r1, r2, …, ri, …, rM},其中每个点ri是一个128维的SIFT特征向量;

2)指定二进哈希编码的位数K,利用图像特征库R根据1.2节中BA算法,学习得到K个哈希函数H={h1, h2, …, hK};

3)利用K个哈希函数将特征库R映射为二进制哈希编码集B={b1, b2, …, bi, …, bM},每个哈希编码包含K位。由于自编码哈希的特性,将原始空间中距离相近的特征点映射为相近的二进制哈希码,且每个二进制哈希编码与特征点之间的重构误差最小;

4)给定聚类数目C,根据2.1节中的算法对二进制哈希编码集B进行BK-means聚类,得到的聚类中心构成了视觉词典,记为D={v1, v2, …, vc}。

从上述过程中可以看出,基于哈希编码的视觉词典的构造过程中需要学习哈希函数,将局部特征点表示为二进制哈希码,由于二进制码占内存较少,该方法适用于存储大规模的哈希编码,并在此基础上进行聚类。在二进制哈希编码上进行BK-means聚类,在每次迭代中只需要查表就可以得到与之最近的聚类中心,其时间复杂度为O(M),其中M为训练特征库中特征点的个数,而传统K-means聚类算法在此步骤中的时间复杂度为O(KM),其中K为聚类中心个数。基于哈希编码生成的视觉词典,大大减少了视觉词典的生成时间,适用于大规模图像集的视觉词典的生成。

基于哈希编码生成视觉词典后,结合空间金字塔模型,将图像进行向量表示,主要步骤为:

1)提取图像的局部特征;

2)利用已学习到的BA哈希函数H,将局部特征映射为二进制哈希编码;

3)将每个二进制哈希编码按照查表的方式映射为视觉词典D中的视觉单词;

4)按照空间金字塔匹配模型的思想,设置图像的尺度,计算每个尺度下各个子区域的视觉词直方图向量,最后将各尺度下所有子区域的直方图向量进行组合,得到图像的空间金字塔直方图向量。

这样,就得到了图像的空间金字塔直方图向量表示。

2.3 基于哈希编码和空间金字塔的图像分类算法

将基于哈希编码和空间金字塔的图像表示,应用于图像分类,其流程图如图 1所示。

图 1 基于本文算法的图像分类流程图
Fig. 1 The flow chart of image classification based on our method

在训练阶段,利用训练集学习哈希编码、构造视觉词典并训练分类器,首先提取训练图像集中各图像的SIFT特征作为训练向量集,然后利用2.2节中的方法学习哈希函数H,构造视觉词典D,并取空间金字塔尺度l=2,将图像表示为一个21×C维的空间金字塔直方图向量;最后利用图像的向量表示训练SVM分类器。

在测试阶段,给定测试图像,首先提取测试图像的SIFT特征;然后利用训练阶段学习到的哈希函数将局部特征点进行哈希编码,并映射为视觉词典D中的视觉单词,将图像进行分层分区域表示为21×C维的空间金字塔直方图向量;最后将测试图像的向量表示输入训练好的SVM分类器进行分类。

3 实验结果与分析

3.1 实验设置

为了评估本文算法的正确性和有效性,进行了实验验证。实验硬件配置为内存为8GB、i3 3.4 GHz CPU的PC,软件编程环境为Win7旗舰版,Matlab 2012。

选择在2个常用图像分类数据集上进行实验,分别是Caltech-101[21]和Scene-15[22]。这个两个数据集是图像分类性能评估的常用图像库。Caltech-101图像库,包括了101类,每类中包括31800幅图像,共9 144幅图像。在该数据集中,从每一类中挑选出30个样本作为训练图像,其余的图像构成测试集。在训练集上提取SIFT特征点,并随机挑选出二十万个特征点作为图像特征库,用于学习哈希函数以及构建视觉词典。Scene-15图像库,包括了15类,每类中包括200400幅图像,共4 485幅图像。在该数据集中,从每一类中挑选出30个样本作为训练图像,其余的图像构成测试集。在训练集上提取SIFT特征点,并随机挑选出20万个特征点作为图像特征库,用于学习哈希函数以及构建视觉词典。

为了验证本文算法在图像分类中的性能,首先,将本文方法的分类精度、词典构造时间和在线编码时间,分别与基于稀疏编码的ScSPM算法[4]和LLC算法[5]、以及在这两个算法下的改进算法NSLLC算法[7]、LNNSC算法[6]、Fisher+NSLLC算法[8]作比较。实验采用线性SVM分类器,采用“一对多”策略,对每个类别分别训练各自的SVM分类器。在这几种算法中,ScSPM算法、LLC算法和Fisher+NSLLC算法利用作者提供的源代码,并对NSLLC算法、LNNSC算法方法按照其算法流程进行了实现,以便与本文算法进行性能比较。

其次,为了验证不同哈希编码算法对分类性能的影响,将本文算法中的BA[10]哈希编码分别替换为无监督的PCA-ITQ[13]的哈希编码和监督的KSH[16]的哈希编码,并比较了这3种哈希编码在图像分类中的性能。

3.2 与稀疏编码相关算法的分类性能对比

将本文算法中哈希编码的长度设置为K=32,分别与稀疏编码相关的方法的性能作对比。

表 1给出了本文方法和与稀疏编码相关的方法在两个数据集上分类精度对比值。从表 1中可以看出,在两个数据集上,ScSPM算法分类正确率最低,因为它只考虑了编码的稀疏性;LLC算法的分类正确率略高于ScSPM算法,因为它不仅考虑了编码的稀疏性,而且还考虑了编码的局部性;NSLLC算法的分类正确率高于LLC算法,因为它在LLC算法基础上,加入表示系数的非负性约束,得到了更好地编码表示;Fisher+NSLLC算法在NSLLC的基础上,加入了Fisher判别约束准则,因此进一步提高了图像的分类正确率。LNNSC算法的分类正确率比较高,主要是它在稀疏编码的基础上,加入了保持局部相似性信息的优化目标,得到了更好的编码。本文算法的分类精度略高于LNNSC算法,因为本文利用哈希编码表示局部描述子,较好地保持了局部相似性信息,且在哈希编码的基础上又做了一次聚类,得到了区分能力更强的视觉词,并利用空间金字塔直方图表示图像,应用了局部特征点间的空间信息。

表 1 在两个数据集上不同算法的分类精度
Table 1 The classification accuracy of different methods compare on the two datasets

下载CSV
算法 Caltech101/% Scene-15/%
ScSPM 73.2 70.8
LLC 73.4 71.2
LNNSC 75.4 75.1
NSLLC 73.8 72.7
Fisher+NSLLC 74.5 75.2
本文 75.8 76.3

表 2给出了本文方法和稀疏编码相关方法在数据集Caltech-101的词典构造时间和在线编码时间的对比值。本文方法的词典构造时间包括BA哈希函数学习时间和基于二进制哈希编码的聚类时间;而其他方法的词典构造时间包括过完备词典的学习时间。本文方法的在线编码时间是将局部特征表示为哈希码的时间,其他方法的在线编码时间是将局部特征表示为稀疏码的时间。从表 2中可以看出,本文方法的词典构造时间最短,而其他与稀疏编码相关的方法词典构造时间较长,且它们的构造时间相差不大,因为与稀疏编码相关的方法均需要求解方程以得到过完备词典,只是它们的目标函数或约束条件略有不同。本文方法的在线编码时间最短,因为局部特征点的哈希编码只需要与相应的哈希函数作内积,而局部特征点的稀疏编码需要求解方程。虽然本文方法的词典构造时间与其他方法相比较短,但是仍旧用时较长,仅适合于离线训练,在3.3节考虑用其他哈希方法进行编码。

表 2 在Caltech-101上不同算法的时间对比
Table 2 The time of different methods compare on the Caltech-101 dataset

下载CSV
算法 词典构造时间/s 在线编码时间/s
ScSPM 23 176 1.120 8
LLC 27 678 0.137 9
LNNSC 27 174 0.152 1
NSLLC 27 810 0.128 1
Fisher+NSLLC 27 857 0.145 6
本文 13 265 0.096 4

3.3 不同哈希编码方法下图像分类性能对比

BA构造的哈希函数虽然满足局部相似性和重构误差最小,但是它的哈希函数学习时间太长,严重影响了其效率,不适用于在线训练。考虑用其他哈希方法来替换本文的BA哈希编码,并分析它们的性能。在无监督的哈希算法中PCA-ITQ的性能较优,在监督的哈希算法中,KSH的性能较优,因此比较在PCA-ITQ哈希编码、BA哈希编码和KSH哈希编码下,它们的分类正确率和词典生成时间、局部特征在线编码时间对比。

图 2给出了在Scene-15数据集下,取BK-means聚类的聚类个数C=1 024,不同编码位数对图像识别正确率的影响。当编码位数较小时(K=8),3种编码方法构建的视觉词典的图像分类正确率都比较低,随着编码位数的增加,其相应的图像分类正确率也随之增加。这主要因为二进制哈希的特性,随着编码长度的增加,其编码能够更好地保持局部相似性。但从图 2中也可以看出,当编码位数从32位增加到48位时,图像分类正确率增加不大,这说明了32位的编码就能够很好地描述原始特征点,若使用更加长的编码,仅仅是增加了计算复杂度。

图 2 不同哈希编码位数下图像分类正确率对比
Fig. 2 The classification accuracy compared based on different hash code bits

表 3表 4分别给出了3种哈希编码方法在两个数据集上在哈希编码长度为K=32,BK-means的聚类个数C=1 024下,3种哈希方法的视觉词典生成时间和分类正确率对比。从表 3表 4中可以看出,词典构造时间是PCA-ITQ方法用时最少,BA方法用时最长,KSH也用时较长,因为词典构造时间包括哈希函数学习时间和BK-means聚类时间,而聚类时间它们相差不大,而在哈希函数学习的过程中,PCA-ITQ方法是一种无监督的学习方法,速度最快;BA虽然是无监督的学习算法但是需要反复迭代求解哈希函数,用时最长;KSH是监督的方法,需要利用标签信息且需要求解核矩阵,因此用时也比较长。但是三者的在线编码时间相差不大,因为构造出哈希函数之后,只需要相应的内积操作就可以得到编码。KSH的分类精度最高,BA次之,PCA-ITQ方法最低,因为KSH使用了图像的标签信息,而BA和PCA-ITQ是无监督的哈希方法。

表 3 在数据集Caltech101上3种哈希方法对比
Table 3 The three hash methods compare on Caltech101

下载CSV
编码方法 词典构造时间/s 在线编码时间/s 分类精度/%
PCA-ITQ 25 0.089 93 74.6
BA 13 265 0.097 4 75.8
KSH 1 069 0.092 5 76.3

表 4 在数据集Scene-15上3种哈希方法对比
Table 4 The three hash methods compare on Scene-15

下载CSV
编码方法 词典构造时间/s 在线编码时间/s 分类精度/%
PCA-ITQ 48 0.092 5 75.4
BA 15 203 0.108 6 76.3
KSH 1 396 0.101 3 77.1

4 结 论

提出了一种哈希编码结合空间金字塔的图像分类算法,用哈希编码表示局部描述子,较好地保持了局部相似性信息,且在哈希编码的基础上又做了一次聚类,得到了区分能力更强的视觉词典,最后结合空间金字塔模型,将图像表示为空间金字塔直方图。在常用的Caltech-101和Scene-15图像分类数据集上的实验结果表明,本文算法词典学习时间更短、编码速度更快且具有较高的分类正确率,均优于现有与稀疏编码相关的方法。

在本文中考虑了不同哈希编码方法对图像分类性能的影响。在实际应用中,可以根据需要,选择无监督的哈希方法或者监督的哈希方法对局部特征点进行哈希编码,PCA-ITQ哈希编码词典生成时间最少,适用于在线视觉词典学习。下一步考虑利用深度网络学习的哈希函数对局部特征进行编码,看是否能够进一步提高分类精度。同时,也可以考虑将本文算法应用于相似图像的检索中,分析其检索性能。

参考文献

  • [1] Sivic J, Zisserman A.Video Google:a text retrieval approach to object matching in videos[C]//Proceedings of the 9th IEEE International Conference on Computer Vision.Nice, France:IEEE, 2003, 2:1470-1477.[DOI:10.1109/ICCV.2003.1238663]
  • [2] Lazebnik S, Schmid C, Ponce J.Beyond bags of features:spatial pyramid matching for recognizing natural scene categories[C]//Proceedings of 2006 IEEE Conference on Computer Vision and Pattern Recognition.New York, USA:IEEE 2006:2169-2178.[DOI:10.1109/CVPR.2006.68]
  • [3] Philbin J, Chum O, Isard M, et al.Object retrieval with large vocabularies and fast spatial matching[C]//Proceedings of 2007 IEEE Conference on Computer Vision and Pattern Recognition.Minneapolis, MN, USA:IEEE, 2007:1-8.[DOI:10.1109/CVPR.2007.383172]
  • [4] Yang J C, Yu K, Gong Y H, et al.Linear spatial pyramid matching using sparse coding for image classification[C]//Proceedings of 2009 IEEE Conference on Computer Vision and Pattern Recognition.Miami, FL, USA:IEEE, 2009:1794-1801.[DOI:10.1109/CVPR.2009.5206757]
  • [5] Wang J J, Yang J C, Yu K, et al.Locality-constrained linear coding for image classification[C]//Proceedings of 2010 IEEE Conference on Computer Vision and Pattern Recognition.San Francisco, CA, USA:IEEE, 2010:3360-3367.[DOI:10.1109/CVPR.2010.5540018]
  • [6] Li Q Q, Cao G. Image classification based on Laplacian non-negative sparse coding[J]. Computer Engineering , 2013, 39 (11) : 240–244. [ 李钱钱, 曹国. 基于拉普拉斯非负稀疏编码的图像分类[J]. 计算机工程 , 2013, 39 (11) : 240–244. DOI:10.3969/j.issn.1000-3428.2013.11.054 ]
  • [7] Zhuang L S, Gao H Y, Liu C, et al. Nonnegative sparse locally linear coding[J]. Journal of Software , 2011, 22 (S2) : 89–95. [ 庄连生, 高浩渊, 刘超, 等. 非负稀疏局部线性编码[J]. 软件学报 , 2011, 22 (S2) : 89–95. ]
  • [8] Zhang R J, Wei F S. Image scene classification based on fisher discriminative analysis and sparse coding[J]. Journal of Computer-Aided Design & Computer Graphics , 2015, 27 (5) : 808–814. [ 张瑞杰, 魏福山. 结合Fisher判别分析和稀疏编码的图像场景分类[J]. 计算机辅助设计与图形学学报 , 2015, 27 (5) : 808–814. DOI:10.3969/j.issn.1003-9775.2015.05.005 ]
  • [9] Datar M, Immorlica N, Indyk P, et al.Locality-sensitive hashing scheme based on p-stable distributions[C]//20th Annual Symposium on Computational Geometry.New York, USA:ACM, 2004:253-262.[DOI:10.1145/997817.997857]
  • [10] Carreira-Perpiñán M A, Raziperchikolaei R.Hashing with binary autoencoders[C]//Proceedings of 2015 IEEE Conference onComputer Vision and Pattern Recognition.Boston, MA, USA:IEEE, 2015:557-566.[DOI:10.1109/CVPR.2015.7298654]
  • [11] Kong W H, Li W J.Isotropic hashing[C]//Proceedings of Advances in Neural Information Processing Systems 25.Nevada, USA:NIPS, 2012:1646-1654.
  • [12] Weiss Y, Torralba A, Fergus R.Spectral hashing[C]//Proceedings of Advances in Neural Information Processing Systems 21.Vancouver BC, Canada:NIPS, 2008:1753-1760.
  • [13] Gong Y C, Lazebnik S, Gordo A, et al.Iterative quantization:a procrustean approach to learning binary codes for large-scale image retrieval[J].IEEE Transactions on Pattern Analysis and Machine Intelligence, 2013, 35(12):2916-2929.[DOI:10.1109/TPAMI.2012.193]
  • [14] Wang J, Kumar S, Chang S F.Semi-supervised hashing for large-scale search[J].IEEE Transactions on Pattern Analysis and Machine Intelligence, 2012, 34(12):2393-2406.[DOI:10.1109/TPAMI.2012.48]
  • [15] Kulis B, Darrell T.Learning to hash with binary reconstructive embeddings[C]//Proceedings of Advances in Neural Information Processing Systems 21.Vancouver BC, Canada:NIPS, 2008:1042-1050.
  • [16] Lin W, Wang J, Ji R R, et al.Supervised hashing with kernels[C]//Proceedings of IEEE Conference on Computer Vision and Pattern Recognition.Providence, RI:IEEE, 2012:2074-2081.[DOI:10.1109/CVPR.2012.6247912]
  • [17] Sheng H D, Duan H C, Kong C. Spatial pyramid Bag-of-words model for image classification based on semantic phrases[J]. Journal of Chinese Computer Systems , 2015, 36 (4) : 877–881. [ 生海迪, 段会川, 孔超. 基于语义短语的空间金字塔词袋模型图像分类方法[J]. 小型微型计算机系统 , 2015, 36 (4) : 877–881. ]
  • [18] Zhang L B, Wang C H, Xiao B H, et al. Image representation usingBag-of-phrases[J]. Acta Automatica Sinica , 2012, 38 (1) : 46–54. [ 张琳波, 王春恒, 肖柏华, 等. 基于Bag-of-phrases的图像表示方法[J]. 自动化学报 , 2012, 38 (1) : 46–54. DOI:10.3724/SP.J.1004.2012.00046 ]
  • [19] Gong Y C, Pawlowski M, Yang F, et al.Web scale photo hash clustering on a single machine[C]//Proceedings of IEEE Conference on Computer Vision and Pattern Recognition.Boston, MA, USA:IEEE, 2015:19-27.[DOI:10.1109/CVPR.2015.7298596]
  • [20] Norouzi M, Punjani A, Fleet D J.Fast search in hamming space with multi-index hashing[C]//Proceedings of 2012 IEEE Conference on Computer Vision and Pattern Recognition.Providence, RI:IEEE, 2012:3108-3115.[DOI:10.1109/CVPR.2012.6248043]
  • [21] Griffin G, Holub A, Perona P.Caltech-256 object category dataset[R].Technical Report 7694, Pasadena, CA, USA:California Institute of Technology, 2007.
  • [22] Guo W J, Zhang Y Q, Liu Y J. Image category learning based on feature words and shape model[J]. Journal of Computer-Aided Design & Computer Graphics , 2013, 25 (10) : 1467–1475. [ 郭文静, 张艳秋, 刘永进. 基于特征词及形状模型的图像类别学习[J]. 计算机辅助设计与图形学学报 , 2013, 25 (10) : 1467–1475. ]