8月25日计算机视觉理论学习笔记——FCN、DeepLab

文章目录

  • 前言
  • 一、语义分割(Semantic Segementation)
  • 二、FCN(Fully Convolutional Networks) 全卷积网络
    • 1、全卷积化(Convolutionalization)
    • 2、反卷积(Deconvolution)
      • (1)、外围全补零;
      • (2)、差零分数步长反卷积
      • (3)、上采样的三种实现
    • 3、跳层结构(Skip-layer)
  • 三、DeepLab v1
    • 1、孔(Hole)算法
    • 2、条件随机场(CRF)
  • 四、DeepLab v2
    • 1、Atrous 空间金字塔化
  • 五、DeepLab v3


前言

本文为8月25日计算机视觉理论学习笔记,分为五个章节:

  • 语义分割(Semantic Segementation);
  • FCN(Fully Convolutional Networks) 全卷积网络;
  • DeepLab v1;
  • DeepLab v2;
  • DeepLab v3。

一、语义分割(Semantic Segementation)

目标:

  • 从像素水平(pixel-level)上理解、识别图片内容;
  • 根据语义信息分割。

8月25日计算机视觉理论学习笔记——FCN、DeepLab_第1张图片
输入:

  • 图片;

输出:

  • 同尺寸的分割标记;
  • 每个像素会被识别为一个类别(category)。

二、FCN(Fully Convolutional Networks) 全卷积网络

1、全卷积化(Convolutionalization)

  • 将所有全连接层转换成卷积层;
  • 适应任意尺寸输入,输出低分辨率分割图片;
  • 卷积化后的核尺寸:
    • FC6:1×1,4096;
    • FC7:1×1,4096;
    • FC8:1×1,类别 N。

2、反卷积(Deconvolution)

也叫转置卷积(Transposed convolution)。

8月25日计算机视觉理论学习笔记——FCN、DeepLab_第2张图片

(1)、外围全补零;

  • 输入:2×2;
  • 输出:4×4;
  • 参数设置:
    • 卷积核尺寸:3×3;
    • 步长:1;
    • Padding:2.

(2)、差零分数步长反卷积

8月25日计算机视觉理论学习笔记——FCN、DeepLab_第3张图片

  • 输入:3×3;
  • 输出:5×5;
  • 参数设置:
    • 卷积核尺寸:3×3;
    • 步长:2;
    • Padding:1.

(3)、上采样的三种实现

  1. 双线性插值:不需要进行学习,运行速度快,操作简单。

8月25日计算机视觉理论学习笔记——FCN、DeepLab_第4张图片
2. 反卷积;
3. 反池化:池化过程中,记录下池化后元素在对应 kernel 中的坐标,作为反池化的索引。

8月25日计算机视觉理论学习笔记——FCN、DeepLab_第5张图片

3、跳层结构(Skip-layer)

使用前2个卷积层的输出做融合。

8月25日计算机视觉理论学习笔记——FCN、DeepLab_第6张图片


三、DeepLab v1

基本结构: 优化后的 CNN + 传统的 CRF 图模型。

1、孔(Hole)算法

  • 卷积核结构:
    • 尺寸不变(3×3),元素间距变大(1 ⇒ 2);
    • 步长不变(1).

8月25日计算机视觉理论学习笔记——FCN、DeepLab_第7张图片
8月25日计算机视觉理论学习笔记——FCN、DeepLab_第8张图片

2、条件随机场(CRF)

随机场可以看成是一组“对应同一个样本空间的”随机变量的集合。当给一个位置按照某种分布随机赋予一个值之后,其全体就叫做随机场。
P ( Y ∣ X ) = 1 Z ( X ) P ^ ( Y , X ) P ^ ( Y , X ) = e x p ( ∑ i w i ∗ f i ( Y , X ) ) Z ( X ) = ∑ Y e x p ( ∑ i w i ∗ f i ( Y , X ) ) P(Y|X) = \frac{1}{Z(X)} \hat{P}(Y, X)\\ \hat{P}(Y, X) = exp(\sum_{i} w_i * f_i(Y, X) ) \\ Z(X) = \sum_{Y} exp(\sum_{i} w_i * f_i(Y, X) ) P(YX)=Z(X)1P^(Y,X)P^(Y,X)=exp(iwifi(Y,X))Z(X)=Yexp(iwifi(Y,X))

8月25日计算机视觉理论学习笔记——FCN、DeepLab_第9张图片
对于每个像素 i i i 具有类别标签 x i x_i xi 及对应的观测值 y i y_i yi。这样每个像素点作为节点,像素与像素间的关系作为边,即构成了一个条件随机场。如上图所示:
P ( X = x ∣ I ) = 1 Z ( I ) e x p ( − E ( x ∣ I ) ) . P(X = x|I) = \frac{1}{Z(I)} exp(-E(x|I)). P(X=xI)=Z(I)1exp(E(xI)).

在 DeepLab 中,整个模型的能量函数:
E ( x ) = ∑ i ψ u ( x i ) + ∑ i < j ψ p ( x i , x j ) . E(x) = \sum_{i} \psi_u(x_i) + \sum_{iE(x)=iψu(xi)+i<jψp(xi,xj).

其中, x x x 是对全局 pixels 的概率预测分布, x i x_i xi 是其中一个 pixels 的概率预测分布。 ψ u \psi_u ψu 是一元势函数: ψ u ( x i ) = − l o g P ( x i ) \psi_u(x_i) = -logP(x_i) ψu(xi)=logP(xi)
二元势函数:
ψ p ( x i , x j ) = μ ( x i , x j ) ∑ m = 1 K ω ( m ) k ( m ) ( f i , f j ) . \psi_p(x_i, x_j) = \mu (x_i, x_j) {\textstyle \sum_{m=1}^{K}} \omega^{(m)} k^{(m)} (\textbf{f}_i, \textbf{f}_j ). ψp(xi,xj)=μ(xi,xj)m=1Kω(m)k(m)(fi,fj).
其中, k k k 为 Kernel 数量, ω \omega ω 为权重。


四、DeepLab v2

1、Atrous 空间金字塔化

  • 不同感受野(rate)捕捉不同尺度上的特征;
  • 在 Conv6 层引入4个并行空洞卷积。

8月25日计算机视觉理论学习笔记——FCN、DeepLab_第10张图片


五、DeepLab v3

  • 提出了更通用的框架,适用于任何网络;
  • 复制了 ResNet 最后的 block,并级联起来;
  • 最后一个特征图采用全局平均化。

8月25日计算机视觉理论学习笔记——FCN、DeepLab_第11张图片


你可能感兴趣的:(计算机视觉,学习,深度学习)