当前位置:首页>java>fMRI数据预处理--代码实现

fMRI数据预处理--代码实现

  • 2026-10-26 15:51:55
fMRI数据预处理--代码实现
上次公众号文章写了关于整合
AFNI、FSL和ANTs做fMRI数据预处理的文章,小伙伴们都挺感兴趣,这次文章在上次公众号文章的基础上对数据预处理进行详细的解释,并附上相关的命令。

一、数据格式转换(DICOM → NIfTI)

MRI扫描仪输出的是 DICOM 格式文件。为了后续分析,需要转换为 NIfTI(.nii或.nii.gz)格式(MRIcron工具包)。

dcm2niix -o ./output_dir -f sub01_func ./DICOM_func

二、去除前若干时间点

fMRI扫描开始时,磁化信号尚未稳定,前几个时间点信号偏低或不稳定,通常去除前5–10 个TR/时间点(FSL工具包)。

fslroi func func_trimmed 10 -1

三、时间校正(Slice Timing Correction)

MRI的每个体积(volume)由多个切片(slice)顺序采集,各切片采集时间不同。该步骤将所有切片的信号时间点校正到同一时间基准,以保证时间序列同步(AFNI工具包)。

3dTshift -TR 2.0 -tpattern alt+z -prefix func_stc func_trimmed.nii

四、头动校正(Motion Correction)

被试在扫描期间会发生轻微头动,导致体素位置变化。通过配准算法将每个时间点的体积对齐到参考体积。头动参数(6个:3平移 + 3旋转),后续可作为共变量回归项(AFNI工具包)。

3dvolreg \

-prefix func_mc.nii.gz \

-base 0 \

-1Dfile motion.1D \

-1Dmatrix_save mat.aff12.1D \

-Fourier \

func_stc.nii.gz

五、配准(Coregistration)

将功能图像(低分辨率)与结构图像(高分辨率T1)对齐。保证功能信号的定位在解剖结构上准确(ANTs工具包)。

antsRegistrationSyNQuick.sh \

-d 3 \

-f T1_brain.nii.gz \

-m mean_func.nii.gz \

-o coreg_

六、标准化(Normalization)

标准化(Normalization)是将个体的结构或功能图像非线性映射到标准空间(如 MNI152),以便进行群体水平的统计分析和结果可视化 (ANTs工具包)。

(1)结构像标准化(T1 → MNI)

antsRegistrationSyN.sh \

-d 3 \

-f MNI152_T1_1mm_brain.nii.gz \

-m T1_brain.nii.gz \

-o norm_

(2) 功能图像标准化(fMRI → MNI)

antsApplyTransforms \

-d 3 \

-e 3 \

-i func_coreg.nii.gz \

-r MNI152_T1_2mm_brain.nii.gz \

-o func_MNI.nii.gz \

-t norm_1Warp.nii.gz \

-t norm_0GenericAffine.mat

七、空间平滑(Spatial Smoothing)

空间平滑(Spatial Smoothing)是在空间维度上对 BOLD 图像进行高斯滤波,提高信噪比(减少高频噪声),满足统计分析的随机场理论假设(如SPM的随机场推断)弥合不同受试者的解剖差异,改善空间连续性,使统计信号更稳健(AFNI工具包)。

3dBlurToFWHM \

-input func_MNI.nii.gz \

-FWHM 6.0 \

-automask \

-prefix func_MNI_smooth.nii.gz \

-blurmaster func_MNI.nii.gz

八、共变量回归 + 时间滤波

头动影响(6个运动参数)、生理噪声(白质WM、脑脊液CSF信号)、低频漂移 / 高频噪声(AFNI工具包)。

3dTproject \

-input func_MNI_smooth.nii.gz \

-mask brain_mask.nii.gz \

-ort motion.1D \

-ort WM_CSF.1D \

-bandpass 0.01 0.1 \

-blur 0 \

-polort 2 \

-prefix func_MNI_clean.nii.gz

九、最后附上Matlab整合代码

(1)生成文件命名

(2)预处理代码

最后,有数据处理方面的疑问和讨论其他科研问题可以后台私信我呦。


最新文章

随机文章