CGNet: A Light-weight Context Guided Network for Semantic Segmentation

0.摘要

移动设备中语义分割模型应用增加,然大部分网络的参数量过大,而内存占用较小的网络基本上是根据分类网络设计的。这一设计呐忽视了分割网络的特点
our,提出了CGNet,轻量化、高效的语义分割网络,1 CG模块,将局部特征和周围特征进行联合 2 用全局特征改善联合特征 3 基于CG模块构建CGNet

1.引言

图1
对于Fig1的描述:

  • 本图是在cityscapes数据集上不同框架的准确率和参数量的对比。
  • 高准确率的模型(蓝点),由图像分类网络转化而来且参数量大,因此大多不适于移动设备。
  • 低分辨率的小模型(红点),遵循分类网络的设计方式,忽略了分割特性,故而效果不好。

CGNet的设计:
为了提升准确率,用cgnet探索语义分割的固有属性。对于准确率的提升,因为语义分割是像素级分类和目标定位,所以空间依赖性和上下文信息发挥了重要作用。因此,设计cg模块,用于建模空间依赖性和语义上下文信息。
- 1、cg模块学习局部特征和周围特征形成联合特征
- 2、通过逐通道重新加权(强调有用信息,压缩无用信息),用全局特征改善联合特征
- 3、在全阶段应用cg模块,以便从语义层和空间层捕捉信息。
为了降低参数量:1、深层窄网络,尽可能节约内存 2、用通道卷积
图2

之前的网络根据框架可分三类:
- 1、FCN-shape的模型,遵循分类网络的设计,忽略了上下文信息 ESPNet、ENet、fcn
- 2、FCN-CM模型,在编码阶段后用上下文模块捕捉语义级信息 DPC、DenseASPP、DFN、PSPNet
- 3、(our)在整个阶段捕捉上下文特征
- 4、主流分割网络的下采样为五次,学习了很多关于物体的抽象特征,丢失了很多有鉴别性的空间信息,导致分割边界过于平滑,(our)仅采用三次下采样,利于保存空间信息

2.背景工作

3.方法及构架

3.1.cg模块


Cg模块
思路:人类视觉系统依赖上下文信息理解场景。
如图3,a, 如若仅关注黄色框框,很难分辨,也就是说,仅关注局部特征不容易正确识别目标的类别。 然后,如果加入了目标周围的特征,即图3,b,就很容易识别正确,所以周围特征对于语义分割是很有帮助的。在此基础上,如果进一步用整个场景的特征加以辅助,将会有更高的程度去争正确分类黄色框框的物体,如图3,c所示。 故,周围上下文和全局上下文对于提升分割精度都是有帮助的。

实现:基于此,提出cg模块,利用局部特征,周围上下文以及全局上下文。如图3,d所示。该模块共包含两个阶段。

  • 第一步,floc( ) 局部和 fsur( )周围函数分别学习对应特征。floc( )用3x3卷积从周围8个点提取特征,对应于黄色框框;同时fsur( )用感受野更大的3x3带孔卷积学习周围上下文,对应红色框框。然后fjoi( )是指将前两路特征concat之后经BN,PReLU。此一部分是cg模块的第一步。
  • 对于模块的第二步,fglo( )用于提取全局特征,改善联合特征。受SENet启发,全局上下文被认为是一个加权向量,用于逐通道微调联合特征,以强调有用元素、压缩无用元素。在本论文中,fglo( )用GAP产生聚合上下文特征,然后用多层感知机进一步提取全局上下文。最后,使用一个尺度层对联合特征重新加权用提取的全局上下文。

残差连接有利于学习更复杂的特征以及便于训练时梯度反向传播。两个拟设计方案,LRL局部残差连接和GRL全局残差连接,实验证明(消融实验),GRL效果更好

3.2.CGNet网络


  • 原则:深、瘦(deep and thin)以节省内存。层数少,通道数少,三个下采样。

  • Stage1,三个标准卷积层,分辨率变成原来的1/2

  • Stage2和stage3,分别堆叠M和N个cg模块。该两个阶段,第一层的输入是前一阶段第一个和最后一个block的结合(how结合)利于特征重用和特征传播。

  • 将输入图像下采样到1/4和1/8分别输入到第2和3阶段。

  • 最后,用1x1卷积层进行分割预测。

    为进一步降低参数量,局部和周围特征提取器采用了逐通道卷积。之前有的工作在逐通道卷积后采用1x1卷积用以改善通道间的信息流动,本文消融实验显示效果不好,分析:因为cg模块中提取的局部和全局特征需要保持通道独立性,所以本论文不使用1*1卷积。

3.3与之前的网络对比

ENet unit、MobileNet unit、ESP unit、Inception Unit、CCL unit

实验

4.1实验设置

“poly” learning rate policy,learning rate=0.1,power=0.9、优化ADAM,batch size 14,betas=(0.9, 0.999),weight decay 0.0005 (training)、数据增强random mirror, mean subtraction和random scale、迭代数iteration对Cityscapes和CamVid均60k、损失函数为交叉熵损失(忽略未标注像素)

4.2.消融实验

上下文特征提取器:0、1、18--------周围环境有帮助(1到18跨度大)

全局上下文特征提取器
引入下采样的原图激活函数PreLU
网络深度(第二三阶段的层数)
残差连接怎么连(LRL,GRL)
跨通道交互(逐通道卷积后是否用1**1)

4.3.与其他模型对比

效率分析,准确度分析

CGNet: A Light-weight Context Guided Network for Semantic Segmentation相关推荐

  1. Hybrid Multiple Attention Network for Semantic Segmentation in Aerial Images

    论文阅读: Hybrid Multiple Attention Network for Semantic Segmentation in Aerial Images 作者声明 版权声明:本文为博主原创 ...

  2. 语义分割--DeconvNet--Learning Deconvolution Network for Semantic Segmentation

    Learning Deconvolution Network for Semantic Segmentation ICCV2015 http://cvlab.postech.ac.kr/researc ...

  3. Pyramid Attention Network for Semantic Segmentation

    翻译 | 林椿眄 出品 | 人工智能头条(公众号ID:AI_Thinker) 近日,北京理工大学.旷视科技.北京大学联手,发表了一篇名为 Pyramid Attention Network for S ...

  4. 语义分割--(DFN)Learning a Discriminative Feature Network for Semantic Segmentation

    Learning a Discriminative Feature Network for Semantic Segmentation Learning a Discriminative Featur ...

  5. 论文阅读 | Residual Conv-Deconv Grid Network for Semantic Segmentation

    GridNet发表在BMVC2017,用于语义分割,一篇很早期的文章 论文地址:[here] (文章没有给代码地址,但是里面的网络设计讲的很详细,可以自己复现出来,github上也有很多别人复现的代码 ...

  6. [分割]Learning a Discriminative Feature Network for Semantic Segmentation(DFN)

    本文转自3篇文章当作自己的笔记. 文章1:链接 Learning a Discriminative Feature Network for Semantic Segmentation Learning ...

  7. 论文学习:Fully Attentional Network for Semantic Segmentation

    Fully Attentional Network for Semantic Segmentation 1. 摘要+引言 问题 通过压缩空间维度或通过压缩通道的相似图来描述沿通道或空间维度的特征关系, ...

  8. 论文笔记-SSF-DAN: Separated Semantic Feature based Domain Adaptation Network for Semantic Segmentation

    论文信息 论文标题:SSF-DAN: Separated Semantic Feature based Domain Adaptation Network for Semantic Segmentat ...

  9. Learning a Discriminative Feature Network for Semantic Segmentation

    创新点就是特征区分网络discriminative feature network,本别叫做平滑网络Smooth Network以及边界网络Border Network. 这两个网络可以处理类内一致性 ...

最新文章

  1. Session与Cookie的安全问题
  2. Struts2之Ognl
  3. 编程语言的发展趋势及未来方向(7):总结
  4. 【Python基础知识-pycharm版】第六节-控制语句
  5. oracle 10gchuanjianyonghu,管理Oracle 10g Dataguard归档缺口问题
  6. 远程配置jupyter notebook
  7. centos6.5 源码安装php7
  8. 【Linux】tee命令
  9. Linux命令:SAMBA配置与win10共享
  10. 廖雪峰 - nodejs教程
  11. HTML+CSS个人简历练习
  12. macbook只有windows下安装os系统、trackpad++下载
  13. 笔记本电脑合上盖子不休眠设置方法
  14. PowerShell复制粘贴快捷键
  15. 美国纽约摄影学院摄影教材 学习笔记1
  16. FL Studio21水果软件最新中文版安装教程
  17. 重庆大学计算机信息管理基础2013,重庆大学计算机信息管理基础课程考试试卷B.doc...
  18. swift 快速奔跑的兔几 本节的内容是:音频与视频 第一说 AVFoundation 以及简单的iOS视频app
  19. SpringCloud微服务项目实战 - 6.延迟任务
  20. Nelder-Mead(simplex,“单纯形”)算法

热门文章

  1. IE浏览器设置兼容性
  2. ueeditor无法上传图片_ueditor上传图片中文文件名失败的解决办法
  3. 苏州农业职业技术学院携手华为,打造校企合作新典范
  4. C++ primer 第五版习题答案, Stanley B. Lippman( 斯坦利 李普曼)(持续更新中)
  5. AI大牛汤晓鸥:AlphaGo之后大家还能做点什么?| 演讲
  6. c type 笔记本 芯片方案_开发USB Type-C的注意事项及各芯片厂商的方案解读
  7. git 仓库公钥添加 遇到问题
  8. 【声明】RUC自习助手APP(Android版)已上线,可下载
  9. 关于数据库在不同服务器之间导入导出时出现的时间同步问题
  10. pbootcms标签生成器开发助手