项目成员:朱珊珊(南京师范大学)、王金琪(北京语言大学)、陈婉婷(浙江理工大学)、何丹妮(华东师范大学)、葛铠诚(浙江理工大学)、闫石(北京师范大学)、王文常(安徽医科大学)
python -m pip install --user --upgrade fmriprep-docker
fMRIPrep package(示例代码,具体命令行的参数、github链接)
参考论文:
fMRIPrep: a robust preprocessing pipeline for functional MRI | Nature Methods
MRIPrep输出符合BIDS Derivatives 规范(参见BIDS Derivatives以及即将推出的BEP 011和BEP 012)。fMRIPrep产生三类结果:
可以参考的代码脚本:
https://github.com/nipreps/fmriprep/blob/master/docs/workflows.rst
结构像预处理:
目的:提高图像质量:去除由于磁场不均匀性引起的伪影,如图像中的条纹或斑块。增强分析准确性:在进行统计分析或机器学习算法之前,校正INU可以减少由于强度变化引起的假阳性或假阴性结果,从而提高研究结果的准确性。
问题特征:不均匀的信号强度、条纹伪影、模糊、噪声、边缘模糊、对比度不足、伪影、失真、不完整的覆盖范围、色彩偏差、分辨率不足、动态范围有限、伪影的模式。
工具:SPM&(https://www.fil.ion.ucl.ac.uk/spm/)FSL(https://fsl.fmrib.ox.ac.uk),fMRIPrep 会自动调用 FSL 的'fsl_biascorrect'函数来执行 INU 校正。
优点:正确执行INU校正对于提高后续图像分析步骤的准确性至关重要,因为它能够显著改善图像质量,减少由于磁场不均匀性引起的伪影。这些伪影如果不被校正,可能会被误认为是真实的生物学信号,从而影响后续分析的准确性。所以INU校正通常放在图像预处理较靠前的位置。
Note:首先应该评估之前的处理是否到位,校正前可以先进行视觉检查,如果说原本有较大的头动就应先解决由于运动引起的问题,应适度进行校正,并在必要时进行手动检查。校正后,应通过视觉检查和/或使用质量控制工具来验证校正的效果。比较校正前后的图像,确保校正后的图像质量得到改善。
Fuse:对齐,然后进行融合(即对齐后平均)以生成一个单一的平均图像。目的是为了减少随机噪声,提高图像的平均来提高信噪比,以便用于后续的空间归一化和配准等步骤。
Conform:在这个步骤中,fMRIPrep会将图像调整为一致的方向(通常是右-前-上的方向)和体素大小。目的是为了保证图像的空间属性一致,使得后续的处理步骤(如配准到标准空间)在相同的空间框架下进行,减少由于方向或体素大小不一致而导致的误差。
Note:fMRIPrep中会根据输入的数据和元数据自动决定是否执行这些操作,并且自动完成所需处理任务。fMRIPrep会检测每张图像的分辨率、方向和体素大小。
注意点:尽可能使用相同扫描序列生成的T1w图像,以减少在Conform步骤中进行大幅调整。
目的:从脑部影像数据中去除非脑组织(如头骨、头皮和其他非脑组织),以便专注于大脑组织的分析。
优点:减少噪声和伪影,优化图像配准,改善脑组织分割以及提高绩效效率。
默认处理(fMRIprep):antsBrainExtraction.sh
处理顺序:Skull-stripping 在 T1 加权图像预处理中通常放在靠前的步骤,通常在图像重采样和对比度增强之后,但在后续的图像配准、分割和其他分析步骤之前进行。
原因:减少对配准算法的干扰,优化配准结果;保证在segment中只对脑组织进行,减少伪影和噪声对分割结果的影响,提高分析精准性。
(1)over-stripping;(2)under-stripping
问题可能来源:不同扫描仪不同分辨率的数据,脑内肿瘤等。
可应对策略:多算法结合:结合多种 Skull-stripping 方法或使用集成算法,以提高准确性和鲁棒性。手动校正:在自动化处理后进行必要的人工校正,确保去骨效果。数据预处理:提升原始图像质量,如去噪、校正运动伪影等,以辅助 Skull-stripping 的准确性
目的:使多个个体的大脑更像;为后续的跨受试者比较、群体分析等提供了一个统一的坐标框架。
使用的工具:ANTs’ antsRegistration
fmriPrep中脚本设置:
fmriprep /path/to/BIDS_dataset /path/to/output_dir participant --participant-label sub-01 --fs-license-file /path/to/license.txt --output-spaces MNI152NLin2009cAsym
/path/to/BIDS_dataset
: 你的数据集所在的目录,遵循 BIDS 格式。/path/to/output_dir
: 输出目录,用于存放处理后的数据。
participant
: 指定处理级别(在个体层面进行处理);该参数为默认值,可省略;
--participant-label sub-01
: 指定处理的受试者编号,例如 sub-01。
--fs-license-file /path/to/license.txt
: FreeSurfer 许可文件的路径。
--output-spaces MNI152NLin2009cAsym
: 指定空间归一化的目标空间,这里选择了 MNI152 非线性标准空间(2009c非对称版)。
fmriPrep中空间归一化的 --output-spaces
对齐空间的参数调节:
可使用':'对模板进行调节,如'MNI152NLin6Asym:res-2'表明基于resolution 2x2x2mm的标准模板MNI152NLin6Asym进行配准;'fsaverage:den-10k'表明基于网格密度为1w个顶点的 FreeSurfer 的 fsaverage 表面空间进行配准。
MNI空间:
个体空间:
其他标准空间:
例如 fsaverage, fsaverage5, fsaverage6 等 FreeSurfer 的平均模板空间。
基本原理:结合线性和非线性配准,通过最小化配准误差,将个体的大脑图像精确对齐到标准空间。
线性配准公式:
a. x是原始图像中的坐标,x′是变换后的坐标,A 是 3×3 的变换矩阵,包含旋转、缩放和剪切参数,b 是平移向量。
b.一般分为刚性变换(rigid transformation) 和 仿射变换(affine transformation);刚性变换是一种特殊的仿射变换,区别在于是否限制A矩阵的正交性(只为正交矩阵即为刚性变换);这些变换允许图像在三维空间中进行旋转、平移、缩放和剪切;
非线性配准公式:
c.Symmetric Normalization (SyN) 算法(ANTs工具包):以其高精度和对称性著称,能够有效处理复杂的形变。这种算法计算开销较大且处理时间较长;与SPM 使用的非线性配准算法比较,SPM中使用了统一分割与归一化(Unified Segmentation and Normalization)配准算法,结合了解剖先验和灰度信息,特别适合脑解剖结构的标准化;处理时间较短,对极端个体差异的处理可能不够灵活;
d. 其中,T(Imoving,ϕ)是应用变换 ϕ 后的移动图像,Ifixed是固定图像,Metric 是评估配准质量的度量函数(例如互信息、相关系数)
e. 通过更复杂的变形场来捕捉个体脑部解剖结构与标准模板之间的细微差异。基于对称性和正则化的非线性配准算法,其核心思想是通过最小化目标图像和参考图像之间的某种相似性度量来找到最佳的非线性变换;
-t s
(仿射 + SyN非线性);如需要自定义,可直接使用ANTs包;a. 检查*T1w_preproc.nii.gz
i.是否有非脑组织的残留/是否有部分大脑结构丢失----确认*T1w_brainmask.nii.gz图像中脑部遮盖是否准确覆盖了大脑结构而不包含非脑组织,若有影响需要手动调整或重新生成脑部遮盖(brain mask)。
ii.伪影----确认输入数据是否存在质量问题,如运动伪影或信号不均匀。
b. 检查*T1w2MNI.svg
i.是否有异常的拉伸或压缩现象----需要检查配准参数,重新确定适当的变换模型
目的:将结构像配到功能像里,就需要进行结构像分割,一般分为灰质、白质、脑脊液。
freesurfer优点是成熟、输出的数据很全面(皮层厚度、表面模型、曲率map),但是对计算资源的要求比较高;由于功能丰富所以学习很困难;fmriprep用的就是freesurfer的recon-all,这个组件负责从去头骨、分割、皮层重建、皮层厚度测量等功能;
civet对皮层厚度的测量很准确,常用于疾病的研究,处理速度比较快;但是功能比较单一,不能在输入中加入功能像进行volume->surface的映射;
fsl的fast(用于分割)和first(用于皮层结构的分析);不推荐
ants:
hcp pipeline:自动化,高效处理大规模数据,劣势也是不太适合小规模数据,配置配置文件比较复杂;
brainsuite:简单,自动化,快速;社区支持少,用户少
功能像预处理:
在完成结构像的预处理后,接下来的步骤是将功能像与结构像对齐。
Note:功能像是4D的图像,运动校正可以消除假阴性和假阳性,尤其是散乱的、集中在边缘的激活很有可能是伪影;运动校正参数输出:相对运动和绝对运动,较大的跳跃比较慢的漂移更严重,尤其是在相对运动图中。
层级时间校正
失真(B0场)校正
对齐至T1w参考图像
整理不同包可以做的分析,然后横向对比,各自的优势、局限
分析方法 | python包 | 适用的数据类型 | 备注 |
GLM | Nilearn, Nipype, fMRIflows | 任务态 | |
RSA | NeuroRA, PyMVPA, Nilearn, brainspace |
任务态 | |
IS-RSA | Nilearn, Brainiak, Pyrsa, PyMVPA, Nipype | 任务态 | |
FC | Nilearn, Nipype, fMRIflows | 任务态、静息态 | |
ISC | brainiak | 任务态 | |
ISFC | brainiak | 任务态 | |
PPI/gPPI | PyPPI | 任务态 | |
GCA | PyGranger, MNE-Python | 任务态 | |
MVPA | nilearn, PyMVPA,brainiak,nipype+sklearn | 任务态 | |
Gradient | brainspace, sklearn | 静息态 |
注:
1. generalized form of context dependent psychophysiological interaction method (gPPI)
2. Granger causality analysis(GCA)
3. RSA (Representational Similarity Analysis)被试内
4. IS-RSA (Inter-subject Representational Similarity Analysis)被试间
5. ISC (Inter-subject correlation)
6. ISFC (Inter-subject functional connectivity)
7. MVPA (multi-voxel pattern analysis)
Note.
可视化:nilearn、pysurfer、MRICron、MRICronGL
Spm、fsl(常用于glm分析)
Ica分析 ( (Group ICA of fMRI Toolbox,gift)
Freesurfer
弥散图像 dsistudio mrtrixv
弥散图像 (Diffusion Imaging in Python, Dipy)
amico (Accelerated Microstructure Imaging via Convex Optimization)
机器学习ski-learn
Dpabi