许婷婷 朱允斌 张 跃
1(复旦大学计算机科学技术学院 上海 201203) 2(上海视频技术与系统工程研究中心 上海 201203) 3(华为技术有限公司 江苏 南京 210000)
近年来,随着深度学习理论的飞速发展,以卷积神经网络CNN(Convolutional Neural Network)为代表的多种神经网络在诸如图像分类[1-2]、图像识别[3-5]、图像检索[6-7]以及视频分类[8-9]等领域里不断取得突破。其中,深度学习在图像检索领域的成果尤其受到关注。深度学习通过提取图像的特征,从而对图像进行分类、检索、识别,解决与现实生活息息相关的问题。
通用图像检索系统在自然图像上的检索效果很好,文献[10-11]等基于imageNet、Oxford、Cifar10等自然图像数据集都取得了很好的效果。这些数据集以风景、建筑、自然景象居多,检索的平均准确率可以达到80%以上。然而现实世界中还存在着海报、漫画这样的非自然图像,这些图像在通用图像检索系统上的检索效果并不好。非自然图像与自然图像相比有很多不同之处,前者往往具有大面积的单一色块,相邻色块间经常存在强烈的颜色对比,且色块的分布也更无规律可循。图1展示了自然图像与非自然图像的对比。
图1 自然图像(左)与非自然图像(右)
在日常生活中非自然图像十分普遍,然而现有的图像检索系统在非自然图像上的检索效果不好。为了扩大图像检索的应用范围与应用领域,让基于深度学习的图像检索技术变得更为实用,研究面向非自然图像的检索技术变得十分必要与有意义。
自然图像的获取渠道较多,数据获取比较容易,现有的公开数据集也比较多,自然图像的检索准确率容易通过增大数据集的方式来提高。然而现有的非自然图像数据集很少,数据的获取也比较困难,因此在尽可能的增大数据集的基础上考虑从网络的层面来提高检索效果。非自然图像自身的特殊性导致其可提取的特征相对较少,但较多的图像信息与图像特征才能更好得区分图像,得到较好的检索效果。如果想要提取较多的特征,需要设计更深、更复杂的神经网络,或者联合多个网络的提取结果。不同的分类器总是各有所长,有些分类器能处理尺度变换的图像,有些分类器能处理的模糊的图像,有些分类器能处理带有噪声的图像。多个分类器的各个特点总是很难集中在同一个分类器中,但是联合分类器能结合各个分类器的优点,能使检索效果有明显幅度的提升。文献[12]利用联合分类器来进行目标识别,但没有用到深度学习的方法。文献[13]利用多数投票将多个分类器的结果结合起来,期望提高检索准确率,但是仅仅用多数投票融合分类器的结果,对单分类的准确率要求比较高。本文在文献[13]的基础上,将深度学习与联合分类器结合起来,提出了一个基于卷积神经网络的联合分类器,联合分类器采用不同融合算法,结合多个分类器的分类结果,得到最终检索结果。
以海报图像为例,本文通过人工拍摄并对拍摄的图像做变换构造了已知最大的海报图像数据集,用基于卷积神经网络的联合分类器对海报图像进行检索。实验证明,对比单分类器,本文提出的方法能有效地提高准确率。
与自然图像检索过程类似,本文将非自然图像检索过程分为两部分:一是离线训练部分;二是在线搜索部分。图2展示了非自然图像检索的整体流程。
图2 非自然图像检索整体流程
离线训练是通过训练集训练出一个联合分类器,联合分类器包括多个卷积神经网络、多种融合算法。训练集通过不同的卷积神经网络进行独立训练,得到不同的分类器,进而产生不同的分类结果。融合算法将不同的分类结果结合起来,得到最终的检索结果。
检索时,输入一幅待检索图像,联合分类器将给出检索结果。不同的网络、不同的融合算法都会导致联合分类器的不同,进而导致检索结果的不同。
联合分类器通过融合算法结合了多个独立分类器的分类结果,最终得出预测结果。
本文提出的4种融合算法可以分为两大类:一类是基于权值的融合算法[14]包括静态权值与动态权值;另外一类是基于规则的融合算法[15]包括二级规则与三级规则。本文对融合算法中用到的变量定义如下:q表示待检索图像,
在联合分类器中,输入待检索图像,可以得到每个分类器的分类结果,本算法结合了多个分类器的Top5结果。用第i个分类器测试验证集得到的分类准确率作为相应的权值(即Wi),按式(1)融合每个独立分类器的结果,置信度最高的类别就是最终检索结果。
(1)
由式(1)可知,不同的权值会导致联合分类器产生不同的检索结果。本算法通过枚举权值,期望得到最佳分类结果。每个权值Wi(i=1,2,…,L)的枚举范围限定为[0,0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,1]。 对每一组Wi,统计对验证集进行分类得到的准确率, 取验证集准确率最高的权值组作为最终的权值,用式(1)进行分类。
此算法分为两步,算法中用到了Top1以及Top5结果。算法步骤如下:如果超过一半分类器的Top1类别是同一个,算法结束,检索结果就是此类别;否则按照动态权值法融合每个分类器的Top5结果,置信度最高的类就是最终分类结果。
(2)
三级规则的具体算法步骤如下:
如果超过一半分类器的Top1类别是同一个,算法结束,检索结果就是此Top1对应的类别。如果不存在这样的类,算法继续。
对于任意一个Top1类,统计在所有分类器Top5中的出现次数,记为F5={
(3)
本实验以海报图像为例,在本地图像库中检索与海报图像相匹配的海报原图。每一幅海报原图以及这幅海报的所有图像都属于同一个类别。因此海报图像检索问题可以视为海报图像的分类问题。本文在不同的模型、不同的融合方式下进行实验,使用平均准确率作为评价准则,对联合分类器的性能进行评估。
我们从各大视频网站随机爬取了1 000幅海报,拍摄打印的海报图像作为原始数据集,共9 000幅。通常情况下,拍摄距离会对图像内容产生影响,进而对实验结果产生影响。例如不同的拍摄距离会导致光斑在图像中的位置不同,进而导致图像的不同。因此本文对拍摄做了如下规定:对于每一张海报原图,如图3(a),拍摄3种不同距离的照片,拍摄结果如图3(b)所示,从左至右摄像头与海报的距离逐渐缩短。
接着,对拍摄图像做了31种变换来增大数据集,包括裁剪、模糊、亮度变化、对比度调整、加噪、锐化等,最后将图像大小统一到256×256,作为训练集与验证集。在原始数据集的基础上,通过预处理进行图像变换,最终形成279 000幅海报实验数据集。
实验按照标准做法,将数据集随机划分为两部分,分别作为训练集与验证集。在本文中,训练集与验证集的比例为5∶1。
本文所用到的四个卷积神经网络为CaffeNet[16]、AlexNet[16]、GoogLeNet[17]和VGGNet[18]。相同的数据集经过训练得到不同的模型,每个模型都是一个独立的分类器。联合分类器采用不同的融合算法,结合不同个数的独立分类器的结果进行最终分类。检索时,首先输入一幅待检索的图像,用不同的分类器进行分类,得到多个分类结果,融合算法结合不同分类器的结果,得到最终检索结果。
实验记录了采用不同融合算法,结合不同数量分类器的检索结果。结合任意2、3、4个分类器,分别有6、4、1种组合方式,每种组合都对应着4种融合算法,加上4个单分类器,最终得到48种不同的结果。表1展示了对48种结果进行组合得到的平均准确率,表格可以分为四个大块。每一大块都展示了在包含某种分类器的情况下,使用不同融合方式、结合不同数量的分类器得到的平均分类准确率。以表格第一大块(前六行)为例,第一行表示单分类器的种类,如CaffeNet,第二行表示结合的分类器数量,单个表示使用CaffeNet单分类器,两个表示CaffeNet与其余任意一个分类器结合,三个、四个以此类推,其余四行记录了平均准确率。表格的第一列表示融合算法。每一大块中的加粗体表示某一列的最大值,阴影部分表示整个大块的最大值。
表1 单分类器以及基于某种分类器联合不同个数
续表1
对比单分类器与联合分类器的平均准确率,数据显示联合分类器的分类准确率比单模型的分类准确率要高,并且结合的分类器数量越多,准确率越高,实验结果验证了联合分类器的有效性。不同的融合方式都能提高分类准确率,但是提高的幅度略有差异。在基于规则的融合算法中,具有不同置信度的相同类别对最终检索结果具有相同的贡献,对单分类器的要求更高。动态权值算法采用了以不同步长探索最佳权值的方式,相对于静态权值更符合模型的有效性,在4种融合方法中效果最好。
文献[13]用多数投票融合多分类器的分类结果,但是没有提到具体的网络结构。本文用上述4种网络结构,按照文献[13]提出的方法在相同的数据集上进行实验,记录实验结果。表2展示了文献[13]的结果以及本文提出的动态权值融合算法的实验结果对比,实验数据表明,本文提出的融合方法能有效地提高检索准确率。
表2 文献[13]与本文的检索平均准确率对比
本文通过拍摄与变换生成了已知最大的海报图像数据集,并且提出了基于卷积神经网络的联合分类器来尝试解决非自然图像检索问题。实验表明,对比单分类器的分类准确率,联合分类器的分类准确率有显著的提高,证明了此分类器的有效性。
[1] 段建,翟慧敏.深度卷积神经网络在Caltech-101图像分类中的相关研究[J].计算机应用与软件,2016,33(12):165-168.
[2] Wei Y,Wei X,Lin M,et al.HCP:A Flexible CNN Framework for Multi-Label Image Classification[J].IEEE Transactions on Pattern Analysis & Machine Intelligence,2016,38(9):1901-1907.
[3] Donahue J,Jia Y,Vinyals O,et al.DeCAF:a deep convolutional activation feature for generic visual recognition[C]//International Conference on International Conference on Machine Learning.JMLR.org,2014:647-655.
[4] Kavukcuoglu K,Sermanet P,Boureau Y L,et al.Learning convolutional feature hierarchies for visual recognition[C]//Advances in neural information processing systems,2010:1090-1098.
[5] Zeiler M D,Fergus R.Visualizing and understanding convolutional networks[C]//European Conference on Computer Vision.Springer International Publishing,2014:818-833.
[6] Liu H,Wang R,Shan S,et al.Deep supervised hashing for fast image retrieval[C]//Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition.2016:2064-2072.
[7] Ong E J,Husain S,Bober M.Siamese Network of Deep Fisher-Vector Descriptors for Image Retrieval[J].arXiv preprint arXiv:1702.00338,2017.
[8] Karpathy A,Toderici G,Shetty S,et al.Large-Scale Video Classification with Convolutional Neural Networks[C]//IEEE Conference on Computer Vision and Pattern Recognition.IEEE Computer Society,2014:1725-1732.
[9] 李晓龙,张兆翔,王蕴红,等.深度学习在航拍场景分类中的应用[J].计算机科学与探索,2014,8(3):305-312.
[10] Gong Y,Lazebnik S.Iterative quantization:A procrustean approach to learning binary codes[J].IEEE transactions on pattern analysis and machine intelligence,2013,35(12):2916-29.
[11] Ng Y H,Yang F,Davis L S.Exploiting local features from deep networks for image retrieval[C]//2015 IEEE Conference on Computer Vision and Pattern Recognition Workshops (CVPRW),2015:53-61.
[12] 张学峰,王鹏辉,冯博,等.基于多分类器融合的雷达高分辨距离像目标识别与拒判新方法[J].自动化学报,2014,40(2):348-356.
[13] Shaheen F,Verma B.An ensemble of deep learning architectures for automatic feature extraction[C]//Computational Intelligence (SSCI),2016 IEEE Symposium Series on.IEEE,2016:1-5.
[14] Simonyan K,Zisserman A.Very deep convolutional networks for large-scale image recognition[J].arXiv preprint arXiv:1409.1556,2014.
[15] 张文博,姬红兵,王磊.一种自适应权值的多特征融合分类方法[J].系统工程与电子技术,2013,35(6):1133-1137.
[16] Patwardhan A,Knapp G.Augmenting Supervised Emotion Recognition with Rule-Based Decision Model[J].arXiv preprint arXiv:1607.02660,2016.
[17] Krizhevsky A,Sutskever I,Hinton G E.Imagenet classification with deep convolutional neural networks[C]//Advances in neural information processing systems.2012:1097-1105.
[18] Szegedy C,Liu W,Jia Y,et al.Going deeper with convolutions[C]//Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition.2015:1-9.