论文地址 :FastFCN: Rethinking Dilated Convolution in the Backbone for Semantic Segmentation 工程地址:github 链接
1. 摘要
时下的语义分割模型通常在主干网络中使用扩展卷积来获得高分辨率的特征图,但是这样做会增加计算复杂度和内存占用。该论文提出了一种新型的联合上采样模块JPU(Joint Pyramid Upsampling)以取代扩张卷积,该方法有效降低了计算复杂度和内存占用,能够在多种已有模型中应用,并且不损失甚至会对最终精度有一定的提升。
2. 简介
语义分割时计算机视觉的基本任务之一,其目标是为图像的每一个像素点进行。现有方法大多应用了全卷积神经网络(FCN)来完成这一任务,但是全卷积网络的原始网络是为图像分类任务设计的,通过逐步下采样(stride conv和池化层)得到一个富含语义信息但是分辨率很低的特征图,如下图所示,全卷积网络对原始图片进行五次典型的下采样得到原始图片大小的特征图。
为了获得最终的高分辨率特征图,一些方法将原始的FCN作为编码器来获取深层语义信息,增加解码器模块以融合来自编码器的多各层次的特征图以获取高分辨率特征图,如下图所示,如Unet,SegNet等。
更进一步的,DeepLab方法一处FCN最后两层下采样操作并引入扩张卷积来保持特征图感受野不变,后跟一个多尺度的语义模块从而得到最终效果,如下图所示,其中扩张卷积在保持最终特征图的分辨率方面作用明显,大大提升了编解码语义分割方法的分割精度,然而正如摘要中提到,扩展卷积大大增加了计算复杂度和内存占用,限制了其在实时问题上的应用。
该论文针对这一问题对出了新型的联合上采样模块JPU,在OS=32的FCN上应用得到了OS=8的高分辨率特征图,通过一系列的实验证明,在计算复杂度和内存占用都显著减少的同时模型精度并无明显降低。
综合来看论文的主要贡献在于:
- 新型的JPU模块来取代时空复杂度较高的扩张卷积
- 计算时间和内存显著降低的同时模型精度有所上升
- 在多个通用数据集上取得了SOTA效果
3. 方法
3.1 DilatedFCN
略
3.2 论文中使用的方法的框架
为了获得分辨率更高的最终特征图,DilatedFCN移除了原始FCN中后两层下采样操作,并添加扩张卷积。该论文则要寻找能够取代这种操作并且在不损精度的条件下提速的方法来获得与DilatedFCN相同的高分辨率特征图,为此,论文首相将DialtedFCN移除的下采样层还原,如下图所示,文中方法的主干网络和原始FCN相同,五次下采样操作每次都缩小两倍,为了获得和DilatedFCN相同尺寸的特征图,应用JPU模块,它融合Conv3,4,5三层特征图,通过多尺度语义模块后得到最终的预测结果。
3.3 Joint Pyramid Upsampling
论文提出的JPU模块用于生成与DilatedFCN相通尺寸的特征图,该问题可以视为联合上采样,这样可以通过CNN来解决这一问题。
3.3.1 背景
联合上采样 给定一个低分辨率的目标图和一个高分辨率的引导图,联合上采样的作用是将引导图中的细节和结构信息转化到目标图中以生成高分辨率的目标图。形式化来说,是有低分辨率的引导图通过转化实现的,即。给定和,需要一个来逼近,其中的计算复杂度要远低于,比如说是多层感知机,那么就是线性变换。高分辨率目标图则通过来获得,即,最终联合上采样模块可以定义为:
是所有可能转化的集合,||||是预定义的距离矩阵。
扩张卷积 如上图所示,是一维的扩张率等于2的空洞卷积,1) 将输入特征根据索引分为两组和;2) 用相同的卷积分别处理输出得到输出和;3) 将两个输出融合得到。
带有stride的卷积 如下图所示:
3.3.2 重新定义联合上采样
,通过如下公式得到DilatedFCN的输出:
:
分别代表普通卷积,扩张卷积和带有stride的卷积,是n层普通卷积,分别代表split,merge和reduce操作。
综上,给定和,与相同的特征图可以由如下公式得到:
3.3.3 使用CNN来解决这一问题
的条件下生成,然后的特征聚合在一起去学习一个映射,最后,通过卷积模块得到最终预测,由此设计了如下图所示的JPU模块,首先每一个输入特征图都通过一个普通卷积块(a)以:1)通过生成;2)将进行降维。这样所有的结果维度相同以更好地融合和降低计算复杂度。
(b),通过多尺度语义模块,其中空洞率为1的平行连接用于捕获其他部分的关系,如下图所示,其他空洞率的平行连接用于学习用于将转化为的映射,如下图中的绿色部分。这样JPU就可以学习多尺度的特征以获得更好的性能,这与ASPP不同,在于该方法只利用了最后一个特征图的信息。
的映射关系与其他部分的映射关系,之后通过又一个普通卷积块将特征图转化为最终的预测结果,即c过程。
该论文提出的JPU模块解决了两个问题:
- 根据Conv3对Conv4进行上采样
- 根据采样之后的Conv4对Conv5进行上采样。
4.实验结果
5. 结论
论文比较了扩张卷积和带有stride的卷积,将获取高分辨率的图像的任务转化为联合上采样问题,并用JPU代替扩张卷积在不损失精度的情况下大幅度降低了计算复杂度和内存占用,在两个语义分割通用数据集ADE20K和Pascal Context上都取得了STOA效果。