论文原文
Fully Convolutional Networksfor Semantic Segmentation
0. 简介
FCN旨在建立完全卷积的网络来处理任意大小的输入图像,利用一系列卷积操作提取特征,对于最终得到的尺寸不断下降的特征图,利用卷积操作代替全连接操作调整特征图的通道数为分类类别数,最后利用转置卷积(transpose convolution)将特征图恢复到原图尺寸,从而产生与原图相同大小的输出,每个像素点对应n个通道,每个通道上的数值对应该像素点分类为该类别的可能性分数,此输出用于语义分割,即对图像中的每一个像素点预测一个类别。
FCN不是具体的一个网络,而是一个网络架构,许多分类网络(backbone)可以嵌入到这个架构中。在原文中,只使用了AlexNet,VGG,GoogLeNet 作为骨干网络(backbone),进行验证试验。
FCN还提出了一个skip架构,用于连接粗糙的深层语义特征图与精细的浅层语义特征图。
1. 网络架构
前向传播过程
对原图像进行卷积 conv1、pool1后原图像缩小为1/2;
继续对图像进行第二次 conv2、pool2后图像缩小为1/4;
继续对图像进行第三次卷积操作conv3、pool3缩小为原图像的1/8,同时保留pool3的featureMap;
继续对图像进行第四次卷积操作conv4、pool4,缩小为原图像的1/16,同时保留pool4的featureMap;
最后对图像进行第五次卷积操作conv5、pool5,缩小为原图像的1/32,此时特征图的尺寸不是 1 × 1 × N 1 \times 1 \times N 1×1×N ,而是 H 32 × H 32 × N \frac{H}{32} \times \frac{H}{32} \times N 32H×