利用小型数据集m2nist进行语义分割——(二)分割网络框架设计

利用小型数据集m2nist进行语义分割——(二)分割网络框架设计

微信公众号:幼儿园的学霸

目录

前言

有了数据集,接下来需要针对数据集设计神经网络框架便于后续代码的编写。由于在工作项目中是以MobileNet为基础,自然而然在设计语义分割网络框架时便复用了MobileNeV2的倒残差网络结构,另外由于第一次编写分割网络,对网络结构部分没有太多经验,参考了LinkNet网络结构。

网络结构

整体结构

LinkNe网络结构如下图所示:
LinkNet网络结构
该网络有什么优点,为什么有效没有研究过。在练手的项目中,拿来就用罢了。

从图中可以看到LinkNet分为编码和解码两个阶段。编码阶段用于提取图像特征,其作用和图像分类以及目标检测时的backbone一致;解码阶段是将encoder输出的特征图上采样恢复至原始输入尺寸,从而恢复图像的原始信息,上采样可以采用转置卷积、resize、unpooling等方式实现。

LinkNet网络结构中一共有4个编码器和4个解码器。pictures/features经过1次编码器后,输出尺寸变为输入尺寸的1/2,因此经过编码阶段后,输出特征尺寸变为原来的1/(2*2*2*2)=1/16。而解码器对输入进行一次上采样,输入经过解码器后,其尺寸变为原来的2倍。因此输入经过4次编码及4次解码,输出尺寸和原始输入一致。

借鉴LinkNet网络,我设计的分割网络框架如下图所示:
m2nist-sge语义分割网络结构

该网络和LinkNet相比,进行了部分修改:1)编码器进行了重新设计,稍后会介绍;2)原始的LinkNet网络中,编码阶段的特征和解码阶段的特征是采用叠加(add)的方式,我将其修改为特征融合(concatenate)的方式。

需要注意的是,由于网络进行了4次下采样,因此该网络的输入尺寸是(64,96)而非(64,84),这点在编写代码时需要小心。

编码器设计

MobileNetV2的倒残差网络结构如下图所示:
MobileNet倒残差网络结构

基于此,我随便写了一个编码器,以替换LinkNet中的编码器,结构如下图所示:
编码器
编码器由下采样模块和倒残差模块两部分组成。下采样模快采用深度可分离卷积实现,减少计算量。

解码器设计

解码器和LinkNet中的解码器设计一致,结构如下所示:
解码器

参考资料

1.LinkNet 笔记



下面的是我的公众号二维码图片,欢迎关注。
图注:幼儿园的学霸

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值