【阅读笔记】《Fast-SCNN: Fast Semantic Segmentation Network》

论文介绍

论文地址:https://arxiv.org/abs/1902.04502

  正如论文题目所述,本文中所提到的模型名为快速分割卷积神经网络(Fast-SCNN),既然是“快速”,当然在需要实时语义分割的场所使用更为合适。本模型基于高分辨率图像数据(1024×2048px),适用于低内存嵌入式设备高效计算。

模型构成

  该模型总体分为四个部分:下采样学习模块(Learning to Down-sample)、全局特征提取器(Global Feature Extractor)、特征融合模块(Feature Fusion)以及标准分类器(Classifier),学习本论文是使用的代码来自github他人复现成果。

论文代码:https://github.com/Tramac/Fast-SCNN-pytorch

FSCNN Pipline
backbone

Learning to Down-sample

  本模块的主要作用是提取输入图片的低级特征,第一层是标准卷积层(Conv2D),其余两层是深度可分离卷积(DSConv),这篇论文里的DSConv是Depthwise Separable Convolutional而不是Distribution Shifting Convolution。
  相比于常规的卷积操作,DSConv计算效率更高。DSConv可分为DW(逐通道卷积)与PW(逐点卷积),相当于是对常规的卷积进行拆分,DW主要关注同一通道不同空间位置,PW主要关注同一空间位置不同通道。
DW

DW:一个卷积核负责一个通道,一个通道只被一个卷积核卷积

PW

PW:卷积核尺寸为1×1×M

  该模块提取出的部分特征图:
1
  上面这张图在周围树木上的响应较为强烈
  下面这张图在地面以及树干上的响应较为强烈
2

Global Feature Extractor

  本模块用于捕获图片的全局上下文信息,由MobileNet-V2中的一大堆Bottleneck Residual Block与最后的金字塔池模块(PPM)构成,其中LinearBottleneck中使用上述提到的DSConv减少参数与浮点运算的数量,LinearBottleneck为Bottleneck删除了最后的ReLU Function,在输出之前存在非线性会损害性能。
bottleneck

Bottleneck

  PPM(Pyramid Pooling Module)用于聚合不同区域的上下文信息,一共分为四层,每层size为1×1、2×2、3×3、6×6。首先,对特征图分别池化到目标size,然后对池化结果进行1×1卷积,将channel减少到原来的1/N(N=4),接着对上面的每一个feature map使用双线性差值上采样到原feature map相同的size,按channel进行拼接后与原feature map进行拼接,最后再用1×1卷积将channel缩小到原来的channel。
ppm

PPM

与上一模块相比,本模块提取出feature maps分辨率更小(更看不出提取出的是个什么鬼东西了)
请添加图片描述 请添加图片描述 请添加图片描述

Feature Fusion

  将两个Branch的高分辨率与低分辨率context information融合,即将上述两种分辨率的feature maps进行融合,获取不同分辨率的知识。
FFM
  下面选取了两张比较漂亮的融合图
请添加图片描述
请添加图片描述

Classifier

  使用上述的融合信息进行语义分割。部署两个DSConv和一个Conv2D,在FFM后增加少量的层能够增加准确度,并使用argmax代替计算开销大的softmax。

语义分割效果

GT

Ground Truth

  上图为GT,下图为model分割结果…
啊
  怎么说呢,分割结果还行,但对于比较细的物体,比如远处红绿灯的支撑杆,右边标识牌的杆,都未能很好地分割出来…

参考资料

[1] DSConv:https://blog.csdn.net/qq_22764813/article/details/97798978
[2] PPM:https://wenku.baidu.com/view/625afdce866a561252d380eb6294dd88d0d23df5.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值