【语义分割系列:六】DeepLab v3 / v3+ 论文阅读翻译笔记
DeepLab v1
2015 ICLR
Semantic Image Segmentation with Deep Convolutional Nets and Fully Connected CRFs
0、Introduce
Abstract
- 当前的图像分割CNN是根据classification、object detection这种high-level semantics改编的,但CNN有invariance特点,故会丢失localization信息,即无法对像素点精确定位语义(low-level semantics)。然而我们需要的是精确地定位而不是抽象的空间细节。而本文提出的model,是CNN和PGM(概率图模型)的结合,对CNN最后一层加上fully connected CRFs,使得分割更精确。
- 在DCNN中重复最大池化和下采样带来的分辨率下降问题,分辨率的下降会丢失细节。DeepLab是采用的atrous(带孔)算法扩展感受野,获取更多的上下文信息。
- end-to-end
Method
DeepLab 是结合了深度卷积神经网络(DCNNs)和概率图模型(DenseCRFs)的方法
- 深度卷积神经网络(DCNNs)
第一步仍然采用了FCN得到 coarse score map并插值到原图像大小
使用Atrous convolution得到更dense且感受野不变的feature map - 概率图模型(DenseCRFs)
第二步借用fully connected CRF对从FCN得到的分割结果进行细节上的refine。
Problem
-
signal down-sampling
- 问题:DCNNs每一层重复执行下采样 (如max-pooling和downsampling),导致signal分辨率降低。
- 将stride改小,能得到更加dense的feature map,可是却也带来了另外一个问题即receptive field(RF)变小的问题。
- 将Hole(Atrous convolution)算法应用到DCNNs模型上来扩展感受野,获取更多的上下文信息。
-
spatial “insensitivity”(invariance)
- 问题:以获取图像中物体为核心的决策(High Level Vision Task,如图片分类、目标检测任务)需要空间不变性,即DCNNs的high-level的平移不变性(invariance),导致DCNNs做语义分割时定位精准度不够。
- 比如对于同一张图片进行空间变换(如平移、旋转),其图片分类结果是不变的。
- 对于图像分割等Low-Level Vision Task,对于一张图片进行空间变换后,其结果是改变的。
- 将DCNNs层的响应和 完全连接条件随机场(Fully Connected CRFs)结合(DeepLab是由两个非常成熟的模块(DCNN和CRFs)级联而成)
- 问题:以获取图像中物体为核心的决策(High Level Vision Task,如图片分类、目标检测任务)需要空间不变性,即DCNNs的high-level的平移不变性(invariance),导致DCNNs做语义分割时定位精准度不够。
High-Level & Low-level vision task
CNN适合于Hight-Level Vision Task(如图像分类),不太适合于Low-Level Vision Task(如图像分割、姿态估计)。
- lower level feature 通常是一些pattern
包括边缘检测,角点检测,颜色之类的对细节敏感、抽象度比较低的任务。
- high level feature 通常有更多的语义信息
目标检测、图像分类等对细节信息不敏感、抽象度比较高的任务。
CRF
to combine class scores computed by multi-way classifiers with the low-level information captured by the local interactions of pixels and edges or superpixels.
(将多路分类器计算的类得分 与 像素和边缘或超像素的局部交互捕获的低层信息结合起来)
我们的方法将每个像素看做CRF节点,利用长期依赖关系,并使用CRF推理直接优化 DCNN-driven cost