论文地址 :ConvCRFs for senmantic segmentation 工程地址:github 链接

1. 简介

  基于深度神经网络的方法在图像语义分割任务上表现良好,其能够有效地进行特征抽取,并且仅用较小的感受野就能得到较好的预测结果,但是缺乏对于全局语义信息和像素点间联系信息的利用能力,也有研究有效地结合了卷积神经网络和建模能力较强的CRF以进行分割,效果也不错。
  条件随机场(Conditional Random Fields, CRFs)因为具有对图像结构的建模能力可以作为一种有效的语义分割后处理方式,但是其缺点显著:一是训练和推断速度十分感人,二是其内部参数难以学习。该论文假设现有的全连接条件随机场框架具有条件独立性,从而提出以卷积的方式重新构建CRF,使其参数能够利用反向传播算法进行优化,并且能够在GPU上高效实现以进行训练和推断过程的加速。

2. 全连接条件随机场

语义分割模型预测_语义分割模型预测个像素的输入图像语义分割模型预测_计算机视觉_02和具有语义分割模型预测_语义分割模型预测_03个类别的图像分割任务,语义分割模型预测_计算机视觉_02的分割可以建模为一个随机场X语义分割模型预测_计算机视觉_05,其中,每个参数语义分割模型预测_语义分割模型预测_06从{1,…,k}中取值,利用语义分割模型预测_深度学习_07得到输入图像语义分割模型预测_计算机视觉_02的一个分割语义分割模型预测_建模_09语义分割模型预测_计算机视觉_10被建模为CRF并且符合Gibbs分布,如下所示:
语义分割模型预测_深度学习_11

语义分割模型预测_建模_12定义为:
语义分割模型预测_语义分割模型预测_13

语义分割模型预测_计算机视觉_14称为一元变量,本身可以被视为图像的分割图,任一分割方法都可以用于这个一元变量的预测,实际上当下的语义分割方法都是使用CNNs来对其进行计算的。
  函数语义分割模型预测_计算机视觉_15是二元变量,代表像素语义分割模型预测_语义分割模型预测_16的联合分布,使得模型可以利用像素点间的联系,比如颜色相近的点倾向于属于同一类,在FullCRF中语义分割模型预测_语义分割模型预测_17被定义为高斯核权重的和:
语义分割模型预测_建模_18

语义分割模型预测_计算机视觉_19是可学习的参数,特征向量语义分割模型预测_计算机视觉_20可以任意选取,可能和输入图像有关。函数语义分割模型预测_深度学习_21是相容性转化,可以理解为极性,仅和标签语义分割模型预测_建模_22,和图像无关。
  最常用的相容性函数是是Potts模型语义分割模型预测_建模_23。这个模型将相似的特征赋予相同的标签,从而使得模型学习像素点间预测标签关系的结构信息。
  FullCRFs利用两个带有手工设计特征的高斯核,核语义分割模型预测_建模_24使用语义分割模型预测_语义分割模型预测_25的颜色值作为特征,负责平滑的核则与位置坐标语义分割模型预测_计算机视觉_26,完整地:
语义分割模型预测_语义分割模型预测_27

语义分割模型预测_语义分割模型预测_28是模型可学习的参数,多数分割模型中的CRF都利用了相同的二元变量,CRFs难以利用手工设计的特征进行优化就来源于此。

2.1 平均场推断

  FullCRFs中的推断是通过平均场算法实现的,算法中除了信息传递的所有步骤都是高度并行的所以可以很好的在GPUs上使用通用的深度学习库实现,平均场[《模式识别与机器学习.pdf》第十章:近似推断中有讲解]算法具体如下:

语义分割模型预测_计算机视觉_29


  Krähenbühl and Koltun原始的论文中提出使用permutohedral lattice approximation,但是这种近似推断需要复杂的数据结构,而且这种近似推断的有效梯度计算研究尚未完整,这也是为什么FullCRF使用手工设计特征的原因。

3. 卷积条件随机场

语义分割模型预测_语义分割模型预测_16的标签的分布条件独立,如果两个像素点的曼哈顿距离语义分割模型预测_深度学习_31,则称语义分割模型预测_语义分割模型预测_03为滤波器尺寸。
  这个假设是very strong的,它意味着当两个点的距离超过语义分割模型预测_语义分割模型预测_03,则二元变量的值为0,这使得二元变量的计算量大大降低,而且令ConvCRFs的理论基础有了健壮且有意义的假设。

3.1 ConvCRFs中的高效消息传递

  该论文主要贡献在于证明了ConvCRFs中的消息传递是非常高效的,这避免了permutohedral lattice approximation的使用,也就使得高效的GPU计算和完整的特征学习成为可能。基于这个目标论文重新构建了带有高斯核的卷积操作中的消息传递步骤,观察到其实现与卷积神经网络中的卷积操作的实现类似。
  给定输入语义分割模型预测_计算机视觉_34,其形状为语义分割模型预测_语义分割模型预测_35,分别代表了batch size,分类的数量,输入的高和宽,对于由特征向量语义分割模型预测_语义分割_36定义的高斯核语义分割模型预测_深度学习_37,对于每一个形状语义分割模型预测_语义分割模型预测_38,它的核矩阵通过如下公式定义:
语义分割模型预测_语义分割_39

语义分割模型预测_深度学习_40是可学习的参数,对于高斯核集合语义分割模型预测_语义分割_41,论文定义了一个融合的核K,即语义分割模型预测_建模_42,所有的语义分割模型预测_语义分割_43个核的消息传递输出结果语义分割模型预测_建模_44定义为:
语义分割模型预测_深度学习_45

语义分割模型预测_计算机视觉_46,这与局部连接层相似。而且论文提出的滤波器在通道维度是一个常数,可以通过通道维度来查看整个操作。
  综上,仅仅使用卷积操作是可以实现ConvCRFs的,只是需要在显存中进行几次数据的重新组织,90%的GPU计算时间都花在了数据重新组织上,所以论文只实现了一个较简单的版本,来获得十次CRF迭代的结果。
  实现中的第一步是获取形状为语义分割模型预测_计算机视觉_47的数据覆盖输入语义分割模型预测_计算机视觉_34,这一过程与2d-conv中的im2col类似。2d-conv通过在空间维度应用批量矩阵乘法,而ConvCRFs用通道维度的批量点乘操作来代替这一操作。

3.2 其他的实现细节

  为了可比较,论文使用了与FullCRFs相同的设计组件,特别的,使用了softmax正规化,Potts模型和手工社集的高斯特征。同样,将高斯模糊应用在承兑的核中,这也导致了有效的滤波器尺寸增加了四倍。
  附加实验中还验证了ConvCRFs学习高斯特征的的可行性,论文将输入特征语义分割模型预测_计算机视觉_49替换为带有可学习变量的平滑核,这些变量与手工设计高斯核进行相同的初始化,并作为训练的一部分,论文还实现了一个使用点卷积的版本。

4. 试验评估

数据集 PASCAL VOC 2012
Unary 训练ResNet101来计算一元变量,在ResNet顶部增加一个简单的FCN进行特征抽取和像素点标签预测,主干网络采用ImageNet预训练模型,然后在Pascal VOC数据集上训练。
  其他训练参数细节-略
CRF CRF的平均场推断进行五次并且在训练时回滚。

4.1 ConvsCRF用于合成数据

语义分割模型预测_语义分割模型预测_50

4.2 ConvCRFs的解耦训练

语义分割模型预测_语义分割模型预测_51

语义分割模型预测_语义分割模型预测_52

4.3 ConvCRFs进行端到端的学习

语义分割模型预测_语义分割模型预测_53