DTI(dwi)使用FSL做预处理及做TBSS处理流程(fsleyes查看结果)

DWI与DTI数据预处理及TBSS处理
  • 预处理
    刚开始我用的数据初始文件是多个dcm格式的文件,当时我从格式转换、提取b0、 波脑、涡流、计算张量下来是没有问题的。后来我用dwi的文件(包含四维的.nii.gz、bvec、bval文件),用上面的流程发现中间有个文件生成不了,于是又找了别的方法才搞定。不过结果都是一样的,反正就是生成FA嘛。
    1.处理dcm格式文件
    格式转换:

     dcm2nii *.dcm
    

    提取b0:

     fslroi file2 b0 0 -1 0 -1 0 -1 0 1
    

    波脑:

     bet2 b0.nii.gz nodif_brain -m -f 0.3
    

    涡流矫正:

     eddy_correct file2 data 0
    

    计算张量:

     dtifit --data=data.nii.gz --out=data --mask=nodif_brain_mask.nii.gz --bvecs=bvecs --bvals=bvals
    

    这里需要注意的是,dcm文件有丢帧往往是生成不了FA的,另外用脚本做预处理计算张量这一步要注意bvec和bval文件的文件名。

    2.处理四维dwi的文件(必须包含一个四维的.nii.gz文件、一个bvec文件和一个bval文件)
    配准(data.nii.gz为四维文件名),生成mcf文件:

     mcflirt -in data.nii.gz -refvol 0
    

    涡流矫正:

     eddy_correct *mcf.nii.gz data_cor.nii 0
    

    图片分割(4D-3D):

     fslsplit data_cor.nii.gz
    

    生成b0:

     mv vol0000.nii.gz b0.nii.gz
    

    波脑:

     bet b0 nodif_brain -f 0.3 -m
    

    计算张量:

     dtifit -k data_cor -o dti -m nodif_brain_mask -r *.bvec -b *bval
    

    删除多余的vol文件:

     rm -f vol*.*
    
  • TBSS处理
    DTI处理过程网上教程很多,我只写下fsleyes的命令,具体内容就不多介绍了。

    创建FA目录:

     tbss_1_preproc *.nii.gz
    

    非线性配准(好像并没有得到配准结果,只有一个target和一个mask文件,但大小明显不是):

     tbss_2_reg -T
    

    平均FA骨架(做完这一步突然发现上一步的配准结果有了):

     tbss_3_postreg -S
    

    阈值限制:

     tbss_4_prestats 0.2
    

    体素统计(第二行10为正常人数量,20为非正常人数量,如果数据量大可以把第三行的500改成更高):

     cd ../stats
     design_ttest2 design 10 20
     randomise -i all_FA_skeletonised -o tbss -m mean_FA_skeleton_mask -d design.mat -t design.con -n 500 --T2
    

    查看结果(-cm表示颜色,-dr表示范围,范围中间没有逗号):

     fsleyes $FSLDIR/data/standard/MNI152_T1_1mm mean_FA_skeleton -cm Green -dr 0.2 0.7 tbss_tfce_corrp_tstat1 -cm Red-Yellow -dr 0.95 1
    

    结果增厚:

     tbss_fill tbss_tfce_corrp_tstat1 0.95 mean_FA tbss_fill
     fsleyes mean_FA -dr 0 0.6 mean_FA_skeleton -cm Green -dr 0.2 0.7 tbss_fill -cm Red-Yellow
    

    如果0.95到1之间没有结果,可以降低一下试试看,比如0.9。在样本量很少的情况下,单个样本标记出错(把病人标记成对照或者把对照标记成正常人)会带来极大的影响,本人在这方面吃过亏,100多个数据采用二分法做了很多次处理,才发现其中一个数据在预处理过程中出了点问题。也得出教训是,同一批数据预处理后FA数据大小是差不多的,如果有很小或者很大的,建议排除掉。
    另外,类似于TBSS的传统统计方法做的结果个人感觉可信度不是很高,没有结果不代表真的没有区别,可以试试别的办法。有结果…那就恭喜你能出成果了!

### 使用FSL工具和技术对DWIDTI、DKI数据进行预处理 #### 准备工作环境 为了有效地利用FSL工具集来处理扩散加权成像(DWI),弥散张量成像(DTI)以及扩散峰度成像(DKI)数据,确保安装并配置好FSL软件包是非常重要的。通常情况下,在Linux或macOS操作系统上可以通过命令行界面访问这些功能。 #### 加载必要的模块和设置路径变量 如果是在集群环境中运行,则可能还需要加载特定版本的FSL模块,并相应调整PATH和其他环境变量: ```bash module load fsl/6.0.4 # 或者其他适用版本号 export PATH=/usr/local/fsl/bin:$PATH source ${FSLDIR}/etc/fslconf/fsl.sh ``` #### 预处理流程概述 对于不同类型的数据(如DWI, DTI, DKI),虽然具体的参数有所不同,但是基本的预处理步骤大体相似,主要包括以下几个方面[^1]: - **运动校正与涡流伪影去除** 这一步骤旨在消除由于受试者的头部移动造成的图像失真问题,同时也减轻由梯度场引起的涡流效应带来的影响。可以使用`eddy`命令来进行此操作: ```bash eddy --imain=dwi.nii.gz \ --mask=bet_mask.nii.gz \ --acqp=acqparams.txt \ --index=index.txt \ --bvecs=bvecs_original \ --bvals=bvals \ --out=eddy_corrected_dwi ``` - **脑提取** 利用`bet2`函数可以从原始MRI扫描中分离出大脑区域,从而提高后续分析的质量: ```bash bet2 dwi.nii.gz brain_extracted -f 0.3 -g 0 ``` - **偏置场矫正** 对于某些类型的序列来说,可能存在强度不均匀的情况,这会影响最终的结果解释。因此建议采用N4BiasFieldCorrection或其他方法对其进行修正: ```bash N4BiasFieldCorrection -d 3 -i input_image.nii.gz -o output_corrected.nii.gz ``` 请注意上述代码片段中的文件名应替换为实际使用数据名称;此外,针对不同模态的具体情况可能会有所差异,比如DKI相比于传统的DTI模型增加了高阶项用于描述非高斯分布特性,所以在构建纤维束追踪之前还需额外考虑这一点。 #### 后续分析准备 完成以上基础性的预处理之后,就可以进一步开展基于各向异性分数(FA), 平均弥散率(MD)等指标的地图绘制或是更复杂的白质连接组学研究了。
评论 22
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值