在装好docker后,一般会用pip安装fmriprep-docker方便调用(前提是这需要你配置好python的环境变量)。
将以下代码保存为fmriprep_singleSubj.sh文件,所有中文注释下的参数都需检查并更改。
#!/bin/bash
#Template provided by Daniel Levitas of Indiana University
#Edits by Andrew Jahn, University of Michigan, 07.22.2020
#Supplement by yang 2023/4/27 只有中文注释下的代码需要了解及更改
#User inputs:
#修改成自己BIDS格式数据的根目录
bids_root_dir=/media/yoyimiya/2E7A4E6C7A4E313F/postgraduate/fMRIanalysis/flanker
#要跑哪一个被试的数据
subj=08
#线程数 根据CPU核心修改
nthreads=4
#根据自己电脑内存大小修改
mem=12 #gb
#Begin:
#Convert virtual memory from gb to mb
mem=`echo "${mem//[!0-9]/}"` #remove gb at end
mem_mb=`echo $(((mem*1000)-5000))` #reduce some memory for buffer space during pre-processing
#export license
#导入freesurfer的license 做surface based analysis才用得到 但必须填
export FS_LICENSE=/media/yoyimiya/2E7A4E6C7A4E313F/postgraduate/fMRIanalysis/fmriprep_license/license.txt
#Run fmriprep
fmriprep-docker $bids_root_dir $bids_root_dir/derivatives \
participant \
--participant-label $subj \
--skip-bids-validation \
--md-only-boilerplate \
--fs-license-file $FS_LICENSE \
--fs-no-reconall \
--output-spaces MNI152NLin2009cAsym:res-2 \
--nthreads $nthreads \
--stop-on-first-crash \
--mem_mb $mem_mb
你必须了解的一些参数,更多的参数可参考:
- bids_root_dir:BIDS数据的根目录;
- bids_root_dir/derivatives:结果的输出目录;
- --participant-label:要处理的被试序号,如有多个以空格分开(多个一般采取批处理,不在此修改);
- --fs-no-reconall:不使用freesurfer进行表面预处理;
- --output-spaces:2009c无特定要求不用改;
在终端运行该文件,然后就会在flanker/derivatives文件夹下生成很多过程文件(后续会解读):
重点关注sub-08.html(本案例中)导航栏最右侧的Errors点击它,如果显示No errors to report!,那么恭喜你已经成功运行了fmriprep!