【语义分割】ST_Unet论文 逐步代码解读
文章目录
一、代码整体解读
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-UAEkMEUl-1678889964762)(C:\Users\isipa\AppData\Roaming\Typora\typora-user-images\image-20230310143528765.png)]](https://i-blog.csdnimg.cn/blog_migrate/4885cd6ee1ee9da43fa9e45e5764a070.png#pic_center)
主要工程文件为这5个
分别作用为:
- 构造相应的deform 卷积
- DCNN的残差网络
- 编写相应的配置文件,可以改变相应参数
- 模型的主函数和主框架
- 模型的连接部分
二、辅助Decode代码框架
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-xB9iqcKa-1678889964763)(C:\Users\isipa\AppData\Roaming\Typora\typora-user-images\image-20230310145258457.png)]](https://i-blog.csdnimg.cn/blog_migrate/01907aa24735a6139e4bd36b1cdfe0fb.png#pic_center)
代码框架由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)]](https://i-blog.csdnimg.cn/blog_migrate/35f6d26100977ba1593bc48cf7befd04.png#pic_center)
整体思路是这样的,decode一共分为4个阶段
主要用空的数组来保存每一个阶段的输出值,与DCNN在每一个阶段通过RAM进行连接
在class TransResNetV2(nn.Module)函数中进行相应的具体编写
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-fFrLblTw-1678889964763)(C:\Users\isipa\AppData\Roaming\Typora\typora-user-images\image-20230310152428267.png)]](https://i-blog.csdnimg.cn/blog_migrate/c435a6ae2196760203b5b33335378060.png#pic_center)
相应的RAM操作示意图
An和Sn分别表示第n阶段主编码器和辅助编码器的输出
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Ua68cdLE-1678889964764)(C:\Users\isipa\AppData\Roaming\Typora\typora-user-images\image-20230310152957811.png)]](https://i-blog.csdnimg.cn/blog_migrate/27f5fb5e022acabe326f819063e93a46.png#pic_center)
一共组成分为4部分,将每一层都进行相应的整合,最后放在数组里面
2.2 Swin transformer 部分
将读入的数据进行打平操作

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

被折叠的 条评论
为什么被折叠?



