DFANet: Deep Feature Aggregation for Real-Time Semantic Segmentation(笔记)

论文地址

一、主要内容介绍

1. 问题背景

对于高分辨率的图像,如何在高推断速度的情况下,保证推断精度呢?

  1. U型网络的分割效果不错,但是计算量较大;
  2. 一些方法通过减小输入图像的尺寸或者裁剪掉多余的通道来提高推断的速度,但是会损失边界部分的细节以及对于小目标识别效果不好;
  3. 浅层的网络削弱了特征的辨别能力。
  4. 针对这些问题,有人提出将空间细节和上下文信息结合在一起的多分支框架(Figure 2(a))。然而,高分辨率图像上的附加分支限制了速度,分支之间的相互独立性限制了模型学习能力。
  5. SPP(Spatial Pyramid Pooling)(Figure 2(b))会增加高层的特征,同时也会增加计算量。通过最后的输出增加特征图,这样会缺少前面层保留的图像语义信息。

为了提高模型的学习能力,以及增大感受野,特征重利用(feature reuse) 是个不错的方法。文章提出的网络结构如图Figure 2(d).通过子网络聚合(sub-network aggregation)和子状态聚合(sub-stage aggregation)来重利用特征。
在这里插入图片描述

2. 文章贡献点

文章提出了一种深度信息整合网络(DFANet)用于实时语义分割。
主要有三个贡献点:

  1. 采用轻量级的网络作为基本骨架(backbone)
  2. 子网络聚合——网络级联。
  3. 子状态聚合。将不同骨架间的相应状态聚合。

二、网络结构

在这里插入图片描述
1. backbone
Figure 3中共有3个backbone,每个backbone都是改进版的Xception网络。
在这里插入图片描述
在这里插入图片描述
2. 子网络聚合——网络级联
图中的红色箭头部分
在这里插入图片描述
处理过程:将上一个backbone 的输出,作为下一个backbone的输入。这个上一个backbone 的输出上采样四次后输入下一个backbone。
在这里插入图片描述
3. 子状态聚合
橙色箭头部分。不同backbone的相应状态聚合
在这里插入图片描述
对于第一个backbone, n = 1 n=1 n=1,第 i i i个状态 x i n x_{i}^{n} xin 等于上一状态的输入和输出的和,当 n > 1 n>1 n>1时, x i n x_{i}^{n} xin 等于上一状态( i − 1 i-1 i1)以及上一个网络( n − 1 n-1 n1)的当前状态( i i i)的级联。 i i i – 状态, n n n – backbone
在这里插入图片描述
4. decoder
融合底层和高层的特征,没有使用中间层的特征。
在这里插入图片描述

三、实验细节

  1. 输入图像尺寸: 1024 x 1024 1024 x 1024 1024x1024, 512 x 1024 512 x 1024 512x1024
  2. 优化方法:SGD batch size 48, momentum 0.9 weight decay 1e − 5.
    3.损失函数:交叉熵损失
  3. 数据增强: 去均值(mean suntraction),随机垂直翻转,随机缩放,缩放因子:[0.75,1.75],随机裁剪

四、问题

当使用3个Backbone A时的mIoU比2个时小?2个Backbone A时的感受野已经比图像大,在增加一个Backbone,会引入噪声。在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值