fmriprep2

news2024/12/22 15:32:14

一. sub-subXXX文件夹 + sub-subXXX.html

在这里插入图片描述

二. sub-subXXX文件夹

sub-sub097 /
anat /
figures /
func /
log /

anat /

在这里插入图片描述
在这里插入图片描述
anat文件夹内文件比较多,文件命名规则遵守BIDS要求( https://bids-specification.readthedocs.io/en/stable/05-derivatives/01-introduction.html).

  1. desc-aparcaseg_dseg.nii.gz 皮层+皮层下分割(以皮层为主)
  2. desc-aseg_dseg.nii.gz 皮层下分割
  3. desc-brain_mask.nii.gz 脑罩 / 掩码
  4. desc-preproc_T1w.nii.gz 没有去头骨的T1加权像
  5. desc.nii.gz
  6. label-CFS_probseg.nii.gz 分割的脑脊液
  7. label-GM_probseg.nii.gz 分割的灰质
  8. label-WM_probseg.nii.gz 分割的白质
    这些都是预处理的过程文件,是在被试原始空间。
  9. from-fsnative_to-T1w_mode-image_xfm.txt
  10. from-MNI152NLin6Asym_to-T1w_mode-image_xfm.h5
  11. from-MNI152NLin2009cAsym_to-T1w_mode-image_xfm.h5
  12. from-T1w_to-fsnative_mode-image_xfm.txt
  13. from-T1w_to-MNI152NLin6Asym_mode-image_xfm.h5
  14. from-T1w_to-MNI152NLin2009cAsym_mode-image_xfm.h5
    这些是被试空间到原始空间,原始空间到被试空间的转换。2009c是freesurfer的模板,6是FSL的模板。
  15. hemi-L_inflated.surf.gii
  16. hemi-L_midthickness.surf.gii
  17. hemi-L_pial.surf.gii
  18. hemi-L_smoothwm.surf.gii
    这些是被试原始空间的皮层数据。(from-fsnative_to-T1w_mode-image_xfm.txt等是转换矩阵)。
  19. space-MNI152NLin2009cAsym_res-2_desc-brain_mask.nii.gz
  20. space-MNI152NLin2009cAsym_res-2_desc-preproc_T1w.nii,gz
  21. space-MNI152NLin2009cAsym_res-2_desc.nii.gz
  22. space-MNI152NLin2009cAsym_res-2_label-CSF_probseg.nii.gz
  23. space-MNI152NLin2009cAsym_res-2_label-GM_probseg.nii.gz
  24. space-MNI152NLin2009cAsym_res-2_label-WM_probseg.nii.gz
    这里sapce就是MNI152NLin2009cAsym空间,而res-2是resolution 2mm分辨率的意思。

func/ 文件夹

在这里插入图片描述

  1. space-MNI152NLin2009cAsym_res-2_boldref.nii.gz 标准空间目标分辨率bold参考像
  2. space-MNI152NLin2009cAsym_res-2_desc-aparcaseg_dseg.nii.gz
  3. space-MNI152NLin2009cAsym_res-2_desc-aseg_dseg.nii.gz
  4. space-MNI152NLin2009cAsym_res-2_desc-preproc_bold.nii.gz
    这些都是标准空间MNI152NLin2009cAsym和目标分辨率2mm的预处理数据

Freesurfer文件夹输出

Recon-all 从三维体积重建二维皮质表面。从 MRI 扫描仪收集的图像是三维块,这些图像通过 recon-all 转换为光滑、连续的二维表面。
Recon-all 首先从解剖图像中剥离头骨以生成名为brainmask.mgz,估计两个半球的白质和灰质之间的界面存储在名为lh.orig和rh.orig的文件中。这个初始估计经过改进,然后保存到名为lh.white和rh.white的文件中。然后将此边界用作基础,生成软脑膜表面数据lh.pial和rh.pial。
在这里插入图片描述
为了更容易地看到激活图位于脑沟岸和脑回脊的位置,可以进一步生成膨胀球体lh.inflated和rh.inflated数据集。
freesurfer文件夹输出包括:label, mri, scripts, stats, surf, temp, touch, trash。
最后三个基本不用管:temp, touch, trash。
label文件夹放的是atlas地图集,可以简单理解为ROI。
mri文件夹放的是volume级别的数据。例如mask脑罩,去除头骨的T1像,皮层下分割等。
scripts文件夹放的是运行recon-all过程中的所有log,可以在这里查看recon-all是否存在异常。
stats文件夹放的是结构分割的统计,例如皮层分割(parcellation)的厚度或体积以及皮层下分割(segmentation)的厚度或体积。
值得注意的是,aseg里面的丘脑、海马等体积是错误的,建议不要使用。如果要分析这类,应该单独进行体积生成
surf文件夹放的是皮层文件夹。
所有输出文件data都是在被试原始空间进行的,即ref fsaverage。如果要cross subjects对比,可以使用较低一点的fsaverage模板,如fsaverage5,可以使用 mri_surf2surf / mri_label2label,或者R中也可以实现。

DPABISurf 7.0 中的处理过程:
fastfreesurfer: %!docker run -ti --rm -v /mnt/Data45/RfMRILab/yan/YAN_Work/DPABIUpdating/Program/DPABI_V6.1_220101/DPABISurf/FreeSurferLicense/license.txt:/opt/freesurfer/license.txt -v /mnt/Data45/RfMRILab/yan/YAN_Work/DPABIUpdating/DPABISurf/FastSurferDev/Work/datatest2:/data cgyan/dpabidev /opt/fastsurfer/run_fastsurfer.sh --fs_license /opt/freesurfer/license.txt --t1 /data/BIDS/sub-Sub001/anat/sub-Sub001_T1w.nii --sid sub-Sub001 --sd /data/freesurfer --threads 1

fmriprep:
皮层下分割,mgz2niigz:‘%s parallel -j %g mri_convert %s/freesurfer/{1}/mri/rh.hippoAmygLabels.HBT.FSvoxelSpace.mgz %s/Results/AnatVolu/T1wSpace/{1}/{1}_Subregions_rh.hippoAmygLabels.HBT.FSvoxelSpace.nii.gz ::: %s’, …

DirFile=dir(fullfile(Cfg.WorkingDir,‘Results’,‘AnatVolu’,‘MNISpace’,Cfg.SubjectID{i},[Cfg.SubjectID{i},‘*space-MNI152NLin2009cAsymlabel-WM_probseg.nii’]));
File=fullfile(Cfg.WorkingDir,‘Results’,‘AnatVolu’,‘MNISpace’,Cfg.SubjectID{i},DirFile(1).name);

结构像:(详见y_Organize_fmriprep.asv)
标准空间:
‘%s parallel -j %g mri_surf2surf
–srcsubject {1}
–trgsubject fsaverage
–hemi lh
–sval %s/freesurfer/{1}/surf/lh.thickness
–tval %s/Results/AnatSurfLH/fsaverage/Thickness/{1}_space-fsaverage_hemi-L.thickness.gii ::: %s’,
CommandInit, Cfg.ParallelWorkersNumber, WorkingDir, WorkingDir, SubjectIDString
原始空间 native space:
Thicnkness:
‘%s parallel -j %g mris_convert
-c %s/freesurfer/{1}/surf/lh.thickness
%s/freesurfer/{1}/surf/lh.white
%s/Results/AnatSurfLH/fsnative/Thickness/{1}_space-fsnative_hemi-L.thickness.gii ::: %s’,
CommandInit, Cfg.ParallelWorkersNumber, WorkingDir, WorkingDir, WorkingDir, SubjectIDString
Area:
‘%s parallel -j %g mris_convert
-c %s/freesurfer/{1}/surf/lh.area
%s/freesurfer/{1}/surf/lh.white
%s/Results/AnatSurfLH/fsnative/Area/{1}_space-fsnative_hemi-L.area.gii ::: %s’,
CommandInit, Cfg.ParallelWorkersNumber, WorkingDir, WorkingDir, WorkingDir, SubjectIDString
Curv:
‘%s parallel -j %g mris_convert
-c %s/freesurfer/{1}/surf/lh.curv
%s/freesurfer/{1}/surf/lh.white
%s/Results/AnatSurfLH/fsnative/Curv/{1}_space-fsnative_hemi-L.curv.gii ::: %s’,
CommandInit, Cfg.ParallelWorkersNumber, WorkingDir, WorkingDir, WorkingDir, SubjectIDString
**解释:mris_convert是freesurfer的函数,其用法为 ** mris_convert [-c curvinfilepath] [-o origfilepath] [-p] [-t] infilepath outfilepath。正如我们之前讲的,lh.orig(黄色部分)是最开始的粗略估计,计算半球白质和灰质之间的界限在哪里,然后在此基础上,进行再一次改善的估计,就是lh.white(蓝色部分),这就是完成的白质边界,然后最后根据这个搜索灰质边缘,生成第三个,即lh.pial(红色部分)。用这些就能计算各种皮层曲率指标了。
总结:如果是要native space的指标,用mris_convert可以在多个曲率指标间转换。把Area等resample到被试native space的white就是native space的area指标。把Area等resample到fsaverage5等的white就是standard space的area指标。
在这里插入图片描述

转换至原始空间:
文件:RefFile=[Cfg.WorkingDir,filesep,‘Masks’,filesep,‘AutoMasks’,filesep,Cfg.SubjectID{i},‘_task-rest_space-T1w_desc-brain_mask.nii.gz’];
转换矩阵:TransformFile=[Cfg.WorkingDir,filesep,‘fmriprep’,filesep,Cfg.SubjectID{i},filesep,‘anat’,filesep,Cfg.SubjectID{i},‘_from-MNI152NLin2009cAsym_to-T1w_mode-image_xfm.h5’];
转换命令(y_WarpByANTs(SourceFile,MaskName,RefFile,TransformFile,Interpolation,Dimensionality,InputImageType,DefaultValue,IsFloat0,DockerName:Fiber-subfunctions)
antsApplyTransforms
–default-value 0
–dimensionality 3
–float 0
–input /DPABI/Templates/HarvardOxford-sub-maxprob-thr25-2mm_YCG.nii
–interpolation MultiLabel
–output /data/Masks/MasksForDwi/T1Space_sub-Sub001_HarvardOxford-sub-maxprob-thr25-2mm_YCG.nii
–reference-image /data/qsiprep/sub-Sub001/dwi/sub-Sub001_space-T1w_desc-preproc_dwi.nii.gz
–transform /data/qsiprep/sub-Sub001/anat/sub-Sub001_from-MNI152NLin2009cAsym_to-T1w_mode-image_xfm.h5
即有了转换矩阵,desc-preproc.T1w.nii.gz,就能把标准图像转换为原始空间图像,用的是antsApplyTransforms命令。

平滑:
DirName=dir(fullfile(Cfg.WorkingDir,[FunSessionPrefixSet{iFunSession},Cfg.StartingDirName],Cfg.SubjectID{1},‘_hemi-L.func.gii’));
命令:mri_surf2surf --s %s --hemi lh --sval %s/%s%s/{1}/{1}%s --fwhm %g --cortex --tval %s/%s%sS/{1}/s{1}%s ::: %s
这个hemi-L*.func.gii都是fsaverage5的标准空间。

计算alff:
mkdir([Cfg.WorkingDir,filesep,FunSessionPrefixSet{iFunSession},‘Results’,filesep,‘FunSurfLH’,filesep,‘ALFF_’,Cfg.StartingDirName]);
DirName=dir(fullfile(Cfg.WorkingDir,[FunSessionPrefixSet{iFunSession},Cfg.StartingDirName],Cfg.SubjectID{i},‘_hemi-L.func.gii’));
这个hemi-L*.func.gii都是fsaverage5的标准空间,计算完成之后,进行改名。

原始空间计算ROI:
mri_surf2surf --srcsubject fsaverage5 --trgsubject {1} --mapmethod nnf --hemi rh --sval %s/Masks/MasksForFun/Masks_fsaverage5Space/%s%s --tval %s/Masks/MasksForFun/Masks_fsnativeSpace/%sMaskFile_%g_{1}_%s.gii ::: %s’, CommandInit, Cfg.ParallelWorkersNumber, WorkingDir,name, ‘.gii’,

结果整理:
mkdir([Cfg.WorkingDir,filesep,Cfg.StartingDirName,‘W’,filesep,‘AnatSurfLH’]);
movefile([Cfg.WorkingDir,filesep,Cfg.StartingDirName,filesep,‘AnatSurfLH’,filesep,‘fsaverage’],[Cfg.WorkingDir,filesep,Cfg.StartingDirName,‘W’,filesep,‘AnatSurfLH’]);
movefile([Cfg.WorkingDir,filesep,Cfg.StartingDirName,filesep,‘AnatSurfLH’,filesep,‘fsaverage5’],[Cfg.WorkingDir,filesep,Cfg.StartingDirName,‘W’,filesep,‘AnatSurfLH’]);

mkdir([Cfg.WorkingDir,filesep,Cfg.StartingDirName,‘W’,filesep,‘AnatVolu’]);
movefile([Cfg.WorkingDir,filesep,Cfg.StartingDirName,filesep,‘AnatVolu’,filesep,‘MNISpace’],[Cfg.WorkingDir,filesep,Cfg.StartingDirName,‘W’,filesep,‘AnatVolu’]);

case {‘FunSurfLH’,‘FunSurfRH’}:mri_surf2surf --srcsubject %s --trgsubject %s --hemi lh --sval %s/%s/FunSurfLH/%s/{1} --tval %s/%sW/FunSurfLH/%s/w{1} ::: %s’。

总结:
fmriprep处理以后,会有anat和func文件夹。
在被试anat文件夹里,大致分为4类文件。第一类是native space的预处理文件。包括aparc+aseg的分割文件,brainmask文件,预处理以后的T1w文件,dseg分割文件,CSF, GM, WM文件。第二类是各种native space到standard space的转换矩阵。第三类是native space的皮层gii文件,如inflated, midthickness, pial等。第四类是标准空间的预处理文件。包括brainmask文件,预处理以后的T1w文件,CSF, GM, WM文件。
在被试func文件夹里,大致分为3类文件。第一类是噪音文件。如AROMAnoiseICs.csv等。第二类是转换文件,即被试的bold空间到T1夹权空间。第三类是fsaverage5的皮层gii文件。第四类是标准空间MNI152的预处理文件,如smoothAROMAnonaggr_bold, boldref, aparcaseg, aseg, brainmask, preproc_bold。

在严老师的DPABI软件中,

  1. 先根据segmentation的结果,生成mask,存储在Masks/SegmentationMasks/FunSpace_ThrdMask_subXX_WM.nii当中(如果之前没有这个,可以通过fmriprep的desc-brain_mask.nii.gz生成)。或者是根据segmentation的结果,生成标准空间mask,存储在Masks/SegmentationMasks/MNIFunSpace_ThrdMask_subXX_WM.nii当中(如果之前没有这个,可以通过fmriprep的space-MNI152-brain_mask.nii.gz生成)。
    除此以外,还单独制作了warp功能,能从T1到MNI的转换,只需要有转换矩阵放进antsApplyTransforms当中。
  2. 当Masks准备好以后,首先把mask进行重采样resample,生成ALLResampled_XX.nii文件。
  3. 移除协变量、头动等混淆变量
  4. 将*_hemi-L*.func.gii使用mri_surf2surf进行平滑(在平滑中,space是根据上一阶段制定的,要么是原始空间——应该是fsaverage native space,我猜的——平滑,要么是fsaverage5空间平滑),然后单独提取到s的文件夹中。
  5. 计算功能性指标ALFF等指标时,使用第1-2步的皮层空间和体空间的Masks,用*_hemi-L*.func.gii文件进行计算。
  6. 计算结构像等指标时,使用mri_surf2surf功能,将freesurfer文件夹下的sub001的surf文件夹的lh.thickness作为INPUT,trgsubject为fsaverage或fsaverage5,把被试native surf space对齐到fsaverage当中去,然后移动到Results/AnatSurfRH/fsaverage/Thickness/sub001_space-fsaverage_hemi-R.thickness.gii,或者是Results/AnatSurfRH/fsaverage5/Thickness/sub001_space-fsaverage_hemi-R.thickness.gii

声明,以上开源代码仅供个人学习使用,不用于任何商业行为

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【国内chatgpt使用方法合集】

写在前面 Hello大家好, 我是【麟-小白】,一位软件工程专业的学生,喜好计算机知识。希望大家能够一起学习进步呀!本人是一名在读大学生,专业水平有限,如发现错误或不足之处,请多多指正&#xff0…

2023_4_23_VS下Release怎么打断点进行debug

🍿*★,*:.☆( ̄▽ ̄)/$:*.★* 🍿 💥💥💥欢迎来到🤞汤姆🤞的csdn博文💥💥💥 💟💟喜欢的朋友可以关注一下&#xf…

MySQL——流程控制函数

在 MySQL 中,流程控制函数是指可以控制存储过程(stored procedure)或函数(function)中执行流程的语句。以下是几个常用的流程控制函数: 1. IF函数 实现IF……ELSE……的效果。 # 如果expr1为true&#x…

深入探究java中的 xxxable和xxxator

前言 相信有一定工作经验的朋友,都见过或者用过xxxable和xxxator ,比如常见的Comparable和Comparator, 还有还有常见并且容易迷糊的Iterable和Iterator, 看这名字,前两个是和比较相关的, 后两个是和迭代相关. 但是命名如此相似的接口, 又有何区别呢?各自的用途又是什么呢? 今…

详解车载设备FOTA测试

作者 | 李伟 上海控安安全测评部总监 来源 | 鉴源实验室 引言:上一篇文章我们以车载Tbox为例介绍了相关的性能测试(车载TBOX嵌入式设备软件的性能测试),本篇我们介绍另外一个重要功能的专项测试:OTA(Over…

MySQL安装及卸载

安装 mysql现在安装的是5.7.mysql的安装方式有两种: 一种是exe方式 另外一种解压版 这次就使用解压版安装 解压缩到非中文目录 编写配置文件 1) 在安装目录下新建my.ini的配置文件 打开文件后缀和隐藏文件显示 2) 新建文件内编写内容 [Client] port 3306 [mysqld] #设置330…

【移植Ardupilot的日志记录方法到linux上】

移植Ardupilot的日志记录方法到linux上 说明日志结构组成日志写入操作预定义日志项运行时添加日志项的方法 单例测试编译方法查看数据其他 说明 采用二进制文件记录,可在mission planer查看 支持所有数据类型记录精巧移植方便可直接在地面站绘制曲线查看可导出生成…

觉非科技发布:基于BEV的数据闭环融合智驾解决方案

2023年上海车展期间,觉非科技基于BEV的数据闭环融合智能驾驶解决方案正式发布。 该方案可通过量产车BEV的实时感知结果,提供完整的城市Map-lite及Map-free数据闭环融合解决方案,并满足城市NOA、记忆通勤/泊车以及感知大模型训练的需要。 车…

OSPF基础配置实验

目录 一、实验要求与拓扑结构 1、实验要求 2、提前规划好的网段以及拓扑结构如下图 二、实验步骤 1、给各个路由器的每个接口配ip 2、运行ospf协议并划分区域 一、实验要求与拓扑结构 1、实验要求 首先划分区域,蓝色区域为Area 0,黄色区域为Area…

MyBatis(十五)MyBatis的逆向工程

前言、 所谓的逆向工程是:根据数据库表逆向生成Java的pojo类,SqlMapper.xml文件,以及Mapper接口类等。 要完成这个工作,需要借助别人写好的逆向工程插件。 思考:使用这个插件的话,需要给这个插件配置哪些…

基于 TensorRT 使用 python 进行推理优化

文章大纲 简介TensorRT 简介构建测试的conda 环境注意事项TensorRT 安装参考文献与学习路径简介 TensorRT 简介 TensorRT是NVIDIA推出的一个高性能的深度学习推理框架,可以让深度学习模型在NVIDIA GPU上实现低延迟,高吞吐量的部署。TensorRT支持Caffe,TensorFlow,Mxnet,P…

【Python】实战:生成无关联单选问卷 csv《压疮风险评估表》

目录 一、适用场景 二、业务需求 三、Python 文件 (1)创建文件 (2)代码示例 四、csv 文件 一、适用场景 实战场景: 问卷全部为单选题问卷问题全部为必填问题之间无关联关系每个问题的答案分数不同根据问卷全部问…

FPGA基于XDMA实现PCIE X8采集AD7606数据 提供工程源码和QT上位机程序和技术支持

1、前言 PCIE(PCI Express)采用了目前业内流行的点对点串行连接,比起 PCI 以及更早期的计算机总线的共享并行架构,每个设备都有自己的专用连接,不需要向整个总线请求带宽,而且可以把数据传输率提高到一个很…

倍数+路径之谜

倍数 :用户登录https://www.lanqiao.cn/problems/583/learning/?page5&first_category_id1&sortstudents_count 题目描述 本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。 请问在 1 到 2020 中,有多少个…

Java十大排序算法

排序算法 对一序列对象根据某个关键字进行排序 (1)稳定性 在排序中对于相等的两个元素a、b。如果排序前a在b的前边,排序之后a也总是在b的前边。位置不会因为排序而改变称之为稳定。反之,如果排序后a、b的位置可能会发生改变&am…

Java线程池从入门到精通(线程池实战)

参考 java常用线程池及它们的适用场景(JDK1.8) Java线程与线程池实战 线程池的拒绝策略_线程池 RejectedExecutionHandler 拒绝策略 ThreadPoolExecutor原理解析-关闭线程池 代码经验—java获取cpu个数-docker 一、概念 Java 中的线程池核心实现类是 …

鉴源论坛 · 观模丨面向界面的图形化测试技术

作者 | 熊一衡 华东师范大学软件工程学院博士 苏亭 华东师范大学软件工程学院教授 版块 | 鉴源论坛 观模 01 什么是面向界面的图形化测试(GUI Testing) 图形用户界面(GUI) 是一种通过图形化方式呈现信息、数据、功能和操作的用户界面,旨在…

一起学 WebGL:三角形加上渐变色

大家好,我是前端西瓜哥。之前教大家绘制一个红色的三角形,这次我们来画个有渐变的三角形。 本文为系列文章,请先阅读如何绘制红色三角形的文章: 《一起学 WebGL:绘制三角形》 原来的写法,颜色是在片元着色器…

移动边缘计算意味着真正的5G时代已经来临

5G的承诺尚未实现,但现在宣布其失败还为时过早。DataBank首席执行官劳尔k马丁尼克(Raul K. Martynek)表示 ,真正的5G正在通过移动边缘计算实现,而数据中心将成为其中的核心。 在美国所有主要的移动运营商都在大力宣传他们在全美范围内提供无…

STM32-移植RTT

目录 Cubemx引入RTT资源新建工程生成工程 时钟选择选单片机引脚引脚搜索快速选中取消引脚选中引脚命名IO普通模式设置 串口串口基本配置串口DMA ADC采集ADC基本应用ADC_DMA RTT-shell指令定义RTTCOM调试串口J-Link RTT调试 教程shell指令RTT外设驱动使用1--串口添加 STM32_pwm …