通用深度模型UniverSeg:分割医疗图像

news2025/1/11 2:21:02

医学图像分割是医学分析的中心问题。它很昂贵,需要大量数据,而且是特定于任务的。如果我们可以拥有一个可以应用于任何分割任务的模型怎么办?

医学图像分割:为什么我们需要以及为什么它很困难?

UniverSeg:通用医学图像分割

分割的例子。一般来说,图像分割是计算机视觉的核心任务。特别是在医学领域,这是一系列分析的第一步。在医学中,许多工具产生具有不同特征的图像(不同的工具、不同医院、不同领域、不同标签之间的标准化)。

UniverSeg:通用医学图像分割

鉴于其重要性,大量研究致力于医学图像分割。已使用各种技术来分析图像。近年来,深度学习模型已被证明是最有能力的,尤其是一种一直作为标准维护的架构:U-net。

UniverSeg:通用医学图像分割

尽管U-net被广泛使用,但仍然存在一些挑战。主要的一个是域转移或模型在呈现分布外数据时表现不佳的事实。这对于医学来说是一个问题,因为研究人员经常需要执行新的细分任务(研究目标发生变化、收集新数据集等)。

在这些情况下,必须从头开始训练模型或使用微调。这是一个昂贵的过程,需要医学和机器学习专业知识。然而,这些专家并不总是可用,这会减慢研究速度。

另一个问题是,在大量非医学图像上训练的模型不能很好地推广到医学领域。事实上,这些通才模型无法识别解剖结构并且表现不佳。

为了尝试解决域转移问题,麻省理工学院的研究人员创建了一种新的架构,如果您想解决新的分割任务,则无需重新训练

UniverSeg:通用医学图像分割

UniverSeg:通用医学图像分割

什么是陈述任务?

在一般分割任务中,我们有一个示例数据集 x 和对应的标签 y (像素映射),我们想要学习一个允许我们映射 x 和 y 的函数。问题是这个函数特定于我们处理 x 和 y 的分布(例如,如果我们有一个 X 射线数据集,我们就不能使用相同的模型进行大脑 CT 扫描)。

UniverSeg:通用医学图像分割

输入图像 (x) 和掩模 (y)。因此,作者的目标是学习一个可用于任何任务的通用函数,从而预测任何标签图。显然,为了成功实现这一目标,他们使用特定于任务的支持(一组示例图像标签对)。通过这种方法,模型能够泛化新的、未见过的任务。

UniverSeg:通用医学图像分割

模型

更详细地说,作者定义了一个新的块,将其添加到可以被理解为经典 U 网的块中:CrossBlock 模块。该模块允许使用交叉卷积将信息从支持集传输到查询图像。由于权重在操作过程中被重用,因此变换是排列不变的。此外,在每个步骤中,我们都有一个更新查询和支持表示。每个交叉块之后都进行下采样。

除此之外,它与 U-net 非常相似,使用残差连接,并产生预测图作为输出。在最后一步中,我们有一个 1x1 卷积。

UniverSeg:通用医学图像分割

培训

该模型使用不同的训练任务进行训练。同时,作者使用损失或交叉熵或软骰子(实际上是为了衡量预测值和真实情况之间的一致性)。

此外,使用两种方法:

  • 任务内增强。标准增强,其中使用仿射变换、噪声添加、弹性变形等从一个示例生成多个示例。这些变换独立地应用于查询图像和支持集。
  • 任务增强。此转换适用于所有图像,并且为同一任务设置支持。这种类型的增强旨在帮助模型泛化新模型。例如,分割图的边缘检测或对所有图像和标签应用水平翻转。

UniverSeg:通用医学图像分割

巨型医疗数据集

显然,要训练这样的模型,需要有一个相当大且多样化的数据集。作者收集并组合了多个数据集来创建 MegaMedical 数据集(53 个数据集,涵盖 26 个医学领域和 16 种成像模式)。他们还创建了综合分割任务以进一步增加训练任务的多样性。生成的数据集包括广泛的解剖结构(从细胞到骨骼,从大脑到眼睛),还包括不同年龄和身体状况的受试者。

UniverSeg:通用医学图像分割

该数据集提供了一整套成像任务和标签协议。最后,所有图像均被标准化并调整为 128x128 像素大小。

不幸的是,该数据集无法发布(由于许可问题),但作者提供了重建数据集的代码。

效果如何?

作者选择了一些其他的少样本模型进行比较(PANet、ALPet、SEnet)。就测试集的骰子得分而言,他们的模型被证明优于表现最高的基线。作者认为,这是因为 CrossBlock 能够更多地传输空间信息。

UniverSeg:通用医学图像分割

这也可以在定性层面上观察到,我们可以看到复杂数据集(例如 SpineWeb)的质的改进。

UniverSeg:通用医学图像分割

此外,该模型无论是作为运行时还是作为参数数量(刚刚超过 100 万个参数)也都具有良好的性能。

UniverSeg:通用医学图像分割

此外,该模型对于专门针对任务(监督学习)进行训练的模型也具有竞争力。

消融研究

我们分析了一些数据、模型和训练决策如何影响 UniverSeg 的性能 

作者分析了各种成分的影响,并指出:

  • 任务多样性很重要。拥有更多的训练任务可以提高完成任务的绩效。
  • 合成任务、任务内和任务增强都是模型的重要组成部分,消除它们会降低性能。一个有趣的发现是,仅使用综合任务训练的模型(因此仍然没有接触医疗任务)表现良好,这强化了任务多样性很重要的想法。

UniverSeg:通用医学图像分割

另外,支撑尺寸也很重要,越大越好(或者至少在某个点上,之后性能增加得更少)。

由于获取标记图像的成本很高,因此作者研究了标记图像数量的影响。随着支撑尺寸的增加,模型的性能显着提高。增加标记图像的数量可以减少方差并提高一致性。

UniverSeg:通用医学图像分割

局限性

总的来说,这项研究做得很好,但观察其他数据集中的表现会很有趣。作者仍然打算将性能提高到监督模型的性能。此外,该模型尚无法分割 3D 体积。

去哪里尝试?

这是官方项目链接

UniverSeg:通用医学图像分割icon-default.png?t=N7T8https://universeg.csail.mit.edu/?source=post_page-----edf90bb15922--------------------------------

宇宙g.csail.mit.eduicon-default.png?t=N7T8https://universeg.csail.mit.edu/?source=post_page-----edf90bb15922--------------------------------

该代码位于 GitHub 上(可以在此处找到),并且他们为其提供了Google Colab,可以对其进行测试(并且提供了大量信息)。

结论

我们介绍 UniverSeg,一种用于学习医学图像分割的单一任务无关模型的方法。我们使用大量且多样化的开放获取医学分割数据集来训练 UniverSeg,它能够泛化到看不见的解剖结构和任务

作者引入了一个新层,允许将信息从支持集转换为查询图像。换句话说,通过这项工作,作者提出了一个在少数镜头设置下针对许多分割任务具有出色分割性能的模型。

该模型是科学家和临床研究人员的资源,他们可以利用模型而无需重新培训。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1037614.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

2808. 使循环数组所有元素相等的最少秒数;1015. 可被 K 整除的最小整数;1001. 网格照明

2808. 使循环数组所有元素相等的最少秒数 核心思想:枚举每个元素作为相等元素最多需要多少秒,然后维护它的最小值。最多需要多少秒是怎么计算的,我们可以把相等值的下标拿出来,然后你会发现两个相邻下标(相邻下标只的…

three.js——宝马汽车产品展示

宝马汽车产品展示 前言效果图1、创建基本设置(场景和背景等)2、加载模型和展厅灯光3、添加点击事件 前言 宝马汽车产品展示和原理讲解 演示网址:http://f-h-y.gitee.io/bmw-car-display-project/#/ 效果图 1、创建基本设置(场景和背景等) …

ChatGPT详细搭建教程+支持AI绘画

一、AI创作系统 SparkAi系统是基于很火的GPT提问进行开发的Ai智能问答系统。本期针对源码系统整体测试下来非常完美,可以说SparkAi是目前国内一款的ChatGPT对接OpenAI软件系统。那么如何搭建部署AI创作ChatGPT系统?小编这里写一个详细图文教程吧&#x…

The 2023 ICPC Asia Regionals Online Contest (1) E. Magical Pair(数论 欧拉函数)

题目 T(T<10)组样例&#xff0c;每次给出一个n(2<n<1e18)&#xff0c; 询问多少对&#xff0c;满足 答案对998244353取模&#xff0c;保证n-1不是998244353倍数 思路来源 OEIS、SSerxhs、官方题解 2023 ICPC 网络赛 第一场简要题解 - 知乎 题解 官方题解还没有…

【Springboot】整合Xxl-job

目录 一&#xff0c;下载1.1 官方文档地址1.2 源码仓库地址 二&#xff0c; 配置部署 "调度中心"2.1 初始化 "调度数据库"2.2 修改配置文件2.3 启动调度中心 三&#xff0c;springboot项目整合3.1 添加依赖3.2 修改配置文件3.3 执行器组件配置4.4 编写测试…

雷达编程实战之静态杂波滤除与到达角估计

雷达中经过混频的中频信号常常混有直流分量等一系列硬件设计引入的固定频率杂波&#xff0c;我们称之位静态杂波&#xff0c;雷达信号处理需要把这些静态杂波滤除从而有效的提高信噪比&#xff0c;实现准确的目标检测功能。 目标的到达角估计作为常规车载雷达信号处理的末端&am…

【数据结构】什么是数据结构?

&#x1f984;个人主页:修修修也 &#x1f38f;所属专栏:数据结构 ⚙️操作环境:Visual Studio 2022 数据结构的定义 数据结构(Data Structure)是计算机存储,组织数据的方式,指相互之间存在一种或多种特定关系的数据元素的集合. 这么讲可能有些抽象,放一张图大家可能好理解一点…

Python 打印素数

"""打印素数介绍&#xff1a;素数是指只有两个正因数&#xff08;1和它本身&#xff09;的自然数&#xff0c;而且必须大于1。例如&#xff1a;2、3、5、7、11、13、17、19、23、29等等都是素数。小于2的数不是素数&#xff0c;因为它没有两个正因数。例如&…

编译原理龙书-词法分析

词法分析 词法分析器的作用 词法分析器的主要任务是读入源程序的输入字符&#xff0c;将它们组成词素&#xff0c;生成并输出一个词法单元序列&#xff0c;每个词法单元对应于一个词素 有时&#xff0c;词法分析器可以分成两个级联的处理阶段&#xff1a; 扫描阶段主要负责完…

Base64编码与打印标签(label)实例

文章目录 前言一、Base64 的简单认识二、Base64的使用场景三、 Base64的解码注意问题举个最近与后端配合的例子 四、 base64 转换为arrayBuffer&#xff0c;blod总结 前言 文件格式转换&#xff0c;在日常编程尤为常见&#xff0c;例如pdf文件大小的压缩存储&#xff0c;前端用…

Arduino驱动MMA7260三轴加速度传感器(惯性测量传感器篇)

目录 1、传感器特性 2、控制器和传感器连线图 3、驱动程序 Arduino驱动MMA7260三轴加速度传感器芯片,可以应用到摩托车和汽车放倒报警、遥控航模、游戏手柄、人形机器人跌倒检测、硬盘冲击保护、倾斜度测量等场合。 1

Java初级到中级:技术提升的策略与方法

文章目录 1 问题背景2 前言3 方法 1 问题背景 截至2023年7月&#xff0c;笔者已经毕业2年了&#xff0c;每天都在搬砖打螺丝&#xff0c;自我感觉需要沉淀、思考、总结一下。思考和总结一下如何从Java初级提升到Java中级&#xff0c;需要掌握一些什么方法论&#xff0c;有效地去…

使用命令行快速创建Vite项目

一、构建项目 在终端中使用如下命令行&#xff1a; npm create vite 二、定义项目名称 三、选择项目类型 Vanilla是我们常用的JavaScript&#xff0c;Vue和React是常用前端框架&#xff0c;可以根据自己的需要进行选择 通过上下键进行选择&#xff0c;按下回车进行确认 创建…

CMU15-445 format\clang-format\clang-tidy 失败

CMU15-445 format\clang-format\clang-tidy 失败 问题修改 问题 -- Setting build type to Debug as none was specified. -- Youre using Clang 14.0.0 CMake Warning at CMakeLists.txt:67 (message):BusTub/main couldnt find clang-format.CMake Warning at CMakeLists.tx…

VS2019创建GIt仓库时剔除文件或目录

假设本地有解决方案“SomeSolution” 1、首先”团队资源管理器“-“创建Git存储库”&#xff0c;选择“仅限本地”、“创建” VS会在解决方案目录下自动生成.gitattributes、.gitignore 2、编辑gitignore&#xff0c;直接拖到VS里或者用记事本打开。添加要剔除的文件或文件夹…

git --- 回滚 restore, reset, revert

git --- 回滚 restore, reset, revert git revertgit restoregit resetgit reset --softgit reset --mixedgit reset -- hard git revert git revert 是用于“反做”某一个版本&#xff0c;以达到撤销该版本的修改的目的也就是git revert会生成一个新的commit, 而这个commit需要…

Spring Cloud Alibaba快速整合OpenFeign

文章目录 spring cloud alibaba 整合OpenFeign整合流程1.导入依赖2. 编写调用接口2.1 service&#xff08;这里写的是clients&#xff09;2.2 controller 3.设置其最大链接时间3.1 配置文件3.2 client3.3 接口3.4 被访问的controller spring cloud alibaba 整合OpenFeign Fore…

C++之lseek64应用总结(二百三十六)

简介&#xff1a; CSDN博客专家&#xff0c;专注Android/Linux系统&#xff0c;分享多mic语音方案、音视频、编解码等技术&#xff0c;与大家一起成长&#xff01; 优质专栏&#xff1a;Audio工程师进阶系列【原创干货持续更新中……】&#x1f680; 人生格言&#xff1a; 人生…

基于STM32的宠物托运智能控制系统的设计(第十七届研电赛)

一、功能介绍 使用STM32作为主控设备&#xff0c;通过DHT11温湿度传感器、多合一空气质量检测传感器以及压力传感器对宠物的托运环境中的温湿度、二氧化碳浓度和食物与水的重量进行采集&#xff0c;将采集到的信息在本地LCD显示屏上显示&#xff0c;同时&#xff0c;使用4G模块…

IO模型学习

一、IO读写的基本原理 一个原则&#xff1a;操作系统将内存划分为两部分&#xff1a;一个是内核空间&#xff0c;一个是用户空间。在linux操作系统中&#xff0c;内核模块运行在内核空间&#xff0c;相应的进程处在内核态&#xff1b;用户程序运行在用户态&#xff0c;对应的进…