语义分割Deeplabv3+论文解读
论文链接
Encoder-Decoder with Atrous Separable Convolution for Semantic Image Segmentation
https://arxiv.org/abs/1802.02611
动机
- 在Deeplabv3和PSPNet中,虽然丰富的语义信息被编码,但是在backbone网络中多次下采样使得被分割物体的边缘信息丢失,导致边缘模糊
- 使用空洞卷积可以减少下采样,缓解由于下采样过多而使得被分割物体的边缘信息丢失的问题,但是空洞卷积往往导致占用过多显存,计算过于复杂,特别使当输出的分辨率是输入分辨率的1/8或者1/4时
- 由于编码器-译码器结构不需要空洞卷积,其计算量往往较少
贡献
- 使用Deeplabv3作为编码器,设计一个简单高效的译码器,构成一个新的编码器-译码器结构
- Deeplabv3+能够通过空洞卷积控制输出特征图的分辨率,实现准确率和运行时间的平衡
- 使用Xception模型,并把depthwise separable convolution应用到ASPP和译码器,构成一个更加强大的编码器-译码器网络
算法
空洞卷积
作用:(1)控制前向传播过程中被计算的特征分辨率 (2)调整感受野大小,能够捕捉多尺度信息
Depthwise separable convolution
结构:一个depthwise convolution + 一个1x1卷积层
作用:大大减少了计算复杂度
改进:将空洞卷积和depthwise convolution进行结合,构成atrous separable convolution
用Deeplabv3作为编码器
- 通过改变deeplabv3编码器最后一个(两个)模块的striding并改为使用空洞卷积,能够控制output stride为16(8)
- Deeplabv3改进了ASPP模块,有多个分支的不同rate的空洞卷积以及图像层特征
译码器
- 使用双线性插值法对编码器输出特征放大4倍
- 将放大后的编码器输出特征和来自backbone的低层特征进行拼接
- 使用1x1卷积对特征通道数进行压缩,使训练更容易,防止编码器输出特征信息被来自backbone的低层特征所压制
改进的aligned Xception
- 使用更深的Xception结构,但是保留原有的entry flow network结构
- 所有最大池化层改为atrous separable convolution,从而能够在任意分辨率的特征图上提取特征
- 在每个3x3卷积层后都加了BN和ReLU层
实验
数据集
PASCAL VOC2012,CityScapes
评价指标
mIoU,Multiply-Adds
结果
来自低层的特征进行1x1卷积后输出通道数的变化对结果的影响 (resnet101 backbone):
译码器3x3卷积结构变化对结果的影响(resnet101 backbone)
不同推理策略对结果的影响 (resnet101 backbone)
从Table3可以看出,output stride=8时,计算量增加将近3倍,但是mIoU的提升却非常小。所以设置output stride=8得不偿失
以修改的Aligned Xception作为backbone的deeplabv3+不同推理策略的结果的影响
与Table 3中的结果相比,Aligned Xception在语义分割方面确实比resnet101有优势,在结果更好的情况下计算量更小
在Pascal Voc2012测试集上的结果
在CityScapes上的结果(Xception backbone)
优缺点
优点:
- 通过把Deeplabv3作为编码器,结合新的译码器,构建一个强大的语义分割网络
- 实验非常充分
- 能够根据需要控制output stride
缺点:
- 部分实验对于算法的实际应用而言没有太大的意义,小于%1的提升并不能说明绝对正确的优化,可能换个数据集就没有提升或者提升更大
- 没有提供运行时间,估计很难达到实时
- 许多实验都可以看出参数量越多,模型越大,效果会更好
- 实验用了50块GPU,一般人想要复现不太可能
反思
- 网络模型越做越大,很大可能是效果也越来越好,但是这是否是一个正确的思路?是否可以将网络做得不仅小,而且效果和大模型一样好?我觉得这才是我们追求的目标,特别是对于项目应用落地
语义分割Deeplabv3+论文解读相关推荐
- PSPNet 语义分割网络模型论文解读
转自:https://blog.csdn.net/u011974639/article/details/78985130 PSPNet Pyramid Scene Parsing Network 收录 ...
- 语义分割【论文解读】新思路:几何感知蒸馏 CVPR-2019
文章转自:知乎 原文链接:https://zhuanlan.zhihu.com/p/146165099 作者:Danny明泽 简介 语义分割是计算机视觉中一个基本而又具有挑战性的问题.通过语义分割 ...
- 制作自己的segnet数据集_语义分割【论文解读】经典网络SegNet 值得仔细反复阅读...
摘要: 提出了一种新颖而实用的深度全卷积神经网络结构用于语义像素分割称为SegNet.这个核心的可训练分割引擎包括一个编码器网络,一个相应的解码器网络,以及一个像素级的分类层.编码器网络的架构与VGG ...
- DeepLabV3论文解读(空洞卷积/膨胀卷积 理解)
DeepLabV3论文解读(空洞卷积/膨胀卷积 理解) 最近在做基础网络研究,设计的网络结构除了在分类数据集上测试,还需要在分割和检测网络上测试效果,故选择了DeepLabV3作为对比平台.本想直接替 ...
- 一文看尽9篇语义分割最新论文(GPSNet/Graph-FCN/HMANet等)
前言 恰逢 2020年,本文再次更新近期值得关注的最新语义分割论文.这次分享的paper将同步推送到 github上,欢迎大家 star/fork(点击阅读原文,也可直接访问): https://gi ...
- 语义分割--(DeepLabv3+)Encoder-Decoder with Atrous Separable Convolution for Semantic
语义分割--(DeepLabv3+)Encoder-Decoder with Atrous Separable Convolution for Semantic .. https://blog.csd ...
- 【语义分割】论文代码资料汇总
语义分割的资料总结 1.Github一份丰富的论文清单 from hangdong1587,这份清单中包含了一下几个部分: 语义分割基础论文 基于多边形的分割 基于U-net的分割 前景分割 语义分割 ...
- 语义分割系列论文 ParseNet
语义分割系列论文 ParseNet 核心思想--Global Context 理论感受野的大小(Receptive Field) 实际感受野的大小 此文章如何扩大感受野? 疑点(读者可以忽略本节) 总 ...
- 干货 | 语义分割综述论文总结与推荐
添加几篇 19-20 年的综述 Evolution of Image Segmentation using Deep Convolutional Neural Network: A Survey 这篇 ...
最新文章
- [APIO2018] New Home 新家(线段树,二分答案,离散化)
- 第二十二章:洗净皮衣
- 重装系统后,腾讯TM2013 “应用程序无法启动,因为程序的并行配置不正确
- [case29]JDK11的ZGC小试牛刀
- 5、只出现一次的数字
- 【python】从web抓取信息
- 双向可控硅晶片光耦(TLP160J TLP260J TLP525G)基本原理及应用实例
- C语言之打印错误信息
- 小蜜蜂商城系统解析,结合众筹卖货活动,流水千万
- 检测tomcat 在CentOS 上的运行状态,发送邮件
- iPhone X全屏适配
- 信号量哲学家问题java_利用AND信号量机制解决哲学家进餐问题
- 【NLP】文本分类TorchText实战-AG_NEWS 新闻主题分类任务(PyTorch版)
- Ubuntu有线网络无法连接—有线网络连接图标变为灰色,无法点击
- 10、晶体三极管的符号和结构
- 诚之和:44页报告还原“美国散户复仇记”!揭秘黑池交易是如何割韭
- Java的GUI编程---Swing介绍
- LocalDatetimeUtils
- 碳中和丨InVEST模型高级进阶及在生态系统服务供需、碳中和等领域中的具体应用
- 物联网 期末复习习题(特别全(第二篇))
热门文章
- machine learning week1-model Representation
- linux 创建用户并限制其访问目录
- python 最长公共子序列长度_python实现最长公共子序列
- 笔记本键盘乱码--字母键变快捷键
- 研究War3编辑器(4):触发器与变量
- 【末日祭典】魔法门英雄无敌III——lanruo
- 魅蓝E 刷android,魅蓝e怎么root,或者怎么刷成android系统
- 学php到企业一般都做什么,学电子商务可以干什么 毕业后一般做什么工作
- 安装系统-UltraISO+Ubuntu18.04
- 如果足球场没有边界,那将会怎样?(转)