• One Network To Segment Them All: A General, Lightweight System for Accurate 3D Medical Image Segmentation(理解)


    原文链接

    扫码关注下方公众号:"Python编程与深度学习",领取配套学习资源,并有不定时深度学习相关文章及代码分享。


    今天分享一篇发表在MICCAI 2019上的论文:One Network To Segment Them All:
    A General, Lightweight System for Accurate 3D Medical Image Segmentation (原文链接:[1],代码链接:[2])。

    1 研究背景

    近年来深度学习技术在医学分割任务上取得了成功,然而通常对于一个特定的任务,都需要仔细设计一个复杂的模型去拟合,并且在训练的过程中需要花费大量的成本以及加入足够合适的技巧。这种做法虽然可以解决某一个特定的任务,但是当有了新的需求时,又需要从头重新设计模型并进行训练。本文提出了一个可以用于医学影像的通用分割框架multi-planar U-Net (MPUnet),这个框架不需要根据特定任务信息进行调整,也不需要人工的交互,就可以适应不同分割任务,并且都能达到很好的效果。

    上述的单模型解决多任务问题,有一个对应的大规模数据集:Medical Segmentation Decathlon[3]

    2 方法

    2.1 整体流程

    如上图(Fig.1)所示,对于一个输入图像,取不同角度的2D截面作为多个视图数据,而后分别通过修改版的2D U-Net预测分割图,最后通过Fusion model将多个视图的结果综合起来得到最后的预测结果。后面将对多视图数据选取、数据增强、2D-UNet结构、Fusion model、预处理和后处理分别进行详细介绍。

    2.2 多视图数据选取

    首先将模型表示为$f(x; heta)$,$x$为其输入的多通道2D图像($xin mathbb{R}^{w imes h imes c}$),输出是$K$个类别的分割图$Pinmathbb{R}^{w imes h imes K}$。如上图(Fig.2)所示,一共选取$i$个视图的数据,表示为$V={v_1,v_2,cdots,v_i}$,实质上就是在不同空间角度上进行截面的选取。最后对于一个视图中的所有截面预测结果堆叠起来就形成了3D预测结果,那么每个视图对应的3D预测结果为$mathbf{P}={P_vinmathbb{R}^{w imes h imes d imes K}|vin V}$.

    2.3 数据增强

    采用多视图的输入数据其实可以等同于将数据在3D空间中做仿射变化的效果,是一种在3D空间中的数据增强。此外,在训练的2D图像上还采用了非线性变换来做数据增强。对于输入图像和标签图,分别采用tri-linear和nearest-neighbour插值方法进行重采样,以确保所有输入图像像素点间的距离是一致的。

    2.4 2D-UNet结构

    网络结构主要基于U-Net[4],做了如下几点修改:
    1. 在卷积层后加入了batch normalization层
    2. 对于上采样层,修改为卷积层+最近邻上采样

    2.5 Fusion model

    Fusion model实质上是将不同视图的结果进行加权投票。对于多个视图的3D预测结果(2D截面预测结果堆叠而成),需要采用Fusion model来进行综合,其过程可以表示为:$mathbb{R}^{|V| imes K} ightarrowmathbb{R}^K$。具体通过$z(x)_k=sum_{n=1}^{|V|}W_{n,k}cdot p_{n,x,k}+eta_k$进行加权投票。其中$p_{n,x,k}$表示第$n$个视图中第$x$个体素预测为第$k$个类别的概率值,$Winmathbb{R}^{|V| imes K}$表示每一个视图中产生每一个类别预测结果所占的权重,$etainmathbb{R}^K$是对应的偏置参数。

    2.6 预处理和后处理

    由于该模型的目标是可以适应不同的数据集,因此使用了尽可能少的图像相关处理技术,以防止过拟合于某种数据分布。对于预处理,只根据前景体素的中位数和四分位范围计算标准化的参数。此外,因为文中认为后处理是典型地依赖于特定任务的,因此没有采用任何后处理技术。

    3 实验结果

    这里我只给出论文中的部分实验结果,具体的实验结果分析以及实验和参数的设置请看原文。这篇文章还在附录中给了很多实验补充。

     

     

     4 参考资料

    [1] https://arxiv.org/pdf/1911.01764v1
    [2] https://github.com/perslev/MultiPlanarUNet
    [3] http://medicaldecathlon.com/
    [4] U-net: Convolutional networks for biomedical image segmentation.

  • 相关阅读:
    联合主键有什么用?
    在Spring Boot中使用数据库事务
    Integer.valueOf
    Linux上安装Zookeeper以及一些注意事项
    一个开源的会议管理系统,适合初学者练手(老司机请忽略)
    一个开源的会议管理系统,适合初学者练手(老司机请忽略)
    IntelliJ IDEA中创建Web聚合项目(Maven多模块项目)
    从高考到程序员之毕业流水帐
    Nginx+Tomcat搭建集群,Spring Session+Redis实现Session共享
    Shiro中的授权问题(二)
  • 原文地址:https://www.cnblogs.com/CZiFan/p/13253297.html
Copyright © 2020-2023  润新知