基于cat12和SPM12进行VBM&SBM数据分析笔记1——数据预处理

2023-05-16

前言

今年是小编步入研究生生活的第一年,研究方向待定,但主要以磁共振成像为主,以后会不断地总结这方面的知识,涉及MRI,数据分析基础方法理论,软件操作教程,文献阅读笔记总结等等,用来记录我的研究生三年学习过程。文章编写尽量保证简洁明了,通俗易懂,本就是小白,也能体会小白的痛。不过这也要谢谢一个人手动@小白(网名),他总是不断提醒我要把自己所学的写下来,讲出来才能真正的做到输入和输出,查漏补缺,因此他给我推荐了CSDN这个平台来记录笔记。而用cat12软件学习VBM数据分析是我即将面临的第一个数据分析的训练,整个笔记都是一边操作一遍记录,如有错误之处,还望各位专业人士指出改正,有任何疑问皆可留言。

一、cat12简介

Matlab的CAT12工具箱和SPM工具箱目前广泛用于各种脑部疾病的VBM分析,可以处理多种的structural MRI数据。

二、环境配置

系统:Windows 10专业版
软件运行平台:Matlab2018a
所需工具包:

  1. SPM12(下载安装教程)
  2. cat12(下载安装教程)
  3. MRIcro——用于查看xxx.nii格式文件(下载安装教程)

三、数据预处理过程

结构像数据预处理流程图如下:
在这里插入图片描述

1.数据准备

被试测试图像均为大脑结构像中的T1像,文件格式为sub-xxx.nii,其文件内容一定是可用MRIcron软件进行查看,否则将会导致程序运行错误。并将所有被试图像(sub-xxx.nii)全部放置在同一个文件夹下。
注意:一定要保证文件格式为.nii格式,否则cat12无法读取数据。文件格式的转换小编就不在此赘述了,如有需要小编会更另一篇笔记。

2.组织分割(segment)

步骤:运行Matlab2018a,在命令框中输入:spm敲回车,调用spm工具包
命令框中会出现以下内容:
回车之后命令框显示
命令执行之后会弹出以下三个窗口,主要以SPM12为主:
在这里插入图片描述
在SPM for functional MRI部分找到Toolbox,下拉找到cat12,点击打开cat12工具包,之后便会出现工具包cat12的操作界面,如下图:
在这里插入图片描述
在这里插入图片描述点击segment,进入如下界面:在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

双击Volumes,进入如下界面,按照图中所示操作,选择测试数据的T1像,选中数据之后再点击done,回到segment界面,选择好volumes之后下面根据自己的实验需要更改下方参数或者对应功能选项,而且每个参数或者功能选项界面上都有详细介绍,此处由于小编只是为了测试训练,故全部选择默认选项。
在这里插入图片描述
注意:模板(Affine Regularisation)要看数据样本来源选择对应欧洲模板(European brains)或者亚洲(East Asian brains),这是根据人种不同,大脑内部结构也会有所差异。
在这里插入图片描述
选定完数据和参数功能,即可点击三角形run,紧接着Matlab命令框中会有一系列运行之后的详细过程,以及会有另外几个Command Window框(运行数据的核,进行多组数据分析时可以通过核来分组并行计算,缩短数据运行时间,至于开几个核可以在上一步选择,这里选用默认四个核,这个框不能关闭,否则可能会导致程序中断)弹出记载着运行过程和时间,不需要做任何处理,等待即可
在这里插入图片描述
最后在存储原始T1数据文件夹中会出现三个文件夹——mri(分割之后的图像)report(数据分割过程及结果存)、label。此时分割并没有完成哦!!!(这是小编犯的第一个错误,所以不能着急哦)
在这里插入图片描述
PS:至于小编此处问什么会多出现一个surf文件夹,是由于小编的Surface默认选项选了yes,某位小伙伴跑数据时就只有三个,是他告诉我在这里默认是yes,他的是no,多谢提醒。不过多了也不用在意,只是多分割了一种surface皮层数据,这个是当你做皮层统计分析SBM时需要提取surface皮层指标时会用到,这个在小编的后续教程SBM统计分析中会讲到哦。

在这里插入图片描述

分割完成的标志是在mri文件夹中只剩下四种命名的.nii文件——mwp1xxx.nii(标准化灰质体积图像)、mwp2xxx.nii(标准化白质体积图像)、p0xxx.nii(原始图像)、wmxxx.nii(剥脑&标准化T1图),如下图所示:
在这里插入图片描述
注意:由于磁共振图像数据信息量比较大,用cat12做分割处理当数据量比较大时要花费大量时间,所以不要急于去关闭所有操作界面 ,等待完成标志出现。分割完成之后就可以去查看分割图像了,可以直接用MRIcro查看。下图是同一个被试的灰质和白质分割结果:
在这里插入图片描述

3.数据预处理——质量检测QC(data quality check)

分割结束之后,我们需要对数据进行质量检测,为下一步统计分析做准备。关闭分割界面,回到cat12操作界面,下拉 Data Quality,选择Slice Display
在这里插入图片描述
进入界面可以选择四个测试样本的灰质mwp1-或白质mwp2-的.nii文件,点击proportional scaling选择yes在这里插入图片描述
点击运行之后就可以在Matlab自动弹出的figure窗中查看分割结果,如下图所示(灰质分割结果):
在这里插入图片描述
也可以看生成的report文件夹中的pdf文件,如下图例所示:
在这里插入图片描述

4.体积数据文件获取

回到cat12操作主界面,在statistical analysis部分,点击Get TIV,如图所示:
在这里插入图片描述

双击XML files进入选择.xml格式的数据(数据储存在report文件夹中)
在这里插入图片描述
接下来在Save values处选择你要获取的数据——仅需全脑体积或者全脑及各组织体积,Output file是体积保存的文件名称,可以通过点击Specify修改,选定之后点击run就可以了,在Matlab命令框中会显示数据结果,同时也会保存成文件。
在这里插入图片描述
至此,VBM的预处理工作基本完成,最重要的步骤就是分割,分割是一定要处理好,否则接下来所有的数据处理过程都可能出现问题。计算结果如下图所示:
在这里插入图片描述
最后,接下来就是做组间相关分析,请看下一篇。

参考文献

cat12-Manual(http://www.neuro.uni-jena.de/cat12/CAT12-Manual.pdf)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

基于cat12和SPM12进行VBM&SBM数据分析笔记1——数据预处理 的相关文章

随机推荐

  • 一文彻底搞懂leveldb架构

    leveldb leveldb是一个写性能十分优秀的存储引擎 xff0c 是典型的LSM tree的实现 LSM的核心思想是为了换取最大的写性能而放弃掉部分读性能 那么 xff0c 为什么leveldb写性能高 xff1f 简单来说它就是尽
  • flink核心之watermarker

    背景介绍 xff1a 现在的社会 xff0c 人们产生越来越多的数据 xff0c 而数据对每个人人都产生了巨大的影响 比如你去银行贷款 xff0c 那么必然银行要对你做信用评估 xff0c 会涉及到大数据画像等数据分析 比如美团外卖 xff
  • 我在华为度过的 “两辈子”(学习那些在大厂表现优秀的人)

    七 是一个很神奇的数字 生物学中认为组成身体的细胞 xff0c 七年会彻底更新一遍 xff1b 李笑来说 xff0c 七年就是一辈子 xff0c 每一辈子至少要习得一个重要的技能 xff0c 进而获得不可逆的重生 xff1b 白居易写道 x
  • 【Effective Java】大厂实战之考虑以静态工厂方法代替构造方法

    图片 Item1 考虑以静态工厂方法代替构造方法 Item1 考虑以静态工厂方法代替构造方法 缺点1 只提供静态工厂方法的话 xff0c 该类就无法被继承 xff08 子类化 xff09 缺点2 API的查找比较麻烦 常见静态工厂方法的命名
  • 一文搞懂leveldb写操作

    前言 leveldb一直也它优秀的写性能而文明 xff0c 本篇文章我们就来分析下leveldb的写流程 来搞懂为什么它的写性能如此优秀 整理流程 leveldb一次写入分为两部分 xff1a 第一步先将写操作写入日志 第二步将写操作应用到
  • 来聊聊对象文件网关和分布式文件存储的区别

    前言 大家都知道 xff0c 存储系统一般分为块存储 对象存储和文件存储三种 其中文件存储的使用最广泛 xff0c 个人电脑 NAS 大到传统的HPC 大数据平台等等 这些都是以使用文件接口为主 最近几年 xff0c 由于成本低 存储空间大
  • Ubuntu中文件属性以及所属用户问题

    1 xff0c 查看文件属性 xff0c 命令如下 xff1a 查看当前目录下某个文件属性 ls l lt file name gt 查看当前目录下文件属性 ls l 查看所有当前文件下属性 ls al 在开始的 rwxr xr x 为该文
  • Android8.0 屏幕旋转180度

    一般手机只能旋转3个方向 xff0c 这里将介绍如何让手机可以旋转180度 xff0c 也就是上下颠倒 1 静态方法 frameworks base core res res values config xml config allowAl
  • 深度理解go中的Map

    这里写自定义目录标题 前言map的内存模型增量扩容查找过程分析插入过程分析 前言 本篇将从底层讲解map的赋值 删除 查询 扩容的具体执行过程 结合源码 xff0c 让你彻底明白map的原理 map的内存模型 在源码中 xff0c 表示ma
  • 在职场我们该具备哪些能力

    专才or 通才 不知道大家有没有这样的感觉 xff0c 现在的工作专业化程度越来越高 xff0c 细分粒度也越来越小 IT领域分到你是计算里面的数据库或者了流式计算引擎 xff0c 或者是协议存储还是KV存储引擎 专业化的程度带来了一个好处
  • 【zabbix Java开发教程】docker部署zabbix及api获取实战教程

    文章目录 Docker安装移除旧版本的docker环境安装必要系统工具添加源信息更新yum缓存安装Docker ce 启动Docker测试运行hello world 修改源 Docker部署zabbix创建zabbix的MySQL运行zab
  • go版本分布式锁redsync使用教程

    redsync使用教程 前言redsync结构Pool结构Mutex结构acquire加锁操作release解锁操作 redsync包的使用 前言 在编程语言中锁可以理解为一个变量 xff0c 该变量在同一时刻只能有一个线程拥有 xff0c
  • Fragment实例精讲——底部导航栏的实现(3)

    转自 xff1a http www runoob com w3cnote android tutorial fragment demo3 html 本节引言 前面我们已经跟大家讲解了实现底部导航栏的两种方案 xff0c 但是这两种方案只适合
  • Android NavigationBar 背景设置成完全透明不起作用

    lt item name 61 34 android navigationBarColor 34 gt 64 android color transparent lt item gt 使用 android navigationBarColo
  • 计算机视觉CV中RANSAC算法的学习笔记~

    1 致谢 感谢网友叶晚zd的博客 xff0c 原文链接如下 xff1a https blog csdn net u013925378 article details 82907502 2 RANSAC算法介绍 随机抽样一致算法 xff08
  • 【Java】JsonArray用法

    1 解析字符串为JsonArray JSONArray jsonArray 61 JSONArray parseArray str 2 存值 jsonArray add object 3 取值 for int i 61 0 i lt jso
  • 怎么用JMeter写性能测试脚本

    JMeter 可能是应用最广泛的性能测试工具 怎么用 JMeter 编写性能测试脚本 xff1f 一 脚本制作原则 我们一般写代码 xff0c 都会有代码规范 xff0c 比如写java有java规范 xff0c 写python有pytho
  • Android MVP Contract分析

    相关文章 xff1a Android MVP Contract 谷歌官方MVP Contract分析 View 只处理UI及页面效果的细节 xff0c 向Presenter暴露更新UI的方法 xff1b 并且持有Presenter的引用 x
  • 《Flask Web开发实战》第一章初识Flask——李辉,读书笔记

    目录 第一章 初识Flask开发环境的搭建使用Pipenv管理Python包 hello Flask启动开发服务器修改默认的重载器修改配置参数实现类似flask run的命令的方式 结尾 第一章 初识Flask 本章主要介绍了一些关于Fla
  • 基于cat12和SPM12进行VBM&SBM数据分析笔记1——数据预处理

    前言 今年是小编步入研究生生活的第一年 xff0c 研究方向待定 xff0c 但主要以磁共振成像为主 xff0c 以后会不断地总结这方面的知识 xff0c 涉及MRI xff0c 数据分析基础方法理论 xff0c 软件操作教程 xff0c