首先说一下我对这个方案的看法,相比第一名与第二名的方案,这个方案的分割方法确实复杂的多,原论文是发表在MICCAI,后来砖投到IEEE image processing(SCI 1区),总体感觉给人一种花里胡哨的感觉,但是看分割结果,却着实让人满意。以下将解析此论文。

摘要

肿瘤分割的一个主要难点就是类别不平衡,肿瘤部分占整个脑的比例太小以至于难以精准的分割。传统解决类别不平衡的方法是采用级联的网络,一步一步的从粗到精的分割。先不考虑此网络的性能如何,就网络结构而言级联网络结构复杂,而且忽略了模型的相关性。针对此缺陷,本文提出了一种轻量级(模型参数是MC的三分之一)一步多任务分割模型(One-pass Multi-task Networks,OM-Net)。此模型有以下特点:首先,OM-Net将单独的分割任务集成到一个深度模型中,该模型由学习联合特征的共享参数以及学习区分性的特定任务参数组成 特征。 其次,为了更有效地优化OM-Net,我们利用任务之间的相关性来设计在线训练集传输策略(training data strategy)和基于课程学习的训练战略。 第三,我们进一步提出任务之间的共享预测结果,使我们能够设计一个跨任务引导注意力(CGA attention)模块。最后提出了一种有效的后处理方法:K-means

1

传统的级联模型(MC)往往是由多个单独的网络组成,大多数的分割步骤是:首先分割出感兴趣的区域(ROI),然后在感兴趣的区域进行精准分割,虽然此方法能够缓解肿瘤的类别不平衡因素,但是还是有很多缺陷:首先是MC需要训练多个网络,增加了复杂性;其次,训练集是相互独立的,忽略了多个模型之间的相关性。最后,缺少多个任务之间的相互作用,并且计算成本高。所以,提出了OM-Net(多任务集成,多任务相互作用,training data strategy,课程学习,单步预测,CGA)

将三个任务整合到一个模型当中,加强了训练阶段任务之间的相互作用,并且在预测阶段只需要一步的计算即可预测,不需要多步预测。并且采用training data strategy共享加强数据集之间的相互作用,采用课程学习的方式,根据任务的那一程度逐步将任务将如到网络中。采用CGA attention机制,加强了对重要信息的提取,抑制了不重要的信息。并且采用k-means的后处理的方式,对分割结果又一定的提升。

2

A.综述

介绍数据集与前人的工作。

B proposed attention

目前主流有三种attention机制,分别可以参考https://blog.csdn.net/qq_41639077/article/details/105161157?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.nonecase&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.nonecase。相比SE attention而言,SE块基于每个通道中所有体素的平均响应,并使用单个权重重新校准每个通道,而不管这些体素属于哪个类别

3 方法

A.

采样获得数据集:(1)随机的在脑部区域进行采样,此时有5个类别:三个肿瘤类别,一个正常脑组织,一个背景。在预测时,把三个肿瘤的预测图进行相加获得粗分割图。(2)对coarse tumor mask 扩展5个体素以减少假阴性, 训练数据在扩张的真实的完整的肿瘤区域内随机取样(3)训练数据在扩张的真实的肿瘤核心区域内随机采样。

由于缺乏上下文信息,补丁中边界体素的分割结果可能不准确,采用重叠切片策略:https://blog.csdn.net/qq_34759239/article/details/79209148?tdsourcetag=s_pcqq_aiomsg,在本文中,仅仅预测中心区域的20*20*5的区域,抛弃对边界体素的预测。

B.

OM-Net:

特点(多任务集成,多任务相互作用,training data strategy,课程学习,单步预测,CGA),满足一下条件,启动training data strategy(但是在inference阶段,数据融合,数据迁移都去掉)

C.Cross-task Guided Attention

OM-net网络的由粗-精的分割可以看做是spatial attention,本文为了提高OM-Net的性能,提出了;另一种channel attention机制-----CGA。

在SE块中的全局平均池(GAP)操作忽略了输入补丁中每个类的体积的巨大变化。 我们通过计算特定类别区域而不是整个补丁中的统计数据来解决这个问题。 然而,在我们到达最终分类层之前,普通CNN的特定类别区域是未知的;因此,这是一个鸡和蛋的问题 。 幸运的是,OM-Net允许我们通过在任务之间共享预测结果来预先估计特定类别的区域(前面任务的分割结果会作用于后面的任务)

pt用了两次,第一次是为了利用特定类别的概率,第二次是为了减小St,Sn对tumor与non-tumor的敏感性。

D.后处理

1)移除满足下式的鼓励的集群,

TV OL= min(2000, 0.1 ×Vmax),Vmax表示最大联通的肿瘤区域的体积。此方式对DIce提升较少
2)非增强肿瘤容易被误分类成水肿,

If vole/volt< 0.1, vole(n)/volt(n) <0.05, and vole(n) < 1000,启动k-means,此方式显著提高Dice
通过一系列的对照试验,试验表明,OM-Net(CGA)性能很强大。
总体来说,此方法十分复杂(晕)
 
转载请标明出处,谢谢

2018年BRATS 肿瘤分割挑战赛第三名分割方案One-pass Multi-task Networks with Cross-task Guided Attention for Brain Tumor Segmentation的更多相关文章

  1. 语义分割之Dual Attention Network for Scene Segmentation

    Dual Attention Network for Scene Segmentation 在本文中,我们通过 基于自我约束机制捕获丰富的上下文依赖关系来解决场景分割任务.       与之前通过多尺 ...

  2. arcgis 按面积分割, 按比例分割面积,按等份批量面积分割工具

    arcgis 按面积分割, 按比例分割面积,按等份批量面积分割工具 视频下载:https://yunpan.cn/cvujkpKIqwccn  访问密码 e9f4

  3. 图片像素对比OpenCV实现,实现人工分割跟算法分割图像结果的对比

    图片对比,计算不同像素个数,已经比率.实现人工分割跟算法分割图像结果的对比,但是只能用灰度图像作为输入 // imageMaskComparison.cpp : 定义控制台应用程序的入口点. // / ...

  4. ccc数据库的水平分割和垂直分割

    在数据库操作中,我们常常会听说这两个词语:水平分割和垂直分割.那么到底什么是数据库的水平分割,什么是数据库的垂直分割呢?本文我们就来介绍一下这部分内容. 1.水平分割: 按记录进分分割,不同的记录可以 ...

  5. SilverLight:布局(2)GridSplitter(网格分割)垂直分割、水平分割

    ylbtech-SilverLight-Layout: 布局(2)GridSplitter(网格分割)垂直分割.水平分割 A, Splitter(分割)对象之 GridSplitter(网格分割)1: ...

  6. 2018年星际争霸AI挑战赛–三星与FB获冠亚军,中科院自动化所夺得季军

    雷锋网 AI 科技评论消息,2018 年 11 月 13-17 日,AAAI 人工智能与交互式数字娱乐大会 (AI for Interactive Digital Entertainment) 在阿尔 ...

  7. 【分割平面,分割空间类题】【HDU1290 HDU2050】

    HDU 2050 折线分割平面 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) ...

  8. PCL中分割_欧式分割(1)

    基于欧式距离的分割和基于区域生长的分割本质上都是用区分邻里关系远近来完成的.由于点云数据提供了更高维度的数据,故有很多信息可以提取获得.欧几里得算法使用邻居之间距离作为判定标准,而区域生长算法则利用了 ...

  9. Leetcode. 回文字符串的分割和最少分割数

    Q1: 回文字符串的分割 Given a string s, partition s such that every substring of the partition is a palindrom ...

随机推荐

  1. Python抽象类以及元类

    抽象基类: 继承的约束与协议 __doc__ = """ 抽象基类: 继承的约束与协议 # 抽象基类 --- 有点java的味道,也有点golang的味道,继承,协议,接 ...

  2. MyBatis运行流程及入门第一个程序

    1. mybatis是什么? MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了google code,并 ...

  3. 2 个步骤为 VSCode 配置工程头文件路径!

    我用 VSCode 来 Coding,这个编辑器需要自己配置头文件路径,就是自动建立一个 c_cpp_properties.json 文件来管理头文件路径,然后需要用哪些库就手动加上即可,方法很简单, ...

  4. js循环练习

    var a=1; while(a>0){ var b=prompt('input number'); if(b>a){ alert('big'); } else if(b<a){ a ...

  5. C++中类成员的访问控制

    结论 首先给出结论,请看下图,看图说话最容易理解了. 类眼中的自己 类中定义的所有成员,不论是以public, protected还是private修饰,对类自身而言,它们都是可见的. 对象眼中的类 ...

  6. Calculating a “Row X of Y”

    显示 “Row X of Y,” ,X是当前行,Y是总行数,  那就是 ROW_NUMBER(ORDER BY stor_id) of Count(*) OVER()此处还是以样例数据库 pub 为例 ...

  7. 利用VS自带发布功能实现web项目快速部署

    你还在使用最原始的方法部署服务器吗?还在把项目文件全部复制然后黏贴到服务器上?这种方法太low而且又慢又不安全(存在源码泄露等安全性问题),如果你是这样,那你自己肯定也为此烦恼不已. 下面我所要讲到的 ...

  8. 3.kubernetes的CNI网络插件-Flannel

    目录 1.1.K8S的CNI网络插件-Flannel 1.1.1.集群规划 1.1.2.下载软件.解压.软链接 1.1.3.最终目录结构 1.1.4.拷贝证书 1.1.5.创建配置 1.1.6.创建启 ...

  9. SpringBoot从入门到放弃之配置Spring-Data-JPA自动建表

    pom文件配置引入依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactI ...

  10. WeChair项目Alpha冲刺(3/10)

    团队项目进行情况 1.昨日进展    Alpha冲刺第三天 昨日进展: 前端初步完成小程序预约页的html+css设计 后端springboot项目测试运行HelloWorld通过,以及LoginCo ...