使用matlab脚本进行基于spm12对于fMRI的批处理

创建批处理模板

通过matlab命令行,输入‘spm’,在spm gui上逐步添加以下参数以创建模板,先逐个将bacth editor面板添加以下模块,再单独设置参数

1. Realign:Estimate & Reslice的设置

2. Slice Timing

这批数据的TR,TA 扫描顺序 TA = TR-(1-TR/nslices),时间层顺序设置,如果有每一层的扫描时间,就将每一层的时间都写进去

3. Coregister

4. Segment

5. Normalise

以上做完之后,重点来了,点击File -> Save Batch and Script

生成matlab代码之后,再根据自己的需要编写循环代码,代码最开始是这样的,需要将被试的id加进去

subjects = [01 02]; % Replace with a list of all of the subjects you wish to analyze

user = getenv('USER'); % Will return the username for OSX operating systems

for subject=subjects

subject = num2str(subject, '%02d');

if isfile(['/Users/' user '/Desktop/Flanker/sub-' subject '/func/sub-' subject '_task-flanker_run-1_bold.nii']) == 0
    display('Run 1 has not been unzipped; unzipping now')
    gunzip(['/Users/' user '/Desktop/Flanker/sub-' subject '/func/sub-' subject '_task-flanker_run-1_bold.nii.gz'])
else
    display('Run 1 is already unzipped; doing nothing')
end

if isfile(['/Users/' user '/Desktop/Flanker/sub-' subject '/func/sub-' subject '_task-flanker_run-2_bold.nii']) == 0
    display('Run 2 has not been unzipped; unzipping now')
    gunzip(['/Users/' user '/Desktop/Flanker/sub-' subject '/func/sub-' subject '_task-flanker_run-2_bold.nii.gz'])
else
    display('Run 2 is already unzipped; doing nothing')
end

if isfile(['/Users/' user '/Desktop/Flanker/sub-' subject '/anat/sub-' subject '_T1w.nii']) == 0
    display('Anatomical image has not been unzipped; unzipping now')
    gunzip(['/Users/' user '/Desktop/Flanker/sub-' subject '/anat/sub-' subject '_T1w.nii.gz'])
else
    display('Anatomical image is already unzipped; doing nothing')
end

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值