一种融合图像分类的视觉显著性检测方法
技术领域
本发明属于图像检测与智能识别技术领域,特别是指一种视觉显著性检测方法。用于解决图像标注、监督和行为预测等技术问题。
背景技术
在一幅图像中,视觉显著性检测旨在估计出最为引起人们关注的对象在图像中的位置。视觉显著性检测的应用在日常社会生活中非常广泛,例如,在复杂的商城街道场景中,利用监控设备监察商城街道的安全和秩序,需要对携带高危物品和可疑举止行为的人员监督和排查,这除了具有专业素养的人员现场排查之外,同时还需要通过视频时刻监控。这样的监督和排查不但消耗资源大,并且无法避免因人员监察疲劳和侥幸心理而造成的重大疏漏。因此有必要通过视觉显著性检测技术帮助人们在特定的场景中快速、准确地聚焦在感兴趣或者危险的目标上,以便更好地节约人力物力。
近几年,视觉显著性检测受到计算机视觉领域各个研究机构的关注和重视。本领域的研究算法中,有些算法认为,可根据多尺度空间下提取图像低阶特征来形成当前图像的显著图,用于预测该场景下视觉显著性关注的部分,例如L.Itti等提出一种基于视觉显著性关注的快速场景分析模型[L.Itti,C.Koch,and E.Niebur.A model of saliency-based visual attention for rapid scene analysis.IEEE Transactions on PatternAnalysis and Machine Intelligence(PAMI),(20):1254-1259,1998.],J.Harel等在此基础上引入了基于图的显著性模型,这种模型定义了基于不同显著图的马尔科夫链,并且将显著性映射的位置的平衡分布作为激活函数和显著点的值,得到一种基于图论的视觉显著性检测方法[J.Harel,C.Koch,and P.Perona.Graph-based visual saliency.In NeuralInformation Processing Systems(NIPS),2006.]。但这种基于图像低阶特征的视觉显著性检测将关注点定位在图像所属的低阶信息,而很少关注纹理和边缘等重要的高阶信息,从而影响显著性判断和检测。而且,低阶信息冗余性大,对低阶信息的过多关注消耗资源,检测效率低。
视觉显著性检测作为一种智能模拟人的视觉特点,提取图像的显著区域,存在一种视觉注意机制的概念,即面对一个场景时,人的视觉系统会主动对感兴趣的区域进行处理,选择性地忽略不感兴趣区域,这些人们感兴趣的区域被称为显著性区域。人类的视觉注意机制有两种策略:
(1)自底而上基于数据驱动的注意机制
仅受感知数据的驱动将人的视点指导到场景中的显著区域,通常与周围具有较强对比度或与周围有明显不同的区域吸引自下而上的注意。
(2)自上而下基于任务驱动的目标注意机制
由人的“认知因素”决定,如知识、预期和当前的目标。针对图像的特定特征来计算图像区域的显著性。
T.Judd等提出的利用人类的视觉注意机制进行的“自底而上、自上而下”的视觉显著性检测[T.Judd,K.Ehinger,F.Durand,and A.Torralba.Learning to predict wherehumans look.In IEEE International Conference on Computer Vision(ICCV),2009.]不但结合图像低阶特征进行图像的视觉显著性分析,同时结合了中、高阶图像特征的应用。这种全面掌控的图像信息的算法有效改善了只保留图像低阶特征信息丢失造成的误检漏检情况,但仍然存在信息量冗余情况和检测效率低的问题。
随着深度学习在工业领域的广泛使用,基于深度神经网络的视觉显著性检测算法比传统算法更为鲁棒,J.Pan等对采用深度神经网络的算法进行了对比[J.Pan,E.Sayrol,X.Gir′o-i Nieto,K.McGuinness,and N.E.O’Connor.Shallow and deep convolutionalnetworks forsaliency prediction.In IEEE Conference on Computer Vision andPattern Recognition(CVPR),2016.]。其中,最近对视觉显著性检测的深度学习算法中,M.K¨ummerer等分别使用了AlexNet和VGG-19训练[M.K¨ummerer,L.Theis,andM.Bethge.DeepGaze I:Boosting saliency prediction with feature maps trained onImage Net.In International Conference on Learning Representations(ICLR),2015.]、[M.K¨ummerer,T.S.Wallis,and M.Bethge.DeepGaze II:Reading fixationsfrom deep features trained on object recognition.ArXiv preprint:1610.01563,2016.],后者中提出了一种基于多分辨率的卷积神经网络,用于训练图像区域中心在多分辨率中的固定和非固定的位置。不同的“自上而下”视觉机制的视觉特征能够在更高层中得到学习,而“自下而上”视觉机制所具有的突破性的创新思路同样被后来的研究人员延伸和发展,N.Liu等[N.Liu and J.Han.A deep spatial contextual long-term recurrentconvolutional network for saliency detection.ArXiv preprint:1610.01708,2016.]认为,并行的学习每幅图像中相关联的显著点的局部特征,同时结合全局内容和场景内容来推测属于该图像的视觉显著点,这种局部结合整体的思路非常适用,因此,这种结合的模型能够有效地学习一种长期空间交互和场景内容多变的图像显著性检测。
为了有效地训练深度神经网络,使训练的网络各司其职,分工明确,需要将复杂的网络功能化,例如M.Cornia等提到一种结合DCNN不同层的特征提取进行视觉显著性检测[M.Cornia,L.Baraldi,G.Serra,and R.Cucchiara.A deep multi-level network forsaliency prediction.In International Conference on Pattern Recognition(ICPR),2016.],该模型包括:(1)特征提取DCNN;(2)用于特征编码的网络——权重低、属高层特征映射;(3)优先学习的网络。M.Cornia等在文中还介绍了一种新的损失函数:衡量与真实显著性点的相似性、保持预测映射的不变性、重要像素点属于显著性点的概率固定。选择一种合适的损失函数能够有效的提高结果的精确度。
深度学习的算法由于深度神经网络具有很强的自主特征学习和提取的能力,并且存在所见特征维数的处理,很多程度上去掉了冗余信息,通过有效的监督或半监督式的学习,极大程度上提高了算法的实用性和稳定性,但是目前的基于深度学习的图像显著性检测算法受限于显著性目标的分辨率、大小以及误差传递函数,使得算法仍存在诸多问题。尤其是目标检测存在很多误检,原因在于分类上的不足。
由此可见,现在的图像显著性检测方法都具有一定的缺陷。
发明内容
鉴于上述技术背景,本发明的目的在于:提供一种能够快速有效地对图像进行分析并做出判断的方法,筛选出最为引起人们关注的目标位置并给予目标分类,可以广泛应用于图像标注、监督和行为预测中,不仅可以大大节约资源成本,而且能够显著提高准确性。
本发明的上述目的通过以下技术方案实现:
首先,提供一种基于卷积神经网络的视觉显著性检测模型,它包括图像编码网络、图像解码网络和图像辨识网络;
所述的图像编码网络通过在VGG-16网络模型基础上去掉最后一层池化层和全卷积层的方式构建,并在固定除网络最后两个卷积层部分外的其他权值的前提下,经多尺度图像做最后两层卷积结构的参数训练后形成;
所述的图像解码网络对称于所述的图像编码网络,在VGG-16网络模型基础上由上采样层替换池化层的方式构建,且除最后一层卷积层后连接非线性sigmoid层外,其他卷积层后连接非线性ReLU层;
所述的图像辨识网络结构中包括用于特征提取的小卷积核的卷积层、用于降低特征维数的池化层和用于最后的特征输出的全连接层;所述图像辨识网络包括两部分输入和两部分输出,所述的输入包括所述图像编码网络生成的原图像的视觉显著图和所述图像解码网络所得生成的视觉显著图;所述的输出包括生成图的概率分布和分类标签的概率分布。
本发明优选的模型中,所述的图像编码网络经多尺度图像做最后两层卷积结构的参数训练,具体优选采用所述的VGG-16网络模型的3×3小卷积核对特征层自动提取,并用最大池化层对特征映射层大小进行缩减,然后在原始VGG-16网络模型基础上通过训练微调后两层参数的大小。
本发明所述的基于卷积神经网络的视觉显著性检测模型中,所述的图像编码网络可以完成对不同分辨率图像的特征编码任务,从而生成原图像的视觉显著图;所述的图像解码网络可以生成与输入图像同分辨率或更高分辨率的生成的视觉显著图;所述的图像识别网络用于得到逼近真实显著图的预测显著图,同时估计该显著点真实类别属性,输出目标分类。
在此基础上,本发明进一步提供一种融合图像分类的视觉显著性检测方法,利用本发明所述的基于卷积神经网络的视觉显著性检测模型,包括以下步骤:
S1:采用多尺度图像作为所述的图像编码网络的输入,提取多分辨率下图像的特征作为编码特征向量F;原图像I表示为M×N的矩阵图,每一点的坐标可表示为(x,y),像素值表示为I(x,y),则最终所述的编码特征向量F可表示为F=[f1,f2,f3,···,fn];
S2:固定所述图像编码网络中除最后两层外的权值,训练网络参数,得到原图像的视觉显著图I_saliency_map_real;一个卷积神经网络通常可表述为不同层的串联结构,这种层的定义可表述为以下式(I)-(II):
θl=(Wl,bl) (I)
其中,θl表示该层的层参数,φl为非线性层参数,l∈[0,L-1],f0(I(x,y))=I(x,y);
假设卷积核参数为nl-1×nl×kl×kl,nl,kl表示层l的卷积核数量和大小,且n0=1;
S3:将S1中所述的编码特征向量F作为所述的图像解码网络的输入,对原图像I对应的显著图I_saliency_map_real做归一化处理,其范围为[0,1],I_saliency_map_real中的值为该点受关注的概率Psaliency,计算方法如下式(III)所示:
其中,Isaliency(x,y)=f(I(x,y);θ),表示从I(x,y)到I_saliency_map_real的映射函数,即I_saliency_map_real对应I(x,y)的显著值,相应地,Isaliency_min(x,y)表示I_saliency_map_real中对应I(x,y)的最小显著值,Isaliency_max(x,y)表示最大显著值;θ表示模型参数;通过式(III)的计算即可得到Psaliency;
S4:对所述的图像解码网络输入F,通过上采样层和非线性sigmoid层最终得到生成的视觉显著图I_saliency_map_fake,将I_saliency_map_fake中所有显著点构成的集合看作一个事件集合S
saliency={P
saliency_1,P
saliency_2,…,P
saliency_M×N},采用所述的非线性sigmoid层操作:
保证显著点之间的独立性;
S5:利用所述的图像辨识网络,以S2得到的原图像的视觉显著图和S4得到的生成的视觉显著图作为输入,采用3×3的小卷积核的卷积层提取特征,然后经池化层两两一组进行池化处理,降低特征维数,最后采用三个全连接层输出生成图的概率分布和分类标签的概率分布。
本发明优选的方法中,通过以下式(V)-(VI)将S5得到的特征作为误差函数的输入,进行所述图像辨识网络的权值更新:
Ls=E[log P(Psaliency=real|I_saliency_real)]+E[log P(Psaliency=fake|I_saliency_fake)] (V)
LC=E[log P(C=c|I_saliency_real)]+E[log P(C=c|I_saliency_fake)] (VI)
其中,
I_saliency_map_real为S2中对应原图像I的视觉显著图;
I_saliency_map_fake为步骤S4中解码网络生成的原图像I的视觉显著图;
P(Psaliency=real|I_saliency_real)表示真实视觉显著图中真实显著点的概率;
P(Psaliency=fake|I_saliency_fake)表示生成的视觉显著图中伪显著点的概率;
log P(C=c|I_saliency_real)表示真实视觉显著图中真实类别属性的概率;
P(C=c|I_saliency_fake)表示生成的视觉显著图中真实类别属性的概率;
符号E表示期望;
则所述的图像辨识网络的误差传递函数表示为下式(VII):
LDIS=Ls+LC (VII)。
本发明中,所述的图像编码网络和图像解码网络统称为生成式对抗网络,在对生成式对抗网络的误差传递和参数训练中,主要采用一种感知误差,主要包括三部分,基于原图像显著图的误差、基于对抗性网络误差和融合分类误差,其中,基于对抗性网络误差和融合分类误差如式(V)-(VI)所示,则基于原图像显著图的误差传递函数和网络训练过程表述如下:
a:采用二值交叉熵的计算方式,通过以下公式(VIII)生成:
其中,S
j表示原图像对应的视觉显著图事件集合中的独立事件;
表示图像解码网络生成的视觉显著图事件集合中的独立事件。
b:在训练过程中采用一种交替训练的方式,使用生成式对抗网络的生成的视觉显著图和原图像的视觉显著图作为输入,训练所述图像辨识网络,并由所述的式(VII)提到的误差传递函数LDIS计算反向误差并更新权重。
c:固定所述图像辨识网络的权重,输入原图像作为生成式对抗网络输入,训练生成式对抗网络,误差传递函数公式表达为式(IX):
LGAN=αLBCE+βLC-Ls (IX)
其中,LBCE为计算出的基于二值交叉熵误差(算法见式(VIII));LC为计算出的基于融合分类误差(算法见式(VI));Ls为计算出的基于图像辨识网络误差(算法见式(V))。
与现有技术相比,本发明是采用生成式对抗网络(图像编码网络和图像解码网络统称为生成式对抗网络)提取图像中最为引起人们关注的目标特征,并利用辨识网络识别目标位置并给予目标分类。本发明的方法中主要应用了三个网络:基于卷积神经网络的图像编码网络、基于卷积神经网络的图像解码网络、以及融合图像分类的图像识别网络。其中,基于卷积神经网络的图像编码网络利用多尺度图像做参数训练,完成对不同分辨率图像的特征编码任务,这项技术解决了对不同分辨率图像的特征提取任务,对不同清晰程度的图像具有鲁棒能力;基于卷积神经网络的图像解码网络采用上采样层进行图像解码训练,并添加sigmoid层来保证得到的每个显著点彼此相互独立,进而完成与输入图像同分辨率或更高分辨率的视觉显著图的生成;融合图像分类的图像识别网络利用二值交叉熵作为误差传递函数修正了前两个网络的参数,得到逼近真实显著图的预测显著图,同时估计该显著点真实类别属性,输出目标分类。本发明方法中,通过上述三种网络相互配合,各司其职,相互协作很好地完成了本发明所述的任务,实现了快速有效地对图像进行分析并做出判断的目的,在图像标注、监督和行为预测等实践中获得了节约人力物力成本、显著提高准确性等良好效果。
附图说明
图1为本发明实施例1的流程示意图。
图2A为实施例1检测的户外场景原图;图2B为经实施例1的视觉显著性检测得到的实际的视觉显著性特征图;图2C为经实施例1的实验结果得到的显著性特征图及其分类(带标签)。
图3A为实施例2检测的室内场景原图;图3B为经实施例2的视觉显著性检测得到的实际的视觉显著性特征图;图3C为经实施例2的实验结果得到的显著性特征图及其分类(带标签)。
图4A为实施例3检测的人体行为原图;图4B为经实施例3的视觉显著性检测得到的实际的视觉显著性特征图;图4C为经实施例3的实验结果得到的显著性特征图及其分类(带标签)。
图5A为实施例4检测的复杂场景原图;图5B为经实施例4的视觉显著性检测得到的实际的视觉显著性特征图;图5C为经实施例4的实验结果得到的显著性特征图及其分类(带标签)。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图对本发明的具体实施方式做详细的说明。
在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是本发明还可以采用不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本发明内涵的情况下做类似推广,因此本发明不受下面公开的具体实施例的限制。
实施例1
一种对如图2A所示的户外场景图像的视觉显著性检测方法,采用如图1所示流程,包括以下步骤:
S1:采用图2A的多尺度图像作为所述的图像编码网络的输入,提取多分辨率下图像的特征作为编码特征向量F;原图像I表示为M×N的矩阵图,每一点的坐标可表示为(x,y),像素值表示为I(x,y),则最终所述的编码特征向量F可表示为F=[f1,f2,f3,···,fn];
S2:固定所述图像编码网络中除最后两层外的权值,训练网络参数,得到原图像的视觉显著图I_saliency_map_real;一个卷积神经网络通常可表述为不同层的串联结构,这种层的定义可表述为以下式(I)-(II):
θl=(Wl,bl) (I)
其中,θl表示该层的层参数,φl为非线性层参数,l∈[0,L-1],f0(I(x,y))=I(x,y);
假设卷积核参数为nl-1×nl×kl×kl,nl,kl表示层l的卷积核数量和大小,且n0=1;
S3:将S1中所述的编码特征向量F作为所述的图像解码网络的输入,对原图像I对应的显著图I_saliency_map_real做归一化处理,其范围为[0,1],I_saliency_map_real中的值为该点受关注的概率Psaliency,计算方法如下式(III)所示:
其中,Isaliency(x,y)=f(I(x,y);θ),表示从I(x,y)到I_saliency_map_real的映射函数,即I_saliency_map_real对应I(x,y)的显著值,相应地,Isaliency_min(x,y)表示I_saliency_map_real中对应I(x,y)的最小显著值,Isaliency_max(x,y)表示最大显著值;θ表示模型参数;通过式(III)的计算即可得到Psaliency;
S4:对所述的图像解码网络输入F,通过上采样层和非线性sigmoid层最终得到生成的视觉显著图I_saliency_map_fake,将I_saliency_map_fake中所有显著点构成的集合看作一个事件集合S
saliency={P
saliency_1,P
saliency_2,…,P
saliency_M×N},采用非线性Sigmoid层操作:
保证显著点之间的独立性;
S5:利用所述的图像辨识网络,以S2得到的原图像的视觉显著图和S4得到的生成的视觉显著图作为输入,采用3×3的小卷积核的卷积层提取特征,然后经池化层两两一组进行池化处理,降低特征维数,最后采用三个全连接层输出生成图的概率分布和分类标签的概率分布。
通过以下式(V)-(VI)将S5得到的特征作为误差函数的输入,进行所述图像辨识网络的权值更新:
Ls=E[log P(Psaliency=real|I_saliency_real)]+E[log P(Psaliency=fake|I_saliency_fake)] (V)
LC=E[log P(C=c|I_saliency_real)]+E[log P(C=c|I_saliency_fake)] (VI)
其中,
I_saliency_map_real为S2中对应原图像I的视觉显著图;
I_saliency_map_fake为S4中解码网络生成的原图像I的视觉显著图;
P(Psaliency=real|I_saliency_real)表示真实视觉显著图中真实显著点的概率;
P(Psaliency=fake|I_saliency_fake)表示生成的视觉显著图中伪显著点的概率;
log P(C=c|I_saliency_real)表示真实视觉显著图中真实类别属性的概率;
P(C=c|I_saliency_fake)表示生成的视觉显著图中真实类别属性的概率;
符号E表示期望;
则所述的图像辨识网络的误差传递函数表示为下式(VII):
LDIS=Ls+LC (VII)。
实施例2
一种对如图3A所示的室内场景图像的视觉显著性检测方法,采用如图1所示流程,步骤基本同实施例1。得到图3B所示的实际的视觉显著性特征图和图3C所示的显著性特征图及其分类(带标签)。
实施例3
一种对如图4A所示的人体行为图像的视觉显著性检测方法,采用如图1所示流程,步骤基本同实施例1。得到图4B所示的实际的视觉显著性特征图和图4C所示的显著性特征图及其分类(带标签)。
实施例4
一种对如图5A所示的复杂场景图像的视觉显著性检测方法,采用如图1所示流程,步骤基本同实施例1。得到图5B所示的实际的视觉显著性特征图和图5C所示的显著性特征图及其分类(带标签)。