前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >DeepLabv1 & DeepLabv2 - 空洞卷积(语义分割)

DeepLabv1 & DeepLabv2 - 空洞卷积(语义分割)

作者头像
AI研习社
发布2019-05-08 17:23:21
9430
发布2019-05-08 17:23:21
举报
文章被收录于专栏:AI研习社AI研习社

本文为 AI 研习社编译的技术博客,原标题 : Review: DeepLabv1 & DeepLabv2 — Atrous Convolution (Semantic Segmentation) 作者 | Sik-Ho Tsang 翻译 | 斯蒂芬·二狗子 校对 | 酱番梨 审核 | 约翰逊·李加薪 整理 | 立鱼王

在本文中,回顾了DeepLabv1和DeepLabv2网络,因为他们都使用带孔卷积 Atrous Convolution和全连接的条件随机场(Conditional Random Field,CRF),除了DeepLabv2有一个额外的技术叫做空间金字塔池化Atous Spatial Pyramid Pooling(ASPP),这是DeepLabv2与DeepLabv1的主要区别。 (当然,还有其他差别,例如:DeepLabv2使用ResNet和VGGNet进行实验,但DeepLabv1仅使用VGGNet。)

DeepLab 模型

上图是DeepLab模型架构。首先,输入图像通过网络中的atrous卷积和ASPP。然后,网络的输出图进行双线性插值bilinearly interpolated,并通过完全连接的CRF来微调结果并获得最终输出。

DeepLabv1和DeepLabv2已经在2015 ICLR和2018 TPAMI上发布,在我写这篇故事的时候分别引用了400和2000。

本文涉及的内容:

  1. 带孔卷积
  2. 空间金字塔池化
  3. 全连接的条件随机场
  4. 实验结果

1.Atrous卷积

“Atrous”这个词确实来自法语“àtrous”意思洞。因此Atrous conv.也被称为“空洞卷积”。一些论文也称之为"dilated convolution"。它通常用于小波变换,现在它被应用于卷积中以进行深度学习。

下面是atrous卷积的表达式:

1维的带孔卷积(r > 1:atrous卷积,r = 1:标准卷积)

  • 当r = 1时,它是我们通常使用的标准卷积。
  • 当r > 1时,它是一个带孔的卷积,r是在卷积过程中对输入样本进行采样的步幅。

下图说明这一点

标准卷积(顶部)空洞卷积(底部)

atrous卷积的想法很简单。在上图的顶部是标准卷积。

在图的底部,它是一个空洞卷积。我们可以看到,当rate = 2时,输入信号被交替采样。首先,pad = 2 意味着我们在左侧和右侧填充2个零。然后,在 rate = 2的情况下,我们有每2个输入就对输入信号进行采样以进行卷积。因此,在输出端,我们将有5个输出,这使得输出的特征图增大。 如果我们还记得FCN一文中,一系列的卷积和池化会使输出特征图非常小,因此最后需要32倍的上采样,这是有些放大过度的上采样。

此外,atrous卷积使我们扩大卷积核filter的视野以包含更大的感受域信息。同时,它提供了一种有效的机制来控制感受野的大小,并找到精确定位(小视野)和通过前后信息修复(大视场)细节之间的最佳平衡。

在DeepLab中,使用VGG-16或ResNet-101,最后一个池化(pool5)或卷积conv5_1的步幅分别设置为1,以避免信号被过度抽取。并且使用rate=2的空洞卷积替换所有后续卷积层。这使得输出变大很多。我们只需要进行8次上采样即可对输出要求的尺寸。并且双线性插值对于8×上采样具有相当好的性能。

2.带孔空间金字塔池化(ASPP)

带孔的空间金字塔池化(ASPP)

ASPP实际上是空间金字塔池的一个版本,其中的概念已经在SPPNet中描述。在ASPP中,在输入特征映射中应用不同速率的并行空洞卷积,并融合在一起。 由于同一类的物体在图像中可能有不同的比例,ASPP有助于考虑不同的物体比例,这可以提高准确性。

3.完全连接的条件随机场(CRF)

完全连接的CRF在双线性插值后应用于网络输出上

全连接的CRF

x是像素的标签分配。 P(xi)是像素i处的标签分配概率。因此,第一项θi是对数概率。 对于第二项,θij,它是一个滤波器。当xi != xj时,μ= 1。当xi = xj时,μ= 0。在括号中,它是两个内核的加权和。第一个核取决于像素值差和像素位置差,这是一种双边的filter。双边滤波器具有保留边缘的特性。第二个内核仅取决于像素位置差异,这是一个高斯滤波器。那些σ和w,通过交叉验证找到。迭代次数为10。

上:得分图(softmax函数前的输入),下图:置信图(softmax函数的输出)

通过10倍的CRF,飞机周围不同颜色的小区域变得平滑起来。

但是,CRF是一个后阶段的处理过程,它使DeepLabv1和DeepLabv2变为不是端到端的学习框架。并且它是不在DeepLabv3和DeepLabv3 +中使用。

4.结果

4.1 实验验证

DeepLab-LargeFOV(左:即仅单个atrous conv),DeepLab-ASPP(右,即ASPP)

在PASCAL VOC 2012验证集中使用ResNet-101的每个模型组件的结果

  • 简单使用ResNet-101: 68.72%
  • MSC: 多尺度输入
  • COCO: 由COCO数据集预训练的模型
  • Aug: 通过随机缩放(从0.5到1.5)输入图像进行数据增强
  • LargeFOV: 使用一次空洞卷积上采样的DeepLab模型
  • ASPP: 使用并行的空洞卷积的DeepLab模型
  • CRF: 全连接的条件随机场做最后处理

4.2 与最先进的方法对比

PASCAL VOC 2012测试集(最左侧)PASCAL-Context(左二)PASCAL-Person-Part(右二)Cityscape(最右侧)

如上所述测

4.3 定性的结果

结果: PASCAL-Context数据

结果: Cityscape数据

但DeepLab也有一些失败的例子,其中自行车和椅子由多个细小的部分组成,如自行车和椅腿的部分:

失败的例子

希望将来能够写篇关于DeepLabv3和DeepLabv3 +的博文。

参考文献

[2015 ICLR] [DeepLabv1] Semantic Image Segmentation with Deep Convolutional Nets and Fully Connected CRFs

[2018 TPAMI] [DeepLabv2] DeepLab: Semantic Image Segmentation with Deep Convolutional Nets, Atrous Convolution, and Fully Connected CRFs

我相关的文章

[SPPNet] [VGGNet] [ResNet] [FCN]


原文链接:

https://towardsdatascience.com/review-deeplabv1-deeplabv2-atrous-convolution-semantic-segmentation-b51c5fbde92d

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-03-25,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 AI研习社 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1.Atrous卷积
  • 2.带孔空间金字塔池化(ASPP)
  • 3.完全连接的条件随机场(CRF)
  • 4.结果
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档