【图像分割论文阅读】Learning Deconvolution Network for Semantic Segmentation

deconv paper
论文发表时间比较长,于2015年发表于ICCV,International conference on computer vision。
一作是韩国人,就读于韩国浦项工科大学计算机科学与工程系。
论文地址:Learning Deconvolution Network for Semantic Segmentation


1.Introduction

卷积神经网络在各类视觉识别类任务如图像分类、目标检测、语义分割和行为检测等任务上取得了优秀的性能。结合CNN提取到的特征和简单的分类器在实践中非常有效。近期的语义分割算法都是解决基于CNN结构化像素级标注问题。其中FCN将CNN中的全连接层转化为卷积层。通过对图像的每一个local region进行分类,提取到粗粒度的标签映射。对像素级的标签,通过双线性值插发实现简单的反卷积操作。同时CRFs也作为一种可选方案微调分割。FCN的优点是可以将整张图作为输入并且在推理的更快更精确。
基于FCNs的语义分割模型有一些缺陷:

  • 由于感受野大小固定,它只能在单一尺度下处理语义任务。
    因此,大于或小于感受野大小的目标将会被分割或者被误分类。换句话说,对大的对象而言,其标签预测仅与local information有关,并且同属于一个对象的多个像素值的标签可能不一致。而对于小目标而言,它总是被忽略或者是被归为背景。尽管FCN中使用skip structure避免这个问题,但是获得的性能并不够好。
  • 目标的结构细节经常丢失或是被平滑处理,因为输入到deconv中的标签映射过于稀疏了(粗粒度)并且在FCNs中的deconv过程非常简单。(FCNs中的标签映射为16x16,然后经过deconv经过双线性值插法产生原始图像大小的分割。之后又有CRFs改进这一问题。)
    为了克服上述限制,基于CNN模型作者提出一种完全不同的策略处理语义分割任务。
  1. deconv层包含,反卷积、反池化以及ReLU线性修正单元。
  2. 对于单个目标proposal训练网络以获得目标级的分割结果,最后融合所有proposal的分割结果。不像FCN只能处理单一尺度,它能够识别目标细节。
  3. 结合deconv的网络在PASCAL VOC 2012数据集取得了杰出的性能。相对于FCN方法,通过集成FCN模型,我们能够利用异构性和互补性。

2.System Architecture

2.1 Architecture

模型包含两部分:conv+deconv,其整体构架如图所示:
deconv
其中,卷积网络对应于特征提取,将输入图片转化为多维度的特征表示,而反卷积网络根据卷积网络产生的特征表示生成目标分割的形状。网络的最后输出是与输入图像大小一致的概率图,标识每一个像素对应着预先定义类别的概率。

卷积网络包含13个卷积层以及2个全连接层,其中卷积层中有些还包含池化、ReLU操作,最后的2层全连接是为了实现具体类的映射。反卷积网络是卷积网络的镜像模式,包含一系列的上池化、反卷积和线性修正单元。
与卷积网络中前向传播过程中的激活单元减少相比,反卷积网络中通过上池化和反卷积操作增大激活单元。

2.2 Deconvolution Network for Segmentation

这里讨论的是反卷积网络中的反池化和反卷积,所谓的低层、高层也是针对于反卷积网络而言的。

2.2.1 Unpooling

卷积网络中的池化是通过在感受野中提取单一表征值来滤除低层的噪声。纵然能够在高层保持稳定的的激活值(有助于分类任务),但是空间信息丢失严重。而对语义分割任务而言,定位精度至关重要。
为了解决这种问题,在反卷积网络中采用反池化操作。它是池化过程的逆过程。通过记录池化过程中的选择的最大值变量的位置,而后以进行反池化过程,其示意图如下:
deconv & unpooling

2.2.2 Deconvolution

反卷积的输出其尺寸增大了,但是依旧稀疏。反卷积过程通过多层可学习的filter进行类卷积操作,使得反池化的稀疏结果更加密集。注意到,卷积过程中一个卷积窗口中的多个输入激活仅连接到单个输出,而反卷积过程将单个输入激活与多个输出关联。反卷积过程的输出是增大且密集的激活映射。最后通过裁减增大的图的边界以获得与之前unpooling产生大小一致的输出。在低层的filters容易捕获对象的整体形状,而高层filters捕获特定类别的细节信息。
通过这种方式,在语义分割任务中考虑到了特定的类别信息,而这些类别信息常常被忽略。

2.2.3 Analysis of Deconvolution Network

通过反卷积网络中的传播过程,观测的对象结构由粗糙到细致。低层易于捕获全局的粗糙信息,如位置、形状和区域,而更复杂的模式则在高层捕获。
analysis


3. Training

上述模型比VGG要深两倍,并包含许多相关参数。此外,用作语义分割任务的训练样本相对模型而言很少,训练集+验证集仅有12031张训练图像。训练过程并不容易,作者采用如下方法实施:

3.1 Batch Normalization

由于CNN模型内在的不变性使得深层神经网络难以优化。在训练过程中,随着前一层参数的更新,每一层的输入分布会随着迭代而变化。当网络较深时,这种变化的分布会跨层传播。对每一层输入的分布进行batch normalization操作使之符合高斯分布。如果不进行BN操作,网络常常会陷入局部最优解中。

3.2 Two-stage Training

训练过程包含两部分:先用简单的例子训练,而后用更具挑战的例子微调训练过的网络。
在第一阶段:作者利用ground truth注释裁减对象,使得对象处于裁剪后的边界框中心。通过限制目标位置和大小变化,减少语义分割的搜索空间。
第二阶段:选择与ground truth部分有充分重叠的候选proposal进行训练。

3.3 Inference

网络经过训练后,可以对单个实例进行语义分割。在给定一个输入图像的情况下,首先生成足够数量的候选方案,然后利用训练好的网络获得各个方案的语义分割图。然后将所有区域的输出聚合起来,对整个图像进行语义分割。最后,为了进一步提高性能,集成FCN模型。

3.3.1 Aggregating Instance-wise Segmentation Maps

因为目标不重叠或者归为背景,有些候选区域可能造成不正确的预测。对所有类别的分数求最值或取平均非常有效。

3.3.2 Ensemble with FCN

ensemble


4. Experiments

一些实验细节,包括网络配置、参数多寡、数据增强、优化方案等等就不写了,比较繁琐但是内容又不多。
作者最后的实验结果如图:
experiments
其中,EDeconvNet代表集成模型,CRF代表结合条件随机场后处理。可以看出的是单纯的反卷积网络其mAP=69.6%,使用CRF后处理之后提升了0.9%。集成模型提升了2.1%,最后集成模型加上条件随机场获得了当时的最优精度72.5%.

5.Conclusion

作者的做法是反卷积+反池化进行复杂化操作,重构出由粗到细的目标结构,适用于生成密集、精确的目标分割任务。又使用基于实例预测的算法消除FCN中感受野固定的问题,有利于处理对象尺寸变化问题。最后使用集成方法,在PASCAL VOC 2012上取得了最优精度。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值