A Review on Deep Learning Techniques Applied to Semantic Segmentation

1.语义分割:指像素级地识别图像,即标注出图像中每个像素所属的对象类别;
使用one-hot(https://www.cnblogs.com/daguankele/p/6595470.html)编码对类标签进行处理,实质上是为每个可能的类创建相应的输出通道。

在这里插入图片描述
在这里插入图片描述最后,可以通过argmax将每个深度方向像素矢量折叠成分割图
在这里插入图片描述
池化层:池化层虽然扩大了感受野、聚合语境,但因此造成了位置信息的丢失;
全卷积网络(FCN),这使得卷积神经网络无需全连接层即可进行密集的像素预测

语义分割要求类别图完全贴合,因此需要保留位置信息。 有两种不同结构来解决该问题: 第一个是编码器–解码器结构。编码器逐渐减少池化层的空间维度,解码器逐步修复物体的细节和空间维度。编码器和解码器之间通常存在快捷连接,因此能帮助解码器更好地修复目标的细节。U-Net是这种方法中最常用的结构。 法二:膨胀卷积 ( dilated convolutions )结构

编码器/解码器结构 对输入的空间分辨率进行下采样,生成分辨率较低的特征映射,它能高效地进行分类。随后,上采样可以将特征还原为全分辨率分割图:
在这里插入图片描述
上采样的方法
池化操作通过对将小区域的值取成单一值(例如平均或最大池化)进行下采样,同样的,上池化操作就是将单一值分配到更高的分辨率进行上采样。
在这里插入图片描述
法二:膨胀卷积 ( dilated convolutions )结构,来去除池化层。
当比率为1时,即为经典的卷积结构

在这里插入图片描述
反卷积:典型的卷积运算将采用滤波器视图中当前值的点积并为相应的输出位置产生单个值,而转置卷积基本上相反。对于转置卷积,我们从低分辨率特征图中获取单个值,并将滤波器中的所有权重乘以该值,将这些加权值投影到输出要素图中。
在这里插入图片描述
2.条件随机场的后处理 经常用来提高分割的精确度。后处理利用图像的光感强度(可理解为亮度),将周围强度相近的像素分为同一类。能提高 1-2 个百分点。
3.语义分割几种方法:像素级的决策树分类 :纹理基元森林(TextonForest)或是随机森林(Random Forest)方法来构建用于语义分割的分类器
卷积神经网络:打补丁式的分类方法 ( patch classification ) ,逐像素地抽取周围像素对中心像素进行分类。由于卷积网络末端都使用全连接层 ( full connected layers ) ,所以只能使用这种逐像素的分割方法。
4.整合上下文知识 context
语义分割需要对多种空间尺度的信息予以整合,也需要对局部与全局信息进行平衡。一方面,细粒度的或者局部的信息对于提高像素级别的标注的正确率来说是关键的;另一方面,整合图像全局的上下文信息对于解决局部模糊性问题来说也是重要的。
一般的CNN模型对于处理这种平衡不是很擅长。池化层可以使网络取得某种程度的空间不变性并保持同样的计算效率,却丢失了全局的上下文信息。即便是纯的CNN网络,即没有池化曾的CNN,也同样受限,因为其神经元的感受野只能随着层数线性增长。
可以采用很多方法来使CNN对全局信息敏感:用条件随机场(CRF)作为后处理过程来调优结果,多尺度聚合,或者甚至是将对上下文的建模延缓到另一种深度模型中,如RNN。

4.1 条件随机场
调优分割架构的输出并强化其捕捉细粒度信息的一个通用的办法就是引入条件随机场(CRF)作为其后处理模块。CRF促成了底层图像信息(如像素间的相互关系[92,93])与产生像素级别的类别标签的多类别推理输出的结合.

DeepLab模型使用了全连接的两两之间的CRF模型作为其流程中的一个独立的后处理步骤,以此对分割结果进行调优。该模型将每个像素建模为某区域内的一个节点,无论两个像素距离多远,其两两之间的关系都会被衡量,因此,本模型也被称为密集或全连接因子图。使用此模型后,无论短期的还是长期的像素相互关系都被考虑进来,使得系统可以考虑到分割过程中需要的细节信息,而由于CNN的空间不变性,这些信息是CNN结构所未能考虑的。尽管全连接模型通常是低效的,该模型由于可以用概率推理来近似,所以也可以达到相对地高效。图11展示了这种基于CRF的后处理过程对DeepLab模型产生的得分和信念映射产生的影响。
在这里插入图片描述
图 DeepLab中展示的CRF调优每次迭代带来的影响。第一行是得分映射(softmax之前的层的输出),第二行是信念映射(softmax的输出)。

Wild网络[43]中的材质识别使用了多种CNN模型用来识别MINC数据集中的块。这些CNN模型被以滑动窗口的方式使用,用来分类这些块,他们的权重值被转移到FCN的组成网络中,而FCN通过添加对应的上采样层来整合这些网络。多个输出取平均便得到了一个平均的映射。最后,与DeepLab中相同的CRF(只不过是离散化优化的)被用来预测与调优每个像素点处的材质。

应用CRF来调优FCN网络的分割结果的另一个显著的工作便是Zheng等人提出的CRFasRNN模型[70]。该工作主要的贡献便是将密集CRF重写为带有成对势能的形式,作为网络的组成部分之一。通过展开均值场推理的各个步骤,并将其视为RNN结构,该工作成功地将CRF与RNN整合在一起成为一个完整的端对端的网络。这篇文章的工作说明了将CRF重写为RNN模型来构造出深度网络的一部分,与Pinheiro等人[81]的工作行成了对比,而该工作使用RNN来对大规模的空间依赖性进行建模。

3.2 扩张的(dilated)卷积

扩张卷积,又称`atrous卷积,是对考虑Kronecker的卷积核[96]的扩展,而这种卷积核可以指数级地扩大感受野而不丢失分辨率。换句话说,扩张卷积是常规的利用上采样滤波器的方法。扩张率 控制着上采样因子,如图12所示,堆叠的以l为扩张率的扩张卷积使得感受野呈现指数级的增长,而滤波器的参数保持线性增长。这意味着扩张卷积可以在任意分辨率图片上高效地提取密集特征。另外,值得注意的是一般的卷积只是扩张率为1时的特殊情况。
在这里插入图片描述
图 所展示的不同扩张率的扩张卷积滤波器。(a)中扩张率为1,每个单元有33的感受野;(b)中扩张率为2,每个单元有77的感受野;(c)中扩张率为3,每个单元有15*15的感受野。

使用扩张卷积的最重要的工作便是Yu等人[71]提出的多尺度上下文聚合模型、上文提及的DeepLab模型(其升级版本)[69]、以及实时处理网络ENet[72]。所有这些将越来越大的各种扩张率结合,使得模型具有更大的感受野,同时不增添额外的消耗,也不会过度地对特征映射进行下采样。这些工作同时具有相同的趋势:扩张卷积与紧密多尺度上下文聚合紧密耦合,这我们将在后面章节中解释。

4.2.3 多尺度预测

整合上下文知识的另一种可能的做法便是使用多尺度预测。CNN中几乎每个单独的参数都会影响到得到的特征映射的大小,换句话说,非常相似的架构也会对输入图像的像素数量产生较大的影响,而这关系到每个特征映射。这意味着滤波器将会潜在地检测特定尺度的特征(大致上有着特定的程度)。另外,网络的参数一般都与要解决的问题息息相关,也使得模型向不同尺度的扩展变得更难。一种可能的解决方案便是使用多尺度的网络,这种网络一般都是选用多个处理不同尺度的网络,最后将他们的预测结果结合,产生一个单一的输出。
Raj等人[73] 提出了全卷积VGG-16的一种多尺度版本,有着两个路径,一个是在原始分辨率上处理输入,使用的是一个浅层的卷积网络,再一个就是在两倍分辨率上处理,使用全卷积VGG-16和一个额外的卷积层。第二个路径的结果经过上采样后与第一个路径的结果相结合,这个串联起来的结果再经过一系列的卷积层,得到最终的输出。这样,这个网络便对尺度变换更加鲁棒了。
Roy等人[75]采取了另外的方法解决这个问题,他们选用了包含4个多尺度CNN的网络,而这4个网络有着相同的架构,取自Eigen等人[74]。其中之一致力于为当前场景找出语义标签。这个网络(整体上)以一个从粗糙到精细的尺度序列来逐步的提取特征(如图14)。
在这里插入图片描述
图 中提出的多尺度CNN架构,利用一个尺度序列预测深度、法向来逐步将输出调优,并且对一个RGB的输入执行语义分割。

另一个重要的工作是Bian等人[76]提出的网络,这个网络包含n个FCN,可以处理不同尺度的问题。该网络提取的特征将融合在一起(先使用合适的填充方法进行必要的上采样),然后通过一个额外的卷积层之后得到最终的分割结果。这个工作的主要贡献便是这个两步的学习过程,首先,独立的训练每个网络,然后,这网络将结合,最后一层将被微调。这种多尺度的模型可以高效地添加任意数量的训练好的网络进来。

3.4 特征融合
向全卷积神经网络架构中加入上下文信息的另一种方式便是进行特征融合。特种融合技术将一个全局特征(由某网络中较前面的层提取得到)与一个相对局部的特征映射(后边的层提取得)相结合。常见的架构如原始FCN网络利用跳跃连接的方式进行延迟特征融合,也是通过将不用层产生的特征映射相结合(图15)
在这里插入图片描述
图 类似跳跃连接的架构,对特征映射进行延迟融合,其类似于在每个层上做出独立的预测后再对结果进行融合。图来自[84]。(注:每个层均有“分割结果”,最后融合之)

另一种方法便是提前融合,这一方法来自ParseNet[77]中的上下文模块。全局特征被反池化为与局部特征相同的尺寸,然后,将这两种特征进行串联后得到一个合并的特征,输入到下一层或者直接用于分类器的学习。如图16所示。
在这里插入图片描述
图 ParseNet中的上下文模块示意图。较前面的层产生的全局特征与其下一层产生的特征相结合,以此来添加上下文的信息。图来自[77]。
SharpMask[84] 这个工作继续发展了这种特征融合的想法,其引入了一种先进的调优模块来将前面层产生的特征合并到后面的层,这个模块使用的是一种自上而下的架构。由于其重点关注实例分割方面,所以这个工作我们将在后面章节介绍。

3.5 循环神经网络RNN

我们注意到,CNN网络在非一维数据如图像等的处理上取得了成功,但是,这些网络依赖于手工设计的核,将网络限制于局部上下文中。而得益于其拓扑结构,循环神经网络成功地应用到了对长期或短期序列的建模上。这样,通过将像素级别的以及局部的信息联系起来,RNN可以成功地建模全局上下文信息并改善语义分割结果。但是,一个重要的问题便是,图片中缺乏自然的序列结构,而标准的RNN架构关注的恰恰是一维的输入。
在这里插入图片描述
图ReSeg网络示意图。VGG-16的卷积层以第一层中的蓝色和黄色层展示,余下的架构基于微调目的的ReNet,图取自[78]。

基于面向分类的ReNet模型,Visin等人[19]提出了ReSeg模型[78]用于语义分割,如图17所示。在本方法中,输入图像在第一层VGG-16层中被处理,特征映射结果送入一个或更多的ReNet层中来进行微调。最终,特征映射的尺寸被调整,使用的是基于反卷积的上采样层。在本方法中,门循环单元(GRU)被用来平衡占用空间与计算复杂度。一般的RNN在建模长期依赖关系时表现不好,主要是因为梯度消失问题的存在。由此产生的长短期记忆网络(LSTM)[97] 和GRU [98]是该领域目前最好的两种方法,可以避免以上问题。
受ReNet架构的启发,有人为场景标注问题提出了一种新型的长短期记忆上下文融合模型(LSTM-CF)[99]。该方法使用了两种不同的数据源:RGB信息和深度信息。基于RGB的部分依赖于DeepLab架构[29]的变体,串联了三种不同尺度的特征来丰富特征表达(由[100]处获得启发)。全局信息在两个部分(深度信息部分与光学信息部分)都是竖直的,最终这两种竖直的上下文信息在水平方向上被融合。
我们注意到,对图像全局上下文信息的建模与二维循环方法很有关系,只需在输入图像上按照水平和竖直方向分别将网络展开。基于相同的想法,Byeon等人[80]提出了简单的二维的基于LSTM的架构,其中的输入图像被分割为无重叠的窗口,然后将其送入四个独立的LSTM记忆单元。该工作突出贡献是其计算复杂度较低、运行与单个CPU以及其模型的简单性。
另一种捕获全局信息的方法依赖于更大的输入窗口的使用,这样就可以建模更大范围内的上下文信息。但是,这也降低了图像的分辨率,而且引入了其他类似于窗口重叠等的问题。然而,Pinheiro等人[81] 引入了循环卷积神经网络(rCNN)来使用不同的窗口大小循环地训练,这相当于考虑了之前层中的预测信息。通过这种方法,预测出的标签将自动地平滑,从而使网络表现更好。
无向循环图(UCG)同样被用来建模图像上下文信息从而用于语义分割[82]。但是,RNN并不直接适用于UCG,为了解决这个问题,无向循环图被分解为了多个有向图(DAG)。在本方法中,图像在三个不同的层中被处理,分别是:CNN处理得到图像的特征映射,DAG-RNN对图像的上下文依赖信息进行建模,反卷积层将特征映射上采样。这个工作说明了RNN如何可以与图相结合,被用来建模长期范围内的上下文依赖,并超过已有的最优方法。

在这里插入图片描述
5.目标识别经历了4个发展阶段:图像分类,目标检测,语义分割,实例分割

6.用到的深度网络结构:AlexNet、VGG、GoogLeNet、ResNet、ReNet
7.数据集:
较为重要的语义分割数据集有:VOC2012 以及 MSCOCO
2D数据集:PASCAL Visual Object Classes (VOC)、PASCAL Context 、PASCAL Part 、Semantic Boundaries Dataset (SBD) 、Microsoft Common Objects in Context (COCO) 、SYNTHetic Collection of Imagery and Annotations(SYNTHIA)、Cityscapes 、CamVid、KITTI 、Youtube-Objects 、Adobe’s Portrait Segmentation 等。
2.5D数据集:NYUDv2 、SUN3D 、SUNRGBD 、RGB-D Object Dataset 。
3D数据集:ShapeNet Part 、Stanford 2D-3D-S 、A Benchmark for 3D Mesh Segmentation 、Sydney Urban Objects Dataset 。
8.技巧:Integrating Context Knowledge :(1)Conditional Random Fields (例如CRFasRNN);(2)Dilated Convolutions (例如DeepLab);(3)Multi-scale Prediction ;(4)Feature Fusion ;(5)Recurrent Neural Networks。
在这里插入图片描述
9.评价标准:
Execution Time ,Memory Footprint ,Accuracy {:Pixel Accuracy (PA) 、Mean Pixel Accuracy (MPA) 、Mean Intersection over Union (MIoU) 、Frequency Weighted Intersection over Union(FWIoU)}。

10.未来研究方向:
1).3D数据集
2). 序列数据集
3). 使用graph convolutional networks的点云分割
4). 怎样更好的建模数据的上下文特征
5). 实时分割
6). 内存:如何减小内存
7). 多视野的整合(multi-view integration)

11.文章汇总:

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值