论文阅读笔记:FCNN 全卷机网络
论文下载地址:Fully Convolutional Networks for semantic Segmentation
CVPR 2015 best paper
本文主要包含如下内容:
核心思想
论文提出了一种end-to-end(端到端的)用于语义分割的“全卷积”网络:
- 不含全连接层(fc)的全卷积(fully conv)网络。可适应任意尺寸输入。
- 增大数据尺寸的反卷积(deconv)层。能够输出精细的结果。
- 结合不同深度层结果的跳级(skip)结构。同时确保鲁棒性和精确性。
网络结构
网络的输入可以为任意尺寸图像彩色图像;输出结果与输入图像具有相同的尺寸。是一个end-to-end, pixels-to-pixels网络。
在训练网络时:直接使用segmentation 的 ground truth作为监督信息(有监督的学习)
前面部分网络是由深度学习分类问题中经典网络 AlexNet 修改而来。下面介绍 AlexNet。
AlexNet
AlexNet网络是由5个卷积层,3个全链接层组成。
前五层为卷积层,具有相似的结构。层中运用卷积核(filter)进行特征提取,获得对应的输出;然后使用RELU(Rectified Linear Units)激励函数,确保特征图像的值位于合理范围内;特别的,第一层、第二层、第五层还进行了降采样处理(pooling)(作用:保留主要的特征同时降维和减少计算量,防止过拟合,提高模型泛化能力);最后进行LRN操作(局部归一化)。
其中,第一层用96个卷积核(filter)进行特征提取,获得96个输出值;然后使用RELU(Rectified Linear Units)激励函数,确保特征图像的值位于合理范围内;随后进行降采样处理(pooling);最后进行LRN操作(局部归一化)。
后三层为全链接层,使用神经元对前一层的特征值进行全链接(把所有的输入与输出连接起来),获得对应的输出。
其中,第六层使用神经元对第五层中的256个特征值进行全链接,得到4096个神经元的输出。
其中,第八层采用1000个神经元,对第七层中的4096个神经元进行全链接,然后通过softmax函数获得预测输出,即获得分类结果。
全卷积-提取特征
现在将AlexNet网络中后面的全链接层转化为卷积层,这就是“全卷积”网络,最后得到了一个较为粗糙的输出。
反卷积-升采样
全卷积网络在最后做了一个叫pixelwise prediction的预测,可以看到,输出图像和输入图像具有相同的尺寸,然而前面的网路使用了降采样。因此,论文运用了插值法对图像进行上采样,这里运用了反卷积。这些卷积运算的参数可以在训练过程中学习得到。
跳级结构
下图为pixelwise prediction的结果。作者发现经过步长为32的上采样后,获得的预测结果比较粗糙,所以考虑加入了更多前层的细节信息。于是采用了skip layer的方法,将粗的高层信息和低层信息结合。在浅层处减小upsampling的步长,得到多个label map prediction,然后做融合(fushion)。
FCN-16s结合了pool5层和pool4层的预测,upsampling的步长为16,让网络预测出更精细的细节,同时保留了高层语义信息。FCN-8s则结合了pool3层的预测,upsampling的步长为8,精度进一步提高。
实验结果
实验结果表明,FCN-16s将平均IU(region inntersection over union)有效提高到62.4,提高了一定的精度。FCN-8s则在平均IU上获得了一个较小的提出,到达了62.7,在平滑度和输出细节上有轻微的提高。
数据集(PASCAL VOC):这个表格给出了FCN-8s在图像识别与物件分类的挑战赛PASCAl VOC2011和2012测试集上的表现,将它和SDS和R-CNN算法进行比较。FCN-8s有较好的效果。
数据集(NVUDv2):NVUDv2是一种通过利用Microsoft Kinect收集到的RGB-D数据集,含有语义分割任务的pixelwise标签。)
数据集(SIFT-FLOW):图像语义分割与几何语义分割数据集
图像识别与物体分类挑战赛PASCAL的部分结果图,FCN-8s分割的效果很好。可以直观地看出,本文方法和Groud truth相比,容易丢失较小的目标和局部的细节信息,比如第一幅图片中的汽车,和第二幅图片中的观众人群