梁浩然,方加奇,梁荣华
(浙江工业大学 计算机科学与技术学院,杭州 310023)
能将视线集中到场景中的感兴趣点来快速分析或解释复杂的环境,是人类视觉系统(Human Visual System,HVS)重要的基础功能[1].通过计算机来模拟HVS的注意机制,被称为视觉显著性检测(Visual Saliency Detection).根据标准集与评价指标的不同,视觉显著性检测分为显著性目标检测[2-4]及人眼注视点预测,本文主要针对现有深度学习人眼注视点预测方法不能建模自下而上的显著性的问题开展研究.
传统非学习模型主要利用了图片中颜色、亮度、纹理等低级特征来进行显著性检测,由于缺乏表示显著性的语义信息,模型在面对复杂的自然图像时,不能有效地检测显著性.
深度学习模型能够很好提取语义信息,构建自上而下的显著性.Vig等人[5]首次用深度神经网络对显著性进行建模,该模型利用三层神经网络对特征进行自动提取.Kümmerer等人[6]通过迁移学习改善了显著性数据集缺乏的问题,其利用超大型数据集ImageNet[7]上训练的分类网络AlexNet[8]的卷积部分作为编码骨干,通过提取卷积层特征,对其进行简单的线性回归得到显著性图.Huang等人[9]利用VGGNet[10]作为编码骨干,并利用图像的多分辨率输入来强化特征提取.Cornia等人[11]提出结合编码骨干多层特征来更好地利用所提取的特征.
最新工作通过更深的编码骨干(ResNet[12],DenseNet[13]等)和更复杂的方法,来更好地提取高级语义信息.Pan等人[14]采用了对抗式生成网络,额外训练了一个判别器来提高网络的稳定,Li等人[15]在编码网络中加入集中注意力模块和平行注意力模块模仿人类感知过程的两个阶段.Kroner等人[16]利用空洞空间卷积池化金字塔对编码骨干多个卷积层特征进行进一步编码.Ding[17]等人在编码骨干中加入了从高层到低层的反馈回路,并利用其他模型的输出作为伪标签对模型进行训练.Jia[18]等人提出分步训练编码网络与解码网络来更好地进行显著性提取.Linardos[19]等人提出结合多个不同骨干网络提取特征.还有的模型基于膨胀卷积以及长短期注意网络[20-22].
现有的深度学习模型过多关注于高级语义信息,而忽视了自下而上的显著性.SID4VAM[23]数据集被用于评价模型自下而上显著性检测能力,由于未考虑到对自上而下显著性的建模,现有的深度学习模型在各个评价指标上甚至不如传统非学习模型.使深度学习模型具备自下而上的显著性建模能力存在以下难点:1)人类视觉的底层机制挖掘,需要大量的心理学合成图进行测试与分析,然而目前然尚未有样本数量足够且附带人眼跟踪数据的合成图数据集;2)尚未有研究能够证明深度学习模型能够建模自下而上的显著性.
基于以上挑战,考虑深度学习结合传统方法是一项十分有必要的工作.
与传统空间域视觉显著性检测模型相比,频域模型计算复杂度更低,且普适性较高.Hou等人[24]最先利用频域分析进行显著性检测,提出SR(Spectral Residual)模型,其认为从一张图片的幅度谱信息中去除冗余信息,剩下的就是人眼所关注的显著部分,其利用均值滤波将对数幅度谱进行过滤,将幅度谱剩余部分与原相位谱结合进行傅里叶逆变换得到显著图.Achanta等人[25]提出的FT(Frequency Tuned)模型通过对幅度谱进行高通滤波,并计算各个像素与原始图像像素均值的距离来得到显著性图,Guo等人[26]通过舍弃傅里叶变换相位谱信息,提出了PFT(Phase Spectrum of Fourier Transform)模型与利用四元数傅里叶变换的PQFT(Phase Spectrum of Quaternion Fourier Transform)模型.由于PFT效果与SR相同,Guo认为谱残差并非构建显著性的必要因素.Li等人[27]研究发现SR之所以与只含有相位谱的PFT取得相似的结果是因为SR的相位谱残差几乎完全抛弃了幅度谱中的信息.Li等人重新研究了幅度谱,其认为相位谱尖峰位置代表非显著区域,通过高斯滤波来平滑幅度谱来抑制非显著区域.不过该模型的复杂之处在于高斯滤波器的选择,其通过设定一组参数不同的高斯滤波器对幅度谱平滑,得到一组幅度谱,并根据这些幅度谱与原始相位图进行傅里叶逆变换得到一组显著性图,并选取效果最好的那张作为最终显著性图.后来的工作通过颜色通道、四元数图像虚部系数、显著图的选取方式等方面改进HFT模型[28].这些频谱类方法对于幅度谱的处理方式并不完美,不能使原图语义显著性信息得到保留.以上工作的借鉴意义在于说明了原图相位谱中含有丰富的自下而上显著性信息.
基于以上认识,本文尝试通过频域分析与深度学习结合,构建一个能够同时建模自下而上显著性以及自上而下显著性的深度学习显著性检测模型.
本文的主要贡献如下:
1)提出一个端到端编-解码显著性检测模型PHSalNet,该模型能从自然图像数据集中学习如何检测自上而下的显著性与自下而上的显著性.
2)提出利用相位谱提示模块改进编码网络浅层特征的提取,使网络能够利用更加显著的低级特征来构建高级语义特征.
3)提出自适应特征聚合模块,在解码网络各层中自动分配全局语义显著性特征与局部显著性特征的权重,使特征更加合理有效地被利用.
4)本文模型仅通过自然图像数据集训练,在自然图像数据集SALICON上取得先进水平的同时,在合成图数据集SID4VAM上各指标取得第一.解决了深度学习模型不能建模自下而上显著性的问题.
通过对频域类显著性检测模型的介绍可以看出通过将图片转换到频域进行分析处理并变换回空间域能以很高的效率提取到图片的显著性信息,在各频域类显著性检测方法对原图的处理过程中,对于包含非显著性信息和显著性信息的幅度部分,通过设计算法对其进行非显著信息进行抑制,而保留其显著性部分,对于相位谱信息则是完全保留了下来.本节通过对图像频域信息进行可视化分析,来研究频域信息对显著性检测的作用.
图1显示了自然图像与合成图的频域处理可视化效果,其中,左两列为原图以及显著性真值图;中两列为频域变换后,舍弃幅度谱并用同分布的高斯噪声代替,只留下相位谱后逆变换到空间域后的结果图;右两列是通过交换原图及显著性真值图的幅度谱信息得到的图像.
图1 频域显著性可视化分析Fig.1 Frequency domain saliency visual analysis
可以看到对于合成图,原图与显著真值图其相位有很好的不变性,利用原图相位与真值幅度进行结合,能够还原出与真值非常接近的结果;而自然图像的相位信息却与真值相位信息非常不同,直接对自然图像进行相位提取,并不会使原图中的自上而下的语义显著信息(人脸、肢体等)得到保留.以上分析能够解释为什么频谱类方法在面对复杂图像时,并不能取得很好的效果.
深度学习方法能通过卷积运算,得到大量低级特征图,从而将原图中复杂的信息拆分到各个通道中.由于语义信息可以通过通道与通道间的联系得到保留,在每个特征通道上提取相位信息,并不会使得原图自上而下显著性信息丢失.基于以上分析,本文试图通过相位谱提示,使编码网络能够提取更加显著的浅层特征,并利用所提取的浅层特征同时构建自下而上的显著性以及自下而上的显著性.
本文方法的整体框架如图2所示,网络为端到端的编-解码器结构.
在编码器中,为了使网络提取到更显著的特征,本文利用相位谱提示模块替换ResNet-50[12]的Conv1层.相位谱提示模块通过对浅层低级特征中的非显著信息进行过滤,一方面,使网络从包含更多显著信息的特征中学习高级显著特征,另一方面,使网络学习如何更好地提取拥有相位不变性的低级特征.
编码器首先对输入图片(3通道,大小256×256)利用7×7,步长为2的卷积(在卷积后都进行批归一化和ReLU非线性激活,下同)得到相位特征块(64通道,大小128×128),再对这些相位特征块进行相位提取后利用3×3卷积得到幅度特征块(64通道,大小128×128),利用相位特征块的相位特征以及幅度特征块的幅度特征进行相频结合得到局部显著特征块(64通道,大小128×128).之后将局部显著特征块输入到ResNet-50中,提取3,7,13,16残差模块的特征输出,依次命名为残差特征块1(256通道,大小64×64),残差特征块2(512通道,大小32×32),残差特征块3(1024通道,大小16×16),残差特征块4(2048通道,大小8×8).
解码器对残差特征块4进行3×3卷积,通过特征维度上降低参数量,得到解码块1(1024通道,大小8×8).为了能够使网络充分利用到各级显著特征,特别是特征块4中的全局显著特征,本文利用多级自适应特征聚合模块,对特征进行逐级解码,得到解码块2(512通道,大小16×16)、解码块3(256通道,大小32×32)、解码块4(64通道,大小64×64),最后通过上采样,以及3×3卷积得到最后的输出(1通道,大小256×256).
为了使编码网络能够提取更加显著的浅层特征,结合第2章的频域分析,本节提出了相位谱提示模块的具体实现.
在相位谱提示模块中,首先利用64个7×7大小的卷积核对图片进行扫描,将图片中的信息分解到64个特征通道中,得到相位特征块.对于相位特征块的每个通道而言,并不关注自上而下的显著性,其自下而上的显著信息能被相位谱所保留.由于单纯提取相位谱中的显著信息会使得幅度中的显著信息丢失,不同于传统频域显著性模型设计算法提取幅度显著性,本文通过卷积操作学习各通道上的幅度显著信息.首先通过公式(1)对相位特征块P(x,y)进行相位提取得到相位特征块相位图PP(x,y):
PP(x,y)=F-1[e(jφ(F(P(x,y))))]2
(1)
其中F(·)、F-1(·)分别是傅里叶变换和逆变换,φ(·)为取相位谱.
为了使网络学习如何在没有幅度显著信息的PP(x,y)上学习幅度显著的表达,本文通过一个3×3卷积得到幅度特征块A(x,y).幅度特征块用于对相位特征块进行幅度显著性信息的补充,两个特征块是逐通道对应的.在得到幅度特征块后,利用公式(2)对相位特征块中的相位信息以及幅度特征块中的幅度信息进行组合得到局部显著特征块G(x,y):
G(x,y)=F-1[|F(A(x,y))|e(jφ(F(P(x,y))))]2
(2)
从单个通道角度来看,局部显著特征块反映了相位特征块的自下而上显著性,而相位特征块反映了原图不同观察模式,所以局部特征块在单通道上反映的是局部显著性,而且是局部自下而上的显著性.局部显著特征通过后续残差网络进一步编码,不仅能够提取到语义特征,同时也能将局部自下而上显著特征结合为更全局的特征.
由于考虑到在网络不同阶段,各特征的重要性是动态变化的,为了充分利用到编码器提取到的各级特征,本文将残差特征块4的全局上下文显著性特征fglobal,残差特征块1~3的局部显著性特征flocal,以及解码块特征fd,通过多个自适应特征聚合模块进行聚合.
自适应特征聚合模块的结构如图3所示.fglobal与fd在输入聚合模块前,首先通过上采样,将大小调整为与flocal相同尺寸.对于各个特征,聚合模块通过3×3的卷积加全局平均池化来学习这个特征的权重w.在进行加权后fglobal分别与fd以及flocal进行通道合并,并各自经过3×3卷积进行通道降维,最后再次合并得到fout,即下一聚合模块的fd.由于fglobal拥有最多的通道数,全局语义信息最为丰富,同时自适应权重的加入,并不会使这些信息被过分关注,本文在所有聚合模块中均加入了fglobal.
图3 自适应特征聚合模块结构Fig.3 Adaptive feature aggregation module structure
显著性数据集中有两类真值图:第1类是注视图(fiaxation map),其为二值图,值为离散的注视点,下文记为P.第2类是显著图(saliency map),其为对注视图的高斯模糊,描述了注视点的分布,下文记为G.模型所检测的显著图记为S.
KLD(Kullback-Leibler Divergence)计算了两个概率分布的差异值,计算如公式(3)所示:
(3)
其中,i表示像素点,ε为正则化常数.KLD越低代表显著性和真值图越接近.KLD对零值敏感,对稀疏的预测集有较大的惩罚,能很好地改善预测的显著性分布.
NSS(Normalized Scanpath Saliency)是一种计算显著性图和真值图相似性的一种常用度量,其计算量注释点上的平均标准化显著性.其在归一化计算中考虑了像素点的显著性绝对值.由于在计算过程中减去了平均显著性值,其对线性变换保持不变性.NSS对假正点以及显著性的相对差异敏感.NSS的计算如公式(4)所示:
(4)
其中,i表示像素点,N为所有显著像素点之和,μ(·)和σ(·)分别表示输入的均值和标准差.NSS值为正说明二者存在关联性,且值越大说明关联性越高;为负,则说明二者存在逆关联性,值越小,则逆关联性越高,也就是说关联性越小.NSS对假负点的惩罚较AUC高,一些绝对值小的假负点会导致NSS结果的显著下降.利用NSS能很好地改善预测的显著点的位置.
本文采用的损失函数如公式(5)所示:
Loss=αNSS+KLD
(5)
由于显著性任务更加关注显著性的分布,所以本文使用一个较小的超参数α.本文将其设为-0.1,从而使模型更少地关注像素点,将重点放在对分布的估计.
眼动追踪数据集通常由作为视觉刺激的图像以及使用眼动追踪设备追踪记录的眼动数据所构成,眼动数据以二元的注视图以及对其进行模糊后的显著图进行表示.
SALICON[29]数据集:SALICON数据集是现有最大的显著性检测数据集,其中分别包含了10000、5000及5000张自然场景图片用于训练、验证及测试,测试集真值未公开,研究人员只能通过向SALICON显著性检测挑战(LSUN2017)提交检测结果来评估他们的模型.
SID4VAM数据集:该数据集包含15种激励类型,共230张合成图,真实值由34位观察者标注.其中包括:1)角显著性、2)基于条形角度的视觉分割、3)基于条形长度的视觉分割、4)基于条形连续性的轮廓整合、5)基于距离感知分组、6)特征与感知搜索、7)不对称搜索、8)粗糙表面搜索、9)颜色搜索、10)亮度搜索、11)差异尺寸搜索、12)方向搜索、13)混杂干扰物的方向搜索、14)非线性模式的方向搜索、15)特殊类别的方向搜索.其中,前5类为自由观察任务,后10类为视觉查找任务.本文利用此数据集评价模型对自下而上显著性的建模能力.
为了评估本文方法的有效性,本文使用AUC、sAUC、NSS、KLD、CC、SIM这几个评价指标对模型进行评价.其中,AUC、sAUC、NSS是描述像素绝对值相关性的评价指标,KLD、CC、SIM是描述分布相关性的指标.KLD和NSS已经在3.3节进行过介绍,本节简要介绍剩余的评价指标.同样的,公式中P指注视真值图.G指显著真值图,模型所检测的显著图记为S.
AUC(Area Under Curve):样本显著性目标检测任务中,标注的二元注视图中的1值(即显著点)可以看作正样本,0值(即非显著点)看作负样本,模型检测的显著图可被看作一个分类器,通过改变检测显著图判断的阈值,将像素点判断为正样本或负样本,通过以假正率(假正点占假正点与真负点的比例)作为横坐标,真正率(真正点占真正点与假负点的比例)作为纵坐标继而得到受试者工作特性曲线(Receiver Operating Characteristic Curve,ROC),AUC是ROC与横坐标所夹的面积.本文所使用的AUC为Judd等人提出的变种AUC_Judd[30],其以真正点占所有显著点的比例作为真正率,以假正点占所有像素点的比例作为假正率.
sAUC(shuffled-AUC):sAUC从其他图片中的显著性点采样作为其负样本,与AUC不同,sAUC对加入中心偏差(center bias)的模型进行惩罚.
CC(Linear Correlation Coefficent):CC用于对两个变量的线性相关性测量.其计算方式如公式(6)所示:
(6)
SIM(Similarity):SIM描述了两个分布的相似度.SIM对假负点的惩罚要比假正的高,也就是说SIM对未检测到的显著性点敏感,若显著图检测准确但不完整,SIM值不会高.SIM的计算如公式(7)所示:
SIM(S,G)=∑imin(Si,Gi),∑iGi=∑iSi=1
(7)
为了对本文模型进行验证以及建立对照实验,本文所有实验的软硬件环境配置情况如表1所示.
表1 软硬件环境配置Table 1 Hardware and software environment configuration
本文模型利用自然图像数据集SALICON进行训练,训练图片共10000张;在训练过程中利用SLICON提供的验证集进行模型评估,验证图片共5000张.通过向LSUN2017网站提交对测试集的检测结果来评价最终模型的性能.
在训练中,输入模型的图片大小统一调整到256×256,模型的ResNet-50部分利用ImageNet预训练的模型初始参数,使用随机梯度下降(SGD)及Nesterov动量算法[31]来训练整个模型.其他参数如表2所示.表2参数值的选取考虑了对硬件性能的充分利用,以及在参数更新时保证可靠的收敛速度并降低过拟合带来的影响.
表2 参数取值表Table 2 Parameter value table
4.4.1 消融实验
为了验证本文相位谱提示模块以及自适应特征聚合模块的有效性,本文将拥有完整结构的模型PHSalNet,与不含相位谱提示模块(即以基础ResNet-50为编码骨干)的模型,以及不含自适应特征聚合模块(以3×3卷积加上采样代替各级聚合模块)的模型进行定量及定性比较.所有模型均按4.3节配置进行训练.在SALICON验证集上的结果如表3所示,显著图检测样例如图4所示.
图4 消融结果可视化对比Fig.4 Visual comparison of ablation results
在移除相位谱提示模块后,除SIM外其余指标均有较大幅度下降.如图4所示,无相位谱提示模块的检测图将讲台以及路牌错误判断为显著目标,产生较多假正点.加入相位谱提示后显著区域更加准确但更小,含有更多假负点.由于SIM对假负点惩罚较大,所以在加入相位谱提示后SIM的值会降低.
为了从模型内部分析结果产生的原因,本节对浅层特征进行可视化,图5为有无相位谱提示模块的浅层特征可视化对比,其中有相位谱提示模块的模型提取的是局部显著特征块的特征,无相位谱提示模块的模型提取的是基础ResNet-50 Conv1层的特征.从浅层特征对比可以发现,在加入相位谱提示模块后,各个特征通道上的响应更加稀疏,更能表达自下而上的显著性.通过对相位谱提示模块的消融实验,验证了本文所提取的自下而上显著性浅层特征,能使网络更好地对显著性进行检测.
图5 浅层特征可视化Fig.5 Network shallow feature visualization
在移除自适应特征聚合模块后,各指标均会下降,主要影响基于像素绝对值的指标AUC、sAUC、NSS.这说明自适应的特征聚合更关注对显著度绝对值的分配,移除后无法很难好的在显著性区域中区分各像素上的显著度.如图4所示,由于缺乏自适应权重的学习,使得用于聚合的各个特征在网络不同阶段被同等对待,全局信息被过度利用,使得模型无法对显著的重要性进行判断.
4.4.2 自然图像数据集对比实验
为了评估本文同时结合自下而上显著性与自上而下显著性的方法对自然图像显著性检测能力,本文在SACLION上与其他最先进模型进行定量比较.
如表4所示,表中加粗为各指标排名前三.可以看到,本文方法在所有指标上都达到了先进水平,在KLD指标上优于所有对比方法.从数据中可以看出,本文方法在NSS与SIM指标上较弱,而这两个指标都是对假负点惩罚较大的指标,本文方法在对弱显著目标的响应上仍有欠缺.本文方法在CC与KID这两个基于分布的评价指标上分数较高,这可以解释为相位谱提示能够使得网络更好地检测图片中显著性区域的分布.
表4 与最先进方法在SALICON测试集上的结果对比Table 4 Comparison with state-of-the-art methods on the SALICON test set
对比结果表明,本文方法能从提取到的自下而上的显著性中获益,从而在自然图像上达到先进的显著性检测效果.
4.4.3 SID4VAM数据集对比实验
为了评估本文模型对自下而上显著性的检测能力,本文将SLICON数据集上训练的本文模型,与非学习模型GBVS[32]、ICF[33]、NSWAM[34]、SR、PFT、PQFT、DQCT[35]、HFT以及先进深度学习模型进行比较.结果如表5所示.本文方法在各个指标上均优于现有深度学习方法与非学习方法,在大多数指标上取得第一,与目前最优的非学习方法HFT相比,本文将频域分析与神经网络方法结合的方式,比起仅利用频域分析,能够更好地对自下而上显著性进行建模.
表5 与最先进方法在SID4VAM数据集上的结果对比Table 5 Comparison with state-of-the-art methods on the SID4VAM data set
进一步地,本文将所提方法在15种激励类型上与各方法进行可视化对比,其结果如图6所示.可以看到在大部分激励上,本文检测到的结果很好地符合人眼视觉系统的判断.比起对比方法,本文所检测的显著性区域更小但更准确.
图6 SID4VAM数据集显著性检测结果可视化对比Fig.6 Visual comparison of saliency detection results in SID4VAM dataset
在1~5行自由观察任务中,本文方法在频谱方法失效的视觉分割(第2、3行)任务上,能够成功地对人眼视点进行预测,同时在角显著性(第1行),基于距离的感知分组(第5行)任务上,比起对比方法,能够更加准确地模拟人眼视点的分布.
在感知(第6行)、不对称性(第7行)、大小(第10行)、亮度(第11行)、方向(第12~15行)等视觉搜索任务上,对比深度学习方法均检测失败,而本文方法能够准确对其进行检测,且比频谱方法HFT效果更好.
但对于第4行基于条形连续性的轮廓整合,以及第8行粗糙表面的缺陷搜索,本文方法以及对比方法均检测失效,其反映了本文频域分析结合深度学习的方法仍然存在不足.
针对深度学习模型无法从自然图像数据集中学习到如何对自下而上的显著性进行检测的问题,本文提出结合频域分析改进编码网络浅层特征的提取.考虑到对原图进行相位谱提取会丢失原图中的自上而下显著性信息,本文设计了特征通道上的相位谱提示模块,该模块在保留原图自上而下显著性特征的同时,能够为深层解码网络提供更加显著的低级特征.考虑不同特征在网络不同阶段重要性会动态变化,本文提出了自适应特征聚合模块.在自然图像数据集SALICON上的实验表明,本文相位谱提示以及自适应特征聚合能够提高网络显著性检测能力,与现有深度学习方法相比,对自上而下的显著性检测达到先进水平.在合成图像数据集SIDVAM上的实验表明,本文方法对自下而上的显著性检测能力优于对比深度学习方法以及传统非学习方法.虽然在少数几类激励类型上仍不能检测成功,但是本文为深度学习方法构建自下而上显著性提供了新的思路,证明了不依赖合成图数据集进行学习,将传统方法与深度学习结合也能使深度学习模型具备自下而上的显著性检测能力.