CGNet: A Light-Weight Context Guided Network for Semantic Segmentation
创新点
- 提出了一个轻量型模型 CGNet,主要由 CG 模块组成。
- CG 模块中 floc 提取器用于提取局部特征,fsur 提取器用于提取周围上下文特征,fjoi 提取器用于提取联合特征,fglo 提取器用于提取全局上下文特征。
问题
- 为语义分割任务提出一个轻量型模型,具有较少参数的同时保证准确度。
方法
CG Block
CG Block如图所示,floc 和 fsur 采用 通道卷积(Channel-wise Convolutions) 减少参数量。
- 首先将特征图经过 1x1 卷积然后分别输入到 floc 和 fsur 提取器中;
- floc 提取器提取局部特征,使用 3x3 的普通卷积,fsur 提取器提取周围上下文特征,使用3x3的扩张卷积;
- fjoi 提取器提取联合特征,将 floc 和 fsur 的输出进行 Concat 操作,再进行 Batch Normalization (BN) 和 Parametric ReLU (PReLU) ;
- fglo 提取器用提取全局上下文特征,将输入进行全局平均池化(GAP)和多层感知机,将得到的权重和输入按元素相乘。
LRL 和 GRL
在 CG Block 使用两种残差连接(Residual Connection)。有助于模型学习高度复杂的特征并改善训练期间的梯度反向传播。
- 一个是连接 CG Block 输入和 fjoi 的输出称为局部残差学习(LRL);
- 另一个是连接 CG Block 的输入和 fglo 的输出称为全局残差学习(GRL)。
CGNet
CGNet 如图所示。为减少参数量 CGNet 分为 3 个阶段,仅对输入图像分别进行 1 2 \frac{1}{2} 21 、 1 4 \frac{1}{4} 41 和 1 8 \frac{1}{8} 81 的下采样。每个阶段的第一层输入是来自上一个阶段的第一层和最后一层的输出组合,有助于特征重用并加强了特征传播。
-
Stage1 由三个 3x3 普通卷积组成;
-
Stage2 由 M 个 CG Block 组成;
-
Stage3 由 N 个 CG Block 组成;
-
最后是 1x1 卷积,上采样(Upsample),输出分割结果。