Deep Learning for Medical Image Segmentation: Tricks, Challenges and Future Directions


前言

本文旨在分析一下作为医学图像分割入门的综述,可以比较直观和全面的了解一些用于医学图像分割领域的 tricks。

原论文链接:Deep Learning for Medical Image Segmentation: Tricks, Challenges and Future Directions


1. Abstract & Introduction

1.1. Abstract

最近的医学图像分割领域其主要贡献往往侧重于网络架构,训练策略和损失函数方面的提升,而无意中忽略了一些边缘细节(也被称作技巧)。

在这篇文章中,我们收集了不同模型实现阶段(即预训练模型、数据预处理、数据增强、模型实现、模型推理和结果后处理)的一系列医学图像分割的技巧。

1.2. Introduction

本文将MedISeg模型分为六个实施阶段,即预训练模型、数据预处理、数据增强、模型实施、模型推理和结果后处理。

对于每个技巧,本文在两个典型的分割基线模型,即 2D-UNet 和 3D-UNet 的帮助下,在四个医学图像分割数据集,即 2D ISIC 2018[、2D CoNIC、3D KiTS19 和 3D LiTS 上,实验探索其有效性。

下图是所调查的MedISeg技巧及其潜在关系的图示:
在这里插入图片描述

本文的主要贡献可以概括为以下几点:

  • 本文收集了一系列针对不同实施阶段的 MedISeg 技巧,并通过实验探索了这些技巧在一致的 CNNs 基线模型上的有效性。
  • 本文明确阐明了这些技巧的有效性,在二维和三维医学图像数据集上的大量可靠的实验结果弥补了 MedISeg 中的实施疏忽。
  • 本文开源了一个强大的 MedISeg 资源库,其中包括丰富的分割技巧,而且每个技巧都具有即插即用的优势。
  • 这项里程碑式的工作将促进后续工作,在公平环境下比较 MedISeg 模型的实验结果。
  • 本文的工作将为未来广泛的医学图像处理尤其是分割挑战提供实际指导。

2. Preliminaries

2.1. Baselines

  • 2D-UNet
    • 2D-UNet 由一个编码器网络和一个解码器网络组成
      • 编码器网络有四个空间分层阶段。每个阶段包括两个 3×3 的卷积层,然后是一个 ReLU 激活函数和一个全局最大池化层(stride = 2)
      • 解码器网络以编码器网络的输出为输入,也有四个阶段,对应于相同的空间编码器阶段
  • 3D-UNet
    • 3D-UNet 的网络结构与 2D-UNet 几乎相同,它由一个 3D 编码器网络和一个 3D 解码器网络组成
      • 在每个解码器阶段中,一个二维转置卷积算子首先通过双线性插值操作对图像进行 2 倍上采样
      • 然后依次部署两个 3×3 卷积层和一个 ReLU 激活函数
      • 特别是在最后一个解码网络层中,输出特征图的通道大小通过 2×2 卷积层分配给所使用的数据集的类大小
  • 3D-UNet 和 2D-UNet 在实现上的区别是:
    • 2D卷积层被3D卷积层取代
    • 在编码器阶段的同一层和解码器阶段之间增加了一个横向连接,其空间和通道大小相同
    • 在输入图像上实现了 normalization layer

2.2. Datasets

  • 2D ISIC 2018
    • ISIC 2018是计算机辅助诊断领域最具代表性和挑战性的二维皮肤病变边界分割数据集之一,它由 2,594 张 JPEG 皮肤镜图像和 2,594 张 PNG GT 图像组成

在这里插入图片描述

  • 2D CoNIC
    • 图像来自 Lizard 数据集,它包括六个核类别(即 “上皮细胞”、“结缔组织细胞”、“淋巴细胞”、“浆细胞”、"中性粒细胞 "和 “嗜酸性粒细胞”)和一个 “背景”。
      在这里插入图片描述
  • 3D KiTS19
    • 总共公开提供了210张高质量的三维腹部计算机断层扫描图像的注释病人的图像
      在这里插入图片描述
  • 3D LiTS
    • LiTS提出了一个基于对比度增强的腹部计算机断层扫描的基准。LiTS包含130张用于训练的扫描图像和70张用于测试的扫描图像。
      在这里插入图片描述

3. Methods and Experiments

3.1. Pre-Training Model

预训练模型(即用预训练的权重作为模型微调的初始化参数)提供了有利的参数,这样训练收敛就容易加快,潜在的模型可以获得很强的泛化能力,不同的预训练模型有明显不同的影响。

现在使用的大体量的神经网络,要向从头训练到一个可以使用的程度,往往需要千万级别的数据集,而医学领域的数据又不容易获取(涉及病人隐私等问题),所以在医学图像分割任务中经常使用预训练权重。

预训练权重可以分为两个大类:完全监督的权重和自监督权重。

  • PyTorch official weights
    • torchvision.models 提供的骨干预训练权重,这些预训练的权重是通过在 ImageNet 1k数据集上训练用于单标签图像分类任务的相应骨干网络而获得的,其中 1k 表示该数据集由 1000 个常见场景的类组成。
  • Model-oriented ImageNet 1k weights
    • 除了 PyTorch 官方预训练的权重,模型创建者通常也会在 ImageNet 上发布预训练的权重
    • 例如,面向模型的 ImageNet 1k 权重可以通过在 ImageNet 1k 数据集上训练 ResNet-50 进行图像分类而获得
  • Model-oriented ImageNet 21k weights
    • ImageNet 21k 是一个更加通用和全面的数据集版本,它总共有大约 21,000 个对象类别,用于(弱监督或半监督或完全监督)图像分类。
    • 因此,ImageNet 21k 上的训练权重更有利于提高下游计算机视觉模型的识别性能
  • SimCLR weights
    • SimCLR 证明了在图像表征和对比学习损失之间引入可学习的非线性转换可以极大地提高模型的表征质量
    • 三个实施步骤
      • 首先将输入图像分组为一些 image patches
      • 然后对不同批次的 image patches 实施不同的数据增强策略
      • 最后对模型进行训练,以获得同一 image patches 不同增强后的相似结果,并相互排除其他结果
  • MOCO weights
    • MOCO 是经典的自我监督对比学习方法之一
    • 它旨在解决存储体中采样特征不一致的问题
  • Model genesis (ModelGe) weights
    • ModelGe 是一种先进的自我监督的模型预训练技术,通常由四种变换操作(non-linear, local pixel shuffling, out-painting, and in- painting)组成,用于计算机断层扫描和磁共振成像图像的单幅图像修复

在这里插入图片描述

3.2. Data Pre-Processing

由于深度 CNN 的 3D 医学图像的数据特异性,数据预处理对于获得令人满意的识别性能是很有必要的。在本小节中主要讨论 3DUNet 中常用四种图像预处理技术的有效性。这四种策略分别为:patching , oversampling(OverSam) , resampling (ReSam) , and intensity normalization (IntesNorm)

  • Patching
    • 一些特定类型的医学图像(例如磁共振图像和病理图像)其往往在空间尺寸上非常大,并且在定量方面缺乏足够的样本。因此无法使用这些图像直接训练医学图像分割样本。
    • 通常的做法是将这个图像重新采样为较小空间尺度的不同 image patches,从而可以用更少的 GPU 内存成本来实现这个模型,并且可以更好的训练这个模型。
    • 具体来说 Patch 的大小是影响模型性能最重要的因素之一。
  • OverSam
    • 为了解决正负样本之间的类不平衡问题,过采样策略得以提出。
    • OverSam 策略主要用于少数样本类。
    • 目前存在的过采样策略包括:random oversampling, syn- thetic minority oversampling (SMOTE), borderline SMOTE, and the adaptive synthetic sampling
  • ReSam
    • 重采样策略通过机器学习模型提高所用数据集的表示能力。由于可用的样本能力有时是有限和异构的,因此可以通过随机OR非随机重采样策略获得更好的子样本数据。
    • 在其实现过程中,重采样主要包括4个步骤:
      • 间距插值
      • 窗口变换
      • 获取有效的掩码范围
      • 子图像的生成
  • IntesNorm
    • IntersNorm 是一种特定的标准化策略,主要用于医学图像。通常是有两种方法
      • 所有模态的 Z-Score
      • 计算机断层扫描图像

在这里插入图片描述

3.3. Data Augmentation

对于医学图像,数据增强通常用于处理定量训练样本不足的问题,可以用来缓解过拟合问题,赋予模型强大的泛化能力,并赋予鲁棒性。

用于MedISeg的数据增强方案主要可分为以下两类:基于几何变换的数据增强(GTAug),以及基于生成对抗网络(GAN)的数据增强(GANAug)

  • GTAug
    • GTAug 被提出用于消除训练图像中某些几何对象变化的影响,例如位置、比例和视角
    • 普遍使用的 GTAug 包括翻转、裁剪、旋转、平移、颜色抖动、对比度、模拟低分辨率、高斯噪声注入、混合图像、随机擦除、高斯模糊、混合和剪切混合
  • GANAug
    • 数据增强的内在前提是将领域知识或其他增量信息引入训练数据集
    • GANAug 可以被视为一个损失函数,它专注于引导网络生成一些接近源数据集域的真实数据

在这里插入图片描述

3.4. Model Implementation

一个 MedISeg 模型通常由许多实现细节组成,每一个不受关注的变换都可能对性能产生潜在的影响。

本文选择了三类常用的实施技巧,并探索其分割的有效性。这三类是:深度监督(DeepS);类平衡损失(CBL),包括四个损失函数(CBLDice, CBLFocal, CBLTvers and CBLWCE);在线硬例挖掘(OHEM);以及实例规范化(IntNorm)

  • DeepS
    • 深监督是一种辅助学习技巧。它通过直接或者间接的方式在一些中间隐藏层添加辅助分类器或者分割器来实现,从而对骨干网络进行监督,它可以用来解决梯度消失或者收敛速度慢的问题,而对于图像分割,这个技巧通常通过添加图像级分类损失来实现的。
  • CBL
    • CBL 通常用于学习一般类权重,即每个类的权重仅与对象类别相关。与类不平衡数据集上的一些传统分割损失函数(例如,交叉熵损失)相比。CBL 可以提高模型的表示能力。
    • 在使用的数据集中,CBL 引入有效样本数来表示所选数据集的预期体积表示,并根据有效样本数而非原始样本数对不同类别进行加权。
  • OHEM
    • OHEM的核心思想是首先通过损失函数过滤掉一些困难学习样本(即图像、对象和像素)。这些选定的困难样本都对识别任务有很大影响。
    • 然后,将这些样本应用于模型训练过程中的梯度下降。
  • IntNorm
    • IntNorm 是一种流行的标准化算法,适用于对单个像素有更高要求的识别任务。在其实现中,在计算统计归一化时,考虑了每个单个样本和样本的单个通道的所有元素。
    • 在医学图像领域,使用 IntNorm 的一个重要原因是,在训练过程中,批次大小通常被设置为一个较小的值(尤其是对于3D图像)。

在这里插入图片描述

3.5. Model Inference

使用推理技巧是提高识别性能的一个重要策略,本文中主要探讨两种常用的推理技巧即测试时间增强(TTA)和模型集成(Ensemble)

  • TTA.
    • TTA 是目前在模型推理阶段流行的一种数据增强机制,用于提高模型的准确性。TTA可以用来提高识别性能而不需要训练,所以它有可能是一个即插即用的工具。同时,它可以提高模型校准的能力,这对视觉任务是有益的。
  • Ensemble.
    • Ensemble 策略旨在联合多个训练有素的模型,基于一定的合集机制在测试集上实现多模型融合的结果,这样最终的结果可以从每个训练有素的模型中学习,提高整体泛化能力
    • 常用的模型 ensemble 方法有 voting, averaging, stacking, and non-cross-stacking (blending)

在这里插入图片描述

3.6. Result Post-Processing

后处理操作的目的是通过不可学习的方法来提高模型性能,例如可以通过聚集全局信息来细化分割结果。包括两种结果后处理方式为最大分量抑制(ABL-CS)和小面积去除(RSA)

  • ABL-CS
    • ABL-CS旨在基于生物体物理特性的知识去除分割结果中的一些错误区域
  • RSA
    • 在医学图像分割领域中成像协议通常不变,因此每个实例分割掩模的面积也保持不变。基于此物理特性,我们可以设置像素级阈值,以移除所获得的分割掩模中太小(即,低于给定阈值)的一些实例掩模。

在这里插入图片描述


总结

博客参考

猜你喜欢

转载自blog.csdn.net/HoraceYan/article/details/128483969