EANet:用于医学图像分割的迭代边缘注意力网络

EANet:用于医学图像分割的迭代边缘注意力网络

Pattern Recognition【2022】
论文:https://www.sciencedirect.com/science/article/pii/S0031320322001170
代码:https://github.com/DLWK/EANet

背景

由于(1)医学图像目标的尺度多样性和(2)医学图像的复杂上下文环境,包括结构边界的模糊性、形状的复杂性和纹理的异质性,这仍然是一项具有挑战性的任务。为了全面应对这些挑战,我们提出了一种新的、有效的迭代边缘注意力网络(EANet),用于医学图像分割,步骤如下。首先,我们提出了一个动态尺度感知上下文(DSC)模块,该模块动态调整感受野以有效地提取多尺度上下文信息。其次,采用边缘注意力保持(EAP)模块来有效地去除噪声,并帮助边缘流专注于仅处理边界相关信息。最后,设计了一个多级成对回归(MPR)模块,将互补的边缘和区域信息相结合,以细化模糊结构。这种迭代优化有助于学习更好的表示和更准确的显著性图。

贡献

  1. 我们提出了一种新颖有效的迭代边缘注意力网络(EANet)来全面解决医学图像分割的挑战。所提出的EANet可以处理医学图像领域中对象的大规模变化结构边界的模糊性
  2. 我们设计了一个DSC模块来有效地自学习对象的最佳感受野,以捕获多尺度上下文信息,这可以提高所提出的EANet在处理对象大小和形状变化很大的复杂情况时的能力。
  3. 我们提出了一种可以有效提取目标边缘信息的EAP模块,该模块可以抑制低电平背景噪声并保留边缘相关信息。
  4. 我们进一步构建了一个MPR模块,该模块有效地利用了边缘和区域信息之间的互补性。这种多级特征之间的迭代优化有助于学习更好的表示和更准确的显著性图,尤其是它们的边界变得更细粒度
    在这里插入图片描述

实验

应用一个简单的随机水平翻转来增加数据

  1. LIDC-IDRI数据集:提取了结节核心对应的CT切片,并裁剪成96×96的斑块图像。我们总共获得了2629张肺结节的2D图像,用于评估我们的框架。为了进行评估,我们对所有方法进行了5倍的交叉验证。因此,我们在每个折叠处使用2104个图像进行训练,使用525个图像进行测试。
  2. 新冠肺炎CT分割数据集:仅由10张标记图像组成。将图像随机分为训练(50张图像)、验证(5张图像)和测试(45张图像)。我们通过将图像大小调整为352×352分辨率来预处理图像
  3. 肺结节分析(LUNA)竞赛2:这是进一步诊断肺结节疾病的基础。该数据集包含534个2D样本(512-512像素)和相应的标签图像,可以从官方网站免费下载。我们使用80%的图像作为训练集,其余20%作为测试集,并进行交叉验证。
  4. 胸部X射线(CXR)中进行肺部分割实验,这是目前用于肺部健康计算机辅助诊断(CAD)的最佳视觉介质。Montgomery Country(MC)数据集[48]:包含138张CXR图像。在我们的实验中,我们使用110张图像进行训练,其余28张图像进行测试。
  5. TN-SCUI 2020 challenge3提供,作为MICCAI 2020的一部分:该数据集由3644张来自美国患者的图像组成,包括不同分辨率的不同类型甲状腺病变。有经验的医生给结节的注释贴上标签。在我们的实验中,在训练之前,通过水平、垂直平移和随机旋转操作将数据集扩展到7288张图像。数据集分为:训练集(60%)、验证集(20%)和测试集(20%。我们通过将图像大小调整为512×512分辨率来预处理图像。
    在这里插入图片描述

方法

在这里插入图片描述

Dynamic scale-aware context module(动态规模感知上下文模块)

在这里插入图片描述
在瓶颈层加入DSC模块,由不同空洞率的空洞卷积和DFS组成,DFS提供注意力。空洞卷积用于捕获多尺度特征,DFS特征动态选择,由于相邻尺度之间的相关性

Edge attention preservation module(边界注意力保持模块)

在这里插入图片描述
输入是编码器的四个特征图,1x1卷积改变维度之后从低到高逐层细化,Residual Block提取特征,Gated Conv特征筛选,最后1x1卷积提取边界特征

损失函数

边界损失
在这里插入图片描述
分割损失
在这里插入图片描述
混合损失
在这里插入图片描述

Thinking

### 关于甲状腺结节分割的论文复现方法与代码 #### 背景介绍 医学图像分割是计算机辅助诊断的重要组成部分,尤其对于甲状腺结节检测而言,精确的分割能够显著提升临床决策的质量。EANet 提出了通过迭代边缘注意力机制来增强医学图像分割的效果[^1],而 MedSegDiff-V2 则利用扩散模型和变压器架构进一步提升了多模态医学图像分割的表现[^2]。 #### 数据集选择 在医疗领域中,甲状腺结节检测通常依赖高质量的数据集支持算法开发与验证。例如 TN3K 是专门设计用于甲状腺结节检测的任务数据集之一[^3]。因此,在复现相关工作时,建议优先选用此类公开可用的标准数据集作为基础资源。 #### 方法论概述 为了实现深度学习驱动下的甲状腺结节分割任务,可以采用如下几种主流技术路径: - **卷积神经网络 (CNN)** CNN 已经成为解决许多视觉识别挑战的核心工具。它可以通过提取局部特征并组合成全局描述符来进行目标定位及分类操作。如果希望快速入门,则可以从 U-Net 架构出发构建初步解决方案。 - **Transformer 结合 Diffusion Model** 更先进的策略可能涉及引入自注意机制以捕捉长距离依赖关系,并结合生成对抗网络的思想完成更精细的结果优化过程。MedSegDiff-V2 正是在此方向上取得突破进展的一个实例。 - **损失函数的设计** 针对二元掩码预测场景下常用的 Dice Loss 或者 BCEWithLogitsLoss 可能不足以充分表达复杂结构间的关系特性;此时可考虑加入额外项比如边界正则化约束条件等改进版形式。 #### 示例代码片段 下面给出一段基于 PyTorch 的简单实现框架供参考: ```python import torch from torchvision import models, transforms from torch.nn import functional as F class ThyroidSegmentationModel(torch.nn.Module): def __init__(self): super(ThyroidSegmentationModel, self).__init__() backbone = models.resnet18(pretrained=True) layers = list(backbone.children())[:-2] self.encoder = torch.nn.Sequential(*layers) def forward(self, x): features = self.encoder(x) output_size = tuple([s * 4 for s in features.shape[-2:]]) # Upsample by factor of 4 upsampled_features = F.interpolate(features, size=output_size, mode='bilinear', align_corners=False) logits = ... # Define your decoder head here to produce final predictions. return logits ``` 上述代码仅展示了一个简化版本的编码器部分定义方式,实际应用当中还需要补充完整的解码流程以及相应的训练逻辑等内容。 #### 总结 综上所述,无论是传统 CNN 还是最新的 Transformer 加持方案都可以有效应对甲状腺结节分割难题。然而具体选型还需综合考量项目需求、计算资源限制等因素后再做决定。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值