以最佳的101 layer的ResNet-DUC为基础,添加HDC,实验探究了几种变体:

  • 无扩张卷积(no dilation):对于所有包含扩张卷积,设置r=1r=1
  • 扩张卷积(dilation Conv ):对于所有包含扩张卷积,将2个block和为一组,设置第一个block的r=2r=2,第二个block的r=1r=1
  • Dilation-RF:对于res4bres4b包含了23个blocks,使用的r=2r=2,设置3个block一组,r=1,2,3r=1,2,3.对于最后两个block,设置r=2r=2;对于res5bres5b,包含3个block,使用r=4r=4,设置为r=3,4,5r=3,4,5.
  • Dilation-Bigger:对于res4bres4b模块,设置4个block为一组,设置r=1,2,5,9r=1,2,5,9.最后3个block设置为1,2,51,2,5;对于res5bres5b模块,设置r=5,9,17r=5,9,17

可以看到增加接收野大小会获得较高的精度。如下图所示:

ResNet-DUC-HDC在较大的目标物上表现较好。下图是局部放大:

可以看到HDC有效的消除”gridding”产生的影响。

Deeper Networks: 同样尝试了将ResNet-101切换为ResNet-152,使用ResNet152先跑了10个epoch学习了BN层参数,再固定BN层,跑了20个epochs.结果如下:

ResNet152为基础层的有1%的提升。

Test Set Results: 论文将ResNet101开始的7×77×7卷积拆分为3个3×33×3的卷积,再不带CRF的情况下达到了80.1%mIoU.与其他先进模型相比如下:

模型同时在coarse labels跑了一圈,与同样以deliated convolution为主的DeepLabv2相比,提升了9.7%.

KITTI Road Segmentaiton

KITTI有289的训练图片和290个测试图片。示例如下:

因为数据集有限,为了避免过拟合。论文以100的步长在数据集中裁剪320×320320×320的patch. 使用预训练模型,结果如下:

结果达到了state-of-the-art水平.

PASCAL VOC2012 dataset

先用VOC2012训练集和MS-COCO数据集对ResNet-DUC做预训练。再使用VOC2012做fine-tune。使用的图片大小为512×512512×512。达到了state-of-the-art水平:

可视化结果如下:


Conclusion

论文提出了简单有效的卷积操作改进语义分割系统。使用DUC恢复上采样丢失的信息,使用HDC在解决”gridding”的影响的同时扩大感受野。实验证明我们的框架对各种语义分割任务的有效性。

理解图像分割中的卷积(Understand Convolution for Semantic Segmentation)的更多相关文章

  1. 理解NLP中的卷积神经网络(CNN)

    此篇文章是Denny Britz关于CNN在NLP中应用的理解,他本人也曾在Google Brain项目中参与多项关于NLP的项目. · 翻译不周到的地方请大家见谅. 阅读完本文大概需要7分钟左右的时 ...

  2. [转] 理解NLP中的卷积&&Pooling

    转自:http://blog.csdn.net/malefactor/article/details/51078135 CNN是目前自然语言处理中和RNN并驾齐驱的两种最常见的深度学习模型.图1展示了 ...

  3. 彻底理解数字图像处理中的卷积-以Sobel算子为例

    彻底理解数字图像处理中的卷积-以Sobel算子为例 作者:FreeBlues 修订记录 2016.08.04 初稿完成 概述 卷积在信号处理领域有极其广泛的应用, 也有严格的物理和数学定义. 本文只讨 ...

  4. caffe中全卷积层和全连接层训练参数如何确定

    今天来仔细讲一下卷基层和全连接层训练参数个数如何确定的问题.我们以Mnist为例,首先贴出网络配置文件: name: "LeNet" layer { name: "mni ...

  5. [翻译] 扩张卷积 (Dilated Convolution)

    英文原文: Dilated Convolution 简单来说,扩张卷积只是运用卷积到一个指定间隔的输入.按照这个定义,给定我们的输入是一个2维图片,扩张率 k=1 是通常的卷积,k=2 的意思是每个输 ...

  6. [转]CNN 中千奇百怪的卷积方式大汇总

    https://www.leiphone.com/news/201709/AzBc9Sg44fs57hyY.html 推荐另一篇很好的总结:变形卷积核.可分离卷积?卷积神经网络中十大拍案叫绝的操作. ...

  7. CNN中千奇百怪的卷积方式大汇总

    1.原始版本 最早的卷积方式还没有任何骚套路,那就也没什么好说的了. 见下图,原始的conv操作可以看做一个2D版本的无隐层神经网络. 附上一个卷积详细流程: [TensorFlow]tf.nn.co ...

  8. 从图(Graph)到图卷积(Graph Convolution):漫谈图神经网络模型 (二)

    本文属于图神经网络的系列文章,文章目录如下: 从图(Graph)到图卷积(Graph Convolution):漫谈图神经网络模型 (一) 从图(Graph)到图卷积(Graph Convolutio ...

  9. 从图(Graph)到图卷积(Graph Convolution):漫谈图神经网络模型 (一)

    本文属于图神经网络的系列文章,文章目录如下: 从图(Graph)到图卷积(Graph Convolution):漫谈图神经网络模型 (一) 从图(Graph)到图卷积(Graph Convolutio ...

随机推荐

  1. Mybatis 系列4

    上篇系列3中 介绍了properties与environments, 本篇继续讲剩下的配置节点之一:typeAliases. typeAliases节点主要用来设置别名,其实这是挺好用的一个功能, 通 ...

  2. 从has no method 'tmpl'谈起

    最近做一个相对比较功能专业化的应用系统,其中今天Leader提出的功能修改需求有点smart table的意思,其中有个界面修改由于用Dom操作太麻烦了,于是想用用很久之前在学习jQuery API中 ...

  3. java基础- Collection和map

    使用构造方法时,需要保留一个无参的构造方法 静态方法可以直接通过类名来访问,而不用创建对象. -- Java代码的执行顺序: 静态变量初始化→静态代码块→初始化静态方法→初始化实例变量→代码块→构造方 ...

  4. Xamarin.Android 使用AsyncTask提示上传动态

    我们有时候会通过WebServices上传数据,如果信息量过大并没有提示,用户会觉得是死机,或是系统崩溃,这时候我们可以用到AsyncTask(异步任务)来提示上传信息,例如:正在上传数据... 这里 ...

  5. DX11 Without DirectX SDK--05 键盘和鼠标输入

    回到 DirectX11--使用Windows SDK来进行开发 提供键鼠输入可以说是一个游戏的必备要素.在这里,我们不使用DirectInput,因为Windws SDK本身就不提供该头文件.这里我 ...

  6. vsts + XX云服务器构建netcore+docker持续集成交付部署

    持续集成交付部署是什么意思,它给我们带来什么好处? 先贴一张图 持续集成(Continuous Integration) 持续集成强调开发人员提交了新代码之后,立刻进行构建.(单元)测试(这个要看情况 ...

  7. 静态成员函数与pthread_create,纯虚函数匹配使用实例

    最近在浏览朋友写的代码,发现有一个细节非常值得学习,在这里将代码贴出来简单分享一下: #ifndef THREAD_H_ #define THREAD_H_ #include <pthread. ...

  8. Scrapy爬虫框架第五讲(linux环境)【download middleware用法】

    DOWNLOAD MIDDLEWRE用法详解 通过上面的Scrapy工作架构我们对其功能进行下总结: (1).在Scheduler调度出队列时的Request送给downloader下载前对其进行修改 ...

  9. 好代码是管出来的——使用Git来管理源代码

    软件开发过程中一个重要的产出就是代码,软件的编码过程一般是由一个团队共同完成,它是一个并行活动,为了保证代码在多人开发中能够顺利完成,我们需要使用代码版本控制工具来对代码进行统一存储,并追踪每一份代码 ...

  10. Linux内核编程、调试技巧小集

    1. 内核中通过lookup_symbol_name获取函数名称 内核中很多结构体成员是函数,有时可能比较复杂不知道具体使用哪一个函数.这是可以通过lookup_symbol_name来获取符号表名称 ...