Boundary-Aware Feature Propagation for Scene Segmentation (ICCV 2019)
- Author: Henghui Ding
(Nanyang Technological University, Singapore)
- Paper: https://arxiv.org/abs/1909.00179
- Code:
Abstract
为了在保持不同物体特征区分度的同时提高同一物体的特征相似度,文章探索了在物体边界控制下的信息传播。首先将边界作为一个额外的语义类别来进行学习,使得网络能够感知图像的边界布局;然后使用单向无环图 (unidirectional acyclic graphs, UAGs) 来对无向循环图 (undirected cyclic graphs, UCGs) 进行建模 (无向循环图通过建立逐像素连接来对图像进行结构化建模);此外,提出了 Boundary-Aware Feature Propagation Module (BFP) 来获取和传播 UAG 结构图像中被学习到的边界所隔离区域内的局部特征 (BFP 在同一细分区域中建立强连接,而在不同细分区域之间建立弱连接)。
1. Introduction
在保持不同对象特征区分度的同时,提高同一对象的特征相似度对于语义分割来讲至关重要。为了达到这一目的,文章一方面探讨了在整个图像中传播特征来共享特征和获取上下文信息,这有利于提高特征相似度;另一方面为了保证不同对象的特征区分度,提出利用边界信息来控制信息传播过程中的信息流。为此提出了 BFP 模块来在同一细分区域中建立强连接,在不同细分区域之间建立弱连接。BFP 模块包括边界检测和图构造 (Boundary Detection, Graph Construction)。
1.1. Boundary Detection
在现有的分割方法中,由于边界像素仅占整个图像的一小部分,对提高性能贡献不大,因此边界检测并没有引起足够的重视。文章同时实现了分割和边界检测,并利用所学习到的边界信息来提高分割性能。对于边界检测,通过从已有的分割数据集所给出的标签来生成语义对象的边界标签,并将其定义为一个额外的类别进行学习和分类。这可以使得网络学习到边界布局,有利于进一步的分割。
1.2. Graph Construction
图模型用于创建信息传播的顺序规则。当从大感受野聚合特征的时候,常用的卷积方法会消耗大量的计算资源;而且卷积核不会随着输入分辨率的变化而变化,因此不能保证得到图像的全局信息。DAG-RNN (Scene Segmentation with DAG-Recurrent Neural Networks) 提出使用四个不同方向的有向无环图 (DAGs) 来对无向循环图 (UCGs) 进行建模,通过在整幅图像中逐像素建立连接来结构化图像。但是DAGs需要大量的循环操作来逐像素扫描图像,因此其速度非常慢。为了解决该问题,文章用两个单向无环图 (UAGs) 来代替有向无环图 (DAGs),其中同一行或列的像素可用一维卷积来进行并行处理,该方法极大的加快了特征传播的速度。
1.3. Boundary-Aware Feature Propagation (BFP) Network 的优点
- 单向无环图 (UAGs) 可以并行处理同一行或者同一列,可以实现高速的信息传播,而与卷积方法相比,UAGs包含的参数更少;
- 将边界检测定义为语义分割的类别,节省了大量的边界检测参数和复杂的边界检测模块;
- 在边界置信度的控制下,局部特征的传播更加合理,在保持不同段特征区分度的同时增强了同一段的特征的相似度。
1.4. Contributions
- 证明了边界可以被定义为语义类别来进行学习;
- 提出了一种单向无环图 (UAGs) 来实现信息在高分辨率图像间的高速传播;
- 提出了 Boundary-Aware Feature Propagation Module (BFP),在保持不同区域特征区分能力的同时,提高了同一区域的特征相似度;
- 在 PASCAL-Context,CamVid 和 Cityscapes 数据集上实现了最优的性能。
2. Related Work
3. Approach
模型使用带膨胀的 ResNet-101 作为骨干网络 (总下采样率为8)。Loss 2 为 boundary-aware ground truth (N+1 classes),也即包含了通过其他类别标签所生成的边界类。
3.1. Semantic Boundary Detection
边界的描述有利于细致的场景分析。不同于之前的边界检测工作,文章仅关注分割数据集中预定义的语义对象的边界,将边界定义为一个额外的语义类别,并与其他类别同时学习,也即 N+1个类别。通过将边界类别和其他分割类别同时训练,使得其可以相互促进,即其他分割类别可以帮助抑制对象中非语义边界的边缘 (例如人眼睛的边缘),场景分割帮助边界检测滤除噪声,而边界检测使场景分割能够感知到重要的边界布局信息。
3.2. Unidirectional Acyclic Graphs
通过堆叠卷积层或扩张卷积来扩大感受野以获得上下文信息的方法通常需要耗费大量的计算资源。DAG-RNN 利用有向无环图来获取更广的上下文信息 (long-range context)。将像素局部连接,形成无向循环图(undirection cyclic graph, UCG),在整个图像中建立信息传播通道。DAG-RNN 将 UCG 分解为四个方向的 DAGs (southeast, southwest, northeast, northwest),但是基于 DAG 结构图像的特征传播需要逐像素扫描图像,需要大量的循环操作,计算耗时。为了解决这样一个问题,文章利用 单向无环图 (Unidirectional Acyclic Graphs, UAGs) 来分解有向无环图 (DAGs),使得其可以并行处理同一行或者同一列的元素,提高计算效率。每一个有向无环图 (DAGs) 可以被替换为两个单向无环图,例如可以替换为
和
。
3.3. Boundary-Aware Feature Propagation
没有选择的信息传播会对特征进行同化,使特征的表示更加平滑,削弱了特征的表示能力。为了对场景中的不同物体进行分类,需要提高同一物体的特征相似度,同时保持不同物体的特征区分度。为此文章将边界信息引入到信息传播的过程中,对不同分段间的信息流进行控制。在边界信息的控制下,使得最终在同一段的像素间建立强连接,而在不同段之间建立弱连接。在信息传播的过程中,更多的信息是通过同一段内的强连接进行传递的,而跨段的信息传递较少,以此在保证不同物体特征区分度的同时提高同一物体的特征相似度。
将位置的特征记为
,相应的输出 (也即隐藏状态) 记为
,则基于UAG结构图像的标准传播过程为
,其中
表示 1D 卷积操作,
为 1D 卷积的权重参数
为偏置,
为非线性激活函数 (文章中使用 ReLU)。
对于 Boundary-Aware Feature Propagation,首先从 N+1 类的分割结果中提取边界类的置信图,将位置的边界置信度记为
,则信息传播的置信度为
,其中
为信息传播的置信度,决定位置
的信息传递到下一个区域的信息量,
,
为 Sigmoid 函数,
为可学习参数。如果像素在边界区域,则其边界概率
较高,传播概率
较小,可以抑制特征的传播;而如果像素不在边界区域,则其传播概率
较大,具有很强的传播能力,可以将特征较多的传播到下一个位置。
总的信息传播过程可以表示为:
对于有两个方向的 UAGs,其有两个隐藏状态和
,例如
的信息传播可以表示为:
4. Experiments
4.1. 实验细节
backbone:带膨胀的 ResNet-101,下采样率为8;
batchsize:PASCAL-Context 数据集为12,Cityscapes 和 CamVid 为8;
学习率调整:;
Momentum:0.9;
Weight Decay:0.0001;
数据增强:随机水平翻转,随机缩放 ();
边界类别标签的生成:与实际边界位置间的距离小于9像素的位置均被划分为边界类别。
4.2. UAGs相对于DAGs的计算效率对比
4.3. Ablation Studies
4.4. Comparison with the State-of-the-Art Works
备注
文章主要是充当自己阅读论文的笔记,备查。
如果有任何不对的地方敬请谅解,同时也欢迎大家批评指正。
参考:https://arxiv.org/abs/1909.00179