IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 人工智能 -> DICOM-RT struct使用python脚本转换为nii.gz -> 正文阅读

[人工智能]DICOM-RT struct使用python脚本转换为nii.gz

其实Github上有很多这样的库和脚本,但是都大同小异,掌握关键那部分代码就可以。

  • 要明确一点,SimpleITK不支持对DICOM-RT struct格式
  • 大部分脚本都是用pydicom读取,然后再用numpy等进行切片等操作。

1. 使用MIScnn库来完成转换

安装

sudo pip install miscnn # linux
pip install miscnn --user # Windows

使用

from miscnn.data_loading.interfaces.dicom_io import DICOM_interface

# 创建需要的标记的interface
structure_dict = {"Lung_L": 1, "Lung_R": 1}
interface = DICOM_interface(structure_dict = structure_dict, classes=2, annotation_tag="1.000000-.simplified")

# 获取mask文件列表
from miscnn.data_loading.data_io import Data_IO

data_io = Data_IO(interface, data_path)
sample_list = data_io.get_indiceslist()
sample_list.sort() # sample_list中有 LICENSE 记得处理删除掉
sample_list=[i for i in sample_list if "LICENSE" not in i ]

# 获取原图的坐标系信息
single_mask_path="../NiiGZ/label255/Test-S1-101.nii.gz"
mask_img=sitk.ReadImage(single_mask_path)  

origin =  mask_img.GetOrigin()
spacing = mask_img.GetSpacing()
direction = mask_img.GetDirection()

# 开始转换
for i in sample_list[:3]:
    sample = data_io.sample_loader(i)
    segmentations = sample.seg_data
    
    mask_img_convert=sitk.GetImageFromArray(segmentations)
    # 恢复到世界坐标系
    mask_img_convert.SetOrigin(origin)
    mask_img_convert.SetSpacing(spacing)
    mask_img_convert.SetDirection(direction)
    
    name="../NiiGZ/lunglabel/"+i[6:]+'.nii.gz'
    print(name)
    sitk.WriteImage(mask_img_convert,name)

原图,DICOM格式的图像 + DICOM-RT Struct格式的mask
在这里插入图片描述
转换后的图像,Nii.gz的图像格式+Nii.gz的标记格式
在这里插入图片描述

2. 现有转换库

  人工智能 最新文章
2022吴恩达机器学习课程——第二课(神经网
第十五章 规则学习
FixMatch: Simplifying Semi-Supervised Le
数据挖掘Java——Kmeans算法的实现
大脑皮层的分割方法
【翻译】GPT-3是如何工作的
论文笔记:TEACHTEXT: CrossModal Generaliz
python从零学(六)
详解Python 3.x 导入(import)
【答读者问27】backtrader不支持最新版本的
上一篇文章      下一篇文章      查看所有文章
加:2022-04-28 11:50:53  更:2022-04-28 11:52:22 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 8:25:44-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码