DeepLab系列之V1

  1. DeepLab系列之V1
  2. DeepLab系列之V2
  3. DeepLab系列之V3
  4. DeepLab系列之V3+

  • 论文地址:DeepLabv1: Semantic image segmentation with deep convolutional nets and fully connected CRFs
  • 收录:ICLR 2015 (International Conference on Learning Representations)
  • 论文代码: github-Caffe

概述

作者发现Deep Convolutional Neural Networks (DCNNs) 能够很好的处理的图像级别的分类问题,因为它具有很好的平移不变性(空间细节信息已高度抽象),但是DCNNs很难处理像素级别的分类问题,例如姿态估计和语义分割,它们需要准确的位置信息。

  1. 两个问题要处理:
  • 重复池化和下采样导致分辨率大幅下降,位置信息丢失难以恢复
  • 空间不变性导致细节信息丢失
  1. 处理方案:
  • 空洞卷积
  • Fully-connected Conditional Random Field (CRF)

3.优势

  • 速度很快,DCNN 8fps,CRF需要0.5秒
  • 准确率高,当时在PASCAL的语义分割集上效果最好
  • 结构简单,DCNN和CRF的组合

网络结构—DCNN

  1. 啥是空洞卷积?
    论文中给出了示意图:
    DeepLab系列之V1_第1张图片

    Input stride 也就是空洞因子或者膨胀因子,在同样的卷积核大小下,通过增加Input stride可以增大卷积核的感受野。更好的示意图:
    DeepLab系列之V1_第2张图片

    可以发现感受野从3变成 了5,近似的扩大了2倍,卷积核大小仍为3x3,Input stride为2,现在都叫dilate rate
  2. Finetune VGG-16
    重温VGG-16结构图:


    DeepLab系列之V1_第3张图片

    作者为了加载预先在ImageNet训练好的VGG-16模型,并保证图片仅缩放了8倍做了如下修改:

  • 把全连接层(fc6、fc7、fc8)改成卷积层(做分割嘛)
  • 把最后两个池化层(pool4、pool5)的步长2改成1(保证feature的分辨率)
  • 把最后三个卷积层(conv5_1、conv5_2、conv5_3)的dilate rate设置为2,且第一个全连接层的dilate rate设置为4(保持感受野)
  • 把最后一个全连接层fc8的通道数从1000改为21(分类数为21)
  1. 加速训练
    第一个全连接层fc6,通道数从4096变为1024,卷积核大小从7x7变为3x3,后续实验中发现此处的dilate rate为12时(LargeFOV),效果最好。

网络结构—CRF

通常网络中分类准确率和位置准确性是一对矛盾的存在,有一些工作尝试在保证分类准确率的条件下解决位置问题:

  • 利用卷积网络中多个层次的信息
  • 利用超像素,把位置问题交给底层次的分割处理(此处低层次分割是无语义分割)

一般利用到条件随机场(CRFs)来处理分割中不光滑问题,它只考虑到目标像素点的附近点,是一个短距离的CRFs。由于网络中得到的结果已经比较光滑了,更希望的是修复一些小的结构,所以用到了全连接的CRF模型。它的能量函数:

DeepLab系列之V1_第4张图片

  • 目标就是要最小化能量函数,先看第一项:

    这一项保证了分类的准确率,准确率越高P(x)越接近1(0到1),此项值越小。
  • 再看第二项:

    此处有:

    说明只考虑标签不相同的两个像素点,因为是全连接所以这两个点为模型中任意两点!!!

    为其右边式子的权重,右边的它是一个高斯核函数

    此高斯核函数具体为:

    此核函数主要由两个像素点的位置颜色决定,位置为主,颜色为辅。右下角带有αβγ的参数和w1w2参数,试验时由w2=3γ=3决定,搜索最优。
    效果如图所示:
    DeepLab系列之V1_第5张图片

    可以看到DCNN output的边缘虽然比较光滑,但是缺少了很多细节信息,而随着CRF的迭代优化,细节更加突出。
  • 高斯核是啥呢?
    借用百度的原话:
    高斯核函数形式为 k(||x-xc||)=exp{- ||x-xc||2/(2*σ2) } 其中xc为核函数中心,σ为函数的宽度参数 , 控制了函数的径向作用范围。分布如图所示:
    DeepLab系列之V1_第6张图片

网络结构—MLP

作者也尝试融合了多层次信息,前四个pool层之后都额外接了两个卷积层,第一个卷积层128 3x3,第二卷积层128 1x1,和最后一个softmax层concat之后会有5*128=640个通道,训练这部分分支时,固定其它网络的参数。
发现多层次融合后能提升细节信息,但是没有CRF来的明显。

实验

  1. 以下是自对比实验


    DeepLab系列之V1_第7张图片
  • MSc—多层次融合
  • CRF—全连接条件随机场
  • LargeFOV—fc6的dilate rate为12

从图中可以发现DeepLab-CRF-LargeFOVDeepLab-CRF-LargeFOV的mean IOU相同都为67.64,说明7x7的卷积核和dilate rate为12的3x3卷积核效果一样,而3x3的卷积核参数更少。

  1. 与FCN-8s和TTI-Zoomout-16的效果对比
    DeepLab系列之V1_第8张图片

    从上到下依次为原图真值图被对比的效果图DeepLab-CRF的效果图

你可能感兴趣的:(DeepLab系列之V1)