Paddle分割课程笔记(从FCN到Deeplab)
FCN
特点:
- 不含全连接层(fc)的全卷积网络。可适应任意尺寸输入。 (通过padding和crop)
- 增大数据尺寸的转置卷积层。能够输出精细的结果。
- 结合不同深度层结果的跳级结构(element wise add)。
UNET
- U-Net 简单地将编码器的特征图拼接至每个阶段解码器的上采样特征图,从而形成一个梯形结构。
- 通过skip connection(concat)操作,融合不同尺度的feature
- 上采样采用转置卷积
PSPNET
特点:
- PSPNet 通过引入空洞卷积来修改基础的 ResNet 架构,特征经过最初的池化,在整个编码器网络中以相同的分辨率进行处理(原始图像输入的1/4),直到它到达空间池化模块。
- 在 ResNet 的中间层中引入辅助损失,以优化整体学习。
- 在修改后的 ResNet 编码器顶部的空间金字塔池化聚合全局上下文。
金字塔池化模块可以融合四种不同金字塔尺度的特征
- 第一部分是最粗糙级别的单个全局池化bin输出
- 下面的金字塔分支将特征映射划分为不同的子区域,并形成针对不同位置的集合表示
- 金字塔池化模块中不同级别的输出包含不同大小的特征映射
- 为了维护全局特性的权重,如果金字塔共有N个级别,则在每个级别后使用1×1卷积,将对应级别的通道数量降为原本的1/N
然后通过双线性插值直接对低维特征图进行上采样,得到与原始特征映射相同尺寸的特征图 - 最后,将不同级别的特征concate起来,作为最终的金字塔池化全局特性
金字塔层级的数量和每一层的大小都可以进行调整
- 尺寸大小与输入金字塔池化层的特征映射的大小有关
- 该结构通过在几个stride中进行不同尺寸的池化来对不同的子区域实现抽样
- 因此,从表示性上来看,多个层级的核尺寸应该保持合理的差距
DeepLabV3
v1:
- 提出 空洞卷积(dilated convolution)
- 在最后两个最大池化操作中不降低特征图的分辨率,并在倒数第二个最大池化之后的卷积中使用空洞卷积。
- 使用 CRF(条件随机场) 作为后处理,恢复边界细节,达到准确定位效果。
- 附加输入图像和前四个最大池化层的每个输出到一个两层卷积,然后拼接到主网络的最后一层,达到 多尺度预测 效果。
v2:
提出了空洞空间金字塔池化(Atrous Spatial Pyramid Pooling),在不同的分支采用不同的空洞率以获得多尺度图像表征。
v3:
- 在残差块中使用多网格方法(MultiGrid),从而引入不同的空洞率。
- 在空洞空间金字塔池化模块中加入图像级(Image-level)特征,并且使用 BatchNormalization 技巧。