BiSeNet: Bilateral Segmentation Network for Real-time Semantic Segmentation
Posted johnarya
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了BiSeNet: Bilateral Segmentation Network for Real-time Semantic Segmentation相关的知识,希望对你有一定的参考价值。
论文题目:《BiSeNet: Bilateral Segmentation Network for Real-time Semantic Segmentation》
论文摘要:语义分割同时要求丰富的空间信息和大小不同的感受野。然而,通常我们为了达到实时的推理速度,会降低图像的空间分辨率,从而导致效果很差。因此,本文提出了双向的语义分割网络,首先,采用空间分支保持空间信息并生成高分辨率的特征图。其次,采用快速下采样策略的上下文分支去获得丰富的感受野,最后,引入了特征融合模块结合两个分支的特征。所提出的结构在兼顾速度的同时,在Cityscapes、CamVid、和COCO-Stuff数据集上取到了很好的性能。
1.1. 方法概括
图1 网络结构
方法的介绍主要包含三部分:空间分支、上下文分支和特征融合模块
1、空间分支:现有的语义分割任务中,一些现有的方法用膨胀卷积保留输入图像的分辨率去编码足够的空间信息;一些方法通过使用金字塔池化模块、空洞金字塔池化、大的卷积核捕捉丰富的感受野,这些方法表明空间分辨率和感受野对达到较高的准确率是至关重要的。然而,很难同时满足两种要求,尤其是在实时的语义分割任务中。
本文的作者提出了空间分支保留原始输入图像的空间尺寸并编码丰富的空间信息。空间分支主要包括三层,每一层包括一个步长为2的3*3卷积、bn和relu。最终,空间分支得到的特征图是原图的1/8。图1(a)显示了结构的细节。
2、上下文分支:为了兼顾感受野的大小和实时两个因素,上下文分支采用Light Weight模型和全局平均池化去提供更大的感受野。在本文中,light weight 模型可以快速的下采样特征图获得更大的感受野,来编码high level的上下文信息;然后,使用全局平均池化提供具有全局上下文信息的最大感受野;最后,结合全局池化上采样输出的特征图和lightweight模型的特征图。为了改善每个stage的特征,作者提出了Attention refinement module,如图1(b)所示,ARM使用全局平均池化去捕捉全局上下文并且计算一个注意力向量去引导特征学习。这个设计可以使得每个阶段的特征图更精细。
3、特征融合模块:两个分支所提取的特征是不同level的,所以不能简单的把二者相加。空间分支捕捉空间信息编码更丰富的细节信息。上下文分支主要编码了上下文信息。换句话说,空间分支的特征是low level的,而上下文分支的特征是high level的,因此,本文提出了专门的特征融合模块。具体的细节如图1(c)
4、损失函数:本文中,作者利用了辅助损失函数用来监督训练。使用主要的loss来监督特征图最后的输出,此外,添加了两个明确的辅助loss函数来监督上下文分支的输出。所有采用的损失函数均为Softmax loss,如公式(1)所示。
为了平衡主要loss和辅助loss的权重,作者使用了参数a。本文中a设置为1,联合的loss更适合去优化本文的模型。
Lp表示主要的loss,concat之后输出。Xi是Xception模型的第i个阶段的输出特征。Li表示第i个阶段的辅助loss。在本文中K=3。只在训练阶段使用辅助loss
1.2. 实验
1、消融实验:
2、速度和准确性的比较
以上是关于BiSeNet: Bilateral Segmentation Network for Real-time Semantic Segmentation的主要内容,如果未能解决你的问题,请参考以下文章