DeepLab V2学习笔记

遇到的相关问题以及解决方法

和DeepLab V1中遇到的问题几乎没有什么太大的差别,在文章的引言部分作者提出了在语义分割中遇到的问题:

  • 分辨率被降低(主要由于下采样stride>1的层导致)
  • 目标的多尺度问题
  • DCNNs的不变性(invariance)会降低定位精度

DeepLab V2对于上述的三个问题提出了自己进一步解决方法:

  • 针对分辨率被降低的问题 : 一般就是将最后的几个Maxpooling层的stride设置成1(如果是通过卷积下采样的,比如resnet,同样将stride设置成1即可),配合使用膨胀卷积。
  • 针对目标多尺度的问题 : 最容易想到的就是将图像缩放到多个尺度分别通过网络进行推理,最后将多个结果进行融合即可。这样做虽然有用但是计算量太大了。为了解决这个问题,DeepLab
    V2 中提出了ASPP模块(atrous spatial pyramid pooling)。
  • 针对DCNNs不变性导致定位精度降低的问题,和DeepLab V1差不多还是通过CRFs解决,不过这里用的是fully connected pairwise CRF,相比V1里的fully connected CRF要更高效点。(在DeepLab V1中添加了CRF对于结果提升了大概4个点,但是在DeepLab V2中只有1个多点,而且在DeepLab V1中也知道使用CRF是非常耗时的)

对于DeepLab V1的优化

  • DeepLab V2首先的改变是将DeepLab V1的backbone从VGG16变成了ResNet(因为换了一个Backbone实验的结果提升了3个点,在后续消融实验会介绍)
  • 提出了一个新的模块ASPP

模型总结

backbone:resnet101
不考虑MSC的情况下如图:
在这里插入图片描述

补充的一个小知识点

在这里插入图片描述
论文作者通过对于先下采样然后空洞卷积再上采样和直接通过空洞卷积计算,对比了两者的差距。作者的主要是的意思还是为了阐述第一个问题,在图像分辨率降低的同时会造成信息丢失的情况。

ASPP

在这里插入图片描述
这个ASPP模块感觉就像是DeepLab V1中LargeFOV的升级版(加入了多尺度的特性)。上图是原论文中介绍ASPP的示意图,就是在backbone输出的Feature Map上并联四个分支,每个分支的第一层都是使用的膨胀卷积,但不同的分支使用的膨胀系数不同(即每个分支的感受野不同,从而具有解决目标多尺度的问题)。
在这里插入图片描述
上图有画出更加详细的ASPP结构(这里是针对VGG网络为例的),将Pool5输出的特征层并联4个分支,每个分支分别通过一个3x3的膨胀卷积层,1x1的卷积层,1x1的卷积层(卷积核的个数等于num_classes)。最后将四个分支的结果进行相加融合即可。 如果是以ResNet101做为Backbone的话,每个分支只有一个3x3的膨胀卷积层(没有后边两层的FC),卷积核的个数等于num_classes。

在这里插入图片描述
对于ASPP论文给了两种配置,前者的膨胀系数分别为(2,4,8,12),后者是(6,12,18,24)。对比实验结果ASPP-L的效果无论是在添加CRF前还是后都是最好的。

Learning rate policy

在DeepLab V2中训练时采用的学习率策略叫poly,相比普通的step策略(即每间隔一定步数就降低一次学习率)效果要更好。文中说最高提升了3.63个点。poly学习率变化策略公式如下:

在这里插入图片描述
其中 lr 为初始学习率,iter 为当前迭代的step数,max_inter 为训练过程中总的迭代步数。
在这里插入图片描述
上图为控制不同的poly得到的不同的mean IOU的对比,通过第一行和最后一行发现,如果利用这个策略可以提高3.6个点

消融实验

在这里插入图片描述
MSC : 代表是否使用多尺度的输入。讲(0.5,.075,1)(1代表的是原始的大小)然后分别送入网络预测得到score maps,最后融合这三个score maps(对每个位置取三个score maps的最大值)。

Multi-scale inputs: We separately feed to the DCNN images at scale = { 0.5, 0.75, 1 } , fusing their score maps by taking the maximum response across scales for each position separately.

COCO : 是否在COCO数据集上进行预训练。

Models pretrained on MS-COCO

Aug : 代表数据增强,这里就是对输入的图片在0.5到1.5之间随机缩放。

Data augmentation by randomly scaling the input images (from 0.5 to 1.5) during training. In Tab.

接上文说到的更换了Backbone之后提高了3个点

our simplest ResNet-101 based model attains 68.72%, compared to 65.76% of our DeepLab-LargeFOV VGG-16 based variant, both before CRF

实验结果

论文在最后几页提及到跟当前几个比较不错的模型在一些数据集上进行对比,就不一一复制图片进行对比介绍了,就是一个字:好。

推荐视频讲解

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值