2018年BRATS 肿瘤分割挑战赛第三名分割方案One-pass Multi-task Networks with Cross-task Guided Attention for Brain Tumor Segmentation
首先说一下我对这个方案的看法,相比第一名与第二名的方案,这个方案的分割方法确实复杂的多,原论文是发表在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)移除满足下式的鼓励的集群,
2018年BRATS 肿瘤分割挑战赛第三名分割方案One-pass Multi-task Networks with Cross-task Guided Attention for Brain Tumor Segmentation的更多相关文章
- 语义分割之Dual Attention Network for Scene Segmentation
Dual Attention Network for Scene Segmentation 在本文中,我们通过 基于自我约束机制捕获丰富的上下文依赖关系来解决场景分割任务. 与之前通过多尺 ...
- arcgis 按面积分割, 按比例分割面积,按等份批量面积分割工具
arcgis 按面积分割, 按比例分割面积,按等份批量面积分割工具 视频下载:https://yunpan.cn/cvujkpKIqwccn 访问密码 e9f4
- 图片像素对比OpenCV实现,实现人工分割跟算法分割图像结果的对比
图片对比,计算不同像素个数,已经比率.实现人工分割跟算法分割图像结果的对比,但是只能用灰度图像作为输入 // imageMaskComparison.cpp : 定义控制台应用程序的入口点. // / ...
- ccc数据库的水平分割和垂直分割
在数据库操作中,我们常常会听说这两个词语:水平分割和垂直分割.那么到底什么是数据库的水平分割,什么是数据库的垂直分割呢?本文我们就来介绍一下这部分内容. 1.水平分割: 按记录进分分割,不同的记录可以 ...
- SilverLight:布局(2)GridSplitter(网格分割)垂直分割、水平分割
ylbtech-SilverLight-Layout: 布局(2)GridSplitter(网格分割)垂直分割.水平分割 A, Splitter(分割)对象之 GridSplitter(网格分割)1: ...
- 2018年星际争霸AI挑战赛–三星与FB获冠亚军,中科院自动化所夺得季军
雷锋网 AI 科技评论消息,2018 年 11 月 13-17 日,AAAI 人工智能与交互式数字娱乐大会 (AI for Interactive Digital Entertainment) 在阿尔 ...
- 【分割平面,分割空间类题】【HDU1290 HDU2050】
HDU 2050 折线分割平面 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) ...
- PCL中分割_欧式分割(1)
基于欧式距离的分割和基于区域生长的分割本质上都是用区分邻里关系远近来完成的.由于点云数据提供了更高维度的数据,故有很多信息可以提取获得.欧几里得算法使用邻居之间距离作为判定标准,而区域生长算法则利用了 ...
- Leetcode. 回文字符串的分割和最少分割数
Q1: 回文字符串的分割 Given a string s, partition s such that every substring of the partition is a palindrom ...
随机推荐
- Python--编码转换
# -*- coding:gbk -*- # 即使设置文件编码为gbk,下方定义的字符串s1依旧为unicode # 获取默认编码格式 import sys print(sys.getdefaulte ...
- Apollo移植
Apollo移植 环境 平台 ubuntu16.04 Apollo_kernel 1.0 安装步骤步骤 步骤一:安装ubuntu(官方建议使用Ubuntu 14.04.3) 步骤一和步骤二参考文档路径 ...
- asp.net Mvc 路由详解,非常详细.
关于路由的理解 为什么要定义路由?路由的定义在开发中的工作量非常小,但是非常重要,因为任何请求都离不开路由. 各个电商网站的 URL 使用非常灵活,都离不开路由的定义,请大家参考几家电商的 URL 如 ...
- 关于MYSQL的查询时间段、删除数据、查询目标行的命令用法。
Q1.第一次工作写命令时,写了一个把一个表的数据插入到另一个表中,运行时命令长时间处于执行状态. A.第一次处理数据库大量数据,长时间按运行属于正常现象,这与学校中的小数据不同. Q2.如何查询数据库 ...
- (四)Maven项目工程目录约定
使用maven创建的工程我们称它为maven工程,maven工程具有一定的目录规范,如下: src/main/java 存放项目的.java文件 src/main/resources 存放项目资源文件 ...
- 用了那么多年的 Master 分支或因种族歧视而成为历史?
最近真的是活久见了...不知道你是否也有碰到之前Fork过的国外开源项目,最近突然崩了,原因居然是好多项目都把master分支改为了main分支!更可怕的是修改原因居然是涉及种族歧视.用了那么多年的m ...
- Android学习笔记使用AlertDialog实现对话框
使用AlertDialog可以实现如下对话框 案例 布局问文件就加了几个Button,我直接上Java代码了 实现显示带取消,确定按钮的对话框按钮 Button showDialogOne = fin ...
- opencv c++访问某一区域
int main(){ cv::Mat m1(,, CV_8UC1); for(int i=;i<m1.rows;++i) for(int j=;j<m1.cols;++j) m1.at& ...
- Spring Boot2+Resilience4j实现容错之Bulkhead
Resilience4j是一个轻量级.易于使用的容错库,其灵感来自Netflix Hystrix,但专为Java 8和函数式编程设计.轻量级,因为库只使用Vavr,它没有任何其他外部库依赖项.相比之下 ...
- Redis五种数据类型应用场景
目录 1.1 回顾 2.1 应用场景 2.1.1 String 2.1.2 Hash 2.1.3 List 2.1.4 Zet 2.1.5 zset 3.1 小结 1.1 回顾 Redis的五种数据类 ...