语义分割的基本构造_语义分割综述

语义分割的基本构造_语义分割综述目录语义分割综述摘要语义分割领域研究现状灰度分割条件随机场深度学习方法数据集与评价指标常用数据集评价指标模型介绍语义分割综述摘要语义分割(全像素语义分割)作为经典的计算机视觉问题(图像分类,物体识别检测,语义分割)。其涉及将一些原始数据(例如:平面图像)作为输入并将它们转换为具有突出显示的感兴趣区域的掩膜,其中图像中的每个像素根据其所属的对象被分…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

目录

语义分割综述

摘要

语义分割领域研究现状

灰度分割

条件随机场

深度学习方法

数据集与评价指标

常用数据集

评价指标

模型介绍



语义分割综述

摘要

语义分割(全像素语义分割)作为经典的计算机视觉问题(图像分类,物体识别检测,语义分割)。其涉及将一些原始数据(例如:平面图像)作为输入并将它们转换为具有突出显示的感兴趣区域的掩膜,其中图像中的每个像素根据其所属的对象被分配类别ID。早起的计算机视觉问题只发现边缘(线条和曲线)或渐变元素,但它们从完全按照人类感知的方式提供像素级别的图像理解。语义分割将属于同一目标的图像部分聚集在一起解决这个问题,从而扩展了其应用领域。值得注意的是,与其他的基于图像的任务相比,语义分割是完全不同且先进的。

                                 语义分割的基本构造_语义分割综述

语义分割领域研究现状

早起的分割算法主要是灰度分割,条件随机场等一些较为传统的算法。

灰度分割

最简单的语义分段形式涉及分配区域必须满足的硬编码规则或属性,以便为其分配特定标签。规则可以根据像素的属性(例如灰度级强度)来构建。使用此技术的一种方法是拆分(Split)和合并(Merge)算法。该算法递归地将图像分割成子区域,直到可以分配标签,然后通过合并它们将相邻的子区域与相同的标签组合。

这种方法的问题是规则必须硬编码。此外,仅用灰色级别的信息来表示复杂的类(如人)是极其困难的。因此,需要特征提取和优化技术来正确地学习这些复杂类所需的表示。

条件随机场

考虑通过训练模型为每个像素分配类来分割图像。如果我们的模型不完美,我们可能会得到自然界不可能得到的噪声分割结果(如图中所示,狗像素与猫像素混合)。

可以通过考虑像素之间的先验关系来避免这些问题,例如,对象是连续的,因此附近的像素往往具有相同的标签。为了模拟这些关系,我们使用条件随机场(CRF)。

CRF是一种用于结构化预测的统计建模方法。与离散分类器不同,CRF可以在进行预测之前考虑“相邻上下文”,比如像素之间的关系。这使得它成为语义分割的理想候选。

图像中的每个像素都与一组有限的可能状态相关联。在我们的示例中,目标标签是可能的状态集。将一个状态(或标签,u)分配给单个像素(x)的成本称为它的一元成本(unary cost)。为了对像素之间的关系建模,我们还考虑了将一对标签(u,v)分配给一对像素(x,y)的成本,即成对成本(pairwise cost)。我们可以考虑它的近邻像素对(Grid CRF)或者我们可以考虑图像中的所有像素对(Dense CRF)

语义分割的基本构造_语义分割综述

深度学习方法

与此同时随着深度学习技术的不断发展,深度学习在语义分割任务中大放异彩,取得了骄人的成绩。从第一篇真正意义上的深度学习方法语义分割模型FCN说起,语义分割发展了不足六年的时间,经典的SegNet,Deeplab系列,DenseASPP等等,再到近些年来研究热点的NAS方法。不断的刷新各个分割数据集的Leaberboard。


数据集与评价指标

常用数据集

VOC2012:有 20 类目标,这些目标包括人类、机动车类以及其他类,可用于目标类别或背景的分割

MSCOCO:是一个新的图像识别、分割和图像语义数据集,是一个大规模的图像识别、分割、标注数据集。它可以用于多种竞赛,与本领域最相关的是检测部分,因为其一部分是致力于解决分割问题的。该竞赛包含了超过80个物体类别

Cityscapes :50 个城市的城市场景语义理解数据集

Stanford Background Dataset:至少有一个前景物体的一组户外场景。

Pascal Context:有 400 多类的室内和室外场景

评价指标

IOU:用于评估语义分割算法性能的标准指标是平均 IOU(Intersection Over Union,交并比),IoU 定义如下:

这样的评价指标可以判断目标的捕获程度(使预测标签与标注尽可能重合),也可以判断模型的精确程度(使并集尽可能重合)。

IoU一般都是基于类进行计算的,也有基于图片计算的。一定要看清数据集的评价标准。

基于类进行计算的IoU就是将每一类的IoU计算之后累加,再进行平均,得到的就是基于全局的评价,所以我们求的IoU其实是取了均值的IoU,也就是均交并比(mean IoU)

pixcal-accuracy (PA,像素精度):基于像素的精度计算是评估指标中最为基本也最为简单的指标,从字面上理解就可以知道,PA是指预测正确的像素占总像素的比例.


模型介绍

接下来将按照论文的发表顺序来介绍以下论文

  1. FCN网络
  2. UNet网络
  3. SegNet网络
  4. 空洞卷积(Dilated Convolution)
  5. Deeplab(V1 V2)
  6. RefineNet
  7. PSPNet
  8. 大内核(Large Kernel Matters)
  9. Deeplab v3
  10. EncNet
  11. DenseASPP
  12. ResNet_DUC
  13. Deeplab v3+
  14. DFANet
  15. DANet
  16. Auto_Deeplab
  17. APCNet
  18. CANet


1. Fully Convolutional Networks for Semantic Segmentation(2014/11/14)

主要贡献

将端到端的卷积网络推广到语义分割中;

重新将预训练好的Imagenet网络用于分割问题中;

使用反卷积层进行上采样;

提出了跳跃连接来改善上采样的粗糙程度。

模型解释:

本文的关键在于:分类网络中的全连接层可以看作是使用卷积核遍历整个输入区域的卷积操作。这相当于在重叠的输入图像块上评估原始的分类网络,但是与先前相比计算效率更高,因为在图像块重叠区域,共享计算结果。

尽管这种方法并不是这篇文章中所特有的,还有一篇关于overfeat的文章也使用了这种思想,但是确实显著提高了在VOC2012数据集上的实际效果。

                           语义分割的基本构造_语义分割综述

用卷积运算实现的全连接层结构

在将VGG等预训练网络模型的全连接层卷积化之后,由于CNN网络中的池化操作,得到的特征图谱仍需进行上采样。

反卷积层在进行上采样时,不是使用简单的双线性插值,而是通过学习实现插值操作。此网络层也被称为上卷积、完全卷积、转置卷积或是分形卷积。

然而,由于在池化操作中丢失部分信息,使得即使加上反卷积层的上采样操作也会产生粗糙的分割图。因此,本文还从高分辨率特性图谱中引入了跳跃连接方式。

                                 mIou

                                 62.2

                                                              在VOC2012上测试的基准分值

个人评论

本文算是语义分割开天辟地之作,其全连接层的结构在最先进的分割模型中仍在使用。


2.U-Net: Convolutional Networks for Biomedical Image Segmentation (2015/5/18)

主要贡献

U-Net设计的就是应用于医学图像的分割,但由于医学影像处理本身的特殊性,能够使用用于训练的数据数量还是比较少的,本篇论文提出的方法有效的提升了使用少量数据集进行训练检测的效果. 提出了处理大尺寸图像的有效方法.

  • overlap-tile策略
  • 随机弹性变形进行数据增强
  • 使用了加权loss

模型解释

继承FCN的思想,继续进行改进。但是相对于FCN,有几个改变的地方,U-Net是完全对称的,且对解码器(应该自Hinton提出编码器、解码器的概念来,即将图像->高语义feature map的过程看成编码器,高语义->像素级别的分类score map的过程看作解码器)进行了加卷积加深处理,FCN只是单纯的进行了上采样。

Skip connection:两者都用了这样的结构,虽然在现在看来这样的做法比较常见,但是对于当时,这样的结构所带来的明显好处是有目共睹的,因为可以联合高层语义和低层的细粒度表层信息,就很好的符合了分割对这两方面信息的需求。在FCN中,Skip connection的联合是通过对应像素的求和,而U-Net则是对其的channel的concat过程。

*在Pascal上没有测试 mIou:NAN*


3. SegNet: A Deep Convolutional Encoder-Decoder Architecture for Image Segmentation(2015/11/2)

论文解读

主要贡献

将最大池化指数转移至解码器中,改善了分割分辨率。

模型解释

在FCN网络中,通过上卷积层和一些跳跃连接产生了粗糙的分割图,为了提升效果而引入了更多的跳跃连接。

然而,FCN网络仅仅复制了编码器特征,而Segnet网络复制了最大池化指数。这使得在内存使用上,SegNet比FCN更为高效。

语义分割的基本构造_语义分割综述

                                    mIou

                                       59.9

                                                                  在VOC2012上测试的基准分值

个人评论

尽管SegNet在评价指标不如FCN-8s效果好,但其提出的编码-解码的思想影响着后面的很多模型。


4.Multi-Scale Context Aggregation by Dilated Convolutions(2015/11/23)

论文解读

主要贡献

使用了空洞卷积,这是一种可用于密集预测的卷积层;

提出在多尺度聚集条件下使用空洞卷积的“背景模块”。

具体解释

池化操作增大了感受野,有助于实现分类网络。但是池化操作在分割过程中也降低了分辨率。

因此,该论文所提出的空洞卷积层是如此工作的:

                                                    http://p0.qhimgs4.com/t016cd9ff1278635211.gif

空洞卷积层在不降低空间维度的前提下增大了相应的感受野指数。在接下来将提到的DeepLab中,空洞卷积被称为多孔卷积(atrous convolution)。

从预训练好的分类网络中(这里指的是VGG网络)移除最后两个池化层,而用空洞卷积取代了随后的卷积层。特别的是,池化层3和池化层4之间的卷积操作为空洞卷积层2,池化层4之后的卷积操作为空洞卷积层4。

这篇文章所提出的背景模型(frontend module)可在不增加参数数量的情况下获得密集预测结果。

这篇文章所提到的背景模块单独训练了前端模块的输出,作为该模型的输入。该模块是由不同扩张程度的空洞卷积层级联而得到的,从而聚集多尺度背景模块并改善前端预测效果。

71.3

前端

73.5

前端+背景

74.7

前端+背景+ CRF

75.3

前端+背景+ CRF – RNN

在VOC2012上测试的基准分值

个人评论

需要注意的是,该模型预测分割图的大小是原图像大小的1/8。这是几乎所有方法中都存在的问题,将通过内插方法得到最终分割图。


5.Deeplab v1:Semantic Image Segmentation with Deep Convolutional Nets and Fully Connected CRFs(2014/12/22)

Deeplab v2:DeepLab: Semantic Image Segmentation with Deep Convolutional Nets, Atrous Convolution, and Fully Connected CRFs(2016/6/2)

论文解读

主要贡献

使用了空洞卷积;

提出了在空间维度上实现金字塔型的空洞池化atrous spatial pyramid pooling(ASPP);

使用了全连接条件随机场。

模型解释

空洞卷积在不增加参数数量的情况下增大了感受野,按照上文提到的空洞卷积论文的做法,可以改善分割网络。

我们可以通过将原始图像的多个重新缩放版本传递到CNN网络的并行分支(即图像金字塔)中,或是可使用不同采样率(ASPP)的多个并行空洞卷积层,这两种方法均可实现多尺度处理。

我们也可通过全连接条件随机场实现结构化预测,需将条件随机场的训练和微调单独作为一个后期处理步骤。

语义分割的基本构造_语义分割综述

           79.7             ResNet-101 + 空洞卷积 + ASPP + CRF

                                     DeepLab2网络在VOC2012上测试的基准分值 RefineNet


6. RefineNet: Multi-Path Refinement Networks for High-Resolution Semantic Segmentation(2016/11/20)

主要贡献:

带有精心设计解码器模块的编码器-解码器结构;

所有组件遵循残差连接的设计方式。

模型解释

使用空洞卷积的方法也存在一定的缺点,它的计算成本比较高,同时由于需处理大量高分辨率特征图谱,会占用大量内存,这个问题阻碍了高分辨率预测的计算研究。

DeepLab得到的预测结果只有原始输入的1/8大小。

所以,这篇论文提出了相应的编码器-解码器结构,其中编码器是ResNet-101模块,解码器为能融合编码器高分辨率特征和先前RefineNet模块低分辨率特征的RefineNet模块。

                               语义分割的基本构造_语义分割综述

每个RefineNet模块包含一个能通过对较低分辨率特征进行上采样来融合多分辨率特征的组件,以及一个能基于步幅为1及5×5大小的重复池化层来获取背景信息的组件。

这些组件遵循恒等映射的思想,采用了残差连接的设计方式。

语义分割的基本构造_语义分割综述

     84.2

                     CRF + 多维度输入 + COCO预训练

              在VOC2012上测试的基准分值 PSPNet


7. PSPNet: Pyramid Scene Parsing Network(2016/12/4)

主要贡献:

提出了金字塔池化模块来聚合背景信息;

使用了附加损失(auxiliary loss)。

模型解释

全局场景分类很重要,由于它提供了分割类别分布的线索。金字塔池化模块使用大内核池化层来捕获这些信息。

和上文提到的空洞卷积论文一样,PSPNet也用空洞卷积来改善Resnet结构,并添加了一个金字塔池化模块。该模块将ResNet的特征图谱连接到并行池化层的上采样输出,其中内核分别覆盖了图像的整个区域、半各区域和小块区域。

在ResNet网络的第四阶段(即输入到金字塔池化模块后),除了主分支的损失之外又新增了附加损失,这种思想在其他研究中也被称为中级监督(intermediate supervision)。

85.4

                            COCO预训练,多维度输入,无CRF方法

82.6

                      无COCO预训练方法,多维度输入,无CRF方法

                                                  在VOC2012上测试的基准分值


8. Large Kernel Matters – Improve Semantic Segmentation by Global Convolutional Network(2017/3/8)

论文解读

主要贡献

提出了一种带有大维度卷积核的编码器-解码器结构。

模型解释

这项研究通过全局卷积网络来提高语义分割的效果。

语义分割不仅需要图像分割,而且需要对分割目标进行分类。在分割结构中不能使用全连接层,这项研究发现可以使用大维度内核来替代。

采用大内核结构的另一个原因是,尽管ResNet等多种深层网络具有很大的感受野,有相关研究发现网络倾向于在一个小得多的区域来获取信息,并提出了有效感受野的概念。

大内核结构计算成本高,且具有很多结构参数。因此,k×k卷积可近似成1×k+k×1和k×1+1×k的两种分布组合。这个模块称为全局卷积网络(Global Convolutional Network, GCN)。

接下来谈结构,ResNet(不带空洞卷积)组成了整个结构的编码器部分,同时GCN网络和反卷积层组成了解码器部分。该结构还使用了一种称作边界细化(Boundary Refinement,BR)的简单残差模块。

语义分割的基本构造_语义分割综述

82.2

83.6

                    改进训练过程,未在本文中详细描述

                                                        在VOC2012上测试的基准分值


9. DeepLab v3:Rethinking Atrous Convolution for Semantic Image Segmentation(2017/6/17)

主要贡献

改进了空间维度上的金字塔空洞池化方法(ASPP);

该模块级联了多个空洞卷积结构。

模型解释

与在DeepLab v2网络、空洞卷积中一样,这项研究也用空洞卷积/多空卷积来改善ResNet模型。

这篇论文还提出了三种改善ASPP的方法,涉及了像素级特征的连接、加入1×1的卷积层和三个不同比率下3×3的空洞卷积,还在每个并行卷积层之后加入了批量归一化操作。

级联模块实际上是一个残差网络模块,但其中的空洞卷积层是以不同比率构建的。这个模块与空洞卷积论文中提到的背景模块相似,但直接应用到中间特征图谱中,而不是置信图谱。置信图谱是指其通道数与类别数相同的CNN网络顶层特征图谱。

该论文独立评估了这两个所提出的模型,尝试结合将两者结合起来并没有提高实际性能。两者在验证集上的实际性能相近,带有ASPP结构的模型表现略好一些,且没有加入CRF结构。

这两种模型的性能优于DeepLabv2模型的最优值,文章中还提到性能的提高是由于加入了批量归一化层和使用了更优的方法来编码多尺度背景。

语义分割的基本构造_语义分割综述

      85.7

                       使用了ASPP结构,且不带有级联模块

             在VOC2012上测试的基准分值


10.EncNet:Context Encoding for Semantic Segmentation(CVPR2018)

论文详细解读

主要贡献

引入上下文编码模块(Context Encoding Module),引入全局上下文信息(global contextual information),用于捕获场景的上下文语义并选择性的突出与类别相关的特征图。与此同时,结合现先进的扩张卷积策略和多尺度策略提出了语义分割框架EncNet(Context Encoding Network)。

模型解释

Context Encoding Module 作为 Encoding Layer 整合进网络,用于捕捉全局上下文信息以及突出类别相关的特征图. 例如,可以不用关注室内场景出现车辆的概率。语义分割中标准的训练过程是只采用像素级的分割 loss,其并未利用到场景的全局上下文信息. 这里提出 SE-Loss,对网络训练进行正则化,其使得网络预测场景中目标类别的存在,更有助于网络对于语义上下文信息的学习.

语义分割的基本构造_语义分割综述

SE-Loss 与像素级 loss 的不同之处还在于,SE-Loss 不受目标物体大小的影响,其对于大目标物体和小目标物体的贡献一致对待(实际上,其对于小目标往往具有提升效果.)

基于预训练的 ResNet,加入 Context Encoding Module 模块,其中还采用了 dilation 策略。另外还开源了 synchronized multi-GPU Batch Normalization 和 memory-efficient Encoding Layer 的 pytorch 实现.

    82.9

                                ResNet101-ImageNet

   85.9

                           使用COCO-Pre-training

         在VOC2012上测试的基准分值


11. DenseASPP for Semantic Segmentation in Street Scenes(CVPR2018)

论文解读

主要贡献

在ASPP基础上提出密集连接扩张空间金字塔池

  • DenseASPP能够生成覆盖非常大的范围的接收野特征
  • DenseASPP能够以非常密集的方式生成的特征

模型解释

论文中提出高分辨的街景图像要求更大的感受野,以此同时需要足够大的不同尺度的扩张率。但随着扩张率增加(d>24),扩张卷积的衰退衰减无效了(deeplab3中提到)。所以利用densenet编码多尺度信息的同时获得足够大的感受野的表现,将其融合进ASPP网络中。

                 语义分割的基本构造_语义分割综述

但因为密集连接,特征的通道数会急速上升,DenseNet中使用1×1的卷积用于降低通道数,限制了模型大小和计算量,同样的,在本文中也使用了多个1×1卷积用于降低参数,限制计算量。

使用密集连接的方式将每个扩张卷积输出结合到一起,论文使用扩张率(d<24),通过一系列的扩张卷积组合级联,后面的神经元会获得越来越大的感受野,同步也避免了过大扩张率的卷积导致的卷积退化。

并且通过一系列的扩张卷积组合,特征图上的神经元对多个尺度的语义信息做编码,不同的中间特征图对来自不同尺度的信息做编码,DenseASPP的最终输出特征不仅覆盖了大范围的语义信息,并且还以非常密集的方式覆盖了做了信息编码。

语义分割的基本构造_语义分割综述

*论文未在Pascal上测试*


12. Understand Convolution for Semantic Segmentation(WACV2018)

论文解读

主要贡献

提出两张卷积相关的方法来提高逐像素语义分割:

密集上采样(dense upsampling convolution,DUC)生成预测结果,这可以捕获在双线性上采样过程中丢失的细节信息

混合扩张卷积(hybrid dilated convolution,HDC)用于减少扩张卷积产生的gridding问题,扩大感受野聚合全局信息

模型解释

本文从编码与解码阶段进行提升模型性能主要分为以下两个步骤:

解码阶段:在以往的一些工作中使用双线性插值上采样直接获得与输入同分辨率的输出,双线性插值没有学习能力并且会丢失细节信息。本文提出密集上采样卷积(DUC),取代简单的双线性插值,学习一组上采样滤波器用于放大低分辨率的特征;

编码阶段:使用扩展卷积扩大感受野,减少下采样(下采样丢失细节信息)。

语义分割的基本构造_语义分割综述

本文指出空洞卷积存在”girdding”问题,即空洞卷积在卷积核两个采样像素之间插入0值,如果扩张率过大,卷积会过于稀疏,捕获信息能力差。 本文提出了混合扩展卷积架构(hybrid dilation convolution,HDC): 使用一组扩展率卷积串接一下构成block,可扩大感受野的同时减轻”gridding”弊端。

    83.1%

                   在ResNet+DUC+HDC

                 在VOC2012上测试的基准分值


13. Encoder-Decoder with Atrous Separable Convolution for Semantic Image Segmentation(CVPR2018)

论文解读

主要贡献

以DeepLabv3做encoder架构,decoder采用一个简单却有效的模块。并探索了改进的Xception和深度分离卷积在模型中的应用,进一步提升模型在语义分割任务上的性能。

模型解释

在DeepLabv3+中,使用了两种类型的神经网络,使用空间金字塔模块和encoder-decoder结构做语义分割。

空间金字塔:通过在不同分辨率上以池化操作捕获丰富的上下文信息

encoder-decoder架构:逐渐的获得清晰的物体边界

将Xception模型用于分割任务,并将深度可分离卷积应用于ASPP模块和解码器模块,从而产生更快更强的编码器 – 解码器网络。

DeepLabv3+结构如下图所示:

语义分割的基本构造_语义分割综述

79.17

NAN

87.8

Deeplabv3+(Xception)+COCO-Pre-training

89.0

Deeplabv3+(Xception-JFT)+COCO+JFT-pre-training

               在VOC2012上测试的基准分值


14. DANet: Dual Attention Network for Scene Segmentation(CVPR2019)

论文解读

主要贡献

  1. 获得了实时和低计算量的语义分割上的新记录。与现有工作相比,网络可以提供高达8倍的FLOP和2倍的更快速度,并且具有更高的准确性。
  2. 提供了一个全新的分段网络结构,其中包含多个互连的编码流,以将高级上下文合并到编码的功能中。
  3. 提供了一种更好的方法,可以最大限度地利用多尺度感知字段并多次优化高级特征,同时计算负担略有增加。
  4. 通过添加FC感知层来修改Xception backbone,以增加感受野,几乎不需要额外的计算。

模型解释

论文中作者使用两种策略来在模型中实现跨级别的特征聚合。 首先,重用从骨干中提取的高级特征来弥合语义信息和结构细节之间的差距。 其次,将网络体系结构处理路径中不同阶段的特征结合起来,以增强特征表示能力。

语义分割的基本构造_语义分割综述

论文复制轻量级框架以验证了特征聚合方法。提出的深度特征聚合网络(DFANet)包含三个部分:

  1. 轻量级网络框架,
  2. 子网络聚合
  3. 子阶段聚合模块。

由于深度可分卷积被证明是实时推理中最有效的操作之一,因此作者将Xception网络修改为backbone结构。为了追求更高的准确性,在backbone末端添加了一个基于注意力机制的全连接模块,以保留最大的感受野。子网络聚合侧重于将先前backbone的高级特征映射上采样到下一个backbone的输入以改进预测结果。从另一个角度来看,子网络聚合可以被视为在像素分类中由粗略到精细的过程。子阶段聚合通过“粗略”部分和“精细”部分组装相应阶段之间的特征表示。它通过组合具有相同尺寸的层来提供感受野和高维结构细节。在这三个模块之后,采用由卷积和双线性上采样操作组成的轻量解码器来组合每个阶段的输出以生成粗略到精细的分割结果。所提出的网络的体系结构。

语义分割的基本构造_语义分割综述

因为模型在速度和分割准确率之间取得平衡,所以比较mIou并没有意义,接下来的几篇论文都是如此。Deeplabv3+是目前为止分割的state-of-the-art。


15.DANet:Dual Attention Network for Scene Segmentation(CVPR2019)

论文解读

主要贡献

  1. 提出了一种具有自我关注机制的新型双注意网络(DANet),以增强场景分割的特征表示的判别能力。
  2. 建议使用位置注意模块来学习特征的空间相互依赖性,并设计通道注意模块来模拟通道相互依赖性。 它通过在本地特征上建模丰富的上下文依赖关系,显着改善了分割结果。
  3. 在三个流行的基准测试中获得了最新的最新结果,包括Cityscapes数据集,PASCAL Context数据集和COCO Stuff数据集。

模型解释

DANet的整体框架首先对ResNet进行变形,移除最后两个模块的下采样后应用空洞卷积,得到一个输出特征图,尺寸为输入图像的1/8,然后这个输出特征图分别输入给两个注意力模块中以捕获全局(long-range)语义信息[像素点之间建立的某种联系]。在位置注意力模块中,首先生成一个位置注意力矩阵用于对任意两个点之间的关系建模,接着注意力矩阵与特征矩阵进行矩阵乘法,然后对相乘结果和原始特征矩阵进行逐元素的加法得到最终对全局语义具有一定表征能力的结果。通道注意力模块的操作相似,只不过乘法实在通道维度进行计算。最终将两个模块的结果进行聚合得到一个更好的表征结果已进行接下来的逐像素预测。

语义分割的基本构造_语义分割综述

位置注意力模块

  判别特征表示对场景理解至关重要,可以通过捕获远程上下文信息来获得。 然而,许多工作表明传统FCN产生的局部特征可能导致对象和类别的错误分类。 为了模拟局部特征的丰富上下文关系,我们引入了一个位置注意模块。 位置关注模块将更广泛的上下文信息编码为局部特征,从而增强其表示能力。 接下来,我们详细说明自适应地聚合空间上下文的过程。结构如下图所示:

语义分割的基本构造_语义分割综述

高层特征的每一个通道映射可以看做一个类别明确的响应并且不同的语义响应之间互相联系。通过获取不同通道映射之间的相互依赖性可以有效增强特征图对于特定语义的表征能力,因此设计该通道注意力模块。

语义分割的基本构造_语义分割综述

为了更好地利用两个注意模块的全局语义信息,论文将模块的输出经过一个卷积层后进行一个逐元素的加和实现特征融合,然后接一个卷积层得到最终的预测结果。

82.6

DANet+ResNet101

                        在VOC2012上测试的基准分值


16. Auto-DeepLab:Hierarchical Neural Architecture Search for Semantic Image Segmentation(CVPR2019)

论文解读

主要贡献

  1. 首次尝试将NAS扩展到图像分类到密集图像预测之间。
  2. 提出了一个网络级架构搜索空间,它可以对经过深入研究的单元级别进行扩充和补充,并考虑对网络级别和单元级别架构进行更具挑战性的联合搜索。
  3. 开发了一种可区分的连续配方,可在3个GPU天内有效地进行两级分层架构搜索。
  4. 如果没有ImageNet预训练,我们的模型明显优于FRRN-B和GridNet,并且与Cityscapes上其他ImageNet预训练的最先进模型具有相当的性能。 在PASCAL VOC 2012和ADE20K上,也优于几种最先进的模型。

模型解释

使用两级分层体系结构搜索空间。 对于Cell Level Search Space, Network Level Search Space,基于对许多流行设计的观察和总结提出了一种新颖的搜索空间。

先介绍与上述分层架构搜索完全匹配的连续松弛的(指多数个)离散架构。然后,讨论如何进行架构搜索优化,以及如何在搜索终止后解码一个离散架构。(这个有些难理解)

       85.6

                                   Auto-deeplab-L

                            在VOC2012上测试的基准分值


17.APCNet: Adaptive Pyramid Context Network for Semantic Segmentation(CVPR2019)

论文解读

主要贡献

  1. 总结了语义分割任务中上下文特征向量的三个理想特性,并从这些特性的角度比较了近年基于深层次上下文信息的语义分割方法。
  2. 提出Adaptive Context模块,在估计局部区域权重时,利用局部和全局上下文特征表示的GLA特性。
  3. 在三个benchmark上取得SOTA性能。在不使用MS COCO做预训练的前提下,在PASCAL VOC 2012上取得84.2%的新纪录。

模型解释

 APCNet使用多个精心设计的自适应上下文模块(Adaptive Context Modules,ACMS),自适应地构建多尺度上下文表示。每个ACM利用全局图像表示作为估计每个子区域的局部亲和度系数的指导,然后计算具有这些亲和度的上下文向量。

上下文信息对于复杂场景理解和语义分割本质上是重要的。 全局上下文对于捕获大范围依赖性并提供对整个场景的全面理解是有用的,而具有不同大小的对象的分割可以受益于多尺度上下文特征。基于此提出了自适应金字塔上下文网络(APCNet),其在全局图像表示的指导下自适应地构建多尺度上下文向量。

语义分割的基本构造_语义分割综述

      84.2

                          APCNet(无coco预训练)

                       在VOC2012上测试的基准分值


18. CANet: Class-Agnostic Segmentation Networks with Iterative Refinement and Attentive Few-Shot Learning(CVPR2019)

论文解读

主要贡献

开发了一种新颖的双分支密集比较模块,该模块有效地利用来自CNN的多级特征表示来进行密集的特征比较。

提出迭代优化模块,以迭代方式改进预测结果。迭代细化的能力可以推广到具有少量镜头学习的看不见的类,以生成细粒度图。

采用注意机制有效地融合来自k-shot设置中的多个支持示例的信息,其优于单次结果的不可学习的融合方法。

证明给定的支持集具有弱注释,即边界框,我们的模型仍然可以获得与昂贵的像素级注释支持集的结果相当的性能,这进一步减少了新类别对于少数镜头分割的标记工作量。

PASCAL VOC 2012数据集的实验表明,我们的方法实现了单次分割的IOU得分为55.4%,5次分割得分为57.1%,其显着优于14.6%和13.2的最新结果。

模型解释

论文提出了一个新的框架来解决小样本语义分割问题。 我们首先在1-shot设置中首先说明我们的模型而不失一般性。 我们的网络由两个模块组成:

密集比较模块(DCM) ,DCM在支持示例和查询示例之间执行密集特征比较

迭代优化模块(IOM),IOM执行预测结果的迭代细化

为了概括我们的网络从1-shot到k-shot学习,我们采用了一种注意机制来融合来自不同支持示例的信息。 此外,提出了一种新的测试设置,该设置使用带有边界框注释的支持图像进行few-shot分割,随后将对此进行描述。

语义分割的基本构造_语义分割综述

双分支密集比较模块,它将查询图像中的每个位置与支持示例进行密集比较,如图2(b)所示。该模块由两个子模块组成:

  • 提取表示的特征提取器
  • 执行特征比较的比较模块。

由于在同一类别中存在外观差异,因此密集比较只能匹配对象的一部分,这可能不足以精确地分割图像中的整个对象。我们观察到初始预测是关于物体粗略位置的重要线索。我们提出了迭代优化模块来迭代地优化预测结果

为了有效地合并k-shot设置中的信息,我们使用注意机制来融合由不同支持示例生成的比较结果。 具体来说,我们在DCM中添加一个与密集比较卷积平行的注意模块

                                       语义分割的基本构造_语义分割综述

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/171662.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • AutoFac文档5(转载)

    AutoFac文档5(转载)

  • mysql数据库转postgres数据库语法不通错误方言

    mysql数据库转postgres数据库语法不通错误方言之前一直用的是mysql数据库,现在公司要求使用postgres,但是做分页查询的时候,postgres数据库会报错如下:mysql使用的是limitx,y。而postgres使用方式是limitxoffsety,语法不一样就会报这个错误。这时候我们如果继续想要使用之前的方式操作数据库,我们就需要配置一个叫方言的东西。以下是postgres方言的配置。jpa:database:postgresqlproperties:hibernate:

  • mysql存储过程菜鸟教程_mysql存储过程是什么

    mysql存储过程菜鸟教程_mysql存储过程是什么本文介绍关于在MySQL存储过程游标使用实例,包括简单游标使用与游标循环跳出等方法例1、一个简单存储过程游标实例DELIMITER$$DROPPROCEDUREIFEXISTSgetUserInfo$$CREATEPROCEDUREgetUserInfo(indate_daydatetime)—-实例–存储过程名为:getUserInfo–参数为:date_day…

  • idea中创建一个web项目

    idea中创建一个web项目第一步:新建空的java项目在idea项目下,新建一个model,这个model就可以是一个java项目。然后会弹出一个框,选择新建java项目:点击【next】之后进入下一步,取model项目名称:写好名称和存放的路径之后,点击【finish】完成java的model项目创建:以上就是一个空的java项目的创建。第二步:在java项目的基础上创建web项目右击刚创建的java项目,添加web项目所需架构,如下图:点击【AddFrameworksSupport】之后,会弹出一个

  • JS原型链与继承别再被问倒了

    JS原型链与继承别再被问倒了

  • 运行react项目命令(react项目怎么启动)

    进入目录,按住shift键,在此处打开命令窗口输入:npmstart会弹出localhost:3000,的浏览器窗口打包项目:npmrunbuild

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号