SAM在医学图像分割的一些研究(Segment Anything Model for Medical Images?(2023))

news2024/11/14 9:51:25

使用预训练模型通过两种主要模式进行分割,包括自动一切和手动提示(例如,点和框)。SAM在各种自然图像分割任务上取得了令人印象深刻的效果。然而,由于医学图像的形态复杂、解剖结构精细、物体边界不确定和复杂、物体尺度大,使得医学图像分割(MIS)更具挑战性。同时,零射击、高效的MIS可以很好地减少标注时间,促进医学图像分析的发展。因此,SAM似乎是一种潜在的工具,其在大型医疗数据集上的性能有待进一步验证。我们收集并整理了52个开源数据集,构建了包含16种模态、68个对象、553K切片的大型医学分割数据集。我们在所谓的COSMOS 553K数据集上对不同的SAM测试策略进行了全面分析。大量的实验证实,SAM在医学图像中对物体感知的点和框等手动提示上表现更好,提示模式下的性能优于一切模式。此外,SAM在某些特定的对象和模态上表现出色,但在其他情况下则不完善甚至完全失败。最后,我们分析了不同因素(如基于傅里叶的边界复杂度和分割对象的大小)对SAM分割性能的影响。大量的实验证明,SAM的零距分割能力不足以保证其直接应用于MIS。

提示方法:

自动提示

点和框提示: 即1个正点、5个正点、5个正点加5个负点、1个方框、1个方框加1个正点。进一步建立了统一的选点规则,保证了选点的随机性、重复性和准确性。对于正点选择,a)我们首先计算出ground truth (GT)掩模的质心(图5中红色点)。b)如果质心在GT掩模内,我们将质心作为第一个正点。c)然后,我们直接将GT蒙版平铺成一维矢量,采用均匀采样的方法获得其他正点(图5中的绿色点)。d)如果质心在GT蒙版之外,则通过步骤c获得所有需要的正点。对于负点的选择,我们的目的是避免选择离目标区域太远的点。具体来说,我们首先将GT的边界框扩大了两倍。负点在nonGT区域均匀采样生成(图5中的黄色点)。最后,对于框的选择,我们直接采用GT蒙版的包围框,不做任何额外的操作。

在我们的研究中,我们使用不同的策略对一张图像进行了多次测试(n),以获得最终的评估(见图5)。在SAM的原始代码逻辑和设计中,同一张图像需要进行n次相同的编码操作,这导致我们的多策略测试场景的运行效率很低。当使用高分辨率输入时,情况变得更糟。在此基础上,我们提前计算所有输入图像的嵌入特征,并将其保存为中间文件。因此,图像嵌入可以重复使用,以减轻推理管道的计算负担。因此,SAM测试的整体效率可以提高近n倍。此外,SAM的测试策略越多,节省的时间就越多。这可以简单地扩展到SAM的其他多策略测试场景。E.分割评估的掩码匹配机制SAM为每个输入图像生成多个二值掩码,但并不是所有的都包含相应的对象。因此,我们提出了一种掩码匹配机制来评估在每种模式下使用SAM的分割性能。具体来说,对于给定图像中的目标(前景之一),我们在N个二元预测掩码{Pn} N N =1与GT g之间计算一组骰子分数{DICEn} N N =1,然后选择其中骰子得分最高的一个作为匹配的预测掩码P进行后续分割评估。得到P的过程可以表示为:P = max{(P1·G),(P2·G),…,(PN·G)},(1),其中N为一幅图像中一个对象的预测二值掩码总数。操作(·)和max{}表示计算一个预测掩码与GT之间的骰子得分,而max表示获得骰子得分最高的预测掩码。A.实现细节代码实现及逻辑。在本研究中,我们基本按照官方GitHub存储库4实现了SAM的测试管道。对于我们的多策略测试场景,我们运行了n次SAM算法,提取了n次图像嵌入。结果表明,图像嵌入提取过程耗时较长。然而,由于相同的嵌入可以用于不同的测试策略,我们寻求优化和加速这种多提取过程。因此,我们重构了部分代码。对于每个测试图像,我们只使用图像编码器进行特征提取一次,并将嵌入的特征保存为npy文件。当应用不同的测试策略时,只需要加载相应的npy文件,这大大提高了测试效率(大约为nx)。此外,对于提示测试,我们在图像嵌入后计算一次所需的点和框,并将其存储为npz文件。因此,所有提示测试策略都可以直接使用npz信息,而无需重新计算。

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

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

相关文章

中小企业如何做好MES管理系统实施建设

中小企业在生产制造领域面临着诸多挑战,包括提升产品竞争力、规范生产制造等。为了应对这些挑战,越来越多的中小企业开始实施MES生产管理系统。然而,由于企业规模小、资源实力不足等原因,很多企业在实施MES管理系统时存在一定的困…

前端下载文化部几种方法(excel,zip,html,markdown、图片等等)和导出 zip 压缩包

文章目录 1、location.href2、location.href3、a标签4、请求后端的方式5、文件下载的方式6、Blob和Base647、下载附件方法(excel,zip,html,markdown)8、封装下载函数9、导出 zip 压缩包相关方法(流方式) 总结 1、location.href //get请求 window.location.href url;2、locati…

流程图模板有哪些?这几款高频使用模板收好

流程图模板有哪些?流程图是一种常用的图形表现形式,用于展示业务流程或操作流程。对于需要频繁制作流程图的用户,选择一个易用、高效的流程图制作工具非常重要。下面介绍几款高频使用的流程图模板,一起来看看吧! 第一款…

iTOP-RK3588开发板Ubuntu 系统交叉编译 Qt 工程-命令行交叉编译

使用源码 rk3588_linux/buildroot/output/rockchip_rk3588/host/bin/qmake 交叉编译 QT 工程。 最后烧写编译好的 buildroot 镜像,将编译好的 QT 工程可执行程序在 buildroot 系统上运行。 交叉编译 QT 工程如下所示,首先进入 QLed 的工程目录下。 然后…

将word每页页眉单独设置

在进行论文排版的时候,总是会出现页眉的页码设置问题,比如出现奇数或偶数页码一致,尝试将前面页码改掉,后面再修改前面也进行了变动,将每页页眉单独设置: (1)在第一页的最后一行输入…

反步控制理论

一.简单反步控制器 简单反步控制器的设计思想是将复杂的非线性系统分解成不超过系统最高阶数的子系统,然后为每个子系统分别设计Lyapunov函数和中间虚拟控制量,一直“后退” 到整个系统,直到完成整个控制律的设计。 以二阶反步控制器为例&a…

Sui主网升级至V1.6.3版本

Sui主网现已升级至V1.6.3版本,此升级包含了多项修复和优化。升级要点如下所示: #13029 在构建Move代码时,可能会出现与实现自定义transfer/share/freeze函数相关的额外linter警告。这些函数是为了实施自定义的transfer/share/freeze策略而…

Vue的 hash 模式与 history 模式

为了能够在改变视图的同时,不向后端发出网络请求。浏览器提供了 hash 模式与 history 模式。 而 vue 中的路由器就是利用了这两种模式,来实现前端路由的。 路由器的 hash 模式: 一、在 router 目录下的 index.js 文件中,通过 m…

如何使用JavaScript创建一只图像放大镜

如果您曾经浏览过购物网站,可能遇到过图像放大功能。它可以让您放大图像的特定区域,以便浏览。结合这个小小的重要功能可以大大改善您网站的用户体验。 以一种无缝衔接的方式构建图像放大镜可能是个挑战。但是逐步完成这些步骤将帮助您从头开始创建自己的…

【Unity 实用工具篇】✨| 学会使用 可编程瓦片Tile Map,快速搭建2D地图

前言【【Unity 实用工具篇】✨| 学会使用 可编程瓦片Tile Map,快速搭建2D地图一、导入 Tile Map Editor二、创建调色板 Tile Palette三、快速绘制地图四、TilePalette 调色板功能介绍五、TileMap 相关组件属性介绍GirdTilemapTilemap Renderer 瓦片地图渲染器Tile Assets 瓦片…

香港IT软件开发服务公司Alpha Technology 申请纳斯达克IPO上市

来源:猛兽财经 作者:猛兽财经 猛兽财经获悉,总部位于中国香港的IT软件开发服务公司Alpha Technology 近期已向美国证券交易委员会(SEC)提交招股书,申请在纳斯达克IPO上市,股票代码为&#xff0…

一篇让你熟练掌握Google Guava包

Google Guava guava开源库的地址:github.com/google/guava 这个工具的介绍,搜集自网络,自己整理一下格式,感觉不错,分享一下。最近读源码碰到的有趣工具类挺多,分享大家都学习一下。 概述 工具类 就是封…

零基础入门一文带你了解前端React中组件的使用

目录 一、React 组件介绍 二、创建React组件的两种方式 1. 使用函数创建组件 2. 使用类创建组件 3. 抽离为独立 JS文件 三、React 事件处理 1. 事件绑定 2. 事件对象 四、有状态组件与无状态组件 1. state的基本使用 2. setState() 修改状态 3. 从 JSX 中抽离事件…

文心一言 VS 讯飞星火 VS chatgpt (70)-- 算法导论6.5 9题

九、请设计一个时间复杂度为 (n lgk)的算法,它能够将 k 个有序链表合并为一个有序链表,这里 n 是所有输入链表包含的总的元素个数。(提示:使用最小堆来完成 k 路归并。 文心一言: 要设计一个时间复杂度为 O(n log k) 的算法,将 …

CVE-2023-37582 Apache RocketMQ 远程代码执行漏洞

漏洞简介 Apache RocketMQ是一款低延迟、高并发、高可用、高可靠的分布式消息中间件。CVE-2023-37582 中,由于对 CVE-2023-33246 修复不完善,导致在Apache RocketMQ NameServer 存在未授权访问的情况下,攻击者可构造恶意请求以RocketMQ运行的…

线程池相关理论

什么是线程池 线程池是一种利用池化技术思想来实现的线程管理技术,主要是为了复用线程、便利地管理线程和任务、并将线程的创建和任务的执行解耦开来。我们可以创建线程池来复用已经创建的线程来降低频繁创建和销毁线程所带来的资源消耗。在JAVA中主要是使用Thread…

C高级--day2(用户相关操作 磁盘相关操作 shell脚本 修改环境变量)

#include<myhead.h>void fun(int n) {if(n>9){fun(n/10);printf("%d\t",n%10);putchar(10);return;}else{printf("%d\n",n%10);return;} } int main(int argc, const char *argv[]) {int num;printf("请输入一个整数&#xff1a;");sca…

华为OD机试真题 Java 实现【寻找最大价值的矿堆】【2023 B卷 100分】,附详细解题思路

目录 专栏导读一、题目描述二、输入描述三、输出描述四、Java算法源码五、效果展示1、输入2、输出 华为OD机试 2023B卷题库疯狂收录中&#xff0c;刷题点这里 专栏导读 本专栏收录于《华为OD机试&#xff08;JAVA&#xff09;真题&#xff08;A卷B卷&#xff09;》。 刷的越多…

RISC-V基础之函数调用(一)简单的函数调用(包含实例)

高级语言支持函数&#xff08;也称为过程或子程序&#xff09;来重用通用的代码&#xff0c;以及使程序更加模块化和可读。函数可以有输入&#xff0c;称为参数&#xff0c;和输出&#xff0c;称为返回值。函数应该计算返回值&#xff0c;并且不产生其他意外的副作用。 在一个…

高性能网络框架笔记

目录 TCP粘包、分包惊群断开连接&#xff0c;TCP怎么检测的&#xff1f;大量的close wait&#xff0c;如何解 ?双方同时调用close水平触发和边沿触发的区别 TCP粘包、分包 解决&#xff1a;1.应用层协议头前面pktlen&#xff1b;2.为每一个包加上分隔符&#xff1b;(\r\n&…