场景图像分类技术是指通过对图像内容的识别,判断图像所属场景的技术。场景图像分类技术涉及领域十分广泛,主要包括图像处理、模式识别和机器学习等多个学科的交叉领域。随着互联网和移动终端的普及,多媒体信息出现爆炸性增长,图像内容种类和数量与日俱增,此时仅仅靠人工分类和标注的方式难以处理如此海量的图像数据,既浪费人力资源也缺乏及时性与可靠性。面对挑战,如何让计算机以人类的思维逻辑去理解和处理图像便成为了新的突破口。另一方面,随着近几年深度学习技术的不断发展和数据量的爆炸式增长,使用卷积神经网络对图像进行特征提取成了新常态。与传统的手工设计表达相比,卷积神经网络具有强大的建模能力,并且能够学习更抽象的视觉表示。
与单对象图像分类不同,场景的识别需要计算机对环境所有元素的全面了解以及对它们之间关系的理解。图像场景的概念复杂,内容丰富,仅仅将在单对象图像分类上具有杰出表现的经典神经网络框架照搬到场景分类中,难以取得同样的效果。为了更好地利用卷积神经网络的强大特征提取能力,大量的研究者针对场景图像的特点,从不同方面入手,提出了许多基于深度卷积神经网络的场景识别算法。Zhou等[1]在以场景为中心的大规模数据集Places205上训练了一系列CNN,其在场景基准测试集上的表现明显优于在以对象为中心的ImageNet数据集[2]上训练的CNN,打破了基于学习的方法在场景分类上无大规模数据支撑的状态,为后来的研究奠定了基础。考虑到全局CNN缺少几何不变性,一部分研究的做法是将图像的局部特征作为全局特征的补充。如Hongje Seong等[3]考虑到对象和场景之间的紧密关系,通过使用类转换矩阵(Class Conversion Matrix,CCM)将对象特征转换成对应的场景特征表示并与全局的场景特征进行融合,并验证了融合特征的有效性。早期的场景分类任务中,算法采用人工设计的局部描述子如SIFT[4]、HOG[5]等局部特征为主,并且使用不同的编码方式对局部特征进行聚合,常见的有Fisher Vector[6]、VLAD[7]等。随着深度卷积神经网络的发展和其在其他视觉任务上的优异表现,不少研究者将重心转向了利用局部图像进行弱监督训练的CNN与传统视觉编码的结合上。比如Gong等[8]在多个尺度上提取局部图像的特征并执行无序的VLAD编码合并,将结果串联后得到新的场景图像表示。Cheng等[9]为消除局部特征中共存对象带来的负面影响,在VLAD编码之前使用了对象语义向量(semantic descriptor with objectness)进行筛选。Wang等[10]在Fisher Vector和VLAD的基础上设计了一种语义聚合向量VSAD,对视觉特征进行混合编码。尽管上述几种改进方法在场景分类中精度有所提高,但是无论是不同尺度下局部图像的密集采样,还是特征字典的构造,都使得算法的计算量也不断增加,也容易产生较多的冗余特征。与此同时,也有部分研究者试图使用不同结构的CNN提取特征对图像进行描述。Anwer等[11]设计了一种多流结构的CNN框架,将场景图像的深度特征和LBP纹理特征作为原始特征即RGB特征的互补特征,取得了明显的提升。Zeng等[12]认为场景属性特征是场景特征和对象特征的良好补充,在融合场景属性特征的基础上使用Markov Random Field (MRF)[13]进行上下文建模。Alejandro等[14]分别提取场景RGB和语义分割域中的特征,建立多模态CNN并通过注意力模块将图像和上下文信息结合在一起。这类方法的共同点是提取场景图像的不同特征,特征之间能够互补,从而增强特征表示的有效性,但是也会导致特征维度变高以及可能带来更多的噪声。
针对以上场景分类算法中存在的特征编码带来的高计算量问题以及由于融合多类特征带来的特征冗余和噪声对场景分类精度造成负面影响问题,本文结合两类不同特征的特点,设计了一种局部特征显著化算法。该算法主要由特征提取、特征显著化、特征融合与分类三部分组成。特征提取部分用于提取图像的多尺度特征,特征显著化则是对提取的特征进行优化,特征融合与分类首先将两种不同的特征通过融合得到完整的场景特征描述,再通过线性支持向量机完成分类。算法使用简易采样代替密集采样,减少了数据量和特征冗余,通过局部特征显著化算法代替传统的特征编码,提取局部特征中的关键信息,增强了场景特征的判别力,提高了场景分类的精度。
本文将对象局部特征和场景局部特征相结合,并进行优化处理,得到基于局部特征显著化的场景分类模型,在本文中定义为Salient-CNN,其总体结构如图1所示,其中Highlight details和Keep general为特征显著化算法的核心组成。
图1 基于局部特征显著化的场景分类网络Salient-CNN结构框架图
Fig.1 Framework of Salient-CNN structure of scene classification network based on salient local features
在进行图像特征提取之前,需要对原始图像进行采样以获得多尺度图像。常规的做法有在原始图像上进行多尺度密集采样,如文献[10]中作者首先在原始图像中设定10×10尺寸的网格,再在网格中采样尺寸为{64; 80; 96; 112; 128; 144; 160; 176; 192}的局部块,并进行水平翻转,得到9种不同比例尺且每种包含200张图像的多尺度数据集。另外,也有部分文献[15]使用候选框提取重点视觉区域的方式采样局部图像。图像的采样策略往往与研究者提出的方法密切相关,在本文中,图像的采样策略为简易采样,一种相比于密集采样计算量更少,速度更快的采样方式。具体来说,首先将原始图像尺寸利用双线性插值的方式更改为448×448,并将其作为小尺度场景图像,而后选取调整后的图像的四角进行切割,形成4个局部图像块,每个局部图像的尺寸为224×224。
本文使用DenseNet161[16]作为基础网络,进行场景全局特征和局部特征的提取。将网络分别在Places365数据集[17]和ImageNet数据集上进行预训练,得到两种不同类型的CNN,即Places-CNN、ImageNet-CNN。Places365中大约有200万张图片,包括365个场景类别,Places-CNN能够提取图像的场景特征;ImageNet包含大约1500万张图片,2.2万类,其中大多为单一对象的图片,ImageNet-CNN将提取场景图像的对象特征并作为场景特征的补充。经过预训练的卷积神经网络的高层激活(也称作深度特征)被证明是有效的通用特征,在各种图像数据集上具有先进的性能[18]。不同类型的深度特征面向同一个分类任务,其激活区域和分类效果也有明显的不同。图2展示了Places-CNN和ImageNet-CNN在MIT Indoor67[19]上的一些场景图像激活的可视化功能图,类激活映射(CAM,Class Activation Mapping)[20]用于实现不同CNN的重点视觉关注区域的可视化(图像越亮的地方代表判别力越强),反映了场景特征和对象特征的不同性质。
图2 两类网络对于不同场景的类激活图(CAM)
Fig.2 CAM of two types of networks for different scenes
从上图能够看出,Places-CNN的激活区域和颜色亮度都明显高于ImageNet-CNN,这也从另一方面说明了Places-CNN在场景分类任务上的效果要好于ImageNet-CNN的原因。与Places-CNN更为关注场景特征不同,ImageNet-CNN将视觉重点放在了一些的场景对象中,如Bathroom中的马桶和橱柜,Fastfood restaurant中的桌椅等。
在特征提取阶段,输入的图像进行前向传播,最后一个Dense Block的输出将会作为两类卷积神经网络提取的特征。在输入的图像的尺寸为224×224的情况下,得到的特征图的维度为7×7×2208。由于DensneNet在最后一个Dense Block后还使用了全局平均池化,所以需要对得到的特征图再次进行平均池化操作,池化核尺寸为7×7,并将池化后的特征维度降低,得到最终的图像特征,维度为1×2208。定义场景全局特征为场景局部特征为对象全局特征为对象局部特征为图3描述了特征提取过程。
图3 图像特征提取
Fig.3 Image feature extraction
在特征提取部分,我们使用了两类网络Places-CNN和ImageNet-CNN获取了图像两个尺度的特征。考虑到图像在不同尺度下特征的联系和区别,为有效对这些特征进行选择和过滤,本文提出了一种局部特征显著化算法对特征进行优化。
如前一小节中所描述,Places-CNN和ImageNet-CNN关注的重点有所区别。场景图像的内容较为丰富,要素较多,Places-CNN在提取的图像特征往往会带有更多的整体性、空间性特点,而ImageNet-CNN提取的特征会更注重细节,尤其是单个对象的细节。所以在进行局部特征的提取时,由于全局特征的存在,前者可能产生较多的冗余信息,而后者会将产生噪声。因此,本文针对两种特征的特点,分别对其进行了优化处理,包括场景局部特征突出细节和对象局部特征保留主体两个部分。旨在使这些局部特征能够更好地对全局特征进行补充,形成更具判别力的场景图像特征描述,以提高场景分类的精度。本文提出的局部特征显著化算法无需进行额外的训练,也可作为一个模块插入完整的卷积神经网络结构中,进行端到端的训练。
局部特征显著化算法包含两个部分,一是面向场景局部特征的突出细节算法。局部特征作为全局特征的补充,需要考虑其是否会对全局特征造成冗余或者增加噪声。场景局部特征和全局特征使用的网络完全相同,区别仅仅在于场景图像的尺度差异。从小尺度图像中提取的局部特征作为补充,应当发挥其细节性的优势,将那些在大尺度上无法或者难以激活的特征作为全局特征的良好补充。故针对场景局部特征,特征的优化应以突出细节为方向,并合理控制突出程度。在简易采样图像提取的局部特征的基础上,对场景局部特征展开优化。具体做法是,首先对场景局部特征计算特征中心
(1)
其中l表示采样图片数,本文中表示场景局部特征,n为类别中的图片数。
接下来使用特征中心与每个局部特征做差,取绝对值得到局部特征到特征中心的距离向量,该向量代表了每一维特征的离散程度。考虑到在大尺度上已经有了较为准确的全局特征,在小尺度上就要求相对突出的场景细节,那么接下来要做的就是加强那些距离特征中心较远的值,以便对场景全局特征进行补充。最后将每一维特征的距离进行归一化,得到权重向量
(2)
可以选择使用超参数λs控制权重向量的影响程度:
(3)
最后将这些权重和局部特征的乘积之和作为新的场景局部特征表示
(4)
局部特征显著化算法的另一部分则是面向对象局部特征的保留主体算法。与场景特征对应的是由ImageNet-CNN提取的对象特征。与场景局部特征一样,对象局部特征也是作为全局特征的补充用以提高场景描述的准确性和完整性。对象局部特征和场景特征所使用的网络参数结构不同,是两种截然不同的又具有互补性的特征。因此,在小尺度的对象局部特征进行处理时,特征的优化以提高对象特征描述的准确性为方向,在不影响对象整体描述的情况下尽可能减少因为尺度变小导致的图像噪声。对于对象局部特征的优化,本文提出的方法是一种保留特征主体的优化算法,以ImageNet-CNN提取的对象全局特征的为主体,并将其作为对象特征语义中心对小尺度局部特征进行指导修正,从而得到更为准确的对象局部特征。具体做法是,首先用对象全局特征与每个对象局部特征做差,得绝对值得到局部特征距离向量。因为优化需要用全局特征来引导得到局部向量,所以与场景局部特征突出细节相反,给予距离全局特征近的特征更高的权重。权重的计算如下:
(5)
其中表示对象全局特征,表示对象局部特征。同样,使用超参数λo控制权重的影响程度:
(6)
最后将权重赋予至对象局部特征得到修正后的对象特征:
(7)
在对局部特征进行特征显著化处理之后,得到了优化后的场景局部特征和对象局部特征。为了使这两类特征更好地形成图像场景描述,本文对特征进行了融合处理。常用的融合策略一般有两种,一种是维度上的拼接,如图4(左)所示,另一种是维度上的相加,如图4(右)所示。
图4 特征融合的两种方式
Fig.4 Two methods of feature fusion
第一种特征融合方式将特征的每一个维度都进行利用,融合后的特征完整性比较好,但是如果特征的维度本身就比较高或者特征数量比较多,那么就容易导致融合后的特征维度过高,从而使得训练难度增加。第二种特征融合一般在两个特征的各个维度的语义相同的情况下进行的,也可以结合加权平均的方式将特征的重要程度考虑进来,融合后的特征维度不变,在训练上比较有优势,但是融合要求较高。考虑到场景局部特征和对象局部特征是两种截然不同的特征,在语义上相加没有意义,所有本文选择的融合策略是第一种融合策略。
模型的最后一步是特征的训练和分类,本文选择的分类器是线性支持向量机,该分类器能在保证一定训练准确率的情况下最大化类与类之间的间隔,减少过拟合。
本文使用MIT Indoor67数据集作为实验对象。Indoor67包含了15620张室内场景图像,每个类别至少100张图像,共67类场景类别。根据测试要求,我们对每一类场景中选择了80张图像作为训练集,20张图像作为验证集。特征提取网络为DenseNet-161,融合特征利用线性SVM进行分类。
对于局部特征显著化算法,上一节中提出的两个超参数λs和λo可以控制特征显著化算法对特征的优化程度。因此,在实验中,本文通过控制λs和λo在区间[0,1]之间的大小,以0.2的间隔设置多组实验。最后分别对这些优化后的融合特征进行训练并测试场景分类准确率。
在进行局部特征显著化算法的评估之前,首先对场景全局特征和未进行优化的局部特征进行场景分类测试,作为本章实验结果的基准。测试结果如表1所示。
表1 场景全局特征和局部特征分类结果
Tab.1 Classification results of scene global feature and local feature
特征SGSG+SLSG+OLSG+SL+OL准确率85.22%87.31%88.13%88.13%
其中SG表示场景全局特征,SL表示场景局部特征,OL表示对象局部特征。一方面,根据上表可以看出局部特征对场景全局特征的良好补充性和有效性,增强了场景描述的准确性。另一方面,在融合对象局部特征的基础上,融合未进行优化的场景局部特征对于分类精度提升没有帮助,本文认为导致这种现象的原因是对象局部特征对增强场景全局特征方面较场景局部特征更为有效,因为这两类特征来自不同的深度网络。而场景局部特征在一定程度上是对场景全局特征的细节性描述,提升效果并没有对象特征明显,需要对特征进行优化处理以放大细节增强显著性。
首先对场景局部特征显著化算法进行评估,即分析场景局部特征突出细节对场景分类结果的影响。在控制对象局部特征显著化程度的超参数λo设置为0和1的两种情况下(λ=0表示不使用局部特征显著化,λ=1表示完全使用局部特征显著化),对控制场景局部特征显著化程度的超参数λs进行测试,在训练完线性SVM分类器后,通过测试集得到场景分类的准确率,其结果如表2所示。
表2 场景局部特征显著化算法评估
Tab.2 Evaluation of local scene feature salient algorithm
对于基于局部特征显著化的场景分类模型,其场景局部特征显著化算法部分对场景分类任务的影响和作用分析如下:
随着场景局部特征显著化程度的提高,无论是否对对象局部特征进行优化,场景分类的效果都有明显提升。结合表1中的实验基准,在融合基于场景局部特征显著化算法的场景局部特征之后,若不考虑对象局部特征的优化,分类精度提升了0.45%,若考虑对象局部特征的优化,分类精度则提升了0.68%,这是十分显著的提升,验证了场景局部特征显著化算法的有效性。本文认为优化后的场景局部特征成为了场景全局特征的良好补充。
与场景局部特征显著化算法相似,本章也对对象局部特征显著化算法进行了评估,得到结果如表3所示。
对于基于局部特征显著化的场景分类模型,其对象局部特征显著化算法部分对场景分类任务的影响和作用分析如下:
表3 对象局部特征显著化算法评估
Tab.3 Evaluation of local object feature saliency algorithm
与场景局部特征显著化算法不同,对象局部特征显著化算法在λo=0.8时得到最优的结果,说明对象局部特征显著化算法保留对象主体除去噪声的程度有一定限度,保留一定的对象细节特征有利于加强场景融合特征的描述。结合表1中的实验基准,在融合基于对象局部特征显著化算法的场景局部特征之后,若不考虑场景局部特征的优化,分类精度提升了0.53%,若考虑对象局部特征的优化,分类精度则提升了0.75%,这样的提升十分明显,验证了对象局部特征显著化算法的有效性,优化后的对象局部特征和场景局部特征一样成为了场景全局特征的良好补充。
在前面我们对基于局部特征显著化的场景分类模型进行了单独的测试,实验证明了算法的有效性,优化后的场景局部特征和对象局部特征是场景全局特征的良好补充。本小节将模型与当前领域内前沿的文献在MIT Indoor67数据集上的结果进行对比,结果如表4所示。
表4 与其他文献准确率比较
Tab.4 Comparison with other literatures
模型准确度Places365+VGGNet16[17]76.50%PatchNet+VSAD[10]86.20%SDO[9]86.72%MP[13]86.90%MFAFVNet+Places[21]87.97%Attribute[12]88.06%SOSF+CFA+GAF[22]89.51%LGN (ResNet)[23]88.06%Semantic-Aware[14]87.10%Our Salient-CNN88.88%
从上表中可以看出,本文提出局部特征显著化算法在分类精度超过了绝大部分文献,这主要是由于本文考虑两类特征的不同性质,对局部特征进行了对应的显著化处理,形成了对全局特征更有效的局部特征,并结合相对有效的特征融合策略,实现了场景分类精度的提升。另一方面,本文的精度不及文献[23]的精度,我们认为其主要原因是由于该文献使用了多类目标检测器提取场景的对象特征包括类别和空间布局信息,以及使用了混合的CNN和LSTM对提取场景的上下文特征对场景全局特征进行了补充,在考虑的特征广度上要明显强于本文的两种相对简单的特征,尤其是增加的场景要素空间分布信息起到了有效的补充作用。但是也正因为本文提出的局部特征显著化算法仅仅只是对两类特征进行了优化和融合处理,并未使用额外的知识来源,因此,算法相比其他的一些方法会更具优势并仍存在提升空间。
本文在分析现有基于深度网络的场景分类技术的基础上提出了一种局部特征显著化算法。该算法首先利用在ImageNet和Places365上预训练的深度网络进行全局特征和局部特征的提取,其中局部图像采样策略为简易采样,而后利用局部特征显著化算法对局部特征进行优化处理,最后将局部特征与全局特征融合,通过线性SVM完成分类。该算法的主要思路是利用全局特征对局部特征进行引导修正和利用特征中心计算距离向量,以优化局部特征表示。该算法有效地将两类不同的特征相结合,验证了特征和特征之间的互补关系。实验结果表明我们局部特征显著化算法的合理性,有效地提升了场景特征表示。如何融合更多的特征进行局部优化处理,而并不仅限于场景和对象两类特征,提升融合特征描述的判别力和保持完整性,以及如控制好特征显著化的程度是接下来的主要研究方向。
[1] Zhou B, Lapedriza A, Xiao J, et al. Learning Deep Features for Scene Recognition using Places Database[C]∥Neural Information Processing Systems, 2014: 487- 495.
[2] Deng J, Dong W, Socher R, et al. ImageNet: A large-scale hierarchical image database[C]∥Computer Vision and Pattern Recognition, 2009: 248-255.
[3] Seong H, Hyun J, Chang H, et al. Scene Recognition via Object-to-Scene Class Conversion: End-to-End Training[C]∥International Joint Conference on Neural Network, 2019: 1- 6.
[4] Lowe D G. Distinctive Image Features from Scale-Invariant Keypoints[J]. International Journal of Computer Vision, 2004, 60(2): 91-110.
[5] Dalal N, Triggs B. Histograms of oriented gradients for human detection[C]∥Computer Vision and Pattern Recognition, 2005: 886- 893.
[6] Sanchez J, Perronnin F, Mensink T, et al. Image Classification with the Fisher Vector: Theory and Practice[J]. International Journal of Computer Vision, 2013, 105(3): 222-245.
[7] Jegou H, Perronnin F, Douze M, et al. Aggregating Local Image Descriptors into Compact Codes[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2012, 34(9): 1704-1716.
[8] Gong Y, Wang L, Guo R, et al. Multi-scale Orderless Pooling of Deep Convolutional Activation Features[C]∥European Conference on Computer vision, 2014: 392- 407.
[9] Cheng X, Lu J, Feng J, et al. Scene recognition with objectness[J]. Pattern Recognition, 2018: 474- 487.
[10] Wang Z, Wang L, Wang Y, et al. Weakly Supervised PatchNets: Describing and Aggregating Local Patches for Scene Recognition[J]. IEEE Transactions on Image Processing, 2017, 26(4): 2028-2041.
[11] Anwer R M, Khan F S, Laaksonen J, et al. Multi-stream Convolutional Networks for Indoor Scene Recognition[C]∥Computer Analysis of Images and Patterns, 2019: 196-208.
[12] Zeng H, Song X, Chen G, et al. Learning Scene Attribute for Scene Recognition[J]. IEEE Transactions on Multimedia, 2019: 1-1.
[13] Song X, Jiang S, Herranz L, et al. Multi-Scale Multi-Feature Context Modeling for Scene Recognition in the Semantic Manifold[J]. IEEE Transactions on Image Processing, 2017, 26(6): 2721-2735.
[14] López-Cifuentes A, Escudero-Violo M, Bescós J, et al. Semantic-aware scene recognition[J]. Pattern Recognition, 2020, 102: 107256.
[15] Zhao Z, Larson M. From Volcano to Toyshop: Adaptive Discriminative Region Discovery for Scene Recognition[C]∥ACM Multimedia, 2018: 1760-1768.
[16] Huang G, Liu Z, Der Maaten L V, et al. Densely Connected Convolutional Networks[C]∥Computer Vision and Pattern Recognition, 2017: 2261-2269.
[17] Zhou B, Lapedriza A, Khosla A, et al. Places: A 10 Million Image Database for Scene Recognition[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2018, 40(6): 1452-1464.
[18] Razavian A S, Azizpour H, Sullivan J, et al. CNN Features Off-the-Shelf: An Astounding Baseline for Recognition[C]∥Computer Vision and Pattern Recognition, 2014: 512-519.
[19] Quattoni A, Torralba A. Recognizing indoor scenes[C]∥Computer Vision and Pattern Recognition, 2009: 413- 420.
[20] Zhou B, Khosla A, Lapedriza A, et al. Learning Deep Features for Discriminative Localization[C]∥Computer Vision and Pattern Recognition, 2016: 2921-2929.
[21] Li Y, Dixit M, Vasconcelos N, et al. Deep Scene Image Classification with the MFAFVNet[C]∥International Conference on Computer Vision, 2017: 5757-5765.
[22] Sun N, Li W, Liu J, et al. Fusing Object Semantics and Deep Appearance Features for Scene Recognition[J]. IEEE Transactions on Circuits and Systems for Video Technology, 2019, 29(6): 1715-1728.
[23] Chen G, Song X, Zeng H, et al. Scene Recognition with Prototype-agnostic Scene Layout[J]. IEEE Transactions on Image Processing, 2020, 29(5877- 88).
Reference format: Zhang Jiahui, Xie Yuxiang, Guo Yanming. Scene Classification Method Based on Local Feature Saliency[J]. Journal of Signal Processing, 2020, 36(11): 1804-1810. DOI: 10.16798/j.issn.1003- 0530.2020.11.002.
张家辉 男, 1996年生, 浙江宁波人。国防科技大学系统工程学院硕士在读生。主要研究方向为智能媒体计算。
E-mail: zhangjiahui18@nudt.edu.cn
谢毓湘 女, 1976年生, 湖南隆回人。国防科技大学系统工程学院教授, 博士生导师。主要研究方向为智能媒体计算。
E-mail: yxxie@nudt.edu.cn
郭延明 男, 1989年生, 河北衡水人。国防科技大学系统工程学院副教授。主要研究方向为深度学习、计算机视觉、智能媒体信息处理。
E-mail: guoyanming@nudt.edu.cn