前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >SPIDER2023——脊柱分割:椎间盘、椎骨和椎管分割

SPIDER2023——脊柱分割:椎间盘、椎骨和椎管分割

作者头像
医学处理分析专家
发布于 2023-09-10 07:59:47
发布于 2023-09-10 07:59:47
1.2K0
举报

今天将分享脊柱分割:椎间盘、椎骨和椎管分割完整实现版本,为了方便大家学习理解整个流程,将整个流程步骤进行了整理,并给出详细的步骤结果。感兴趣的朋友赶紧动手试一试吧。

一、SPIDER2023介绍

腰痛(LBP)是导致残疾的重要原因,也是一个主要的社会医疗保健问题。腰痛常用的诊断和治疗决策工具之一是腰椎磁共振成像(MRI)。在过去的几十年里,腰痛患者MRI的使用大幅增加。自动图像分析有可能减轻放射科医生和脊柱外科医生增加的工作量,并通过实现更客观和定量的图像解释来提高MRI的诊断价值。然而,为了有效地评估复杂的多因素疾病,如LBP,自动分析必须理解脊柱的多个解剖元素,包括椎骨、椎间盘(IVD)和椎管。因此,用于分割这些结构的鲁棒自动算法至关重要。

为了开发用于腰椎MRI分割的准确可靠的AI算法,需要具有参考分割的大型多样化数据集。然而,目前可用的腰椎MRI分割数据集要么大小有限,要么只有分割一个或两个解剖结构,要么不公开可用。为了解决这一差距,引入了一个大型多中心腰椎MR数据集,其中包含椎骨,椎间盘(IVD)和椎管的参考分割,将其公开用于AI算法的训练数据。

二、SPIDER2023任务

腰椎多模态MRI中三种解剖结构的分割:椎骨,椎间盘(IVD)和椎管。

三、SPIDER2023数据集

收集了257名过去经历过LBP的患者的腰椎MRI数据。每项研究由多达三个MRI序列组成,总共544个序列。这些研究是在2019年1月至2022年2月期间从四家医院获得的,其中包括一家学术中心、两家地区医院和一家骨科医院。标准矢状T1和T2图像的分辨率范围为3.3x0.33x0.33mm至4.8x0.90x0.90mm。矢状T2 SPACE序列图像具有近各向同性的空间分辨率,体素大小为0.90x0.47x0.47mm。

每个序列中所有可见的椎骨、椎间盘和椎管均手动分割,不包括骶骨。分割由一名医学实习生在医学成像专家和经验丰富的MSK放射科医生的监督下进行。在一个小数据集上训练了自动基线分割算法,该算法能够自动分割看不见的图像。对预测的分割进行审查、手动校正并添加到训练数据中。通过重新训练自动分割模型重复此过程多次,直到注释整个数据集。随机选择20个高分辨率T2(SPACE)序列并手动注释。所有其他分割都是通过上述描述的迭代注释策略创建的。所有注释和更正均使用3D Slicer来完成。

此数据集中的引用分割从下到上进行标记。 在此标记方案中,最低的腰椎(通常是L5,但也可以是L4或L6)被分配为标签1。它上方的后续椎骨被标记为 2,并且该系列中其余椎骨的标记继续按升序排列。为了标记椎间盘(IVD),标签基于其正上方的椎骨,最低的IVD分配标签201,上面的IVD标记为202,依此类推。椎管被分配标签100。

评估基于骰子相似系数(DICE)分数,这是评估分割性能的广泛使用的指标。分别计算三种解剖结构中的每一个的DICE分数:椎骨,椎间盘(IVD)和椎管。

四、技术路线

由于标注标签的数值不是连续的数值,先获取腰椎标签的最大值,然后将椎管标签设置成腰椎标签最大值加1,IVD标签的最小值设置成椎管值加1,这样就生成了新的标签数据。

任务一、T1椎骨,椎间盘(IVD)和椎管分割

1、人体脊柱区域提取,首先使用固定阈值(0.5,最大像素值)和形态学最大连通域法获取整个人体脊柱ROI区域。

2、分析ROI图像,得到图像平均大小是24x289x426,因此将图像缩放到固定大小48x288x432。图像预处理,对ROI图像采用均值为0,方差为1的方式进行归一化处理。然后将数据分成训练集和验证集,对训练集做10倍数据增强处理。

3、搭建VNet3d网络,使用AdamW优化器,学习率是0.001,batchsize是1,epoch是300,损失函数采用多类的dice和交叉熵。

4、训练结果和验证结果

5、验证集分割结果

左图是金标准结果,右图是预测分割结果。

6、测试集分割结果

左图是金标准结果,右图是预测分割结果。

任务二、T2椎骨,椎间盘(IVD)和椎管分割

1、人体脊柱区域提取,首先使用固定阈值(0.5,最大像素值)和形态学最大连通域法获取整个人体脊柱ROI区域。

2、分析ROI图像,得到图像平均大小是24x283x448,因此将图像缩放到固定大小48x288x432。图像预处理,对ROI图像采用均值为0,方差为1的方式进行归一化处理。然后将数据分成训练集和验证集,对训练集做10倍数据增强处理。

3、搭建VNet3d网络,使用AdamW优化器,学习率是0.001,batchsize是1,epoch是300,损失函数采用多类的dice和交叉熵。

4、训练结果和验证结果

5、验证集分割结果

左图是金标准结果,右图是预测分割结果。

6、测试集分割结果

左图是金标准结果,右图是预测分割结果。

任务三、T2 SPACE椎骨,椎间盘(IVD)和椎管分割

1、人体脊柱区域提取,首先使用固定阈值(0.5,最大像素值)和形态学最大连通域法获取整个人体脊柱ROI区域。

2、分析ROI图像,得到图像平均大小是512x640x120,因此将图像缩放到固定大小320x384x128。图像预处理,对ROI图像采用均值为0,方差为1的方式进行归一化处理。然后将数据分成训练集和验证集,对训练集做10倍数据增强处理。

3、搭建VNet3d网络,使用AdamW优化器,学习率是0.001,batchsize是1,epoch是300,损失函数采用二值化的dice和交叉熵。

4、训练结果和验证结果

5、根据Mask进行形态学膨胀操作,核大小为5,分析ROI图像,得到图像平均大小是226x530x119,因此将图像缩放到固定大小224x384x128。图像预处理,对ROI图像采用均值为0,方差为1的方式进行归一化处理。然后将数据分成训练集和验证集,对训练集做10倍数据增强处理。

6、搭建VNet3d网络,使用AdamW优化器,学习率是0.001,batchsize是1,epoch是300,损失函数采用多类的dice和交叉熵。

7、训练结果和验证结果

8、验证集分割结果

左图是金标准结果,右图是预测分割结果。

9、测试集分割结果

左图是金标准结果,右图是预测分割结果。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2023-08-17,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 最新医学影像技术 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
MySQL root密码忘记,原来还有更优雅的解法!
一直以来,对于MySQL root密码的忘记,以为只有一种解法-skip-grant-tables。
星哥玩云
2022/08/16
3130
MySQL的mysqld_safe和mysqld进程有何用?
MySQL启动会出现两个进程,mysqld_safe和mysqld,这俩进程有什么联系和区别?它们各自有什么作用?老杨写的这篇技术文章《技术分享 | kill掉mysqld_safe进程会影响mysqld进程?》做了一些讲解。
bisal
2023/12/10
1K0
MySQL的mysqld_safe和mysqld进程有何用?
MySQL的启动原理
我们知道mysql.server,mysqld_safe和mysqld都是可以用来启动mysql服务,他们之间是有区别的。这三个命令中,其中mysql.server和mysqld_safe是shell脚本写的,我们可以打开来查看里面的内容。下面我们看看这三种启动方法的区别:
AsiaYe
2019/11/06
2.2K0
技术分享 | kill掉mysqld_safe进程会影响mysqld进程?
确实在 kill -9 mysqld_safe 后,重新拉起了 mysqld_safe 和 mysqld 进程(它们的 PID 和之前不一样)
GreatSQL社区
2023/09/10
5260
技术分享 | kill掉mysqld_safe进程会影响mysqld进程?
MySQL如何找到使用的是哪个配置文件?
一个正在运行的MySQL实例,如何查看对应的配置文件用的是哪一个?如果存在多个文件,生效的顺序是怎么样的?
俊才
2024/01/22
6610
MySQL如何找到使用的是哪个配置文件?
MySQL之my.cnf配置文件
今天是中秋节之后的第一天,虽然身体来上班了,但是脑子还在放假。今天主要是把密码管理模块的代码推了一版,然后研究了一下mysql的my.cnf文件,简单总结一下。
AsiaYe
2019/11/06
4.6K0
MySQL之my.cnf配置文件
11.6 MariaDB安装
安装mariadb cd /usr/local/src wget https://downloads.mariadb.com/MariaDB/mariadb-10.2.6/bintar-linux-glibc_214-x86_64/mariadb-10.2.6-linux-glibc_214-x86_64.tar.gz tar zxvf mariadb-10.2.6-linux-glibc_214-x86_64.tar.gz mv mariadb-10.2.6-linux-glibc_214-x86_64
运维小白
2018/02/06
1.1K0
MySQL 数据库的启动与关闭
    MySQL数据库服务器通常指的的是mysqld,而命令行mysql则是mysql客户端程序,这两个概念通常容易混淆。通常启动mysql服务器即是启动mysqld进程,mysqld启动后,可以通过mysql连接到mysql服务器。本文主要描述了mysql服务器的几种启动方式以及如何关闭mysql服务器。
Leshami
2018/08/13
6.1K0
MYSQL多实例配置详解.md
Q:什么是MySQL多实例? 答:简单的说,就是在一台机器上开启多个不同的服务端口(如: 3306、 3307 ) ,运行多个 MysQL 服务进程,服务进程通过不同的 socket 监听不同的服务端口来提供各自的服务。
全栈工程师修炼指南
2022/09/28
1.7K0
MYSQL多实例配置详解.md
零基础安装MySQL 5.7数据库
官网MySQL有四个版本:GA版、DMR版、RC版、Beta版。一般生产和测试环境使用GA版(常规可用的版本,经过bug修复测试)
SEian.G
2021/03/03
2900
# 示例环境
​ 想必很多新手都避免不了有这些疑问,都想一次性投入精力解决以上问题,下面我用我理解的方式帮助你解决这些疑问。
用户1175783
2020/05/09
1.3K0
mysql多实例(多个配置文件方式)设置为多个服务单独管理启动停止
有个大佬搞了一套mysql多实例(多个配置文件方式),却没有任何管理方式,想重启还找 找pid , kill掉,再通过 mysql 指定配置文件启动,极度不方便,想做成。
用户2323866
2021/06/29
1.5K0
MySQL中的pid与socket是什么?
不知道你有没有注意过,MySQL 启动时需要配置 pid 及 socket 文件路径。偶尔还会出现因 pid 文件找不到而启动失败的现象,那么 pid 与 socket 文件究竟是干什么用的呢?我们一起来看下本篇文章。
MySQL技术
2021/07/05
2.2K0
Linux基础(day39)
11.1 LAMP架构介绍 LAMP架构介绍 LAMP架构包含了 Linux+Apache(httpd)+MySQL+PHP ,简称LAMP Linux是操作系统,比如centos,Ubuntu都是linux操作系统 Apache提供web服务软件,其真正名字为 httpd,习惯称之为Apache MySQL存储软件,存的是数据、字符串,不是图片 PHP是脚本语言,和shell相似,但比shell复杂,PHP是由 C语言 开发的,通常用于做网站(主要); 目前由于移动网络的影响,PHP现在不怎么受欢迎
运维小白
2018/02/06
7510
Linux基础(day39)
MySQL 备份恢复(二)
前面一篇已经介绍了MySQL 备份相关的原理与方法,要是还没有来得及看的可以戳此查看『MySQL 备份恢复(一)』,那么今天就接着上一篇的内容继续谈谈备份恢复相关内容。数据备份是 DBA 非常重要的工作之一,系统意外奔溃或者硬件损坏都可能导致数据库的数据丢失,因此 MySQL DBA 应该定期备份数据,使得意外发生时尽可能的减少损失。数据备份在工作中是重中之重,安全很重要。
JiekeXu之路
2019/06/20
2.7K0
MySQL 备份恢复(二)
MySQL单机多实例的配置笔记
    CentOS6.7x86_64【2.6.32-573.el6.x86_64】
保持热爱奔赴山海
2019/09/18
1.3K0
MySQL5.5版本部署的一个问题
目前公司部署MySQL是通过平台化操作的,周五的时候,平台暂时出了点儿问题,手上有个需求比较着急,就直接手动的部署了一下,由于好长时间没有部署环境了,竟然有些手生,这里把部署的步骤以及遇到的问题记录下来,希望对大家有所帮助。
AsiaYe
2019/11/06
1.3K0
数据库介绍(MySQL安装 体系结构、基本管理)
该文章介绍了如何通过MySQL Workbench 5.7.31在Windows 10上重置MySQL root密码。包括安装MySQL Workbench、运行MySQL命令行工具、查看MySQL服务器信息、通过命令行重置MySQL root密码、重载MySQL服务、登录MySQL数据库等步骤。
惨绿少年
2017/12/27
3K0
数据库介绍(MySQL安装 体系结构、基本管理)
MySQL 8 手动安装后无法启动的问题解决
首先的自我检讨与自我批评,最近有点懒,知识的更新慢,最近在更换系统到ubuntu 22.04 ,废弃centos ,同时MYSQL 都在8 以上,之前MySQL都是在CENTOS 7.5 上安装,并且也都自动化安装,基本上没有问题,但到了ubuntu 22.04 基于对于系统的不熟悉, 产生很多的问题。
AustinDatabases
2023/11/24
5730
MySQL 8  手动安装后无法启动的问题解决
MySQL部署之源码安装
所需要的依赖及安装MySQL的包 # yum -y update # yum -y groupinstall "Development Tools" # yum -y install gcc gcc-c++ ncurses ncurses-devel bison libgcrypt perl make cmake # wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-boost-5.7.24.tar.gz 在系统中添加运行mysqld进程的用户
Cyylog
2020/08/19
1.6K0
相关推荐
MySQL root密码忘记,原来还有更优雅的解法!
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档