DeepLab V2论文理解

论文原文

https://arxiv.org/pdf/1606.00915.pdf

介绍

DeepLabV2是在DeepLab的基础上进行了改进,DeepLab论文请看:https://blog.csdn.net/just_sort/article/details/95354212 。DeepLab使用了空洞卷积增大感受野,CRF条件随机场细化结果,多次度预测的3大Trick使得语义分割模型更加的Dense。而DeepLab V2在Deep Lab的基础上,通过多尺度输入处理或者多孔空间金字塔池化,可以更好的分割样本。

FCN改进

FCN进行语义分割时是用 500 × 500 500\times500 500×500大小的图片,在第一层卷积层conv1_1上使用了大小为100的padding,最终在fc7层得到了一个 16 × 16 16\times16 16×16的score map。这样的处理稍显粗糙,FCN是第一层将CNN用到图像分割领域,并且是端到端的,在当时也取得了state-of-art的成绩。
DeepLab是将VGG网络的pool4和pool5层的步长由2改成1,这样的改动使得vgg网络总的步长由原来的32变为8,进而使得输入图像变为 514 × 514 514\times514 514×514,正常padding时能得到 67 × 67 67\times67 67×67的score map,比FCN得到的要大很多。这种调整又使得要想继续使用vgg model进行fine tuning,会导致感受野发生变化,作者使用空洞卷积解决这个问题。

空洞卷积

在以前的标准卷积和pooling中,一个filter中相邻的权重作用在feature map上的位置都是物理连续的。Kernel size表示卷积核的大小,Stride表示滑动步长。现在为了保证感受野不发生变化。某一层的stride由2变成1后,后面的层需要采用hole算法,具体来说就是将连续的连接关系根据hole size变成跳连接的。即kernel size的大小虽然还是3,但是这3个是经过hole size跳连接构成的。pool4的stride由2变成1,则紧接着的conv5_1,conv5_2和conv5_3中的hole size为2.接着pool5由2变成1,则后面的fc6中hole size为4。
在这里插入图片描述

多孔金字塔池化

传统方法是把图像强行resize成相同的尺寸,但是这样会导致某些特征扭曲或者消失,这里联想到SIFT特征提取的时候用到过图像金字塔,将图像放缩到不同的尺度,再提取的SIFT特征点具有旋转,平移不变性。因此这里也是借鉴这种方式使用空间金字塔的方法,来实现对图像大小和不同长宽比的处理。这样产生的新的网络,叫做SPP-Net,可以不论图像的大小产生相同大小长度的表示特征。ASPP(多孔金字塔池化)就是通过不同的空洞卷积来对图像进行不同程度的缩放,得到不同大小的输入特征图,因为DeepLab的ASPP拥有不同rate的滤波器,再把子窗口的特征进行池化就生成了固定长度的特征表示。之前需要固定大小的输入图像的原因是全连接层需要固定大小。现在将SPP层接到最后一个卷机后面,SPP层池化特征并且产生固定大小的输出,它的输出再送到全连接层,这样就可以避免在网络的入口处就要求图像大小相同。
在这里插入图片描述在这里插入图片描述

CRF

见:https://blog.csdn.net/just_sort/article/details/95354212

实验结果

  • 通过以下表格数据对比,可以看到CRF 对准确率有较大提升。
    在这里插入图片描述
  • 通过以下表格数据对比,可以看到较小的batch_size 能够更好的拟合模型,虽然训练次数会增加,因为小的batch_size 学习的过程比较缓慢,迭代次数多一些。
    在这里插入图片描述
  • 通过以下表格数据对比,可以看到ASPP 对于准确率提升是有贡献的。其中ASSP-L 的效果最好。
    在这里插入图片描述
  • 通过以下表格数据对比,可以看到在ResNet-101 网络上的效果比在vgg16上的效果要更好一些,可见VGG16 网络也不是万能的。
    在这里插入图片描述

代码实现

https://github.com/SoonminHwang/caffe-segmentation/tree/master/prototxt

参考博客

https://blog.csdn.net/qq_36165459/article/details/78340094
https://zhuanlan.zhihu.com/p/54911894

本课程适合具有一定深度学习基础,希望发展为深度学习之计算机视觉方向的算法工程师和研发人员的同学们。基于深度学习的计算机视觉是目前人工智能最活跃的领域,应用非常广泛,如人脸识别和无人驾驶中的机器视觉等。该领域的发展日新月异,网络模型和算法层出不穷。如何快速入门并达到可以从事研发的高度对新手和中级水平的学生而言面临不少的挑战。精心准备的本课程希望帮助大家尽快掌握基于深度学习的计算机视觉的基本原理、核心算法和当前的领先技术,从而有望成为深度学习之计算机视觉方向的算法工程师和研发人员。本课程系统全面地讲述基于深度学习的计算机视觉技术的原理并进行项目实践。课程涵盖计算机视觉的七大任务,包括图像分类、目标检测、图像分割(语义分割、实例分割、全景分割)、人脸识别、图像描述、图像检索、图像生成(利用生成对抗网络)。本课程注重原理和实践相结合,逐篇深入解读经典和前沿论文70余篇,图文并茂破译算法难点, 使用思维导图梳理技术要点。项目实践使用Keras框架(后端为Tensorflow),学员可快速上手。通过本课程的学习,学员可把握基于深度学习的计算机视觉的技术发展脉络,掌握相关技术原理和算法,有助于开展该领域的研究与开发实战工作。另外,深度学习之计算机视觉方向的知识结构及学习建议请参见本人CSDN博客。本课程提供课程资料的课件PPT(pdf格式)和项目实践代码,方便学员学习和复习。本课程分为上下两部分,其中上部包含课程的前五章(课程介绍、深度学习基础、图像分类、目标检测、图像分割),下部包含课程的后四章(人脸识别、图像描述、图像检索、图像生成)。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值