国网信通亿力科技有限责任公司 席 勒 兴业银行股份有限公司 李良御
近年来,注意力机制已经成为神经网络领域中一个重要的概念,被广泛地应用于自然语言处理、语音识别以及图像解释等任务中。注意力机制类似于人类视觉的观察机制,关注于从大量的数据中寻找当前任务的关键信息,改善神经网络中有效特征的提取。
目前,大量的基于图像级标签的弱监督语义分割方法中,使用神经网络的图像注意力机制定位目标的种子区域,并结合扩充算法寻找完整的目标掩膜(mask)。例如,在SEC 算法中提出种子定位、种子扩张以及边界限制三种损失函数,旨在从注意力定位区域逐渐寻找完整的分割掩膜[1]。在DSRG 算法中提出运用经典种子生长分割算法,产生从初始定位区域逐渐覆盖于全图像的分割掩膜[2]。然而,现有的图像级监督的语义分割方法,由于缺少精确的空间定位信息,通常会在边缘处存在粗糙的分割结果。
受到种子定位思路的启发,本文提出超像素相似性传递的弱监督语义分割算法设计。如图1所示,以图像注意力机制为基础定位目标种子区域,并引入随机游走算法以超像素块的形式传递种子区域的相似性。本文通过边缘检测器寻找不同物体之间的边缘线索,生成具有相同语义集合的超像素块区域,并使用超像素块代替像素点作为图像基本单位扩张种子区域,保证了局部区域的相同语义特征。同时,在传递相似性特征过程中,将随机游走结果以超像素的方式融合,提升了算法的准确性和鲁棒性。在PASCAL VOC2012数据集上进行验证,结果表明本章提出的弱监督语义分割方法相比于其它算法在mIoU 评价标准下精确度提升了2.1%,同时解决了语义分割标签边缘粗糙以及容易产生错误分割区域的问题。
图1 类别掩膜生成流程图
本文算法总共分为两个阶段,第一阶段通过优化算法产生像素级语义标签;第二阶段使用文中生成的语义标签训练语义分割模型,以该模型的输出结果与其它弱监督算法做出比较,以此判断本文算法的有效性。在第一阶段中,为了生成高质量的语义分割标签,以图像注意力机制为基础,在图像预处理、种子标定、产生像素标签三个方面进行设计。
在传统的图像分割领域中,大部分算法以像素点作为分割的基础单元,但随着彩色图像分辨率的增大,待处理的计算量也急剧增加。本文受灵感于UCM 算法[3]通过在多尺度上结合全局与局部特征,计算每个像素点属于边缘的概率值,并通过设定阈值生成图像的超像素图。可以表示为。
最终,gpb 的值经过Sigmoid 函数变换,输出值每一个像素点作为边缘的概率值。为了产生图像真边界,在此基础上使用分水岭算法寻找真边缘,边缘强度由边界在走势方向上各像素点概率平均值确定。在本文中使用0.15作为阈值产生所有超像素图,通过预处理的图像,将图像的最小单位扩大为了超像素块,不仅减小了后处理的计算量,并且通过聚合相似性像素点,减少了图像噪声。
图像级类别标签作为监督信息时,缺少有效的目标的定位线索,成为了弱监督语义分割的难点。为了解决这个问题,Zhou 等人[4]提出分类网络中卷积层保留了语义位置信息,然而这种定位效果由于全连接层的使用失效了。为了保留卷积层的定位效果,使用全局平均池化层代替全连接层,产生的类激活映射(class activation mapping,CAM)有效定位于目标物体最具有辨别性区域。对于类别c 在卷积层空间位置(x,y)的激活值可以表示为。
原算法类激活映射方式缺少关于背景区域的分值图,则需要对各个类别的激活分值图进行标准化操作,假设某类别的最大激活值为Mc-max。则修正后的关于图像背景区域的类激活映射分值图可表示为,其中α 为调整背景激活分值的超参数。通过这种方式有效的生成关于背景类别的激活映射分值图。根据设定阈值t,将处于空间位置(x,y)处且低于阈值t(本章中t 取0.3)的激活值置为零,并选取相应位置处的最大激活值类别作为该像素点语义。
直观来说,类激活映射就是将不同空间单元的激活值线性加权后的处理结果。然而,种子区域在边缘处存在粗糙的分割结果,定位区域中不仅包含目标物体,并且含有部分其它类别物体。因此需要利用超像素图对定位结果进行修正,使得产生更加准确的超像素块定位区域。在超像素块内的各像素点之间具有较强的相似性特征。本文设计填充率选择方案,根据粗糙定位区域对超像素块的填充程度筛选超像素种子。假设当前超像素块中大部分区域属于种子点,则认为该像素块与种子所含语义高度相关,赋予当前超像素块相应的语义信息,反之则认为超像素块与种子无关。则超像素块的填充率可表示为:
其中,Bi表示图像中索引号为i 的超像素块,Sc表示类别C 的粗糙种子区域,通过计数区域内像素点的方式,判别各超像素块填充率数值。当超像素块内填充率大于指定范围时,判定为指定语义的超像素块。同时,为了避免种子区域过小,填充率筛选后没有产生相应语义的超像素块,取种子区域所在超像素块直接赋予种子语义,保证了图像内存在的语义信息都有各自的定位区域。填充后的超像素种子,相比原始的粗糙种子包含更少的噪声。
超像素相似性传递模块在建模过程中,以随机游走算法[5]为灵感,首先将待分割图像构建成无向图模型G=(V,E),其中V 为图节点集合,E 为图像的边集合,连接两个节点vi和vj的边可以表示为eij。同时,为了保证两个坐标之间相似度有效传递,并且满足图像平滑性需求。不同于原始算法在4邻域或8邻域空间中计算节点对的相似性,本文设置搜索半径为γ,并在HSV 颜色空间中,计算各节点对之间的相似性权值Wij,可以表示为。
在上式中共包含两项,第一项被称作色域相似性,第二项被称作空域相似性。在第一项中,n 表示HSV 颜色空间通道索引值,g 表示指定图像位置在通道n 的强度。λ 为通道权重系数,为了减轻光亮度对相似性传播的影响,亮度通道的权重设为0.2,其余均为0.4。由此可知,在满足搜索半径-γ≤ij≤γ 的范围内,当两个像素值越接近,则色域相似度越强。除此之外,当两节点对在空间距离越近时,则空域相似性越强。
通常情况下,由于噪声对于相似性传递的影响,利用概率最大值判别各像素点真实类别会产生不准确的分割结果。因此延用超像素块的思路,减少噪声对于整体分割区域的影响。为了计算各超像素块属于某一类别的概率值Bc,该过程可以表示为,其中,S 表示指定超像素块内像素点的集合,N 为超像素块内像素点的数目。通过计算超像素块内各像素点的平均概率作为超像素块的概率值,选择最大概率值的类别作为相应的语义标签。最终,利用相似性传递模块的输出结果作为语义标签,训练语义分割网络。
本章提出的算法在PASCAL VOC 2012数据集下进行验证。PASCAL VOC 2012分割数据集中有包含背景在内共21类的像素级标签,原始数据集中有1464张训练集图像,引入SBD 数据集[6]将训练图像扩充至10582张,同时包含1449张验证集图像。在本文中,仅利用训练集的图像类别标签作为弱监督信息,测试实验效果时使用原数据集中的真实标签。为了验证本文所提方法的有效性,本文采用平均交并比(mIoU)作为评价标准对分割结果进行测试。
本文提出算法的两个阶段,均在VGG16网络架构上进行修改,并使用公开数据集ImageNet 的预训练参数对网络进行初始化操作。在制作像素级标签的过程中,为了保留分类网络对于目标定位的效果,使用卷积层替换了全连接层fc6和fc7,并且紧接一个全局平均池化层,将整合后的全局特征输入Softmax 预测层。在分类网络的训练阶段,输入图片的大小被调整为448×448,设置初始学习率为0.01,权重衰减为0.0001,动量0.9,图像批量大小设置为16,共训练20轮。在推断阶段,共生成20个类别的激活映射分值图。
在语义分割模块中,使用DeepLab-CRFLargeFOV 作为分割模型。其中,删除了VGG16架构最后的全连接层,使用卷积层代替。并且引入空洞卷积,将conv5中的三层卷积层设置空洞卷积参数为2,同时fc6设置空洞卷积参数为12,且pool4和pool5的采样步长调整为1,使模型输出尺度更大的语义分割结果。在语义分割网络的训练阶段,使用随机梯度下降算法优化网络,其中动量值为0.9,权重衰减为0.0005。对于网络中进行结构修改的部分,使用0均值且方差为0.05进行随机初始化。设置初始学习率为0.001,并随训练过程逐渐降低,衰减率为0.9,图像批量大小设置为4,共训练15 轮。在推断阶段中,语义分割结果使用全连接条件随机场进行后处理。
为了探索本文算法里各个阶段产生语义标签质量的变化情况,在测试阶段进行了实验结果定量分析。在表1展示了语义标签对比效果,可以发现SPBCAM 相比SPN在精确度上提升了4.7%,原因在于本文所提方法通过结合全局相似性与局部相似性,更好的判别各个像素点属于边缘的情况,有效的过滤掉假边缘噪声,使得产生的超像素块中聚合了相似性强的像素点。除此之外,额外的CAM 优化步骤大量的减少了错误定位区域,因此产生的种子区域效果更好。
另外,在使用了SPBCAM 作为种子标记区域,本文提出的种子扩张策略相比随机游走算法在语义标签平均交并比精确度上提升了5.5%,原因在于使用相似性搜索半径的方式代替传统图论算法中四邻域或八邻域的连接方式,使算法可以在更大的感受野范围内判别图节点的相似性程度,减少了由于假边缘产生的相似性传递隔断。并且利用超像素块作为图像语义判别的基础单位,增强了算法在扩张种子区域时的鲁棒性。
总体来看,本文提出的算法在多阶段优化策略下逐步改善语义标签效果,不仅提高了图像种子区域的精确性,而且以种子区域为线索,有效的将相似性特征传递到图像的未标记区域。算法各阶段语义标签质量对比(%):CAM34.6、SPBCAM48.5、SPBCAM+RW56.7、SPBCAM+SPBRW62.2。
为进一步证明超像素相似性传递算法的有效性,使用本文产生的像素级语义标签训练语义分割网络。另外,在验证集中使用mIoU 评价标准对语义分割结果测试,并与目前主流的弱监督语义分割方法进行效果对比,在表2中展示WSSL、STC、SEC、CBTS、AdvErasing、DSNA、MCOF 工作以及本章所提出的弱监督语义分割方法的准确率对比。为了便于观察,在表内对各个类别的最高分值进行加粗处理。
在表2中可以看出,本章所提方法在21个类别(包括背景)的mIoU 分值上获得了59.7%的分数,相比于其它弱监督语义分割方法在分割精度上提升2.1%,获得了更精确的语义分割结果。尤其在例如“背景”、“鸟”、“牛”等多个类别中均获得了最高的分值。分析原因在于本章方法产生的语义分割标签在边缘处有着更精确的细节效果,同时超像素的方式可以聚合具有强相似性的像素点,在语义标签形成的过程中利用该特性可以有效的滤除噪声区域,产生更加准确的语义标签。除此之外,回顾表1可以发现,超像素种子定位的效果很大程度上决定着同种类别下语义分割结果的质量,例如类别“牛”在超像素种子定位阶段获得了62.2%的分值,种子区域经过相似性传递后获得了更精确的语义标签,因此类别“牛”的语义分割效果相比于其它弱监督语义分割方法中最好的结果仍然高出了4.7%。图2中展示了部分图像的语义分割效果。
图2 语义分割效果展示
表2 监督语义分割效果比对(单位:%)
本文以图像注意力机制为基础定位目标种子区域,同时以超像素作为图像的基本分割单位,两者相互结合产生高精确度的超像素种子代替随机游走算法的人工交互标记。除此之外,在相似性传递阶段设计了搜索半径以及超像素语义判别等优化策略,解决了随机游走算法容易受假边缘影响的问题,产生了高质量的语义标签。最后,利用语义标签训练语义分割网络,并在PASCAL VOC2012数据集以及SBD 补充数据集中,对语义标签和弱监督语义分割性能以mIoU 指标作为评价标准测试,并与其它主流图像级弱监督语义分割方法进行比较。实验结果表明,本文所提出的弱监督语义分割方法相比于其它主流方法在mIoU 分值上提高了2.1%,并且该算法具有更强的鲁棒性,同时语义标签有着高精确度的边缘分割效果。