Segmentação semântica supervisionada fracamente: avanço rápido da anotação no nível da imagem para a previsão no nível do pixel

Em

1. Fundo

A segmentação semântica, que visa classificar todos os pixels de uma imagem, tem sido uma das principais tarefas no campo das imagens de visão computacional. Em aplicações práticas, por poder localizar com precisão a área onde o objeto está localizado e eliminar a influência do fundo com precisão em nível de pixel, sempre foi um método confiável para reconhecimento refinado e compreensão da imagem.

No entanto, construir um conjunto de dados de segmentação semântica requer rotular cada pixel em cada imagem. De acordo com as estatísticas, uma única segmentação de imagem de 1280*720 pixels e tempo de rotulagem é de cerca de 1,5 horas [1], e os recursos humanos e materiais necessários para rotular conjuntos de dados que exigem dezenas de milhares ou 100.000 para produzir resultados ideais tornam o negócio real relação de entrada-saída do projeto extremamente baixa.

Visando a esse problema, a segmentação semântica fracamente supervisionada, que precisa apenas de anotações em nível de imagem para obter resultados de segmentação próximos, é um tema quente nos últimos anos. Essa tecnologia alcança a previsão densa de imagens em nível de pixel usando anotações em nível de imagem mais simples e prontamente disponíveis para obter e otimizar as regiões de segmentação de sementes de objetos de forma a treinar um modelo de classificação.

       Após uma pesquisa aprofundada, a equipe do algoritmo Yidun analisou as características da tecnologia de segmentação semântica fracamente supervisionada na prática e verificou sua eficácia em projetos reais, implementando com sucesso a tecnologia em projetos reais e alcançando uma melhoria significativa do índice de projeto, o que auxilia efetivamente o refinado identificação de serviços de segurança de conteúdo Yidun.

       Em seguida, este artigo apresentará a classificação e o processo geral de segmentação semântica fracamente supervisionada e selecionará vários artigos representativos nessa direção para uma breve introdução.

2. Informações básicas

1. Classificação

       De acordo com a forma de sinais fracamente supervisionados, a segmentação semântica comum fracamente supervisionada pode ser dividida nas quatro categorias a seguir (Figura 1):

       ① Anotação em nível de imagem: É a anotação mais simples que anota apenas a categoria à qual pertencem os objetos relevantes na imagem;

       ② Rotulagem do ponto do objeto: rotule um determinado ponto em cada objeto e a categoria correspondente;

       ③ Anotação do quadro do objeto: marque o quadro retangular onde cada objeto está localizado e a categoria correspondente;

       ④ Marcação de objetos: desenhe uma linha em cada objeto e a categoria correspondente.

Em

Figura 1 Classificação da segmentação semântica supervisionada fracamente

       Neste artigo, focamos na segmentação semântica fracamente supervisionada com base na anotação em nível de imagem, que é a mais fácil e conveniente de rotular.

      

2. Segmentação semântica supervisionada fracamente com base na anotação no nível da imagem

       A segmentação semântica fracamente supervisionada com base na anotação em nível de imagem é realizada principalmente na forma de séries de vários módulos, conforme mostrado na Figura 2 [2]:

Em

 

Figura 2. Etapas da segmentação semântica supervisionada fracamente

首先,利用图像级标注的图像类别标签通过单标签或多标签分类的方式训练出一个分类模型,该分类模型通过计算图像中相应类别的类别特征响应图CAM[3]来当作分割伪标签的种子区域;接着,使用优化算法(如CRF[4]、AffinityNet[5]等)优化和扩张种子区域,获得最终的像素级的分割伪标签;最后,使用图像数据集和分割伪标签训练传统的分割算法(如Deeplab系列[6])。

一、代表性工作

这部分主要介绍一下图像级弱监督分割中几篇典型的论文,首先会介绍弱监督分割的基础论文CAM[3],然后会介绍2篇如何获取覆盖度更广、更精准的CAM的算法(OAA[7]、SEAM[8])作为分割伪标签的种子区域,最后会介绍一篇典型的种子区域优化扩张算法AffinityNet[4]。

1. CAM(Class Activation Mapping)[3]

这篇文章是由周博磊在2016年的CVPR提出,作者发现了即使在没有定位标签的情况下训练好的CNN中间层也具备目标定位的特性,但是这种特性被卷积之后的向量拉伸和连续的全连接层破坏,但若是将最后的多个全连接层换成了全局平均池化层GAP和单个后接Softmax的全连接层,即可保留这种特性。同时,经过简单的计算,可以获取促使CNN用来确认图像属于某一类别的具有类别区分性的区域,即CAM。

 

图3 CAM

其中,CAM的具体计算方式如下(如图3所示):

f k(x,y) 为最后一层卷积层获取的第k个特征图在 (x,y) 位置的值,w k c是类别c对应最后一层全连接层第k个权重,则类别c的响应特征图CAM在 (x,y) 位置的值为:

M c即为CAM。最终CAM的值越大,表示对分类贡献度越高:如图3最后一幅图的热力图红色区域表示CAM值最大,也正是澳洲犬脸部区域。

在文章中,作者表示CAM所在区域可直接作为弱监督目标定位的预测,并进行了相关实验,不仅相比当时最好的弱监督定位算法效果提升明显,而且仅需单次前向推理过程即可得到定位框。

在弱监督语义分割中,CAM一直是产生种子区域的核心算法。但是CAM缺点也很明显:仅关注最具辨别度的区域,无法覆盖到整个目标,后续的算法中大多是在解决这个问题或者对CAM进行后处理,接下来,会挑选几篇代表性的工作进行介绍。

2. 获取更好的种子区域

① OAA[7]

       这篇文章的动机简单而直接,作者通过观察发现:在训练收敛前不同的训练阶段,模型所产生的CAM会在同一目标上的不同部位移动,如图4 中的b、c、d表示不同的训练阶段,其CAM(高亮区域)在移动。当整合同一图像在不同阶段产生的CAM时,整合后的CAM更能覆盖完全整个目标,如图4-e。

 

图4 CAM移动图

       其算法示意图如下:

 

图5 OAA算法示意图

       对单张图像中的某个类别而言,在第t个epoch训练该图像时对其CAM特征图F c进行ReLU和标准化:

       然后与前一epoch保存的特征图A t-1 c进行像素级比较,选择每个像素的最大值,最终输出为作为累积后的响应图M T。在训练完成后,M T即当作弱监督语义分割伪标签的种子区域。

       OAA算法简单且有效,当时在VOC弱监督分割数据集上取得了SOTA的表现;但笔者在实际项目尝试中发现其效果一般,原因在于多个epoch的CAM取最大值的方式容易使得种子区域出现较多噪声,而这些噪声是很难通过后处理消除的,最终导致分割精度明显下降。

② SEAM[8]

       该文章引入大火的自监督学习理念,通过观察发现同一图像经过不同的仿射变换所产生的CAM不一致这一特点(如图6-a中不同尺寸变换),利用隐式的等变换约束的方式建立类似自监督对比学习的一致性正则化学习机制,减少这种不一致程度来优化CAM,从而得到高精度的种子区域(图6-b)。

 

图6 不同尺寸输入的图像的CAM

       SEAM算法示意图如下:

 

图7 SEAM算法示意图

       将原始图像和其经过简单的放射变换A(·)后(如缩小、左右翻转)的图像分别送入到共享参数的CNN中获取各自对应的CAM特征图y oy t,这两个特征图再经过像素关系优化模块Pixel Correlation Module (PCM)的学习后分别得到优化后的CAM特征图y oy t。其中,PCM是类似于self-attention的操作,query和key是CNN得到的特征图,value是CAM特征。其loss由3部分构成:

其中,L cls是常用的多标签分类损失函数multi-label soft margin loss,equivariant regularization (ER) loss为:

equivariant cross regularization (ECR) loss为:

​(

       推理时,采用多个尺度及其左右翻转后的图像产生的多个CAM加和、标准化后作为最终的CAM。

       SEAM算法不仅在开放数据集相对其他算法取得了较大的提升,在易盾的实际项目中也取得较好的结果,其缺点是算法的训练和推理都比较耗时。

3. CAM后处理

       在得到CAM种子区域后,可以直接作为语义分割伪标签进行训练,但为了更好的分割结果,通常会对种子区域进行优化,接下来会介绍一篇非常有效的算法AffinityNet[5]。

       该篇文章主要的做法是:对于一张图像和其相应的CAM,建立所有像素与其周围一定半径的像素的邻接图,然后使用AffinityNet估计邻接图中像素对之间的语义密切关系以建立概率转移矩阵。对每个类别而言,邻接图中在目标边缘的点会根据概率转移矩阵以random walk鼓励该点扩散到相同语义的边缘位置,同时会惩罚扩散到其他类别的行为。这种语义的扩散和惩罚能显著优化CAM,使其能较好地覆盖到整个目标,从而得到更精确、完整的伪标签。

       该模型训练的主要难点在于如何不使用额外的监督信息,作者通过观察发现CAM可以作为产生训练AffinityNet监督信息的来源。虽然CAM存在覆盖不完全以及噪声问题,但是,CAM依然会正确地覆盖局部区域并确认该区域像素间的语义密切关系,这正是AffinityNet所需要达成的目标。为了获取CAM可靠的标签,作者摒弃了CAM特征图分数相对较低的像素,只保留高得分和背景像素。在这些特征区域上采集像素对,如果它们属于同一类别则label为1,否则为0,如图8所示。

 

图8 AffinityNet样本和标签示意图

       在训练过程中图像经过AffinityNet得到特征图f aff,则特征图上像素i和j的语义密切度W ij计算方式如下:

其中,x i , y i表示第i个像素特征在特征图f aff上的坐标位置。然后,利用交叉熵损失函数进行训练。

整体的训练和推理过程如下图所示:

 

图9 AffinityNet训练和推理示意图

首先利用训练图像的CAM选择多个像素对作为训练样本,并得到语义密切关系的label,这些数据用来训练AffinityNet(如图9左);然后使用训练好的AffinityNet在每张图像上进行推理计算以获取该图像邻接图的语义密切矩阵作为概率转移矩阵;最后在该图的CAM上以random walk的形式使用该矩阵,得到最终优化后的语义分割伪标签(如图9右)。

AffinityNet算法思路清晰,结果可靠,常常作为OAA或SEAM等算法获取的CAM后处理方法用来优化伪标签精度和扩展伪标签覆盖区域,其提升效果在定性和定量分析中都很明显。

三、总结

本文简单介绍了弱监督语义分割的概念和流程,并简单介绍了其中的几篇文章,以实践的角度分析了这些算法的落地优缺点。现有的弱监督语义分割也存在流程较为繁琐冗长,在学界已经有一些工作提出端到端的解决方案并取得了一定的效果(如[9][10])。未来易盾算法团队会持续跟进学界最新方向并尝试落地,以进一步提升易盾内容安全服务精细化识别项目效果。

[1] Cordts M, Omran M, Ramos S, et al. The cityscapes dataset for semantic urban scene understanding[C]//Proceedings of the IEEE conference on computer vision and pattern recognition. 2016: 3213-3223.

[2] Zhang D, Zhang H, Tang J, et al. Causal intervention for weakly-supervised semantic segmentation[J]. Advances in Neural Information Processing Systems, 2020, 33: 655-666.

[3] Zhou B, Khosla A, Lapedriza A, et al. Learning deep features for discriminative localization[C]//Proceedings of the IEEE conference on computer vision and pattern recognition. 2016: 2921-2929.

[4] Krähenbühl P, Koltun V. Efficient inference in fully connected crfs with gaussian edge potentials[J]. Advances in neural information processing systems, 2011, 24.

[5] Ahn J, Kwak S. Learning pixel-level semantic affinity with image-level supervision for weakly supervised semantic segmentation[C]//Proceedings of the IEEE conference on computer vision and pattern recognition. 2018: 4981-4990.

[6] Chen L C, Papandreou G, Kokkinos I, et al. Deeplab: Semantic image segmentation with deep convolutional nets, atrous convolution, and fully connected crfs[J]. IEEE transactions on pattern analysis and machine intelligence, 2017, 40(4): 834-848.

[7] Jiang P T, Hou Q, Cao Y, et al. Integral object mining via online attention accumulation[C]//Proceedings of the IEEE/CVF International Conference on Computer Vision. 2019: 2070-2079.

[8] Wang Y, Zhang J, Kan M, et al. Self-supervised equivariant attention mechanism for weakly supervised semantic segmentation[C]//Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition. 2020: 12275-12284.

[9] Zhang B, Xiao J, Wei Y, et al. Reliability does matter: An end-to-end weakly supervised semantic segmentation approach[C]//Proceedings of the AAAI Conference on Artificial Intelligence. 2020, 34(07): 12765-12772.

[10] Araslanov N, Roth S. Single-stage semantic segmentation from image labels[C]//Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition. 2020: 4253-4262.

Guess you like

Origin juejin.im/post/7078602686430068743