黄 娜, 何泾沙
(北京工业大学信息学部, 北京 100124)
近年来,基于内容的图像检索(content based image retrieval, CBIR)[1-2]受到了广泛关注[3],在气象、医疗、生物建模等诸多领域都有相关应用. 随着CBIR技术的不断发展,各类应用对图像检索技术有了越来越高的要求,不仅要有可靠的准确性,还要有尽可能高的效率.
特征是图像识别与检索的基础,不同模态的图像特征从不同角度反映了图像属性,如何有效应用这些特征提高检索的准确率是一个值得研究的问题[4]. 局部特征对于描述图像的局部内容具有鲁棒性,全局特征则更适合描述图像的整体属性. 然而,局部特征在量化过程中会丢失全局的信息,而全局特征难以反映图像的内容信息. 因此,将全局特征与局部特征结合使用能够满足图像检索应用对准确性的要求. 在理想状态下,特征的维度越高所包含的信息越丰富,其在识别与检索应用中展现出的判别能力也越高,但是高维度特征同时会消耗较多时间,使准确性与效率产生矛盾.
目前,在图像识别与检索领域,已经有很多基于特征融合的研究. 韩昌刚等[5]在图像语义特征提取中采用局部二值模式(local binary pattern,LBP)纹理特征与颜色特征相融合,有效提高了语义特征的准确度. 罗元等[6]在人体面部表情识别中应用LBP局部纹理与离散余弦变换(discrete cosine transform,DCT)全局特征相结合,这种方法比单独使用DCT方法具有更高的准确性. 另外,颜色特征[7-8]、边缘特征[9]、方向梯度直方图(histogram of oriented gradient,HOG)特征[10]等也都得到广泛应用. 现在流行的词袋(bag-of-word,BoW)模型采用局部描述符对图像的关键点进行描述[11-12],包括尺度不变特征变换(scale invariant feature transform,SIFT)[13]、颜色直方图[14]特征等.
由于低级特征与高级语义特征之间存在隔阂,Yu等[15]研究了基于不同特征相结合的图像检索系统,特征组合包括SIFT与LBP、HOG与LBP等. 将2种不同的特征通过拼接的方式融合是最为简单直接的一种途径,这种方式能够保留所有的原始信息,但同时也可能导致维数灾难. Yue等[16]使用拼接的方式将颜色特征与纹理特征进行融合,并提出了一种基于融合特征的图像检索方法. Mehmood等[17]将加速不变特征(speeded up robust features,SURF)与HOG特征融合,在图像检索中实现了可观的准确性和效率. Salahuddin等[18]采用多核方法融合图像的视觉和文本特征,用以实现图像检索.
卷积神经网络自出现以来在图像应用中展现出了明显优势,并且在图像识别的相关领域有许多应用. 该深度特征能够作为一种全局性特征,利用训练好的卷积神经网络提取图像的深度特征[19].
本文将研究基于内容的图像检索,提出一种基于深度特征与局部特征融合的图像检索方法,能够提高特征的判别能力,实现更好的应用.
1) 局部特征
图像的局部特征提取有多种方法,如SIFT、LBP等. SIFT是一种较为常用的局部特征提取算法,在SIFT算法的基础上,Bay等[20]于2006年提出了SURF算法,改进了特征提取和描述的方式,不仅效率优于SIFT算法,对抗图像变换的鲁棒性也更加优越.
SURF算法主要包括关键点的检测、局部邻域描述和匹配3个实现部分. SURF算法的步骤分为三步:特征点检测、关键点的尺度空间表示与定位以及特征描述,即首先构建Hessian矩阵,检测出所有的关键点,然后定义尺度空间和主方向,生成关键点的描述子.
图1展示了2个不同类别的图像SURF点检测结果,标记出了前20个最强的特征点.
LBP是描述图像局部纹理特征的一种算法,依据不同像素点的像素值差异来描述图像的局部特征,在医学图像处理和人脸识别等领域都有广泛的应用. LBP特征提取步骤为:设定大小为3×3的局部窗口,比较该区域内中心的像素与周围像素,当周围像素值大于或者等于中心像素值时,将该点赋值为1,否则赋值为0. 然后,使用一个权值模板与窗口区域进行乘和运算,得到中心值.
图2展示了LBP特征的计算过程.
2) 深度特征
卷积神经网络在图像识别领域应用广泛,并彰显出优势. 卷积神经网络能够根据特定的任务自动提取图像的深度特征,免去传统的特征选择及处理步骤,并且网络的深度和广度都可以进行自主调整. 本文使用经典的Alexnet卷积神经网络结构进行迁移训练,提取深度特征. Alexnet最初由Hinton及其研究团队设计提出,基于著名的ImageNet数据集训练并发布了网络模型[21]. ImageNet包含1 000种类别的样本图像,共超过1 400万张图像,Alexnet在训练及测试中展现了较高的准确性. Alexnet主要由输入层、卷积层、激活层、池化层、全连接层以及输出层构成.
本文使用预训练的Alexnet模型,在实验所用数据集上进行迁移训练,用于提取图像的深度特征. 迁移训练的过程如图3所示.
在卷积神经网络提取深度特征的过程中,每一个卷积层基于前面一层的输出结果提取更深层次的特征. 反向传播机制使得卷积神经网络能够根据特定的任务对卷积核的参数进行调整,因此,深度特征比其他人工提取的特征能更好地反映出学习任务. 本文使用迁移训练完成的模型对实验图像提取深度特征,图4展示了部分可视化的深度特征. 可以看出,第1层卷积层所提取的特征主要为颜色及轮廓,后面的层则基于浅层的特征提取出更加复杂的深度特征.
不同模态的特征除了包含相互独立的信息以外,还会包含一些相关性信息,如图5所示. 从样本图像集中提取2种不同模态的特征,由特征向量组成特征矩阵,分别表示为X和Y,图5中重叠部分即为两者所包含的相关信息. 如果通过级联的方式将X和Y融合,融合特征中的相关性信息则会产生冗余.
典型相关分析(canonical correlation analysis,CCA)最初是一种用于分析不同变量之间相关性的方法,后来也被应用于特征融合. CCA的基本思想为:求解特征矩阵X和Y的变换基,分别表示为WX和WY,使得变换后的和之间Pearson相关系数最大,和分别表示经过投影变换后的特征矩阵.
=WTXX,=WTYY
(1)
CCA的目标函数为
(2)
在不同模态的特征中,通常包含部分相关的信息以及部分相互独立的信息. 基于CCA的特征融合仅保留2种特征中的相关信息,忽略了独立性信息,同时保留两者中的相关信息还会引起冗余. 为了解决以上问题,本文提出一种改进的特征融合方法,消除了由于相关性导致的冗余. 下面对改进的方法做具体描述. 首先将分析变换的目标改为最小化特征之间的相关性,称为最小相关分析(minimum correlation analysis,MCA),目标函数表示为
(3)
用SXX和SYY分别表示X和Y的方差矩阵,SXY表示X和Y的协方差矩阵,根据协方差矩阵所具有的性质,可以得到如下推论:
cov(,)=cov(WTXX,WTYY)=WTXSXYWY
(4)
var()=WTXSXXWX=1
(5)
var()=WTYSYYWY=1
(6)
则目标函数式(3)可转化为
(7)
采用拉格朗日乘数法求解极值问题,在目标函数中引入拉格朗日乘子λ,得到
(8)
分别对WX和WY求偏导,可以得到
(9)
由方程组可得
(10)
同时有
(11)
(12)
根据变换基维度的变化,融合特征的维度也会发生变化. 若分别取前r(r≥1)个最小特征值所对应的特征向量组成WX和WY,取前l(l≥1)个最大特征值所对应的特征向量组成W′X,那么融合特征Z的维度为(2r+l). 不同维度对特征性能的影响将会在实验部分讨论.
本方法通过投影变换保留2种模态特征中相互独立的信息,使融合特征更为全面地表征原始数据,并且取其中一方所包含的相关性信息作为补充,能够避免冗余.
采用深度特征作为全局性特征,与局部特征融合,作为本文图像检索的基础. 所提出的基于深度特征与局部特征融合的图像检索方法分为如下步骤:
1) 建立图像库,图像库为候选图像的集合.
2) 设置检索图像作为目标.
3) 提取所有图像的深度特征及局部特征SURF、LBP等,采用改进的方法进行融合.
4) 对融合后的特征进行相似性距离的度量,计算采用曼哈顿距离. 用x0表示检索图像的特征,xi表示候选图像的特征,计算公式为
(13)
5) 根据距离排序得到检索结果.
实验数据选用图像识别领域常用的Caltech 101图像集. Caltech 101适合验证图像识别和检索算法,在计算机视觉研究中应用非常广泛,共包含101个不同的对象类别,如飞机、摩托车、蚂蚁、人脸等,平均每个类别包含不同数量的图像样本,共9 146个图像.
实验环境为单个CPU 2.40 GHz,Windows 10 OS系统下Matlab 2018a,主要用到计算机视觉工具箱(computer vision system toolbox)、神经网络工具箱(neural network toolbox)、分类应用程序(classification application)以及矩阵操作工具.
从Caltech 101数据集中随机选取2个类别,并通过从网络中收集图像将每个类别的图像数量扩展为200. 提取数据集的特征,组成特征矩阵,如表1所示.
表1 数据集特征的描述
对SURF与深度特征,分别使用CCA与MCA求得变换基(r=1),然后得到变换后的特征. 变换后特征之间的相关性如图6所示. 通过对比可以看出,CCA使得变换后的2种特征呈线性相关分布,经过MCA变换后的特征则没有呈现明显的关联,表明MCA有效地弱化了特征之间的相关性,能够达到去除相关性冗余信息的目的. 式(12)在MCA的基础上增加了X中的相关性信息,该相关性信息即为CCA分析变换的结果. 由图6(b)中呈现的线性关系可知,此时X和Y中的相关性信息具有相同的意义,可以任意选择其一作为独立信息的补充.
下面通过图像分类的应用对所改进的特征融合方法进行验证,同时将选择的特征与其他几类常用的特征进行性能对比.
选取多种分类器进行测试,包括Fine Tree(F-Tree)、Boosting Tree(B-Tree)、Linear Discriminant(LD)、Logistic Regression(LR)、Linear SVM(L-SVM)、Cubic SVM(C-SVM)以及K最近邻(Knearest nejhbour,KNN)等. 其中,深度特征与LBP特征进行融合,使用F-Tree作为分类器,取得了最好的分类效果,准确率达到97.5%.
图7给出了不同特征组合的平均准确率. 可以看出,将深度特征与局部特征(SURF、LBP)融合能够取得优于其他全局性特征(边缘特征、颜色特征)的分类准确率,并且LBP作为局部特征的性能优于SURF. 对比改进的融合方法与基于CCA的融合方法,可以看出,改进的方法在分类应用中有更好的表现,平均准确率提高了4%,证明本文的改进方案与传统的CCA方法相比能够有效提高融合特征的判别能力.
表2展示了单一特征以及深度特征与LBP特征融合取得的分类准确率. 深度特征的平均准确率为99.2%,融合特征的平均准确率为99.1%,两者较为接近. 作为局部特征,LBP的分类准确性明显高于SURF. 通过拼接的方式将不同模态的特征融合是一种最为简单的做法. 另外,先将特征采用主成分分析(principal component analysis,PCA)方法降维,再将降维后的特征拼接,也是一种常用的融合方案,可以解决拼接融合中维数灾难的问题. 表3将本文的融合方法与这2种传统的融合方法相对比,可以看出,由于包含的信息最为全面,拼接融合的方法准确性最高,PCA方法与本文的方法在降维过程中会损失部分信息,因此,准确率会有所下降,但本文方法的准确性仍然接近拼接融合的方法,而且明显高于PCA方法.
表2 融合特征与单一特征的分类准确性对比
图8统计了表2及表3中所有对比方法的平均准确率,可以看出本文的方法与单独使用深度特征、拼接融合特征有较为接近的准确性,都高于其他几种方法. 但是,从表4统计的中央处理器(central processing unit,CPU)时间来看,本文方法比深度特征、拼接融合特征有更好的时间性能. 深度特征、拼接融合的特征维度较高,分别为4 096、4 152,会消耗较多CPU时间,由此得出结论,使用本文提出的融合方法既能保证可靠的准确性,又能保证优越的时间性能.
表3 不同融合方法的分类准确性对比
在特征融合中可以选择不同的维度,下面展开一组实验,探索不同维度对融合特征性能的影响. 选择变换基的维度从1到10,同样使用多种分类器进行测试,基于CCA融合的测试结果如图9所示,基于改进融合方法的测试结果如图10所示.
图中横坐标表示变换基的维度,而不是融合特征的维度. 变换基的维度增加,则融合特征的维度也会增加. 从结果可以看出,增加特征的维度有利于提高准确率,不同的分类器会影响准确率提高的幅度.
表4 不同特征在分类中的CPU时间对比
从Caltech 101图像集中随机选取了10个不同的类别作为实验数据,用Ci(0图11为选取的检索图像,属于C1类别,其他类别的示例图像如图12所示,包括摩托车、钢琴、蝴蝶和恐龙等.
表5 实验数据集描述
Caltech 101图像集包括灰度图像和RGB图像. 因为Alexnet网络的输入要求为RGB图像,在准备迁移训练时,通过复制通道将灰度图像转化为RGB图像.
计算各候选图像与检索图像的相似性距离,越小说明两者越相似,结果如图13所示. 可以看出,检索图像与C1类别的候选图像之间的距离最小,接近于0. 10个类别的平均检索距离见表6,该实验结果表明,在不同类别的图像检索中准确率达到了100%,证明提出的特征融合方法具备可行性.
表6 在10个类别中的平均检索距离
查全率Precision和查准率Recall是评价图像检索的2个常用指标. 真阳性TP表示应检索的图像数量,假阳性FP表示不应检索的图像数量,真阴性TN表示已检索的图像数量,假阴性FN表示未检索的图像数量,查准率和查全率的计算公式分别为
(14)
(15)
在上面的检索中,将阈值设置为T=1,统计TP、FP、TN、FN的数量,计算得到查准率为98.0%,查全率为46.0%. 为了对比融合特征与单一特征的性能,另外使用单独的边缘特征、颜色特征、SURF、LBP特征以及深度特征做了一组检索实验,查准率和查全率的结果见表7. 可以看出,融合特征的检索性能优于单一的特征. 为了验证改进的特征融合方法,使用拼接融合、CCA融合的特征进行检索. 表8为统计出的查准率和查全率,可以看出:本文的融合方法与基于PCA的融合方法相比检索性能有明显提高;拼接融合的方法查准率与查全率略高于本文方法. 但是,从图14中统计的CPU时间来看,深度特征和拼接融合的特征时间性能较低,而本文方法不仅能实现可靠的准确性,还具有较高的时间效率.
表7 融合特征与单一特征的检索性能对比
表8 不同融合方法的检索性能对比
图15列出了C1类别中的部分图像. 为了测试在细粒度的图像检索中的应用性能,比较了同一类别图像的检索距离,如图16所示. 蓝色曲线为检索图像和C1类别中所有候选图像之间的检索距离,将检索距离小于阈值的图像作为检索结果.
图中红色虚线表示对检索距离设置的阈值,T=0.5. 通过观察和分析,可以看出距离较近的图像与查询图像具有更多相似的属性. 这一结果进一步验证了所提方法的可用性与准确性.
不同的阈值设置会对性能评估产生影响,图17展示了设置不同阈值时的查准率和查全率,并与其他融合特征的对比. 可以看出,深度特征与局部特征融合的检索性能优于其他融合特征. 阈值越高,查准率越低,查全率越高;反之,查准率越高,查全率越低. 因此,阈值的设置也会影响检索性能.
1) 提出一种基于深度特征和局部特征融合的图像检索方法,选取LBP算法提取图像的局部特征,基于卷积神经网络Alexnet提取图像的深度特征,将2类特征通过相关性分析进行融合,实现了较好的融合效果.
2) 提出一种改进的特征融合方案,在CCA的基础上将目标函数改进为最小化特征的相关性,取得相互独立的信息,并将相关性信息作为补充,使融合特征更加全面地表征原始数据且消除冗余.