RefineNet: Multi-Path Refinement Networks for High-Resolution Semantic Segmentation

conde: https://github.com/guosheng/refinenet

 

1 Introduction

主要贡献

1 多路径细化网络, 利用多层的抽象特征对于高分辨率语义分割, 网络运用低分辨率语义特征和描绘细节的底层特征去回归方法产生高分辨率语义特征图.

2 网络可以进行端到端的训练, 这对于性能非常重要, 网络中使用残量连接 和 恒等映射, 因此梯度可以直接通过短距离和长距离的残量网络进行传播, 从而有效的端到端的训练.

3 chained residual pooling: 能够从图像一个大的区域捕获背景信息. 它通过有效地池化具有多个窗口大小的特征并将它们与剩余连接和可学习的权重融合在一起来实现。

 

1.1 Related work

RefineNet employs short-range and long-range residual connections with identity mappings which enable effective end-to-end training of the whole system, and thus help to archive good performance

 

2 Background

ResNet通过stride=2减少特征图分辨率一半. 有两个影响:

First: it increases the receptive field of convolutions at deeper levels, enabling the filters to capture more global and contextual information which is essential for high quality classification

Second: it is necessary to keep the training efficient and tractable because each layer comprises a large number of filters and therefore produces an output which has a corresponding number of channels, thus there is a trade-off between the number of channels and resolution of the feature maps.

通常ResNet输出原图的1/32, channel=1000. 分辨率的下降有益于分类问题, 但是相对于底层的特征图, 损失太多细节, 这在DCNN对于分割众所周知的限制.

 

Deeplab解决这个问题就是使用空洞卷积, 保持大的感受野. stride=1即下采样被移除. 在第一次卷积之后就全是空洞卷积. 由于需需要保留更高分辨率特征图, 所以存储器需求变大. 因此实践中往往保持1/8的分辨率预测.

 

本文提出了保持分辨率和节省内存, 有效高分辨率分割的方法.

 

3 Proposed method

 

3.1 Multi-path refinement

首先将训练好的ResNet根据特征图分辨率分成四个块. 采用4个"级联"的RefineNet单元, 每个单元直接连接到一个ResNet块的输出以及"级联"中的前一个RefineNet块.

采用RefineNet-m作为RefineNet block块和ResNet block-m连接. 实际上是每一个ResNet块通过一个卷积层输出来调节维度.

 

如图2(c), RefineNet-4的输入只有ResNet-4, RefineNet-3的输入是ResNet-3和RefineNet-4的输出, RefineNet-3的功能是使用ResNet-3的高分辨率功能来优化前一阶段RefineNet-4的低分辨率特征图输出.RefineNet-2-1都是同样的操作.

 

用softmax对最终高分辨特征图进行最终的预测得到分数映射, 分数映射采用双线性插值对特征图进行上采样以匹配原图像. 整个网络可以端到端的训练.

 

值得注意的是, 在ResNet块和RefineNet块之间引入了远距离残量连接. 在前向传递期间这些远距离连接传递了encode视觉细节底层的特征, 以优化粗略的高层特征图.

 

在训练期间这也允许直接梯度传播到早起卷积层, 这有助于有效的端到端的训练.

 

3.2 RefineNet

Residual convolution unit.

RefineNet block 第一部分由一个有适应能力的卷积集合组成, 主要是调节预训练ResNet的权重. 为此,每个输入通过两个RCU.对于每条输入路径卷技数量, 除了RefineNet-4的设置为512, 其余为256.

 

Multi-resolution fusion.

上一步通过RCU的输出, 作为输入通过此模块融合为一个高分辨率特征图. 先是两个输入路径通过卷积生成相同的维度(维度就是特征图的层数, 向维度小的靠齐). 然后通过上采样分辨率小的特征图到输入大的那个分辨率, 最后将所有特征图加和.RefineNet-4只有一个输入路径则直接通过这个块, 不做改变.

 

Chained residual pooling.

这个块的目标是捕获一个大的图像区域的背景语义信息, pooling stride=1. 实验中使用了两个pooling块.

 

Output convolutions(这段不是很懂???).

每个RefineNet块的最后一步是另一个RCU. 从整体来看相当于每个RefineNet之间有三个RCU(除了RefineNet-1), 为了让RefineNet-1也存在这种属性, 在最终的softmax预测之前放置了两个额外的RCU.目标是对融合的特征采用非线性运算, 生成用于进一步处理或最终预测的特征. 经过此块特征维数不变.

 

3.3 Identity mappings in RefineNet

残量网络中的快速路径并不是非线性变化(主路径是), 而是恒等变化. 需要改变维度时可以使用一个卷积来改变(1X1卷积??). 最后融合是指一对一的相加, 所以维度是不变的.

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

TWSF

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值