【医学图像处理】ECAT和HRRT格式转nii格式【超简单】

之前从ADNI上下载PET数据的时候发现有许多数据的格式不是DICOM的而是ECAT或者是HRRT格式,这对原本就少的PET数据是血上加霜啊。
在这里插入图片描述

当然只使用DICOM格式的数据也会得到不少的数据,我一开始也是只使用DICOM格式的样本,后来为了得到更多的数据,自己研究了如何将这两种格式的PET数据转成nii格式。防止以后需要用到的时候忘记,故写此博客。

1 简单介绍一下ECAT和HRRT格式

这两种格式都用于存储 PET 图像数据,但它们在一些方面有所不同。
a) ECAT 格式:
ECAT (EmotionCore Annotation Tool) 格式是一种广泛使用的 PET 数据格式,它是一种标准化的格式,通常用于存储 PET 成像数据。
ECAT 格式具有良好的可移植性和广泛的支持,因此在许多 PET 成像研究和应用中得到了广泛使用。
ECAT 格式的文件通常包含有关扫描参数、图像信息以及可能的附加数据(例如扫描时间、注射剂量等)。
它是一种比较通用的格式,可以轻松地在不同的 PET 成像软件和工具之间进行交换和处理。

b)HRRT 格式:
HRRT (High-Resolution Research Tomograph) 格式是一种针对特定类型的 PET 仪器设计的格式。
HRRT 是一种高分辨率 PET 成像系统,专门用于进行高分辨率的 PET 成像研究,特别是用于神经科学和脑成像研究。
HRRT 格式通常包含有关高分辨率 PET 图像的详细信息,例如空间分辨率、灵敏度和动态范围等。
对于特定类型的研究,尤其是需要高分辨率成像的神经科学研究,HRRT 格式提供了更详细和准确的成像数据。
(以上内容生成与chatgpt3.5仅供参考)

2 ECAT转nii

使用工具:Matlab、SPM12
1、首先在Matlab中安装SPM12
2、在命令行中输入spm,打开spm
3、在弹出的窗口中选择PET按钮点击
4、点击Batch
在这里插入图片描述
5、安装下图步骤打开ECAT Import
在这里插入图片描述
6、选择原文件转格式
原文件如下:是一个.v的文件
在这里插入图片描述

在这里插入图片描述
运行完成后会得到几个nii文件,选择一个即可(生成文件会存放到Matlab的工作路径,记得切换一下路径不然会默认生成到Matlab的bin路径下)
在这里插入图片描述

3、HRRT转nii

HRRT转nii就需要用到另外一个工具了,就是Debabeler,我是从The First Step for Neuroimaging Data Analysis: DICOM to NIfTI conversion这篇文章中了解到这个工具的,这篇文章很详细的介绍了各种格式的转换方法。
1、下载Debabeler:官网下载
2、原文件如下:有多个文件,直接打开是打开不了的
在这里插入图片描述
3、点击run.bat文件打开Debabeler,打开之后会弹出窗口让我们选择xml文件,这个就是你需要进行哪种转换就选择哪个xml文件,可以看到这个工具可以进行许许多多的格式转换,包括ECAT转nii,这里我们选择HrrtInterfileToNifti_22Nov2006.xml也就是HRRT转nii,点击打开。
在这里插入图片描述
4、输入原文件
在这里插入图片描述
在这里插入图片描述
选择完成后点击下面红色框按钮即可
在这里插入图片描述
转换完成后会在原文件路径下生成一个nii文件,这个就是我们想要的
在这里插入图片描述
DICOM转nii格式我也有写过文章,详见【医学影像处理】基于MRIcron的dcm2nii批量dcm转nii格式
另外关于PET预处理的我也写过,详见【医学图像处理】超详细!PET图像批量预处理

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

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

相关文章

2024年值得创作者关注的十大AI动画创新平台

别提找大型工作室制作动画了。如今,AI平台让我们就可以轻松制作动画。从简单的文本生动画功能到复杂的角色动作,这些平台为各种类型的创作者提供了不同的功能。 AI已经有了长足的发展,现在它可以理解复杂的人类动作和艺术意图,将简单的输入转化成丰富而详细的动画。 下面…

RoketMQ主从搭建

vim /etc/hosts# IP与域名映射,端口看自己的#nameserver 192.168.126.132 rocketmq-nameserver1 192.168.126.133 rocketmq-nameserver2# 注意主从节点不在同一个主机上 #broker 192.168.126.132 rocketmq-master1 192.168.126.133 rocketmq-master2#broker 192.168…

HarmonyOS(鸿蒙)不再适合JS语言开发

ArkTS是鸿蒙生态的应用开发语言。它在保持TypeScript(简称TS)基本语法风格的基础上,对TS的动态类型特性施加更严格的约束,引入静态类型。同时,提供了声明式UI、状态管理等相应的能力,让开发者可以以更简洁、…

用Python 3 开发的摄像头拍照程序

在当今数字化的世界中,使用摄像头进行拍照已成为日常生活的重要组成部分。无论是用于个人用途还是专业用途,能够使用电脑摄像头轻松拍照都是一项有用的技能。本文将指导您使用 Python 3 编写一个简单的程序,让您能够使用电脑摄像头拍照并将其…

如果网络不好 如何下载huggingface上的模型

很多朋友网络不太好,有时候上不了huggingface这样的国外网站; 或者网络流量不太够,想要下载一些stable diffusion模型,或者其他人工智能的大模型的时候,看到动辄几个G的模型文件,不太舍得下载;…

9. 综合案例-ATM系统 (1~7节知识综合练习)

ATM系统_综合大练习 今天的任务是对之前所有的学习的知识, 进行一个综合性的大练习. 老师说的好, 键盘敲烂 这个项目我写了大量的注释给大家参考, 如果有同学是跟着我的系列学习的, 一定动手练一练. 下面的代码只要按着敲是可以直接运行起来的, 我也把完整代码上传到了CSDN上…

Fritzing 简单使用

文章目录 1 Fritzing 资源2 Fritzing 简单使用3 添加自已的元器件3.1 面包板3.1.1 新建面包板 svg 文件3.1.2 新建面包板 3.2 原理图3.3 PCB3.4 图标3.5 使用 1 Fritzing 资源 1)官网: 开源的电子设计和原型平台:https://fritzing.org/免费开…

机试:砍树修路

问题描述 代码示例: //一坐标轴表示某道路,从0开始 到L,整数位置上都种有一颗树。现在该路修建地铁,要砍掉铁路线路上的树木。例如:L等于10,铺设4条铁路,坐标是1到2,2到3,2到8,3到…

【SpringBoot】解决数据库时间和返回时间格式不一致的问题

先看问题: 类中的属性中有Date类型的属性 数据库表中的数据: 可以看到也没问题 但是在返回实体类对象时,数据类型是这样的: 虽然数据是成功返回了,但这显然不是我们想要的结果.也不符合我们的日常使用习惯. 这个问题虽然前端,后端都能处理,但最好还是后端来进行处理.前端主…

openEuler学习总结1(仅供学习参考)

华为的openEuler内核是源于Linux。 openEuler操作系统安装流程 第一步:开启虚拟化 第二步:安装一个虚拟化软件virtualbox 第三步:镜像 第四步:配置 设置虚拟机所在的目录 把网卡类型选择成桥接网卡 挂载镜像 设置完成&#xff0…

玩转键盘鼠标,自动化你的电脑操作 —— 定时执行专家

简介 “定时执行专家”是一款功能强大的定时任务执行软件,除了支持常见的定时关机、重启、执行程序等功能外,还拥有模拟键盘按键和模拟鼠标操作功能,可以让你轻松实现各种自动化操作。 模拟键盘按键功能可以模拟用户的键盘输入,让…

BufferedOutputStream类讲解

咦咦咦,各位小可爱,我是你们的好伙伴——bug菌,今天又来给大家普及Java IO相关知识点了,别躲起来啊,听我讲干货还不快点赞,赞多了我就有动力讲得更嗨啦!所以呀,养成先点赞后阅读的好…

GEE错误——Line 12: xxx.size is not a function(计算列表长度出现错误)

简介 这里我们再计算研究区面积的时候出现了一个错误,这里的问题是Line 12: points8.size is not a function 主要问题是xxx不是一个数组或者对象,无法调用size方法。这里的问题是我们要获取这个对象的时候出现了问题,也就说你给函数传输的并不是一个对象,而不知道是什么…

基于Springboot+Vue+Sercurity实现的大学生健康管理平台

1.项目介绍 大学生健康档案管理系统,通过电子健康档案管理系统这个平台,可以实现人员健康情况的信息化、网络化、系统化、规范化管理,从繁杂的数据查询和统计中解脱出来,更好的掌握人员健康状况。系统的主要功能包括:…

7.JavaWebHTML:构建数字世界的语言和结构

目录 导语: 第一部分:Web概念与作用 1.1 Web的定义 1.2 Web的作用 1.3 JavaWeb 第二部分:HTML概念与内容 2.1 HTML的定义 2.2 HTML的内容 第三部分:HTML的作用 3.1 HTML的作用 3.2 HTML在现代Web开发中的角色 …

2024.3.15

1.单向循环链表 代码: #include"loop.h" //创建单向循环链表 loop_p create_loop_list() {loop_p H (loop_p)malloc(sizeof(loop));if(HNULL){printf("空间申请失败\n");return NULL;}H->len0;H->nextH;return H; } //创建节点 loop_p…

【晴问算法】入门篇—贪心算法—整数配对

题目描述 有两个正整数集合S、T,其中S中有n个正整数,T中有m个正整数。定义一次配对操作为:从两个集合中各取出一个数a和b,满足a∈S、b∈T、a≤b,配对的数不能再放回集合。问最多可以进行多少次这样的配对操作。 输入描…

C语言数据类型 ---变量的定义

目录 关键字(Keywords) 标识符(Identifiers) *命名规则 *常量(Constant) *变量(Variable) 变量的定义 小结 变量的4个基本属性 程序设计语言的基本构成要素 自然语言程序设…

【Godot4.0】自定义A*寻路拓展类TileMapAStar2D及其使用

概述 Godot提供的AStar2D和AStarGrid2D基本可以解决所有2D的A*寻路问题: 前者提供了基础的A*寻路支持,但是需要手动处理很多内容后者针对基于方形图块的A*寻路,进行了很多自动化的工作,用起来十分简便。但是不使用于六边形、iso…

人人站CMS后台登不进去解决方案(已解决)

公司有一个网站使用的是人人站CMS,最近发现后台登录不进去,有以下报错 发生以下错误: file get contents(http://www.rrzcms.com/Public/cms/config/config.ison): failed to open stream: HTTP reguest failed! 请求的URL导致内部服务器错误。 如果您反…