图像分割论文 Fully Convolutional Networks for Semantic Segmentation 阅读笔记
原文:Fully Convolutional Networks for Semantic Segmentation
作者:Jonathan Long,Evan Shelhamer,Trevor Darrell
下载地址:https://arxiv.org/abs/1605.06211
1 介绍
- 图像分割有两种类型,Semantic Segmentation和Instance Segmentation。前者将图像中属于同一类的像素分割出来,而后者除了考虑同一类别,还要将不同的“个体”区分开。下图就是一个典型的语义分割。本文算是语义分割Semantic Segmentation的深度学习开山之作。
- 文章进行分割的key insight是建立一个全卷积网络(fully convolutional networks,FCN),它可以以任意尺寸的图像为输入,并输出对应尺寸的分割mask预测。
2 基本思路
- 传统的分类网络中,特征图随着池化和2步长卷积等操作变得越来越小,最后通过全连接层变成非空间的输出。然而,全连接层也可以看做是卷积层的一种特殊形式,它的核大小正好等于输入的空间尺寸。例如VGG在全连接前的大小为7*7,后面的全连接可以看做是核为7*7的卷积,输出就是没有“空间尺寸”的张量了。
- 这就是“全卷积网络”FCN的由来,根据上面的想法,如果修改FCN最后一层的卷积核大小,也可以得到不同大小的输出。例如预测一个10*10大小的密度图,如果按空间位置做10*10=100次二值分类运算,耗时要比FCN输出10*10方格大得多。
- 但是这样的FCN还是略显粗糙,主要问题是最终输出的尺寸不可能大于上一层的输出尺寸,而为了节省计算资源,CNN网络中间必定要经过尺寸缩减。这样的FCN还是不足以生成像素级精度的分割mask。而作者灵光一闪,卷积的正向传播通过调整步长可以降采样,那么设计一个步长为分数的卷积,就可以实现升采样了。这个步长为分数的卷积也叫作反卷积(deconvolution),其实deconvolution的正向传播和convolution的反向传播是完全一样的。一个反卷积步长若为2