TotalSegmentator---针对CT/MRI数据的自动分割

很高兴在雪易的CSDN遇见你 

VTK技术爱好者 QQ:870202403      公众号:VTK忠粉


前言

本文分享开源软件TotalSegmentator,该开源项目针对CT/MRI数据类型,对主要的解剖学结构进行自动分割,并且被集成到MITK中。希望对各位小伙伴有所帮助!

感谢各位小伙伴的点赞+关注,小易会继续努力分享,一起进步!

你的点赞就是我的动力(^U^)ノ~YO


目录

前言

1. TotalSegmentator介绍

2. TotalSegmentator下载&安装

3. TotalSegmentator的使用

3.1 CT/MR数据分割

3.2 子任务

3.4 高级设置

3.3 CT分割类别

3.4 MR分割类别

结论:


1. TotalSegmentator介绍

        TotalSegmentator由巴塞尔大学医院研究与分析部门创建,可以针对任何CT或MR数据进行主要解剖结构进行分割。它基于广泛的CT/MRI的训练数据(不同的扫描设备,不同的机构,不同的协议等),因此在大部分数据上都有很好的结果。

CT数据集:

Dataset with segmentations of 117 important anatomical structures in 1228 CT images (zenodo.org)

MR数据集:

Dataset with segmentations of 117 important anatomical structures in 1228 CT images (zenodo.org)

支持的CT分类如下:

 支持的MR分类如下:

2. TotalSegmentator下载&安装

GitHub地址:GitHub - wasserth/TotalSegmentator: Tool for robust segmentation of >100 important anatomical structures in CT and MR images

TotalSegmentator安装依赖于Python & Pytorch

Pytorch的安装教程 

TotalSegmentator安装

        安装命令: pip install TotalSegmentator   

        安装命令: pip install TotalSegmentator==2.1.0

安装成功标志

TotalSegmentator使用了诸多我们熟悉的第三方库,如opencv, simple-itk, vtk 等。 

3. TotalSegmentator的使用

3.1 CT/MR数据分割

TotalSegmentator -i ct.nii.gz -o segmentations

TotalSegmentator -i mri.nii.gz -o segmentations --task total_mr

注意:输入可以时Nifti数据格式,或文件夹或压缩文件,需要包含一个患者的全部DICOM切片。如果在CPU上进行分割,可以使用 --fast 或  --roi_subset 来提高效率。

3.2 子任务

分割时的选项

  • total: 默认分割包括117个主类。用于CT数据。
  • total_mr: 默认分割包括56个主类,用于MR数据
  • lung_vessels: 肺血管,支气管
  • body: 身体,躯干,四肢,皮肤
  • cerebral_bleed: 颅内出血*
  • hip_implant: 髋关节假体*
  • coronary_arteries: 冠状动脉*
  • pleural_pericard_effusion: 胸腔积液, 心包积液*

注意:带*的表示采用小的数据集进行训练的模型,可能分割效果没那么好。

使用方法:

TotalSegmentator -i ct.nii.gz -o segmentations -ta <task_name>

3.4 高级设置

  • --device: Choose cpu or gpu or gpu:X (e.g., gpu:1 -> cuda:1)
  • --fast: For faster runtime and less memory requirements use this option. It will run a lower resolution model (3mm instead of 1.5mm).
  • --roi_subset: Takes a space-separated list of class names (e.g. spleen colon brain) and only predicts those classes. Saves a lot of runtime and memory. Might be less accurate especially for small classes (e.g. prostate).
  • --preview: This will generate a 3D rendering of all classes, giving you a quick overview if the segmentation worked and where it failed (see preview.png in output directory).
  • --ml: This will save one nifti file containing all labels instead of one file for each class. Saves runtime during saving of nifti files. (see here for index to class name mapping).
  • --statistics: This will generate a file statistics.json with volume (in mm³) and mean intensity of each class.
  • --radiomics: This will generate a file statistics_radiomics.json with the radiomics features of each class. You have to install pyradiomics to use this (pip install pyradiomics).

3.3 CT分割类别

IndexTotalSegmentator nameTA2 name
1spleen
2kidney_right
3kidney_left
4gallbladder
5liver
6stomach
7pancreas
8adrenal_gland_rightsuprarenal gland
9adrenal_gland_leftsuprarenal gland
10lung_upper_lobe_leftsuperior lobe of left lung
11lung_lower_lobe_leftinferior lobe of left lung
12lung_upper_lobe_rightsuperior lobe of right lung
13lung_middle_lobe_rightmiddle lobe of right lung
14lung_lower_lobe_rightinferior lobe of right lung
15esophagus
16trachea
17thyroid_gland
18small_bowelsmall intestine
19duodenum
20colon
21urinary_bladder
22prostate
23kidney_cyst_left
24kidney_cyst_right
25sacrum
26vertebrae_S1
27vertebrae_L5
28vertebrae_L4
29vertebrae_L3
30vertebrae_L2
31vertebrae_L1
32vertebrae_T12
33vertebrae_T11
34vertebrae_T10
35vertebrae_T9
36vertebrae_T8
37vertebrae_T7
38vertebrae_T6
39vertebrae_T5
40vertebrae_T4
41vertebrae_T3
42vertebrae_T2
43vertebrae_T1
44vertebrae_C7
45vertebrae_C6
46vertebrae_C5
47vertebrae_C4
48vertebrae_C3
49vertebrae_C2
50vertebrae_C1
51heart
52aorta
53pulmonary_vein
54brachiocephalic_trunk
55subclavian_artery_right
56subclavian_artery_left
57common_carotid_artery_right
58common_carotid_artery_left
59brachiocephalic_vein_left
60brachiocephalic_vein_right
61atrial_appendage_left
62superior_vena_cava
63inferior_vena_cava
64portal_vein_and_splenic_veinhepatic portal vein
65iliac_artery_leftcommon iliac artery
66iliac_artery_rightcommon iliac artery
67iliac_vena_leftcommon iliac vein
68iliac_vena_rightcommon iliac vein
69humerus_left
70humerus_right
71scapula_left
72scapula_right
73clavicula_leftclavicle
74clavicula_rightclavicle
75femur_left
76femur_right
77hip_left
78hip_right
79spinal_cord
80gluteus_maximus_leftgluteus maximus muscle
81gluteus_maximus_rightgluteus maximus muscle
82gluteus_medius_leftgluteus medius muscle
83gluteus_medius_rightgluteus medius muscle
84gluteus_minimus_leftgluteus minimus muscle
85gluteus_minimus_rightgluteus minimus muscle
86autochthon_left
87autochthon_right
88iliopsoas_leftiliopsoas muscle
89iliopsoas_rightiliopsoas muscle
90brain
91skull
92rib_left_1
93rib_left_2
94rib_left_3
95rib_left_4
96rib_left_5
97rib_left_6
98rib_left_7
99rib_left_8
100rib_left_9
101rib_left_10
102rib_left_11
103rib_left_12
104rib_right_1
105rib_right_2
106rib_right_3
107rib_right_4
108rib_right_5
109rib_right_6
110rib_right_7
111rib_right_8
112rib_right_9
113rib_right_10
114rib_right_11
115rib_right_12
116sternum
117costal_cartilages

3.4 MR分割类别

IndexTotalSegmentator nameTA2 name
1spleen
2kidney_right
3kidney_left
4gallbladder
5liver
6stomach
7pancreas
8adrenal_gland_rightsuprarenal gland
9adrenal_gland_leftsuprarenal gland
10lung_left
11lung_right
12esophagus
13small_bowelsmall intestine
14duodenum
15colon
16urinary_bladder
17prostate
18sacrum
19vertebrae
20intervertebral_discs
21spinal_cord
22heart
23aorta
24inferior_vena_cava
25portal_vein_and_splenic_veinhepatic portal vein
26iliac_artery_leftcommon iliac artery
27iliac_artery_rightcommon iliac artery
28iliac_vena_leftcommon iliac vein
29iliac_vena_rightcommon iliac vein
30humerus_left
31humerus_right
32fibula
33tibia
34femur_left
35femur_right
36hip_left
37hip_right
38gluteus_maximus_leftgluteus maximus muscle
39gluteus_maximus_rightgluteus maximus muscle
40gluteus_medius_leftgluteus medius muscle
41gluteus_medius_rightgluteus medius muscle
42gluteus_minimus_leftgluteus minimus muscle
43gluteus_minimus_rightgluteus minimus muscle
44autochthon_left
45autochthon_right
46iliopsoas_leftiliopsoas muscle
47iliopsoas_rightiliopsoas muscle
48quadriceps_femoris_left
49quadriceps_femoris_right
50thigh_medial_compartment_left
51thigh_medial_compartment_right
52thigh_posterior_compartment_left
53thigh_posterior_compartment_right
54sartorius_left
55sartorius_right
56brain

结论:

感谢各位小伙伴的点赞+关注,小易会继续努力分享,一起进步!

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Global Mapper:地理信息的温柔探索

引言 在这纷繁复杂的世界里&#xff0c;地理信息系统&#xff08;GIS&#xff09;如同一把利器&#xff0c;帮助我们剖析、理解和改造这个世界。而在众多GIS软件中&#xff0c;Global Mapper无疑是其中的佼佼者。作为一款功能全面且易于使用的GIS应用程序&#xff0c;Global M…

springboot养老院管理系统-计算机毕业设计源码00010

摘要 本文介绍了一种基于Spring Boot框架的养老院管理系统的设计与实现。该系统旨在帮助养老院管理者更有效地管理机构内的各项事务&#xff0c;并提供更好的服务于老年人。系统的设计考虑了养老院管理的特殊需求&#xff0c;包括系统用户、老人信息管理、服务分类管理、医疗服…

谷歌个人开发者账号14天封测审核通过技巧,你还不知道吗?

众所周知&#xff0c;目前在Google play应用商店上架应用已经不是那么容易了&#xff0c;谷歌各种政策的更新以及审核系统的升级&#xff0c;给开发者们带来了不少挑战。 尤其针对个人开发者账号需要20人连续14天的封测的要求&#xff0c;周期长&#xff0c;且随着政策执行力度…

[Vulnhub] IMF File Upload BypassBuffer Overflow

信息收集 IP AddressOpening Ports192.168.8.103TCP:80 $ nmap -p- 192.168.8.103 --min-rate 1000 -sC -sV PORT STATE SERVICE VERSION 80/tcp open http Apache httpd 2.4.18 ((Ubuntu)) |_http-title: IMF - Homepage |_http-server-header: Apache/2.4.18 (Ubunt…

揭秘!chatGPT核心技术应用

2022年11月30日&#xff0c;可能将成为一个改变人类历史的日子——美国人工智能开发机构OpenAI推出了聊天机器人ChatGPT-3.5&#xff0c;将人工智能的发展推向了一个新的高度。2023年11月7日&#xff0c;OpenAI首届开发者大会被称为“科技界的春晚”&#xff0c;吸引了全球广大…

个人面试总结

写在前面&#xff1a;以下是自己在拟录用后回顾总结的了一下当时面试题目&#xff0c;把标答写了出来&#xff0c;供以后复习所使用&#xff0c;希望大家理性食用~~ 预祝大家都能找到心仪的工作 笔试题目&#xff1a; 1.1. java中Collection和Collections的区别 Collection…

怎样将aac转换mp3格式?推荐四个aac转MP3的方法

怎样将aac转换mp3格式&#xff1f;当需要将aac格式音频转换为MP3格式时&#xff0c;有几种方法可以轻松实现这一目标。MP3是一种广泛支持的音频格式&#xff0c;几乎所有设备和平台都能播放MP3文件&#xff0c;包括各种音乐播放器、手机、平板电脑和汽车音响系统。而且它也提供…

极狐Gitlab使用(1)

目录 续接上篇&#xff1a;极狐Gitlab安装部署-CSDN博客 1. 关闭注册功能 2. 创建群组 3. 创建用户 5. 邀请成员到群组 6. 设置导入导出项目源 7. 通过gitee导入库 8. 通过仓库URL导入 9. 自创建项目 10. 默认分支main的权限 11. 使用普通用户进入自建库 12. 创建用…

传统的springboot项目中,如何进行添加自定义静态资源访问路径实现对静态资源的访问?

如何配置可以实现在浏览器中配置路径实现对resource资源路径下的index.html个性化定制访问路径 要在Spring Boot项目中配置使特定前缀访问静态资源&#xff0c;可以在application.yml文件中配置路径映射。以下是一个示例配置&#xff1a; 打开你的application.yml文件&#xf…

N6 word2vec文本分类

&#x1f368; 本文为&#x1f517;365天深度学习训练营 中的学习记录博客&#x1f356; 原作者&#xff1a;K同学啊# 前言 前言 上周学习了训练word2vec模型&#xff0c;这周进行相关实战 1. 导入所需库和设备配置 import torch import torch.nn as nn import torchvision …

04OLED简介和调试方法

OLED简介和调试方法 调试方式串口调试显示屏调试其他调试方法总结&#xff1a; OLED简介硬件电路OLED驱动函数 keil调试模式进入方法keil调试界面窗口简单功能说明更加强大的功能 调试方式 电脑想看什么变量可以直接打印到屏幕&#xff0c;但是单片机很多时候由于成本和电路结构…

多协议网关设计架构与实现,支持 RS485/232、CAN、M-Bus、MQTT、TCP 等工业协议接入(附代码示例)

一、项目概述 1.1 背景 随着物联网技术的快速发展&#xff0c;越来越多的设备需要接入网络进行数据交互。然而&#xff0c;不同设备往往采用不同的通信协议&#xff0c;例如工业现场常用的Modbus、CAN、电力载波等&#xff0c;以及物联网领域常用的MQTT、TCP/IP等&#xff0c…

C++类与对象-基础篇

目录 一、什么是类 1.1 语法定义 1.2 访问限定符 1.3 类域 二、类的实例化 2.1 什么是实例化 2.2 类的大小 三、this指针 3.1 引入 3.2 this指针的使用 一、什么是类 1.1 语法定义 class 类名 {}; 说明 类似于C语言中的结构体&#xff0c;括号后分号不能丢类内成员可…

SSM学习5:AOP

简介 面向切面编程&#xff0c;一种编程范式&#xff0c;指导开发者如何组织程序结构。可以在不经打原始设计的基础上为其进行功能增强。 入门案例 案例&#xff1a;在接口执行前输出当前系统时间 开发模式&#xff1a;XML 或者 注解 思路分析&#xff1a; 导入坐标&#xf…

数学建模·模糊评价法

模糊评价法 一种解决评价问题或者得出最佳方案的方法具体定义 三集&#xff1a;因素集&#xff0c;评语集和权重集&#xff0c;通过模拟矩阵的处理得到最合理的评语具体步骤 因素集 因素集的确定不难&#xff0c;难在对分级评价时&#xff0c;对因素集的分级有技巧评语集 …

TIOBE 7月编程排行榜出炉!Python再次出圈!

又到了周三&#xff0c;本周有过半了&#xff0c;大家好呀&#xff01; 每月的TIOBE编程排行榜都是技术社区关注的焦点&#xff0c;作为编程语言流行度的晴雨表&#xff0c;它反映了行业趋势和技术走向。2024年7月的榜单揭晓了一个重要变化&#xff1a;Python再次登上榜首&…

如何批量更改很多个文件夹里的文件名中包含文件夹名?

&#x1f3c6;本文收录于《CSDN问答解惑-专业版》专栏&#xff0c;主要记录项目实战过程中的Bug之前因后果及提供真实有效的解决方案&#xff0c;希望能够助你一臂之力&#xff0c;帮你早日登顶实现财富自由&#x1f680;&#xff1b;同时&#xff0c;欢迎大家关注&&收…

RedisTemplate 中序列化方式辨析

在Spring Data Redis中&#xff0c;RedisTemplate 是操作Redis的核心类&#xff0c;它提供了丰富的API来与Redis进行交互。由于Redis是一个键值存储系统&#xff0c;它存储的是字节序列&#xff0c;因此在使用RedisTemplate时&#xff0c;需要指定键&#xff08;Key&#xff09…

论文学习_Getafix: learning to fix bugs automatically

1. 引言 研究背景:现代生产代码库极其复杂并且不断更新。静态分析器可以帮助开发人员发现代码中的潜在问题(在本文的其余部分中称为错误),这对于在这些大型代码库中保持高代码质量是必要的。虽然通过静态分析尽早发现错误是有帮助的,但修复这些错误的问题在实践中仍然主要…

“连阳抓妖”,连阳抓主升浪 后市能成妖

指标名 连阳抓妖通达信副图指标 是否收费 免费 格式 源码 注:公式不带有未来函数 ► 图表展示 使用技巧 本指标源自网红博主的精辟讲解&#xff0c;专为捕捉“潜力妖股”设计。其核心逻辑简单而高效&#xff0c;仅需满足四大核心条件&#xff0c;即可锁定前期未大涨个股的…