作者 Derrick Mwiti参与 Nurhachu Null Geek AI

9102年了,语义分割的入坑指南和最新进展都是什么样的

语义分割指的是将图像中的每一个像素关联到一个类别标签上的过程,这些标签可能包括一个人、一辆车、一朵花、一件家具等等。在这篇文章中,作者介绍了近来优秀的语义分割思想与解决方案,它可以称得上是 2019 语义分割指南了。

我们可以认为语义分割是像素级别的图像分类。例如,在一幅有很多辆车的图像中,分割模型将会把所有的物体(车)标记为车辆。但是,另一种被称为实例分割的模型能够将出现在图像中的独立物体标记为独立的实例。这种分割在被用在统计物体数量的应用中是很有用的(例如,统计商城中的客流量)。
语义分割的一些主要应用是自动驾驶、人机交互、机器人以及照片编辑/创作型工具。例如,语义分割在自动驾驶和机器人领域是十分关键的技术,因为对于这些领域的模型来说,理解它们操作环境的上下文是非常重要的。

图片来源:
http://www.cs.toronto.edu/~tingwuwang/semantic_segmentation.pdf


接下来,我们将会回顾一些构建语义分割模型的最先进的方法的研究论文,它们分别是:
  1. Weakly- and Semi-Supervised Learning of a Deep Convolutional Network for Semantic Image Segmentation

  2. Fully Convolutional Networks for Semantic Segmentation

  3. U-Net: Convolutional Networks for Biomedical Image Segmentation

  4. The One Hundred Layers Tiramisu: Fully Convolutional DenseNets for Semantic Segmentation

  5. Multi-Scale Context Aggregation by Dilated Convolutions

  6. DeepLab: Semantic Image Segmentation with Deep Convolutional Nets, Atrous Convolution, and Fully Connected CRFs

  7. Rethinking Atrous Convolution for Semantic Image Segmentation

  8. Encoder-Decoder with Atrous Separable Convolution for Semantic Image Segmentation

  9. FastFCN: Rethinking Dilated Convolution in the Backbone for Semantic Segmentation

  10. Improving Semantic Segmentation via Video Propagation and Label Relaxation

  11. Gated-SCNN: Gated Shape CNNs for Semantic Segmentation


1. Weakly- and Semi-Supervised Learning of a Deep Convolutional Network for Semantic Image Segmentation (ICCV, 2015)
这篇论文提出了一个解决方法,主要面对处理深度卷积网络中的弱标签数据,以及具有良好标签和未被合适标记得数据的结合时的挑战。在这篇论文结合了深度卷积网络和全连接条件随机场
  • 论文地址:https://arxiv.org/pdf/1502.02734.pdf

在 PASCAL VOC 的分割基准测试中,这个模型高于 70% 的交并比(IOU)

这篇论文的主要贡献如下:
  • 为边界框或图像级别的训练引入 EM 算法,这可以用在弱监督和半监督环境中。

  • 证明了弱标注和强标注的结合能够提升性能。在合并了 MS-COCO 数据集和 PASCAL 数据集的标注之后,论文的作者在 PASCAL VOC 2012 上达到了 73.9% 的交并比性能。

  • 证明了他们的方法通过合并了少量的像素级别标注和大量的边界框标注(或者图像级别的标注)实现了更好的性能。

2. Fully Convolutional Networks for Semantic Segmentation (PAMI, 2016)
这篇论文提出的模型在 PASCAL VOC 2012 数据集上实现了 67.2% 的平均 IoU。全连接网络以任意大小的图像为输入,然后生成与之对应的空间维度。在这个模型中,ILSVRC 中的分类器被丢在了全连接网络中,并且使用逐像素的损失和上采样模块做了针对稠密预测的增强。针对分割的训练是通过微调来实现的,这个过程通过在整个网络上的反向传播完成。
  • 论文地址:https://arxiv.org/pdf/1605.06211.pdf

3. U-Net: Convolutional Networks for Biomedical Image Segmentation (MICCAI, 2015)

在生物医学图像处理中,得到图像中的每一个细胞的类别标签是非常关键的。生物医学中最大的挑战就是用于训练的图像是不容易获取的,数据量也不会很大。U-Net 是非常著名的解决方案,它在全连接卷积层上构建模型,对其做了修改使得它能够在少量的训练图像数据上运行,得到了更加精确的分割。
  • 论文地址:https://arxiv.org/pdf/1505.04597.pdf

由于少量训练数据是可以获取的,所以这个模型通过在可获得的数据上应用灵活的变形来使用数据增强。正如上面的图 1 所描述的,模型的网络结构由左边的收缩路径和右边的扩张路径组成。
收缩路径由 2 个 3X3 的卷积组成,每个卷积后面跟的都是 ReLU 激活函数和一个进行下采样的 2X2 最大池化运算。扩张路径阶段包括一个特征通道的上采样。后面跟的是 2X2 的转置卷积,它能够将特征通道数目减半,同时加大特征图。最后一层是 1X1 的卷积,用这种卷积来组成的特征向量映射到需要的类别数量上。

在这个模型中,训练是通过输入的图像、它们的分割图以及随机梯度下降来完成的。数据增强被用来教网络学会在使用很少的训练数据时所必需的鲁棒性和不变性。这个模型在其中的一个实验中实现了 92% 的 mIoU。
4. The One Hundred Layers Tiramisu: Fully Convolutional DenseNets for Semantic Segmentation (2017)
DenseNets 背后的思想是让每一层以一种前馈的方式与所有层相连接,能够让网络更容易训练、更加准确。
模型架构是基于包含下采样和上采样路径的密集块构建的。下采样路径包含 2 个 Transitions Down (TD),而上采样包含 2 个 Transitions Up (TU)。圆圈和箭头代表网络中的连接模式。
  • 论文地址:https://arxiv.org/pdf/1611.09326.pdf

这篇论文的主要贡献是:
  • 针对语义分割用途,将 DenseNet 的结构扩展到了全卷积网络。

  • 提出在密集网络中进行上采样路径,这要比其他的上采样路径性能更好。

  • 证明网络能够在标准的基准测试中产生最好的结果。

这个模型在 CamVid 数据集中实现 88% 的全局准确率。
5. Multi-Scale Context Aggregation by Dilated Convolutions (ICLR, 2016)
这篇论文提出了一个卷积网络模块,能够在不损失分辨率的情况下混合多尺度的上下文信息。然后这个模块能够以任意的分辨率被嵌入到现有的结构中,它主要基于空洞卷积
  • 论文地址:https://arxiv.org/abs/1511.07122

这个模块在 Pascal VOC 2012 数据集上做了测试。结果证明,向现存的语义分割结构中加入上下文模块能够提升准确率。

在实验中训练的前端模块在 VOC-2012 验证集上达到了 69.8% 的平均交并比(mIoU),在测试集上达到了 71.3% 的平均交并比。这个模块对不同对象的预测准确率如下所示:
6. DeepLab: Semantic Image Segmentation with Deep Convolutional Nets, Atrous Convolution, and Fully Connected CRFs (TPAMI, 2017)
在这篇论文中,作者对语义分割任务中做出了下面的贡献:
  • 为密集预测任务使用具有上采样的卷积

  • 在多尺度上为分割对象进行带洞空间金字塔池化(ASPP)

  • 通过使用 DCNNs 提升了目标边界的定位

  • 论文地址:https://arxiv.org/abs/1606.00915

这篇论文提出的 DeepLab 系统在 PASCAL VOC-2012 图像语义分割上实现了 79.7% 的平均交并比(mIoU)。

这篇论文解决了语义分割的主要挑战,包括:
  • 由重复的最大池化和下采样导致的特征分辨率降低

  • 检测多尺度目标

  • 因为以目标为中心的分类器需要对空间变换具有不变性,因而降低了由 DCNN 的不变性导致的定位准确率。

带洞卷积(Atrous convolution)有两个用途,要么通过插入零值对滤波器进行上采样,要么对输入特征图进行稀疏采样。第二个方法需要通过等于带洞卷积率 r 的因子来对输入特征图进行子采样,然后对它进行去交错(deinterlacing),使其变成 r^2 的低分辨率图,每一个 r×r 区域都有一个可能迁移。在此之后,一个标准的卷积被应用在中间的特征图上,并将其与原始图像分辨率进行交错。

7. Rethinking Atrous Convolution for Semantic Image Segmentation (2017)

这篇论文解决了使用 DCNN 进行语义分割所面临的两个挑战(之前提到过):当使用连续的池化操作时会出现特征分辨率的降低,以及多尺度目标的存在。
  • 论文地址:https://arxiv.org/pdf/1706.05587.pdf

为了解决第二个问题,本文提出了带洞卷积(atrous convolution),也被称作 dilated convolution。我们能使用带洞卷积增大感受野,因此能够包含多尺度上下文,这样就解决了第二个问题。

在没有密集条件随机场(DenseCRF)的情况下,论文的 DeepLabv3 版本在 PASCAL VOC 2012 测试集上实现了 85.7% 的性能。

8. Encoder-Decoder with Atrous Separable Convolution for Semantic Image Segmentation (ECCV, 2018)
这篇论文的方法「DeepLabv3+」在 PASCAL VOC 2012 数据集和 Cityscapes 数据集上分别实现了 89.0% 和 82.1% 的性能,而且没有做任何后处理。这个模型在 DeepLabv3 的基础上增加一个简单的解码模块,从而改善了分割结果。
  • 论文地址:https://arxiv.org/pdf/1802.02611v3.pdf

这篇论文实现了为语义分割使用两种带空间金字塔池化的神经网络。一个通过以不同的分辨率池化特征捕捉上下文信息,另一个则希望获取明确的目标边界。

9. FastFCN: Rethinking Dilated Convolution in the Backbone for Semantic Segmentation (2019)

这篇论文提出了一种被称作联合金字塔上采样(Joint Pyramid Upsampling/JPU)的联合上采样模块来代替消耗大量时间和内存的带洞卷积。它通过把抽取高分辨率图的方法形式化,并构建成一个上采样问题来取得很好的效果。
  • 论文地址:https://arxiv.org/pdf/1903.11816v1.pdf

此方法在 Pascal Context 数据集上实现了 53.13% 的 mIoU,并且具有三倍的运行速度。

该方法以全卷积网络(FCN)作为主体架构,同时应用 JPU 对低分辨率的最终特征图进行上采样,得到了高分辨率的特征图。使用 JPU 代替带洞卷积并不会造成任何性能损失。

联合采样使用低分辨率的目标图像和高分辨率的指导图像。然后通过迁移指导图像的结构和细节生成高分辨率的目标图像。
10. Improving Semantic Segmentation via Video Propagation and Label Relaxation (CVPR, 2019)
这篇论文提出了基于视频的方法来增强数据集,它通过合成新的训练样本来达到这一效果,并且该方法还能提升语义分割网络的准确率。本文探讨了视频预测模型预测未来帧的能力,进而继续预测未来的标签。
  • 论文地址:https://arxiv.org/pdf/1812.01593v3.pdf

这篇论文证明了用合成数据训练语义分割网络能够带来预测准确率的提升。论文提出的方法在 Cityscape 上达到了 8.5% 的 mIoU,在 CamVid 上达到了 82.9% 的 mIoU。

论文提出了两种预测未来标签的方法:
  • Label Propagation (标签传播,LP):通过将原始的未来帧与传播来的标签配对来创建新的训练样本。

  • Joint image-label Propagation (联合图像标签传播,JP):通过配对对应的传播图像与传播标签来创建新的训练样本。

这篇论文有 3 个主要贡献:利用视频预测模型将标签传播到当前的邻帧,引入联合图像标签传播(JP)来处理偏移问题,通过最大化边界上分类的联合概率来松弛 one-hot 标签训练。
11. Gated-SCNN: Gated Shape CNNs for Semantic Segmentation (2019)
这篇论文是语义分割领域最新的成果(2019.07),作者提出了一个双流 CNN 结构。在这个结构中,目标的形状信息通过一个独立的分支来处理,该形状流仅仅处理边界相关的信息。这是由模型的门卷控积层(GCL)和局部监督来强制实现的。
  • 论文地址:https://arxiv.org/pdf/1907.05740.pdf

在用 Cityscapes 基准测试中,这个模型的 mIoU 比 DeepLab-v3 高出 1.5%,F-boundary 得分比 DeepLab-v3 高 4%。在更小的目标上,该模型能够实现 7% 的 IoU 提升。下表展示了 Gated-SCNN 与其他模型的性能对比。
以上就是近来语义分割的主要进展,随着模型和数据的进一步提升,语义分割的速度越来越快、准确率越来越高,也许以后它能应用到各种现实生活场景中。

原文链接:https://heartbeat.fritz.ai/a-2019-guide-to-semantic-segmentation-ca8242f5a7fc

理论自然语言处理计算机视觉智能硬件Faster R-CNNDeepLab-v3+语义分割
42
相关数据
池化技术

池化(Pooling)是卷积神经网络中的一个重要的概念,它实际上是一种形式的降采样。有多种不同形式的非线性池化函数,而其中“最大池化(Max pooling)”是最为常见的。它是将输入的图像划分为若干个矩形区域,对每个子区域输出最大值。直觉上,这种机制能够有效的原因在于,在发现一个特征之后,它的精确位置远不及它和其他特征的相对位置的关系重要。池化层会不断地减小数据的空间大小,因此参数的数量和计算量也会下降,这在一定程度上也控制了过拟合。通常来说,CNN的卷积层之间都会周期性地插入池化层。

最大池化技术

最大池化(max-pooling)即取局部接受域中值最大的点。

随机梯度下降技术

梯度下降(Gradient Descent)是遵循成本函数的梯度来最小化一个函数的过程。这个过程涉及到对成本形式以及其衍生形式的认知,使得我们可以从已知的给定点朝既定方向移动。比如向下朝最小值移动。 在机器学习中,我们可以利用随机梯度下降的方法来最小化训练模型中的误差,即每次迭代时完成一次评估和更新。 这种优化算法的工作原理是模型每看到一个训练实例,就对其作出预测,并重复迭代该过程到一定的次数。这个流程可以用于找出能导致训练数据最小误差的模型的系数。

条件随机场技术

条件随机场(conditional random field,简称 CRF),是一种鉴别式机率模型,是随机场的一种,常用于标注或分析序列资料,如自然语言文字或是生物序列。 如同马尔可夫随机场,条件随机场为无向性之图模型,图中的顶点代表随机变量,顶点间的连线代表随机变量间的相依关系,在条件随机场当中,随机变量 Y 的分布为条件机率,给定的观察值则为随机变量 X。原则上,条件随机场的图模型布局是可以任意给定的,一般常用的布局是链接式的架构,链接式架构不论在训练(training)、推论(inference)、或是解码(decoding)上,都存在有效率的算法可供演算。 条件随机场跟隐马尔可夫模型常被一起提及,条件随机场对于输入和输出的机率分布,没有如隐马尔可夫模型那般强烈的假设存在。 线性链条件随机场应用于标注问题是由Lafferty等人与2001年提出的。

图像处理技术

图像处理是指对图像进行分析、加工和处理,使其满足视觉、心理或其他要求的技术。 图像处理是信号处理在图像领域上的一个应用。 目前大多数的图像均是以数字形式存储,因而图像处理很多情况下指数字图像处理。

上采样技术

在数字信号处理中,上采样、扩展和内插是与多速率数字信号处理系统中的重采样过程相关的术语。 上采样可以与扩展同义,也可以描述整个扩展和过滤(插值)过程。

语义分割技术

语义分割,简单来说就是给定一张图片,对图片中的每一个像素点进行分类。图像语义分割是AI领域中一个重要的分支,是机器视觉技术中关于图像理解的重要一环。

空洞卷积技术

空洞卷积最大的特性就是扩张感受野,它不是在像素间插入空白像素,而是略过一些已有的像素。当然,我们也可以理解为保持输入不变,并向卷积核中添加一些值为零的权重,从而在计算量基本不变的情况下增加网络观察到的图像范围或序列长度。

感受野技术

一个感觉神经元的感受野是指这个位置里适当的刺激能够引起该神经元反应的区域。感受野一词主要是指听觉系统、本体感觉系统和视觉系统中神经元的一些性质。

推荐文章
FCN: 全卷积网络,不是“全连接网络”
陕西师范大学・计算机软件与理论・硕士
回复crossgate
严谨