【语义分割】ST_Unet论文 逐步代码解读

本文详细解读了ST_Unet论文的代码实现,包括混合Transformer和CNN的模型设计,Swintransformer的结构及功能,以及FCM部分的下采样操作。文章介绍了编码和解码过程,重点分析了基本卷积模块、RAM模块和输出参数的构建。整个模型通过编码器和解码器的协同工作,实现图像的语义分割。

【语义分割】ST_Unet论文 逐步代码解读



一、代码整体解读

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-UAEkMEUl-1678889964762)(C:\Users\isipa\AppData\Roaming\Typora\typora-user-images\image-20230310143528765.png)]

主要工程文件为这5个

分别作用为:

  • 构造相应的deform 卷积
  • DCNN的残差网络
  • 编写相应的配置文件,可以改变相应参数
  • 模型的主函数和主框架
  • 模型的连接部分



二、辅助Decode代码框架

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-xB9iqcKa-1678889964763)(C:\Users\isipa\AppData\Roaming\Typora\typora-user-images\image-20230310145258457.png)]

代码框架由3部分组成,encode,decode和decode中将图像还原成语义分割预测图

  • Transformer(config, img_size) 组成编码部分,包含主编码的DCNN和辅助的transformer
  • DecoderCup(config)组成解码部分,图像还原为[N,64,128,128]
  • SegmentationHead将图像变成6分类的[N,6,256,256]的图像

2.1 混合transformer和cnn的模型

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-C1JDIQD6-1678889964763)(C:\Users\isipa\AppData\Roaming\Typora\typora-user-images\image-20230310150618037.png)]

整体思路是这样的,decode一共分为4个阶段

主要用空的数组来保存每一个阶段的输出值,与DCNN在每一个阶段通过RAM进行连接

在class TransResNetV2(nn.Module)函数中进行相应的具体编写

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-fFrLblTw-1678889964763)(C:\Users\isipa\AppData\Roaming\Typora\typora-user-images\image-20230310152428267.png)]

相应的RAM操作示意图

An和Sn分别表示第n阶段主编码器和辅助编码器的输出

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Ua68cdLE-1678889964764)(C:\Users\isipa\AppData\Roaming\Typora\typora-user-images\image-20230310152957811.png)]

一共组成分为4部分,将每一层都进行相应的整合,最后放在数组里面


2.2 Swin transformer 部分

将读入的数据进行打平操作

评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值