目标分割(六)RefineNet讲解
目标分割RefineNet讲解
- ABSTRACT
- 1. INTRODUCTION
- 2. STRUCTURE
- 3. RefineNet
- 3.1. Residual convolution unit (RCU)
- 3.2. Multi-resolutionfusion
- 3.3. Chained residual pooling
- 3.4. Output convolutions
- Reference
原文:RefineNet
收录:CVPR 2017 (IEEE Conference on Computer Vision and Pattern Recognition)
代码:RefineNet-github
ABSTRACT
- 在深度CNNs中,重复的子采样操作(池化或卷积操作)会导致初始图像分辨率显著下降,为解决信息损失问题,我们提出RefineNet,充分利用下采样过程中可用的所有信息。 (本工作是U-Net的一个变种)
- 介绍链式残差池化(chained residual pooling ),可以高效的获取背景信息。
※论文核心思想:
- 提出新的网络结构RefineNet,是为了来 解决如何有效地利用中间层特性这个问题 ;
- RefineNet使用 恒等映射的短距离和远距离残差连接 ,这使得整个系统能够有效地进行端到端训练。
1. INTRODUCTION
Q1:多阶段的池化和卷积通常会使最终的图像预测降低32倍,从而丢失很多更精细的图像信息,有哪些解决方法以及这些方法弊端?
- 将反卷积作为上采样操作,但是缺点则是下采样毕竟舍去一部分信息,肯定无法准确恢复在下采样过程中丢失的低层次视觉特征。因为 低层次视觉信息对边框、细节的准确预测十分重要 ,所以没办法输出准确的高分辨率预测。
- 空洞卷积:没有下采样,而且在不增加参数个数前提下,获得更大的感受野。被成功应用于DeepLab,此时DeepLab代表了语义分割的最新进展,但弊端有两个:
1、它需要在高分辨率特征上计算卷积,而这些特征通常高维,计算量很大,而且在使用空洞卷积时,往往限制最后的输出尺寸为原始输入的1/8;
2、空洞卷积过程产生的粗糙特征可能也会丢失一部分重要细节。- 利用中间层的特征生成高分辨率的预测结果:如FCN、Hypercolumns等,尽管中间层包含从早期卷积层编码低级空间视觉信息,如边缘;同时补充深层编码的高级语义信息如对象等。但是缺乏强空间信息。
所有层次特征都有助于语义分割。高层次的语义特征有助于图像区域的类别识别,而低层次的视觉特征有助于生成清晰、详细的边界,用于高分辨率预测。
Q2:如何有效地利用中间层特性?
为此,我们提出了一种新颖的网络架构,它有效地利用多级特性来生成高分辨率预测。我们的主要贡献如下:
1、一种多路径的提炼网络,利用多级抽象特征进行高分辨率的语义分割,以递归方式细化低分辨率(粗粒度)语义特征和细粒度低级语义特征,生成高分辨率的特征;
2、级联的refineNet可以end-to-end训练,因为RefineNet的所有组件均采用恒等映射的残差连接residual connection,使得梯度可以通过短距离和长距离的残差连接传播,从而实现端到端训练;
3、提出链式残差池化,能够从大的图像区域提取背景上下文。
2. STRUCTURE
本文网络向下的路径以ResNet为基础,向上的路径则是使用新提出的RefineNet作为基础,并作为本路径特征与ResNet中低层特征的融合器。一个基本的框架如下图所示: 其中左边的四组特征图是从ResNet的四个对应的block输出。此框架与U-Net没有太大区别。不过RefineNet是一个灵活的模块,其输入的尺度个数可以变化,因此整个网络的拓扑结构可以有很多改变。
RefineNet利用多层次特征以及长距离残差连接生成高分辨率预测结果。如上图所示, 将预训练的ResNet分成四部分。根据特征图的采样率,用4个RefineNet单元构成4级联结构。将一个ResNet模块的输出以及级联结构中的上一个RefineNet模块作为当前RefineNet模块的输入 。
但是上图这样的结构并不唯一,可以对其进行扩展。例如:
① 仅使用一个RefineNet模块:
② 使用两个RefineNet模块级联:
③ 四个RefineNer模块四级联且使用两种尺度的输入:
3. RefineNet
3.1. Residual convolution unit (RCU)
RCU(Residual convolution unit)是原始ResNet中卷积单元的简化版本(去掉了批处理规范化层batch-normalization layers),RCU模型的作用是对预训练的ResNet的权重进行微调,每一个输入经过连续两个RCU模块。除RefineNet 4中为512个卷积核外,其余所有输入路径上的卷积核个数均为256。
3.2. Multi-resolutionfusion
作用是将所有路径上的输入通过这个模块融合到高分辨率特征图上。对输入的特征图做适当的卷积然后产生同样维度的特征映射。所有特征上采样至最大的输入尺寸,然后对所有通道的结果求和(若只有一个输入路径,例如RefineNet-4,则输入路径将直接经过此块而不做任何更改)。
3.3. Chained residual pooling
链式残差池化的目的是为了针对大的图像区域捕获其上下文背景信息。它能够通过多种窗口大小进行有效池化并通过可学习的权重整合。模块主要包含残差结构、池化层、卷积层。池化卷积的目的是学习用来矫正的残差。这里值得注意的一点是,前一级的残差结果作为下一级的残差学习模块的输入,而不是直接从矫正过后的分割结果中再学习一个残差。之后再经过一个RCU模块,平衡所有权重,最后得到与输入分辨率一致的分割结果。
3.4. Output convolutions
即一个RCUs构成。
最后附上网络详细网络:
Reference
- 图像分割之RefineNet 论文笔记
- RefineNet 理解
- 【图像分割论文阅读】RefineNet: Multi-Path Refinement Networks for High-Resolution Semantic Segmentation
目标分割(六)RefineNet讲解相关推荐
- 目标分割(四)DeepLab v1讲解
目标分割DeepLab v1 ABSTRACT 1. INTRODUCTION 2. RELATED WORK 3. CONVOLUTIONAL NEURAL NETWORKS FOR DENSE I ...
- 目标检测、目标分割:常用框架与流程(流程包括:数据集标注与格式预处理、训练与推理、训练优化、算法代码以及原理)
1.目标检测(矩形框): ①常用模型YOLO5: 1°入门使用,具体见这篇博客 YOLOv5训练自己的数据集(超详细完整版)_深度学习菜鸟的博客-CSDN博客_yolov5训练自己的数据 (补充说明: ...
- 【论文复现赛第七期】Fact-Seg论文复现(拯救你的小目标分割)
[论文复现赛第七期]Fact-Seg论文复现(拯救你的小目标分割) 摘要 小目标语义分割任务致力于从高分辨率遥感图像中自动提取关键目标.与遥感图像的大规模覆盖区域相比,像汽车和轮船这样的关键目标往往仅 ...
- CVPR 2020 论文大盘点-全景分割与视频目标分割篇
点击上方"3D视觉工坊",选择"星标" 干货第一时间送达 今天的内容关注于全景分割(Panoptic Segmentation)和视频目标分割(Video Ob ...
- 商汤科技开源DAVIS2017视频目标分割冠军代码
出处"来自微信公众号:我爱计算机视觉" 商汤科技开源DAVIS2017视频目标分割冠军代码 用目标重识别改进视频目标分割. 传统视频分割经常依赖于时序连续来生成mask(目标的掩膜 ...
- 之江杯2020零样本目标分割题参赛总结
文章目录 一.赛题简介 二.ZS3Net简介 三.我的tricks 四.总结 比赛链接:https://zhejianglab.aliyun.com/entrance/531816/ranking ...
- 显著改善分割预测,ETH开源基于情景图储存网络的视频目标分割|ECCV2020
原文链接:https://bbs.cvmart.net/articles/3119 专注计算机视觉前沿资讯和技术干货 微信公众号:极市平台 官网:https://www.cvmart.net/ 本文主 ...
- ECCV 2020 Spotlight | CFBI:前背景整合的协作式视频目标分割
©PaperWeekly · 作者|杨宗鑫 学校|悉尼科技大学博士生 研究方向|视频分割.网络结构设计 半监督视频目标分割 视频目标分割(VOS)是计算机视觉领域的一个基础任务,具有非常多潜在的应用场 ...
- 图像目标分割_6 Mask RCNN
6.6.0 背景 目标检测和语义分割的效果在短时间内得到了很大的改善.在很大程度上,这些进步是由强大的基线系统驱动的,例如,分别用于目标检测和语义分割的Fast/Faster R-CNN和全卷积网络( ...
最新文章
- swift中字符串截取方法(substring)
- Linux之加密及CA证书
- Linux上Core Dump文件的形成和分析
- 第三周项目4(2)-顺序表应用 将所有奇数移到所有偶数前面
- 经济学与计算机科学结合,理论计算机在物理学和经济学领域的重要作用
- 「C++: Eigen」学习笔记
- asp连接mysql oledb_provider=microsoft.jet.oledb……数据库连接方法的疑惑?
- PHP年龄计算 取得两个时间戳相差的年龄年月日显示
- 聊天demo SignalR
- MATLAB的7种滤波方法(重制版)
- springboot学生在线考试管理系统
- 一条查询SQL的执行流程
- 帆软报表决策系统自定义登录界面 使用验证码登录 教程一
- 如何使用win10自带的录屏工具录制视频
- java使用poi读写word中的图片(二)
- 说说大型网站可伸缩性架构的设计原理
- linux下下载fnl数据,使用python直接提取fnl再分析资料的气象因子数据
- 视比特“AI+3D视觉”产品系列 | 上料装配工作站
- python ddt mysql_40- 数据驱动(ddt)
- 超棒的HTML5/CSS3单页面响应式模板(支持Bootstrap)