CSwin-PNet: CNN-Swin-Vit 组合金字塔网络用于超声图像中乳腺病变分割

news/2024/12/21 20:22:46/

ATTransUNet

  • 期刊分析
    • 摘要
    • 贡献
    • 方法
      • 整体框架
      • 1. Residual Swin Transformer block
      • 2. Interactive channel attention module
      • 3. Supplementary feature fusion module
      • 4. Boundary detection module
    • 实验
      • 1. 消融实验
      • 2. 对比实验
      • 3. 失败案例讨论
  • 可借鉴参考

期刊分析

期刊名: Expert Systems With Applications
期刊信息: IF: 8.5; JCR: Q1; 中科院一区
投稿周期:
本篇: Received 22 June 2022; Received in revised form 30 July 2022; Accepted 9 October 2022; 约四个月
网站统计:录用比例:16.5%; 审稿周期:约13.5月
其余信息: LetPub
该论文没有代码,Code coming soon!!🐕纯纯学习

摘要

目前,基于乳腺超声(BUS)图像的乳腺肿瘤自动分割仍然是一项具有挑战性的任务。**大多数病变分割方法是基于卷积神经网络(CNN)实现的,其在建立长程依赖关系和获取全局上下文信息方面存在局限性。**最近,基于Transformer的模型由于其强大的自注意力机制而被广泛应用于计算机视觉任务中来构建远程上下文信息,并且其效果比传统的CNN更好。在本文中,CNN 和 Swin Transformer 连接作为特征提取主干,构建用于特征编码和解码的金字塔结构网络。首先,我们设计了一个交互式通道注意(ICA)模块,使用通道注意来强调重要的特征区域。其次,我们开发了基于门控机制的补充特征融合(SFF)模块。 SFF模块可以补充特征融合时的特征,提高乳腺病灶分割的性能。最后,我们采用边界检测(BD)模块额外关注乳腺病变的边界信息,以提高分割结果的边界质量。实验结果表明,我们的网络在乳腺超声病变分割方面优于最先进的图像分割方法。



贡献

  1. 我们基于 Swin Transformer 构建残差 Swin Transformer 块(RSTB),对 CNN 提取的特征进行全局建模。
  2. 我们设计了一个基于通道注意机制的交互式通道注意(ICA)模块。它利用监督编码器特征输出编码器每一层的特征来关注肿瘤相关区域,并为这些特征通道分配较大的权重。
  3. 我们提出了一种基于门控机制的补充特征融合(SFF)模块。编码过程选择性地从编码器接收特征以补充编码器的特征信息。
  4. 我们在解码器的中间层添加边界检测(BD)模块来识别乳腺病变的边界图并获得具有高质量边界的病变特征。


方法

整体框架

在这里插入图片描述
1. 图画的稍微有点乱,自己动手画成U型结构会比较好理解;
2. 整个模型是对瓶颈层和解码器层进行重点优化的;
3. SFF在常规UNet中是上采样的位置(一个输入一个输出)却有两个输入,所以将其看成解码器模块会比较好理解
4. 基于3,则该模型的解码器模块有7层,重点对模型不同阶段的特征进行融合;
5. 模型也使用了深监督的思想,有四个输出;

1. Residual Swin Transformer block

在这里插入图片描述
在这里插入图片描述
1. 这一部分75%的内容在介绍VIT和Swin-VIt,只有最后说了一下RSTB的结构;
2. 就是一个预训练的Swin-Vit Block的堆叠使用以及类似于ASPP的多层融合;
3. 难点是如何优雅的将代码嵌入瓶颈层并且产生作用,没代码,真苦恼🐕

2. Interactive channel attention module

在这里插入图片描述
1. 就是一个通道注意力的使用,唯一不同的是输入是有两个

3. Supplementary feature fusion module

在这里插入图片描述
依旧是两个输入,重点是使用了不同层级的特征进行融合,同时使用(1-a)来进行权重提取,有一定的理解难度;

4. Boundary detection module

在这里插入图片描述
介绍如何得到分割目标的掩膜边界

实验

深度监督,混合损失:
在这里插入图片描述
Ls是瓶颈层输出损失;Lb是解码器模块输出损失;Lo是模型最后输出的损失;
两个公开的乳腺肿瘤分割数据集:
1. Yap, M. H., Pons, G., Marti, J., Ganau, S., Sentis, M., Zwiggelaar, R., Davison, A. K., & Marti, R. (2018). Automated breast ultrasound lesions detection using convolutional neural networks. IEEE Journal of Biomedical and Health Informatics, 22(4), 1218–1226, URL: https://doi.org/10.1109/JBHI.2017.2731873. 可直接根据连接下载

2. Al-Dhabyani, W., Gomaa, M., Khaled, H., & Fahmy, A. (2019). Dataset of breast ultrasound images. Data in Brief, 28, Article 104863, URL: https://doi.org/10.1016/ j.dib.2019.104863. 填写申请同意后下载

1. 消融实验

在这里插入图片描述
这个数据集我也在跑,为啥我的结果只能达到人家Baseline的效果啊,我想要人家的代码或者是人家的数据集划分情况🐕,挖坑,今晚就要,坐等回复🐕
从消融实验结果上来看,各个模块的效果提升明显;不过从最后的模型来看,DB在添加上去后的提升效果略弱
在这里插入图片描述
同时文章重点讨论了RSTD(瓶颈层Swin VIt的变体)的结构变化对模型的影响,得出两个结论
1. 带残差的效果会更好; 2. 使用数值相加比通道拼接的效果更好

2. 对比实验

在这里插入图片描述
1. 自己也跑了相同的数据集,即使是U-Net,U-Net++这些模型的效果我都没有跑过该文章中提供的数据,这个最有可能的原因是数据集的划分
2. 在Dataset1 上的结果明显优于Dataset2
在这里插入图片描述
在这里插入图片描述

3. 失败案例讨论

在这里插入图片描述
盲猜是审稿人让加上的,哈哈哈,贴一下失败案列的解释:

These cases neglect some regions of breast lesions on the ultrasound images. This indicates that it is difficult to accurately segment the lesion tissue when the lesion boundary is not clear and the lesion region is heterogeneous in intensity.
这些病例忽略了超声图像上乳腺病变的某些区域。这说明当病灶边界不清晰、病灶区域强度不均匀时,很难准确分割病灶组织。

可借鉴参考

  1. 阅读DS-TransUNet 2022
    Lin, A., Chen, B., Xu, J., Zhang, Z., Lu, G., & Zhang, D. (2022). DS-TransUNet: Dual swin transformer U-net for medical image segmentation. IEEE Transactions on Instrumentation and Measurement, 71, 1–15, URL: https://doi.org/10.1109/TIM. 2022.3178991.
    代码:https://github.com/TianBaoGe/DS-TransUNet
  2. 阅读SMU-net 2022
    Ning, Z., Zhong, S., Feng, Q., Chen, W., Zhang, Y., & Ning, Z. (2022). SMU-net: Saliencyguided morphology-aware U-net for breast lesion segmentation in ultrasound image. IEEE Transactions on Medical Imaging, 41(2), 476–490, URL: https://doi.org/10. 1109/TMI.2021.3116087.
  3. 阅读 UCTransNet 2022
    Wang, H., Cao, P., Wang, J., & Zaiane, O. R. (2022). UCTransNet: Rethinking the skip connections in U-net from a channel-wise perspective with transformer. In Proceedings of the AAAI conference on artificial intelligence, Vol. 36 (pp. 2441–2449). URL: https://doi.org/10.1609/aaai.v36i3.20144.
    代码:https://github.com/McGregorWwww/UCTransNet

http://www.ppmy.cn/news/1106108.html

相关文章

【Springcloud】elk分布式日志

【Springcloud】elk分布式日志 【一】基本介绍【二】Elasticsearch【1】简介【2】下载【3】安装【4】启动 【三】Logstash【1】简介【2】下载【3】安装【4】启动 【四】Kibana【1】简介【2】下载【3】安装【4】启动 【五】切换中文【六】日志收集 【一】基本介绍 (…

关于迁移学习的一点理解

举个栗子,老虎图片的数量非常少,可以让网络先学会识别猫的图片 1、预训练模型 内容:利用在 ImageNet1000 数据集训练好的模型,将所需的模型参数下载,嵌入到对应的网络架构中,使用对预训练模型的搭建。目前P…

数据库_之常用API的使用

数据库_之电商API MySQL C API 使用(基本函数) Mysql C API函数详解 MySQL的常用API 一个常用的程序调用MySQL数据库的时候通常都会调用以下API,下面来逐个分析. mysql_init() //函数原型 MYSQL *STDCALL mysql_init(MYSQL *mysql);这个API主要是用来分…

python main 函数-启动-传递参数 python 打包 exe C# 进程传参

Part1:Python main 传递参数 在Python编程中,我们经常需要从命令行或其他外部环境中获取参数。Python提供了一种简单而灵活的方式来处理这些参数,即通过main函数传参 1.python main 函数-启动-传递参数 test.py import sysdef main():# 获取命令行参…

多线程-锁的种类

1 作用 Java中的锁主要用于保障多并发线程情况下数据的一致性。在多线程编程中为了保障数据的一致性,我们通常需要在使用对象或者方法之前加锁,这时如果有其他线程也需要使用该对象或者该方法,则首先要获得锁,如果某个线程发现锁正在被其他线程使用,就会…

使用ECS和RDS部署WordPress,搭建个人博客并使用域名访问

目录 一、准备工作 1、准备ECS服务器 2、创建数据库账号和密码 二、部署环境 1、远程连接 2、安装Apache服务 3、部署WordPress 三、对博客的优化并使用域名访问 1、博客的设计优化 1.1 插件的使用 1.2 博客的设计介绍 2、使用域名访问 四、个人博客部署的心得 1…

表的内连接和外连接

表的连接是SQL中的一种操作,用于将两个或多个表中的数据按照某个条件进行关联。 内连接 使用内连接将两个表(Table1 和 Table2)进行连接: select * from Table1 inner join Table2 on Table1.id Table2.id;举例: -- 用普通的写法 select…

Linux命令200例:write用于向特定用户或特定终端发送信息

🏆作者简介,黑夜开发者,CSDN领军人物,全栈领域优质创作者✌。CSDN专家博主,阿里云社区专家博主,2023年6月csdn上海赛道top4。 🏆数年电商行业从业经验,历任核心研发工程师&#xff0…