论文阅读:Large Kernel Matters —— Improve Semantic Segmentation by Global Convolutional Network(GCN)

文章目录

    • 1 摘要
    • 2 存在问题
    • 3 亮点
      • 3.1 GCN模块
      • 3.2 边界提取模块(BR模块)
      • 3.3 总的网络框图
      • 3.4 ResNet50-GCN预训练模型
    • 4 部分结果
      • 4.1 部分数据对比
      • 4.2 部分效果对比
    • 5 结论
      • 5.1 优势
      • 5.2 不足
    • 6 参考资料

1 摘要

文章指出,最近流行的一个趋势就是使用小的过滤器进行堆叠(如:1x1,3x3等),这样能够在同样的计算量情况下比大的过滤器更有效率。然而,作者发现,大的过滤器其实在语义分割的分类和定位问题上扮演着重要的角色,作者基于大过滤器提出Global Convolutional Network(GCN),能同时解决语义分割中的分类和定位这两个问题。该网络在PASCAL VOC 2012和Cityscapes数据集中均达到SOTA。

2 存在问题

语义分割中分类和定位是两个矛盾的问题:

① 对于分类问题,它本身不关注图像的细节、纹理等信息,更多地关心目标的显著的特征,依靠这些显著的特征来判断这是什么类,所以在VGG16、AlexNet中都会使用卷积+池化层,使用池化层在减少参数的同时可以获得更大的感受野去感知这个目标,最后得到一个很小的特征图(里面都是决定一个物体类别的特征),依靠这些特征即可对图像完成分类。如下图:
论文阅读:Large Kernel Matters —— Improve Semantic Segmentation by Global Convolutional Network(GCN)_第1张图片
上图也是说明了,分类任务,Image先缩小得到特征,再对像素进行分类。

② 对于定位问题,由于进行的是语义分割任务,语义分割任务有一个很重要的步骤就是需要将小小的特征图恢复成原图大小,完成目标边界的划分与定位。而池化层是对定位的精度有着很大伤害的一种方法,它会把图像的细节信息过滤掉,所以在FCN、UNet等网络都会通过把浅层的图像再利用起来叠加或者拼接到上采样之后的图像。下图则展现了定位问题的过程:
论文阅读:Large Kernel Matters —— Improve Semantic Segmentation by Global Convolutional Network(GCN)_第2张图片
上图中,定位问题是希望直接是Image大小的图像,直接对这里面的像素进行定位(位置与原图一一对应)。

由于分类和识别存在一定的矛盾。很多其它的网络结构如DeepLab、FCN等,都是更倾向于定位的准确。而作者想两个都要。所以需要从这两个角度上去分析:从定位精确的角度来说,就不应该使用池化层。从分类的角度就是需要更大的感受野,有利于识别到目标,更有利于对每个像素的分类,但是为了保证定位准确,需要使用更大的过滤器。下图为作者对于分类和定位的看法:
论文阅读:Large Kernel Matters —— Improve Semantic Segmentation by Global Convolutional Network(GCN)_第3张图片
上图中,作者没有缩小图像,而是反复利用各个像素的特征进行了分类与定位。

3 亮点

3.1 GCN模块

针对目标的识别,本文提出,如果目标过大,一个小的感受野是很难识别到整个目标的,如下图:
论文阅读:Large Kernel Matters —— Improve Semantic Segmentation by Global Convolutional Network(GCN)_第4张图片
A图中为一个小的感受野所“看到”的物体,B中,如果这个目标变大了,就无法识别目标的全貌了。而C则是作者提出的GCN网络的感受野,其拥有一个很大的感受野。由于作者决定不要池化层了,所以就需要一个更大尺寸的过滤器以获得更大的感受野。而更大尺寸的过滤器又引来了另一个问题:参数量很大。因此,作者引入了kx1+1xk和1xk+kx1的卷积代替kxk卷积(其实kxk卷积可以拆分成kx1+1xk,可以参考这篇博客:非对称卷积)这样可以有效减小参数量,而且作者使用数据表明,随着k的增大(卷积核越大),其准确率提高。如下图:
论文阅读:Large Kernel Matters —— Improve Semantic Segmentation by Global Convolutional Network(GCN)_第5张图片
GCN模块经过左边的“非对称卷积”和右边的“非对称卷积”构成了的卷积,作者叫其为“对称可分离卷积”。下图为不同的k值对结果的影响:
论文阅读:Large Kernel Matters —— Improve Semantic Segmentation by Global Convolutional Network(GCN)_第6张图片
作者指出,这样的设计比简单地使用过滤器地堆叠效果好。下图为简单堆叠的卷积和GCN卷积模块的对比:
论文阅读:Large Kernel Matters —— Improve Semantic Segmentation by Global Convolutional Network(GCN)_第7张图片
(A)为GCN模块,(D)为卷积的堆叠,(A)和(D)的对比结果如下图:
论文阅读:Large Kernel Matters —— Improve Semantic Segmentation by Global Convolutional Network(GCN)_第8张图片
从上图可见,无论k是多少,GCN比简单的堆叠的分数高。
论文阅读:Large Kernel Matters —— Improve Semantic Segmentation by Global Convolutional Network(GCN)_第9张图片
上图显示的是参数量的对比,GCN叠加了2048个kernel的参数量比普通的堆叠210个kernel的参数更少。

3.2 边界提取模块(BR模块)

边界提取模块主要负责解决的是对边界的定位问题,如下图:
论文阅读:Large Kernel Matters —— Improve Semantic Segmentation by Global Convolutional Network(GCN)_第10张图片
其参考了ResNet的残差块的设计。而作者证明,这个模块对定位的精度提升较大,对准确率的提升则不大。如下图:
论文阅读:Large Kernel Matters —— Improve Semantic Segmentation by Global Convolutional Network(GCN)_第11张图片
上图显示GCN添加了BR模块,对总的IoU提升不大,但是对边界的分割却是提升较大。

3.3 总的网络框图

该网络使用ResNet作为预训练,整个结构参考了多尺度处理的思想和FCN的跳跃连接的思想。如下图:
论文阅读:Large Kernel Matters —— Improve Semantic Segmentation by Global Convolutional Network(GCN)_第12张图片
上图中,左边的输入参考了多尺度处理的类似于PSPNet的池化金字塔模型,通过接入不同尺度的图像使用GCN+BR进行处理,然后采用了类似于FCN-4s的结构,通过跳跃连接叠加,再进行反卷积上采样使特征图变得稠密,最后得到一个分数图。注意的是:这里作者使用到的池化层是在多尺度阶段使用的,将图片池化成不同的分辨率,而不是在特征提取阶段。在类似于FCN的特征提取阶段中,并没有使用到池化层。

3.4 ResNet50-GCN预训练模型

作者本来使用的是ResNet作为预训练的,后来作者提出了一个ResNet50-GCN模型,就是将ResNet50中的一部分进行了修改,如下图:
论文阅读:Large Kernel Matters —— Improve Semantic Segmentation by Global Convolutional Network(GCN)_第13张图片
最后得到的结果是,如果使用的不是GCN+BR网络,会对结果有较大提升,但是如果是使用了GCN模块+BR模块,再使用ResNet50-GCN作为预训练,则提升不明显。(这里的baseline就是把总体结构中的GCN换成普通的1x1卷积)。
论文阅读:Large Kernel Matters —— Improve Semantic Segmentation by Global Convolutional Network(GCN)_第14张图片

4 部分结果

4.1 部分数据对比

论文阅读:Large Kernel Matters —— Improve Semantic Segmentation by Global Convolutional Network(GCN)_第15张图片
上图为不同的方法再PASCAL VOC 2012测试集的对比。
论文阅读:Large Kernel Matters —— Improve Semantic Segmentation by Global Convolutional Network(GCN)_第16张图片
上图为不同的方法在Cityscapes测试集上的对比。

4.2 部分效果对比

论文阅读:Large Kernel Matters —— Improve Semantic Segmentation by Global Convolutional Network(GCN)_第17张图片
上图为不同的方法的分割对比效果。

5 结论

5.1 优势

① 本文提出的GCN网络能够同时解决边界定位和识别问题。

② 本文提出的边界提取模块能够使得目标的边界更为清晰。

5.2 不足

(占位)

6 参考资料

(1)论文链接:https://arxiv.org/pdf/1703.02719.pdf
(2)非对称卷积

你可能感兴趣的:(语义分割文献笔记,计算机视觉,卷积,深度学习)