DeepLab v1

论文地址:http://arxiv.org/pdf/1412.7062v3.pdf

1 Introduction

1.1 Abstract

DeepLab是结合了深度卷积神经网络(DCNNs)和概率图模型(DenseCRFs)的方法。在实验中发现DCNNs做语义分割时精准度不够的问题,根本原因是DCNNs的高级特征的平移不变性(即高层次特征映射)。DeepLab解决这一问题的方法是通过将DCNNs层的响应和完全连接的条件随机场(CRF)结合。同时模型创新性的将hole(即空洞卷积)算法应用到DCNNs模型上,在现代GPU上运行速度达到了8FPS。

1.2 Problem

相比于传统的视觉算法(SIFT或HOG),DCNN以其end-to-end方式获得了很好的效果。这样的成功部分可以归功于DCNN对图像转换的平移不变性(invariance),这根本是源于重复的池化和下采样组合层。平移不变性增强了对数据分层抽象的能力,但同时可能会阻碍低级(low-level)视觉任务,例如姿态估计、语义分割等,在这些任务中我们倾向于精确的定位而不是抽象的空间关系。

DCNN在图像标记任务中存在两个技术障碍:

  • 信号下采样:在DCNN中重复最大池化和下采样带来的分辨率下降问题,分辨率的下降会丢失细节。
  • 空间不敏感(invariance):分类器获取以对象中心的决策是需要空间变换的不变性,这天然的限制了DCNN的定位精度。

比如对于同一张图片进行空间变换(如平移、旋转),其图片分类结果是不变的。

对于图像分割等Low-Level Vision Task,对于一张图片进行空间变换后,其结果是改变的。

1.3 Method

  • DeepLab是采用的atrous(带孔)算法扩展感受野,获取更多的上下文信息。

对于输出信号分辨率变小这一问题,FCN采用的是上采样(转置卷积)的方法进行恢复,而DeepLab采用空洞卷积的方法

DCNN分数图可以可靠地预测图像中对象的存在和粗略位置,但不太适合用于指向其精确轮廓。 卷积网络在分类精度和定位精度之间有自然的权衡:具有多个最大池化层的卷积神经网络在分类任务中已被证明是最成功的应用,然而,他们增加的不变性和大的感受野使得在其最后的输出层推断位置上有很大的难度。

空洞卷积的使用,借鉴于有效计算非抽样离散小波变换的”孔洞算法 ”,在VGG16中使用不同采样率的空洞卷积,可以让模型再密集的计算时,明确控制网络的感受野。保证DCNN的预测图可靠的预测图像中物体的位置。

  • DeepLab采用完全连接的条件随机场(DenseCRF)提高模型捕获细节的能力。

通过使用成对的完全连接的条件随机场(CRF)可以提高模型捕获细节的能力,通过结合多路分类器与由像素和边缘或超像素局部交互捕获的低级信息来计算得出的分数。

2 Architecture

DeepLab v1

DeepLab的BackBone依赖于VGG16,具体改造方法就是:

  • 将最后的全连接层FC6,FC7,FC8改造成卷积层。
  • pool4的stride由2变成1,则紧接着的conv5_1,conv5_2和conv5_3中hole size为2。
  • 接着pool5的stride由2变成1,则后面的fc6中的hole size为4。
  • fc7,fc8为标准的卷积。
  • 由于空洞卷积算法让feature map更加精细,因此网络直接采用插值上采样就能获得很好的结果,不用去学习上采样的参数了(FCN中采用了de-convolution)。
  • 多尺寸预测,希望获得更好的边界信息,与FCN skip layer类似,具体实现上,在输入图片与前四个 max pooling 后添加DeepLab v1DeepLab v1的卷积层,这四个预测结果与最终模型输出拼接(concatenate)到一起,相当于多了128*5=640个channel。虽然效果不如dense CRF,但也有一定提高。最终模型是结合了Desne CRF与Multi-scale Prediction。

DeepLab v1

2.1 Hole

2.2 CRF

2.3 多尺寸预测

参考: