读书笔记《Fully Convolutional Networks for Semantic Segmentation》

论文相关

发表会议CVPR 2015
作者Jonathan Long ,Evan Shelhamer ,Trevor Darrell (UC Berkeley)
论文地址 link.

简要介绍

文章的目的是构建一个全卷积网络,这个网络能够对任意大小的输入通过有效的推理和学习产生相应大小的输出。
全卷积的网络结构的作用是將深层的粗糙的语义信息与浅层的精细的表面信息结合起来,进行准确和详细的分割。
文章提出这是第一次端到端地训练FCNs,去做1.每个像素点的分类;2.有监督下的预训练。

网络结构和原理

典型的像LeNet,AlexNet这种做识别的网络都是固定的输入大小,然后产生最后的分类结果,结果的输出是非空间的。因为全连接层会把feature map的输入转换成一维的输入,然后去做分类。然而全卷积可以看作是对全连接层的整个输入空间上做卷积,卷积的结果不再是一维的向量而是一张图,称为heatmap。
读书笔记《Fully Convolutional Networks for Semantic Segmentation》
图片上方是卷积+全连接的结构,输出的预测的数值。图片下方是把全连接改为卷积后的示意图,输出的是一张heatmap。

然后作者定义一种用作分割的全卷积网络。网络结构如下图所示。
读书笔记《Fully Convolutional Networks for Semantic Segmentation》
图中的FCN-32s是指把pool5层输出的feature map做32x的上采样得到的结果,大小变为原来的32倍。FCN-16s是先將pool5层2x上采样的结果与pool4层上做1x1卷积后的结果相加,然后再將叠加后的结果做16x的上采样,最终得到与原图同样大小的feature map。这样的结构是为了使得分割的结果更加准确。

分割的可视化效果如下图所示。
读书笔记《Fully Convolutional Networks for Semantic Segmentation》
由图中可看出FCN-8s的分割效果最好,但与Ground truth还是有很大的差距

总结

(1) FCN可以接受任意大小图片的输入。
(2) FCN是端到端的模型,可以实现像素点的分类。
(3)FCN是对分类网络的一种延伸。
(3)从图像分割的效果来看还有很大的提升空间。