我对FastFCN的理解

FastFCN:重新思考膨胀卷积在语义分割主干网络中的作用

扩张卷积=膨胀卷积=空洞卷积

一、前言

1.解决的问题

  • 时下的语义分割模型通常在主干网络中使用扩张卷积来获得高分辨率的特征图,但是这样做会增加计算复杂度和内存占用

  • 该论文提出了一种新型的联合上采样模块JPU(Joint Pyramid Upsampling)以取代扩张卷积,该方法有效降低了计算复杂度和内存占用,能够在多种已有模型中应用,并且不损失甚至会对最终精度有一定的提升。

2.引入

我对FastFCN的理解_第1张图片
(a)语义分割方法大多应用了全卷积神经网络(FCN)来完成这一任务,但是全卷积网络的原始网络是为图像分类任务设计的,通过逐步下采样(stride conv和池化层)得到一个富含语义信息但是分辨率很低的特征图;

(b)为了获得最终的高分辨率特征图,一些方法将原始的FCN作为编码器来获取深层语义信息,增加解码器模块以融合来自编码器的多各层次的特征图以获取高分辨率特征图,如图b所示,如Unet,SegNet等;

(c)更进一步的,DeepLab方法一处FCN最后两层下采样操作并引入扩张卷积来保持特征图感受野不变,后跟一个多尺度的语义模块从而得到最终效果,如图c所示,扩张卷积提高了最终特征图的分辨率,大大提升了编解码语义分割方法的分割精度,然而正如摘要中提到,扩展卷积大大增加了计算复杂度和内存占用,限制了其在实时问题上的应用。

因此:

该论文针对这一问题对出了新型的联合上采样模块JPU,通过一系列的实验证明,在计算复杂度和内存占用都显著减少的同时模型精度并无明显降低。

  • 综合来看论文的主要贡献在于:

    • 新型的JPU模块来取代时空复杂度较高的扩张卷积;

    • 计算时间和内存显著降低的同时模型精度有所上升;

    • 该方法在Pascal Context数据集和ADE20K数据集上都达到了同类中的最优。

二、方法

1.框架

为了获得分辨率更高的最终特征图,DilatedFCN移除了原始FCN中后两层下采样操作,并添加扩张卷积。该论文则要寻找能够取代这种操作并且在不损精度的条件下提速的方法来获得与DilatedFCN相同的高分辨率特征图。
我对FastFCN的理解_第2张图片
论文首先将DialtedFCN移除的下采样层还原,如上图所示,文中方法的主干网络和原始FCN相同,五次下采样操作每次都缩小两倍,为了获得和DilatedFCN相同尺寸的特征图,应用JPU模块,它融合Conv3,4,5三层特征图,通过多尺度语义模块后得到最终的预测结果。

2.JPU模块

联合金字塔上采样(Joint Pyramid Upsampling)

2.1背景

Joint Upsampling 给定一个低分辨率的目标图像和高分辨率引导图像,联合上采样旨在通过从引导图像中转移细节和结构来生成高分辨率目标图像。

我对FastFCN的理解_第3张图片
图(a)一维空洞卷积(dilation rate = 2)的说明,可以分为以下三个步骤:

  • 根据索引的奇偶性将输入特征f_in分成两组f_in_0和f_in_1;
  • 用相同的卷积层处理每个特征,得到 f_out_0 和 f_out_1;
  • 将生成的两个特征交错合并得到输出特征 f_out;

图(b)Stride Convolution 步幅卷积的提出是为了将输入特征转换为空间分辨率降低的输出特征。这相当于以下两个步骤:

  • 用正则卷积处理输入特征 f_in 以获得中间特征 f_m;
  • 去除具有奇数索引的元素,从而产生f_out ;
2.2改写为联合上采样

我们方法的主干与 DilatedFCN 之间的区别在于最后两个卷积阶段。

以第 4 个卷积阶段(Conv4)为例,在 DilatedFCN 中,输入特征图首先经过一个常规卷积层处理,然后是一系列空洞卷积(d=2);

不同的是,我们的方法首先使用步幅卷积(s=2)处理输入特征图,然后使用几个常规卷积来生成输出。

2.3用 CNN 解决

论文使用 CNN 模块来近似优化过程
我对FastFCN的理解_第4张图片
上图为JPU模块,将backbone输出的不同大小的特征图(conv5、conv4、conv3)上采样至同样大小,融合后得到yc,接着使用dilation不同(分别为1/2/4/8)的卷积核进行卷积,从而输出特征图的感受野大小。

三、结果

1.模型对比

我对FastFCN的理解_第5张图片
上图为ENCNet和ENCNet+JPU的预测结果(图片分别来自Pascal Context验证集和ADE20K验证集),上图可以明显看出JPU增加感受野的好处,山脉能够被正确识别。

2.实验结果

我对FastFCN的理解_第6张图片
作者在多个数据集上测试了JPU的效果,上图为ADE20K验证集上的模型分割效果,可以看出JPU模块明显提高了模型的分割效果。

Reference
1.深度学习(9):FastFCN论文翻译与学习

2.图像语义分割(14)-FastFCN: 重新思考语义分割模型主干网络中的扩张卷积

3.【第五期论文复现赛-语义分割】FastFCN

你可能感兴趣的:(2022暑假机器学习,深度学习,计算机视觉,神经网络)