• 文章转自微信公众号:「机器学习炼丹术」

  • 作者:炼丹兄(已授权)

  • 联系方式:微信cyx645016617(欢迎交流共同进步)

  • 论文名称:“Dual Network Generative Adversarial Networks for Pediatric Echocardiography Segmentation”

0 准备工作

0.1 生词

  • Pediatric 儿童的
  • Pediatric echocardiography 小儿超声心动图
  • CHD : congenital heart disease 先天心脏病

0.2

1 综述

为了获得高质量的分割结果,目前临床上小儿超声心动图的分割主要由超声工作者手工完成,这既费时费力,又高度依赖于超声工作者的专业水平。为了解决这些问题,本文提出了一种新的卷积神经网络(CNN)结构,称为双网络一般对抗网络(DNGAN)。DNGAN由一个产生器和两个鉴别器组成,产生器采用并行对偶网络来提取更多有用的特征以提高性能。我们使用双重鉴别器来强制生成器学习更多的空间特征,并更准确地分割左心的边缘。

2 问题提出



图中是儿童的心脏的左心室和左心房的分割标注label,可以发现:左心房的变化比较明显,并且内壁会存在模糊,因此目前的对于四腔的分割存在一下挑战:

(1)因为噪音和模糊出现的边界不清晰;

(2)心脏的尺寸对于不同人是不同的;

(3)每一个心动周期心房和心室的变化是不同的。

3 模型结构

这个DNGAN的结构如上所示:包含一个生成器和两个鉴别器。

3.1 generator

由一个U-net和FCN并行构成,分别从输入图片中提取两种特征,然后特征进行像素相乘.

FCN输出的特征图为\(f_1\),U-net输出的特征图为\(f_2\),那么由generator输出的图像分割结果为\(F_G = f_1 \times f_2\).

3.2 discriminator

是一个六层的全卷积网络,然后分别用7,5,3作为卷积核的大小。卷积层后面跟着BN层和LeakReLU激活层。

使用的是multi-scale L1损失,类似于2014年的图像分割网络Richer conv net。

4 损失

4.1 generator损失

先回顾一下一般的GAN的损失函数:



在公式中:

  • x是real image
  • z是random import for generator
  • G(z)是生成的mask
  • D(x) 是判别起判断x是true的概率

再来看一下DNGAN的损失函数:

  • N为样本的数量;

  • \(x_n\)为某一张儿童超声心动图四腔图,\(y_n\)为对应的ground truth;

  • \(l_m\)是mean absolute error,也就是我们说的L1loss;



    这个可以看到,\(f_D(x)\)是discrimintor提取的特征,L表示discrimintor的层数,所以\(f_D^i(x)\)表示discrimintor第i层提取出来的特征图

  • \(l_{cos}\)就是常说的cross entropy;

  • \(l_{D_2}\)是第二个discriminitor的损失函数,也比较复杂我们来看一下,这个损失函数分辨的是:输入的是生成的mask还是真实的mask

5 数据描述

  • 数据集包含87个儿童超声心动图;
  • 搜集的是0到10岁的健康的儿童,每个视频至少包含24帧和一个完成的心动周期;
  • 随机选择67个视频,抽取了1765个图片作为训练集;剩下20个视频抽取451个视频作为测试集;
  • 原始图片的分辨率是1016x708或者636x432,所有的图片经过中心crop后变成704x704和448x448;

6 总结

1, 这篇文章的结果和过程存在疑点,文章中出现一处公式的疑似符号错误。

2, 文章中的并没有给出第二个discrimintor的loss使用MSE和BCE的平均值的原因,不确定是否之前就有文章已经讨论过这个样做的优势。从结果来看,使用GAN的框架来训练造成的提升并不高,反而提升分割精度的重点应该是分割网络的特征融合和宽度增加。

3, 文章使用GAN应用在儿童超声心脏病上的出发点很好,希望可以帮助更多的儿童摆脱先天性心脏病的困扰。

医学图像 | DualGAN与儿科超声心动图分割 | MICCAI的更多相关文章

  1. 医学图像分割-在3DSlicer中使用英伟达的AI辅助工具NvidiaAIAssistedAnnotation自动切割医学图像教程

    前期准备 下载3DSlicer并安装: 3DSlicer官网(http://www.slicer.org)或者直接下载(https://download.slicer.org),需要注意目前该插件只支 ...

  2. 深度学习(七)U-Net原理以及keras代码实现医学图像眼球血管分割

    原文作者:aircraft 原文链接:https://www.cnblogs.com/DOMLX/p/9780786.html DRIVE数据集下载百度云链接:链接:https://pan.baidu ...

  3. 华为云的研究成果又双叒叕被MICCAI收录了!

    摘要:2020年国际医学图像计算和计算机辅助干预会议(MICCAI 2020),论文接收结果已经公布:华为云医疗AI团队和华中科技大学合作的2篇研究成果入选. 语义/实例分割问题是近年来医学图像计算领 ...

  4. 【Semantic segmentation Overview】一文概览主要语义分割网络(转)

    文章来源:https://www.tinymind.cn/articles/410 本文来自 CSDN 网站,译者蓝三金 图像的语义分割是将输入图像中的每个像素分配一个语义类别,以得到像素化的密集分类 ...

  5. 语义分割(semantic segmentation) 常用神经网络介绍对比-FCN SegNet U-net DeconvNet,语义分割,简单来说就是给定一张图片,对图片中的每一个像素点进行分类;目标检测只有两类,目标和非目标,就是在一张图片中找到并用box标注出所有的目标.

    from:https://blog.csdn.net/u012931582/article/details/70314859 2017年04月21日 14:54:10 阅读数:4369 前言 在这里, ...

  6. lung 分割论文

    <4D Lung Tumor Segmentation via Shape Prior and Motion Cues > Abstract— Lung tumor segmentatio ...

  7. 基于FCN的图像语义分割

    语义图像分割的目标在于标记图片中每一个像素,并将每一个像素与其表示的类别对应起来.因为会预测图像中的每一个像素,所以一般将这样的任务称为密集预测.(相对地,实例分割模型是另一种不同的模型,该模型可以区 ...

  8. 2018年BRATS 肿瘤分割挑战赛第三名分割方案One-pass Multi-task Networks with Cross-task Guided Attention for Brain Tumor Segmentation

    首先说一下我对这个方案的看法,相比第一名与第二名的方案,这个方案的分割方法确实复杂的多,原论文是发表在MICCAI,后来砖投到IEEE image processing(SCI 1区),总体感觉给人一 ...

  9. 医学AI论文解读 |Circulation|2018| 超声心动图的全自动检测在临床上的应用

    文章来自微信公众号:机器学习炼丹术.号主炼丹兄WX:cyx645016617.文章有问题或者想交流的话欢迎- 参考目录: @ 目录 0 论文 1 概述 2 pipeline 3 技术细节 3.1 预处 ...

随机推荐

  1. Complete the sequence! POJ - 1398 差分方法找数列规律

    参考链接:http://rchardx.is-programmer.com/posts/16142.html vj题目链接:https://vjudge.net/contest/273000#stat ...

  2. 牛客练习赛63 C.牛牛的揠苗助长

    题意:有一个长度为\(n\)的数组,从第一天开始,第\(i\)天可以使\(i\)位置上的数\(+1\),当\(i=n\)时,下次从\(i=1\)再开始,另外,在每天结束时,你可以使任意一个位置上的数\ ...

  3. HTTP笔记2--简单的HTTP 协议

    HTTP概念 HTTP用于客户端和服务器之间的通信 客户端:请求访问文本或图像等资源的一端 服务器端而提供资源响应的一端 通过请求和响应的交换达成通信 HTTP 协议规定,请求从客户端发出,最后服务器 ...

  4. markdown 公式编写及不同平台公式转换

    1.markdown 用法及公式编写,这块就不再重复,已有很多官方平台的文档说明很完善 有道云markdown写作文档 在博客园中插入公式 markdown公式输入(特殊符号) markdown 特殊 ...

  5. K8S(16)集成实战-使用spinnaker进行自动化部署

    K8s集成实战-使用spinnaker进行自动化部署 1 spinnaker概述和选型 1.1 概述 1.1.1 主要功能 Spinnaker是一个开源的多云持续交付平台,提供快速.可靠.稳定的软件变 ...

  6. K8S(09)交付实战-通过流水线构建dubbo服务

    k8s交付实战-流水线构建dubbo服务 目录 k8s交付实战-流水线构建dubbo服务 1 jenkins流水线准备工作 1.1 参数构建要点 1.2 创建流水线 1.2.1 创建流水线 1.2.2 ...

  7. 2018牛客多校第一场 E-Removal【dp】

    题目链接:戳这里 转自:戳这里 题意:长度为n的序列,删掉m个数字后有多少种不同的序列.n<=10^5,m<=10. 题解:dp[i][j]表示加入第i个数字后,总共删掉j个数字时,有多少 ...

  8. C++ part9

    1.静态多态和动态多态 静态多态:函数重载,模板.编译期间完成. 动态多态:虚函数.运行期间实现. 2.模板的实现和优缺点 函数模板的代码并不能直接编译成二进制代码,而是要实例出一个模板实例.写了模板 ...

  9. uni-app 实战-打包 &#128230; App

    uni-app 实战-打包 App Android & iOS 证书 广告 refs xgqfrms 2012-2020 www.cnblogs.com 发布文章使用:只允许注册用户才可以访问 ...

  10. vue stop event bug

    vue stop event bug [Vue warn]: Error in v-on handler: "TypeError: e.prevntDefault is not a func ...