MIS微调SAM模型实时交互UI界面

news2025/1/15 13:48:45

前言

SAM模型的基本介绍可见SAM(Segment Anything Model)大模型使用--point prompt_sam大模型-CSDN博客

针对Meta团队去年发布的SAM大模型在医学图像分割领域表现性能较差的情况,笔者收集了一些MIS领域的数据集对SAM的架构进行fine tune,目前已完成肺部,心脏,脾脏,结肠数据集的微调,于是就写了一个UI交互的界面脚本,目前已经发布在github上。

github地址

GitHub - jaychan0/fine_tune_SAM_MIS: This is a UI project, which uses medical image to fine tune SAM in hugging face structure.

训练说明

数据集主要是来自MSD开源数据集的CT扫描文件,处理的流程为:

把CT扫描文件分为多个切片,取有mask的切片作为备选数据集;

对于不同的数据集,根据文件的大小随机生成指定序号的数量,从备选数据集中获得使用数据集;

对于使用数据集,按照8:1:1的比例划分为训练集、验证集和测试集;

使用3060显卡训练,lr为1e-5,每个数据集训练60个epoch;

训练得到的预训练数据权重都已经上传到网盘中,github上有相应的链接和提取码。

依赖环境

需要说明的是,本项目对于SAM模型的微调不同于现在常见的直接在SAM源码上进行fine tune,而是使用hugging face封装好的系列接口,选择这个微调方式的原因是hugging face中的数据集预处理直接可以通过processor函数一条龙做好,自己再封装一个class就可以直接丢进model里进行训练,再者,它也提供了非常方便地config接口直接调整或更改SAM的结构,对于后续进一步要提高SAM对于下游任务的性能提供了非常方便地途径。

运行交互UI界面,最好本地有独显,笔者本地的是1650Ti显卡(cpu没跑过,估计速度会慢一些)

pytorch架构、transformer库依赖环境,直接从transformer库下载pretrain的权重需要hugging face的API token,在这里我也把原始的轻量化权重vit_b上传到网盘中了。

运行界面及结果

功能在按钮里已经明显了,这里就不赘述了

这里选择肺部的图片进行演示,注意,图片和GT的大小必须是256\times 256

选择完待分割图片后点一下UI界面上对应的矩形区域,图片才会显示,这样便于显示后续实时交互box prompt

直接用鼠标在待分割图像上进行box的输入,命令行会实时输出box的信息,即方框左上角的坐标和右下角的坐标

下一步,选择权重类型,我们先来选择原始权重

之后点击“生成掩膜”,就会看见SAM生成的图片,如果我们想保存生成的图片,就可以点击“保存图片”的按钮

可见原权重对于肺部的分割效果不太好,那我们再使用经过微调之后的肺部权重看看效果如何

可见,微调后的SAM对于肺部图像的分割性能有了显著的提升。

扩展

如果大家有自己的下游任务微调好的权重想要有直观的交互显示,也可以直接在“自定义权重选择”按钮中进行选择,前提是必须是使用hugging face提供的API接口进行微调的vit_b。

最后,如果大家也有在MIS领域微调好的权重,非常希望可以联系我,我可以把大家的权重加到这个体系当中,不断地完善这个系统;对于个人来说,可能无法做到像Meta团队那样构建庞大的数据集进行训练从而获得在通用图像领域高性能的大模型SAM,但是我觉得我们可以汇集大家的力量,不必要只限于单个checkpoint,把不同的MIS分割任务汇集起来,对应不同的权重,那么在MIS领域也可以有我们自己的Medical Segment Angthing Model。

欢迎大家讨论交流~

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

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

相关文章

银河麒麟安装SSH工具

查看22端口是否启用 netstat -ntlp|grep 22 二、安装SSH工具 1、安装openssh 执行指令# sudo apt-get install openssh-server 2、更新ubuntu源 执行指令# sudo apt-get update 3、安装openssh-server 执行指令# sudo apt-get install openssh-server 4、安装ufw防火…

分享:抖音阳哥说的人力RPO项目有哪些优势?

在数字化浪潮的推动下,人力资源行业也迎来了前所未有的变革。抖音平台上,阳哥以其独到的见解和丰富的经验,对人力RPO(招聘流程外包)项目进行了深入解读。今天,我们就来探讨一下人力RPO项目究竟有哪些优势。 人力RPO项目的一大优势…

【C语言__联合和枚举__复习篇10】

目录 前言 一、联合体 1.1 联合体的概念 1.2 联合体与结构体关于声明和内存布局的比较 1.3 联合体的大小如何计算 1.4 使用联合体的2个示例 二、枚举体 2.2 枚举体的概念 2.2 枚举体的优点 前言 本篇主要讨论以下问题: 1. 联合体是什么,它有什么特点 …

SpringMVC笔记——SpringMVC基础Tomcat环境配置

Tomcat安装配置 下载Apache Tomcat 进入官网https://tomcat.apache.org/,选择tomcat 9 这边使用idea开发,建议直接下载压缩包 无法访问下载的可以直接用我的下载链接:https://cloudreve.zxbdwy.online/s/6nSA 提取码:w1pwk3将压…

玩转微服务-SonarQube

这里写目录标题 第一节 SonarQube1.1 简介1.2 四个组成部分1.2.1 SonarQube服务器1.2.2 SonarQube数据库1.2.3 插件1.2.4 Scanner 1.3 工作流程 第二节 SonarQube的安装2.1 安装2.2 插件 第三节 P3C规范3.1 简介3.2 SonarQube 配置 P3C规范3.3 IDEA配置 P3C规范 第四节 Maven项…

基于opencv的单目相机标定

openCv版本:4.4.0 从源码处拷贝标定代码出来使用,需要拷贝samples/cpp/tutorial_code/calib3d/camera_calibration 需要的文件如下: -rw-rw-r-- 1 rog rog 28490 Jul 18 2020 camera_calibration.cpp -rw-rw-r-- 1 rog rog 3152 Jul 18 …

初识C++·类和对象(中)(3)

前言,最难的已经结束了,来点轻松了放松一下。 目录 1 流重载 2 const成员 3 取地址及const取地址操作符重载 1 流重载 C语言中printf和scanf是有局限性,只能直接打印内置类型,对于自定义类型就哦豁了,所以在C中就…

5月计算机各省报名时间汇总报名流程

📣5月有5省可进行计算机报名 天津:5月6日-5月10日 福建:5月6日9:00-5月12日17:00 广西:5月6日9:00-5月12日23:55 重庆:5月6日9:00-5月12日24:00 西藏:预计5月6日-12日 🔍计算机等级考试报…

linux DNS域名解析服务

目录 一.DNS DNS系统的作用 域名结构: 根域 顶级域 二级域 子域 主机 二.DNS解析过程 迭代查询: 递归查询: 三.实验模拟 主、从服务器设置 1.搭建本地DNS服务器------(主服务器配置) 1)初始化系统 ​编辑2&#xf…

win c++使用lua环境配置 5.3.5版本

编译lua 下载lua源码,github仓库 使用vs编译源码,新建一个静态库项目(只会生成lib文件),想要dll的话就新建dll项目(有一个lib文件和dll文件) 把lua源码下面的文件夹都是,复制到vs项目中 lib目录是我手动…

Linux蓝牙驱动模拟HID设备(把Linux系统模拟成蓝牙鼠标和蓝牙键盘)

by fanxiushu 2024-04-24 转载或引用请注明原始作者。 在经过windows的蓝牙驱动开发模拟成HID设备的大风大浪之后, 现在回到linux下实现相同功能,简直就是如小孩嬉闹一样的轻松。 但无论如何,作为模拟蓝牙HID设备的windows,linux一…

冰箱、保险柜门不要对准外面

风水真的和我们的生活息息相关,它会影响到我们的事业财运、婚姻感情、健康平安等等。很多人在不知情的情况下,触犯了风水里的禁忌,那结果可想而知! 峰民特别提示您:千万不要将冰箱、保险柜的门对准外面。冰箱是不能与…

什么是重放攻击(Reply attack)?

什么是重放攻击(Reply attack)? 重放攻击,也称为回放攻击,是一种网络攻击方式。重放攻击是一种中间人攻击,攻击者通过截获合法的数据传输并重新发送它们来欺骗接收方,让接收方误以为是合法的消息。重放攻击是非常常见的&#xf…

printjs打印表格的时候多页的时候第一页出现空白

现象:打印多页的时候第一页空白了,一页的时候没有问题 插件:printjs 网上搜索半天找到的方式解决: 1. 对于我这次的现象毫无作用。其他情况不得而知,未遇见过。(这个应该是大家用的比较多的方式&#xf…

古籍数字化平台中的OCR:这个平台更精准

在浩瀚的历史长河中,古籍作为中华民族的文化瑰宝,承载着无数先人的智慧与心血。然而,由于岁月侵蚀、保存不当等多种原因,许多珍贵的古籍面临损坏、失传的危机。为了守护这些无价之宝,云聪研发团队倾力打造了一款尖端的…

使用QTcpSocket

(1)客户端每隔10ms向服务器发送一次数字字符串&#xff0c;从0开始。 #ifndef MAINWINDOW_H #define MAINWINDOW_H#include <QMainWindow> #include <QTcpSocket> #include <QLabel> #include <QTimer> namespace Ui { class MainWindow; }class Mai…

11 - 在k8s官方文档上,经常搜索不到内容的问题

使用k8s官方文档时&#xff0c;会出现首页可以正常打开&#xff0c;但是输入搜索关键字之后&#xff0c;搜索不到内容的情况&#xff0c;如下图&#xff1a; 这是由于相关搜索组件被墙的原因&#xff0c;处理方法如下&#xff1a; 谷歌浏览器&#xff1a; 火狐浏览器&#x…

Epic游戏商店再送大作,兽人必须死3即将免费领取

Epic游戏商店再送大作&#xff01;兽人必须死3即将免费领取 圣诞节过后&#xff0c;Epic游戏商店一直在送出精心制作的小游戏或者在小圈子里备受热议的作品。虽然之前送过的游戏如《天外世界》和《幽灵行者》等名气不小&#xff0c;但对于一直在“白嫖”的玩家们来说&#xff0…

采用php vue2 开发的一套医院安全(不良)事件管理系统源码(可自动生成鱼骨图)

采用php vue2 开发的一套医院安全&#xff08;不良&#xff09;事件管理系统源码&#xff08;可自动生成鱼骨图&#xff09; 医院安全&#xff08;不良&#xff09;事件管理系统采用无责的、自愿的填报不良事件方式&#xff0c;有效地减轻医护人员的思想压力&#xff0c;以事件…

【Go语言快速上手(四)】面向对象的三大特性引入

&#x1f493;博主CSDN主页:杭电码农-NEO&#x1f493;   ⏩专栏分类:Go语言专栏⏪   &#x1f69a;代码仓库:NEO的学习日记&#x1f69a;   &#x1f339;关注我&#x1faf5;带你学习更多Go语言知识   &#x1f51d;&#x1f51d; GO快速上手 1. 前言2. 初识GO中的结构…