语义分割网络系列3——DeepLab

DeepLab模型通过结合深度卷积神经网络(DCNNs)和概率图模型(DenseCRFs),解决了语义分割的精度问题。其特点包括使用空洞卷积扩大感受野,保留更多空间信息,以及应用CRF进行精确的像素级定位。空洞卷积避免了池化导致的信息损失,而CRF则用于优化边缘细节。DeepLab系列在语义分割任务中表现出色,综合考虑了局部和全局信息。
摘要由CSDN通过智能技术生成

1 介绍

相比于传统的视觉算法(SIFT或HOG),Deep-CNN以其end-to-end方式获得了很好的效果。这样的成功部分可以归功于Deep-CNN对图像转换的平移不变性(invariance),这根本是源于重复的池化和下采样组合层。平移不变性增强了对数据分层抽象的能力,但同时可能会阻碍低级(low-level)视觉任务,例如姿态估计、语义分割等,在这些任务中我们倾向于精确的定位而不是抽象的空间关系。

DeepLab是结合了深度卷积神经网络(DCNNs)和概率图模型(DenseCRFs)的方法。

1.1 背景

在这里插入图片描述
在实验中发现DCNNs做语义分割时精准度不够的问题,根本原因是DCNNs的高级特征的平移不变性(即高层次特征映射)。

1.2 Deeplab V1介绍

DeepLab是结合了深度卷积神经网络(DCNNs)和概率图模型(DenseCRFs)的方法。

与其他先进模型的主要区别在于DenseCRFs和DCNN的结合。是将每个像素视为CRF节点,利用远程依赖关系,并使用CRF推理直接优化DCNN的损失函数。拓展:Koltun(2011)的工作表明完全连接的CRF在语义分割下非常有效。

在这里插入图片描述

1.3 结构

在这里插入图片描述
1、把最后的全连接层FC6、7、8改造成卷积层
2、pool4的stride由2变为1,则紧接着的conv5_1, conv5_2和conv5_3中hole size为2。接着pool5由2变为1, 则后面的fc6中hole size为4。
3、fc7,8为标准卷积

由于Hole(Atrous convolution)算法让feature map更加dense,所以网络直接用差值升采样就能获得很好的结果,而不用去学习升采样的参数了(FCN中采用了de-convolution)

FCN中有两个关键,一个是pooling减小图像尺寸增大感受野,另一个是upsampling扩大图像尺寸。在先减小再增大尺寸的过程中,肯定有一些信息损失掉了,那么能不能设计一种新的操作,不通过pooling也能有较大的感受野看到更多的信息呢?答案就是dilated conv/atrous conv

1.4 特点

两个

1.4.1 空洞卷积的使用

DeepLab是采用的atrous(带孔)算法扩展感受野,获取更多的上下文信息

从两个角度考虑空洞卷积:

相当于在标准概念的kernel(卷积核)中,相邻点之间添加(rate - 1)个0,然后使用扩张后的kernel(卷积核)与原图进行卷积。下面的图rate=2,相当于标准的3x3卷积核变为5x5卷积核,每一行中间添加(2-1)个0

也就是说3x3的kernel在rate为2的情况下得到相当于5x5的空洞kernel,但是只有图中的9个点的权重不为0,其余都为0。 可以看到虽然kernel size只有3x3,但是这个卷积的感受野已经增大到了7x7。
在这里插入图片描述

1、dilated的好处是不做pooling损失信息的情况下,加大了感受野,让每个卷积输出都包含较大范围的信息。采样率为r的空洞卷积插入r−1个零,将k×k的卷积核变为ke=k+(k−1)(r−1)而不增加计算量。下图表示含有空洞卷积和不用空洞卷积的效果。结果就是使用采样率计算更加密集的特征映射。

在这里插入图片描述
2、增大感受野的同时,不增加参数数量
在这里插入图片描述

在这里插入图片描述

1.4.2 CRF的应用

1、DCNN的预测物体的位置是粗略的,没有确切的轮廓。图像输入CNN是一个被逐步抽象的过程,原来的位置信息会随着深度而减少甚至消失.
2、CRFs for accurate localization
CRF:简单来讲就是每个像素点作为节点,像素与像素间的关系作为边,即构成了一个条件随机场。通过二元势函数描述像素点与像素点之间的关系,鼓励相似像素分配相同的标签,而相差较大的像素分配不同标签。
CRF在传统图像处理上主要做平滑处理。就是在决定一个位置的像素值时,会考虑周围邻居的像素值,这样能抹除一些噪音。
但对于CNN来说,short-range CRFs可能会起到反作用,因为我们的目标是恢复局部信息,而不是进一步平滑图像。引入fully connected CRF来考虑全局的信息。

1.5 DeepLab系列总结

在这里插入图片描述

2 代码

3 总结

1、使用空洞卷积,而不是pooling层,在不改变参数量的情况下保留更多的空间信息。
2、CRF
CRF在传统图像处理上主要做平滑处理。就是在决定一个位置的像素值时,会考虑周围邻居的像素值,这样能抹除一些噪音。
但对于CNN来说,short-range CRFs可能会起到反作用,因为我们的目标是恢复局部信息,而不是进一步平滑图像。引入fully connected CRF来考虑全局的信息。

参考资料

https://blog.csdn.net/longxinghaofeng/article/details/85258124
https://www.jianshu.com/p/9184455a4bd3

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

晓码bigdata

如果文章给您带来帮助,感谢打赏

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值