基于注意力融合的语义分割网络

2021-03-15 06:59李旭升何良华程舸帆
电脑知识与技术 2021年1期
关键词:卷积神经网络

李旭升 何良华 程舸帆

摘要:为赋予语义分割网络在给定空间位置下选择性强调整体信息或细节信息的能力,提出了一种注意力融合算法,本算法在空洞空间金字塔池化(ASPP)的基础上融合胶囊网络中动态路由算法。首先,以骨干网络输出作为输入,经过多条并行空洞卷积支路得到不同尺度的特征图。然后,在每一条空洞卷积支路的后面增添一条评估支路来评测该条空洞卷积支路单独分割的能力。最后,对各个评估支路的输出进行注意力路由算法从而对各空洞卷积分配权重。在PascalVOC 2012和Cityscapes两个数据集上,提出的模型在各组实验中均能提升1个百分点以上,并通过可视化注意力图表明,提出模型能够根据上下文信息对各空洞卷积支路进行有侧重的反向传播。

关键词: 语义分割; 卷积神经网络;空洞空间金字塔池化; 胶囊网络; 动态路由

中图分类号: TP391        文献标识码:A

文章编号:1009-3044(2021)01-0001-03

Abstract: To enable semantic segmentation networks to learn to emphasize the overall picture or the focal details at given spatial location, Attention Fusion is proposed, which combines Atrous Spatial Pyramid Pooling and dynamic routing of Capsule Network. Firstly, parallel atrous branches with different ratios are applied on feature map extracted by backbone network, Secondly, an eval branch for each atrous branch is used to output a score map in order to assess the ability of each atrous branch to segment on its own. Finally, attention routing assigns weights for atrous branches by computing attention maps between these score maps. Experiments conducted on Pascal VOC 2012 and Cityscapes, and the performances are boosted by over 1 percent in all settings. Along with visualization of attention maps, it is shown that the proposed model is capable of emphasizing atrous branches according to given context.

Key words:semantic segmentation; convolutional neuron network; atrous spatial pyramid pooling;  capsule network; dynamic routing

語义分割一直是计算机视觉方向的关键问题之一。语义分割的任务是对给定图像进行像素级别的分类,同时也是将图像中的信息进行抽象的过程。语义分割是自动驾驶、医学图像分析、照片编辑等任务中的关键技术,为这些应用提供从原始图像输入获取必要上下文信息的必要能力。

如今大多数的深度学习语义分割框架是在由Long等[1]提出的全卷积网络(FCN)的基础上衍生而来的。虽然Krizhevsky等[2]提出的卷积网络(CNN)能够在感受野的范围内捕捉到全局信息。但是,对于像语义分割这样的密集预测任务,对信息进行更加有效的多尺度的提取和融合是至关重要的。为了解决个问题,Ronneberger等[3]使用带跳跃连接的编码解码器结构U-Net,Zhao等[4]提出了PSPNet和Chen等[5]提出了DeepLabV3+分别设计了不同的结构对特征进行多尺度提取。

虽然U-Net,ASPP等结构能够很好地提取多尺度的信息,但是对于信息的融合只是简单地将它们串联起来。这意味着不同支路提取到的信息在同样的空间位置上具有相同的重要性。可这样做是违反直觉的,比如在分割物体边缘时,更加需要细节信息。反之,分割物体中心时需要更加关注全局信息。同时,在认知科学上也有所佐证,Fink等[6]提出,左右半脑分别倾向于处理局部和全局视觉信息。人类的视觉系统能够此时的视觉理解需求,将任务更多地分配给对应的脑半球。所以提出的AttentionFusion (AF)就是来模拟这样的视觉机制。

1相关工作

1.1空间金字塔池化

空间金字塔池化(Spatial Pyramid Pooling)通过并行处理多条不同的支路来提取多尺度信息,其作为语义分割的一种范式结构有着许多的变种,这些变种结构主要是去探索更加合理的支路设计。PSPNet[4]采用不同步长的池化操作来形成多尺度表示。后续研究者发现空洞卷积能够在不增加额外参数的情况下有效地增加感受野,Chen等[5]提出的Atrous Spatial Pyramid Pooling(ASPP)就是由多条平行的不同空洞率(atrous rate)的卷积支路组成。

1.2动态路由

Hinton等[7]在胶囊网络中提出动态路由并用其进行特征聚类。首先,Hinton将原本为标量的神经网络神经元扩展成向量形式的胶囊神经元,向量的模表示特征存在的概率,向量的方向则表征更为具体的姿态、颜色等信息。使用动态路由通过对输入胶囊进行聚类,相似的特征在不断迭代中加强,从而达到学习底层胶囊和高层胶囊之间的映射关系的目的。

2 注意力融合语义分割模型

PSPNet[4]和DeepLabV3+[5]等网络结构中的空间金字塔池化能够提取多尺度的上下文特征信息,但最后将这些信息进行简单的合并。为了使得多尺度的信息更加有效的融合,在ASPP的基础上进行修改提出了AttentionFusion模块,提出的模型为AFDeepLabV3+。整体网络结构如图1所示。

1.1 评估支路

为要后续的注意力路由做准备,设计评估支路(eval branch)来对空洞支路提取到的featuremap进行评估生成scoremap并进行训练。空洞率大的支路对于宏观特征更加关注,空洞率小的支路则更加注重细节特征,这一特点反应到scoremap上则表示对应的空洞支路对于图像的理解程度。实现方面,如图1所示,故意将评估支路设计成简单的浅层网络,由64通道的[3×3]卷积和通道数等于预测类别数的[1×1]卷积来输scoremap。为了加快网络拟合使用了批正则化[8](batch normalization)和Dropout[9]技术。

1.2 注意力路由

在胶囊网络动态路由的启发下设计注意力路由(Attention Routing)并且使用评估支路生成的scoremap来代替胶囊结构,具体步骤见算法1。

算法1:注意力路由

Input:Scoremap[Si, i∈{1,2,3,4}]

Output:Attentionmap[Ai]

1)Construct[Bi]with the same shape of [Si]

2)[Bi←0]

3)[Ui=scaleSi]

4)for [r]iteration do

5)[Ci=softmax(Bi)]

6)[V=iCiUi]

7)[V=scale(V)]

8)[Bi=Bi+iUiV]

9)end if

10)[Ci←softmaxBi]

11)[Ai=4Ci]

12)return [Ai]

评估支路生成的scoremap的每一维对应固定的类别,所以相比于动态路由,注意力路由计算更加简便。评估支路输出score vector记为[Si],[Bi]为logpriorprobabilitymap,在路由算法迭代过程中couplingcoefficientmap[Ci]由[Bi]通过[softmax]函数生成。

如图2所示,从上往下分别是输入图像和空洞率分别为1,3,12,18各支路的注意力图。从图中可以看出空洞卷积空洞率不同导致不同支路适合处理的物体大小和上下文不同,并通过AttentionFusion最后反映在attentionmap上。

1.3损失函数

网络使用端到端的训练方式,总的损失函数表示如下。

其中,每个损失函数[L]都是标准交叉熵损失函数,公式表示如下。

其中,[yj]和[Pj]分别表示对每个类别[j∈C]的ground-truth和预测输出。[Lmain]是DeepLabV3+的损失函数,而[Li]是对应评估支路的损失函数,共计4条。通过实验发现,把[α]设为0.01时模型表现较好。此时[α]防止评估支路产生的loss过多地影响主路的loss。

2 实验与结果分析

2.1 实验数据

实验主要在两个数据集上进行,分别是PascalVOC 2012[10]和Cityscapes[11],同时,也使用了MS-COCO[12]对模型进行预训练。

PascalVOC 2012数据共有4369张图片,另外,还有一份由Hariharan等[13]提供的trainaug集,共9118张。该数据集包含背景共有21个类别。MS-COCO数据集用于在PascalVOC 2012之前对模型进行预训练,根据Chen等[5]提出的训练流程,对MS-COCO只筛选使用了PascalVOC 2012中定义的类别,其他的类别被归为背景。Cityscapes數据集共有5000张图片,另外提供了19998张粗标注数据作为trainextra集。根据Cordts等[11]的建议,Cityscapes在语义分割中应采用19个类别的划分方式。

2.2 训练流程

本文实验主要考虑以下两个模型,作为基线模型的DeepLabV3+和提出的Attention Fusion DeepLabV3+,下面描述的训练流程对两个模型均保持一致。

本文实验基于Python3.7环境和PyTorch1.0[14]框架,使用4块NVIDIA GEFORCE 1080Ti进行训练和测试。指标方面使用交并比(mIoU)来衡量模型的效果。所有实验的输入图像长宽固定为512,batchsize设置为16。数据增强方面则使用了:随机水平翻转,随机HSV变化,随机缩放和随机剪切。本实验采用了两种backbone网络,ResNet-101[15]和Xception[16]。优化算法动量为0.9随机梯度下降(SGD)。并使用Chen等[5]建议的poly学习率衰减策略来加快优化。其公式[1-itermaxiterpower]为,[power]值为0.9。下面对两个数据集上不同的设置进行说明。

对于Pascal VOC 2012数据集上的实验。如果不在MS-COCO上进行预训练,则先使用0.007的学习率在trainaug集上训练,然后使用0.001学习率在train集上微调。如果使用MS-COCO,则分别使用0.007、0.001、0.0001的学习率在MS-COCO、VOC trainaug、VOC train上进行训练,并且在后面两VOC数据集上训练的两阶段,固定batch normalization的参数。

对于Cityscapes数据集,首先在trainextra集上使用0.007学习率进行30K次迭代,然后再在train集上使用0.001学习率迭代60K次。在输入方面,由于Cityscapes中每张图像长宽为,如果采用VOC数据集那样直接resize的做法,会大量损失细节信息。因此训练时采用在数据增强后随机剪接成512大小的图像作为输入。

2.3 结果分析

在模型推断时。部分实验采用了Chen等所建议的测试时数据增强(TTA)来进一步提升精度。本文采用对输入图像的多尺度放缩和左右水平翻转,然后将输出进行平均化作为结果,其中多尺度放缩使用0.5、0.75、1.0、1.25、1.5、1.75等6种比例。

如表1所示,在两种数据集各自的验证集上,提出的AFDeepLabV3+能够有效提升mIoU指标,不同实验条件下对比均能提升1个百分点以上。并且从图3可以看出,提出的AFDeepLabV3+模型在分割输入图像的复杂细节区域时有着更好的表现,同时也更不容易出现噪声。

3 结论

本文提出了的注意力融合机制能够促使ASPP不同支路多尺度信息的深度融合,通过对比和消融实验证明了本文提出方法的有效性。同时,视觉效果展示说明了本文方法在应对复杂场景时更加鲁棒。

参考文献:

[1] Long J, Shelhamer E, Darrell T. Fully convolutional networks for semantic segmentation[C]//Proceedings of the IEEE conference on computer vision and pattern recognition. 2015: 3431-3440.

[2] Krizhevsky A,Sutskever I,Hinton G E.ImageNet classification with deep convolutional neural networks[J].CommunicationsoftheACM,2017,60(6):84-90.

[3] Ronneberger O,Fischer P,Brox T.U-net:convolutional networks for biomedical image segmentation[J].Medical Image Computing and Computer-Assisted Intervention -MICCAI2015,2015: 234-241

[4] Zhao H, Shi J, Qi X, et al. Pyramid scene parsing network[C]//Proceedings of the IEEE conference on computer vision and pattern recognition. 2017: 2881-2890.

[5] Chen L C,Zhu Y K,Papandreou G,et al.Encoder-decoder with atrous separable convolution for semantic image segmentation[M]//Computer Vision – ECCV 2018.Cham:SpringerInternational Publishing,2018:833-851.

[6] Fink G R,Halligan P W,Marshall J C,et al.Where in the brain does visual attention select the forest and the trees?[J].Nature,1996,382(6592):626-628.

[7] Sabour S, Frosst N, Hinton G E. Dynamic routing between capsules[C]//Advances in neural information processing systems. 2017: 3856-3866.

[8] Ioffe S, Szegedy C. Batch normalization: Accelerating deep network training by reducing internal covariate shift[J]. arXiv preprint arXiv:1502.03167, 2015.

[9] Srivastava N, Hinton G, Krizhevsky A, et al. Dropout: a simple way to prevent neural networks from overfitting[J]. The journal of machine learning research, 2014, 15(1): 1929-1958.

[10] Everingham M, Winn J. The pascal visual object classes challenge 2012 (voc2012) development kit[J]. Pattern Analysis, Statistical Modelling and Computational Learning, Tech. Rep, 2011, 8.

[11] Cordts M,Omran M,Ramos S,et al.The cityscapes dataset for semantic urban scene understanding[EB/OL].2016:arXiv:1604.01685[cs.CV].https://arxiv.org/abs/1604.01685.

[12] Lin T Y,Maire M,Belongie S,et al.Microsoft COCO:common objects in context[M]//ComputerVision–ECCV2014.Cham:Springer InternationalPublishing,2014:740-755.

[13] Hariharan B,Arbelaez P,Bourdev L,et al.Semantic contours from inverse detectors[C]//ICCV '11:Proceedings of the 2011 International Conference on Computer Vision.2011:991-998.

[14] Paszke A, Gross S, Massa F, et al. Pytorch: An imperative style, high-performance deep learning library[C]//Advances in neural information processing systems. 2019: 8026-8037.

[15] He K, Zhang X, Ren S, et al. Deep residual learning for image recognition[C]//Proceedings of the IEEE conference on computer vision and pattern recognition. 2016: 770-778.

[16] Chollet F.Xception:Deep learning with depthwise separable convolutions[C]//Proceedings of the IEEE conference on computer vision and pattern recognition. 2017: 1251-1258.

【通聯编辑:唐一东】

猜你喜欢
卷积神经网络
卷积神经网络语言模型研究
基于卷积神经网络温室智能大棚监控系统的研究
基于深度卷积神经网络的物体识别算法