freesurfer全过程梳理

简介

free surfer这一软件要解决的问题是,在3D体素空间,有些体素同时包含了两个或者两个以上的成分。例如同时包含灰质和白质,我们无法确定哪一个成分的贡献更大。

为了解决这一问题,freesurfer采取的解决方案是将3D空间转化为2D表面积空间,划分灰质和白质的边界。

freesurfer的核心命令是recon-all,今天我们来详细了解一下这一命令实现了哪些操作

recon-all过程介绍

-----recon-all是一个重建表面积的过程,包含了freesurfer的全部预处理过程。

-----我们的输入只需要一个高质量的T1图像

-----首先得到一个去颅骨的大脑mask(右上角为文件名,下同)

-----大脑mask范围内的的大脑被分割

-----估计两个半球的白质和灰质之间的界面位置,这些表面估计值存储在名为 ?h.orig 的文件中。然后更精确的估计为?h.white(白质边界)。然后继续往外拓展得到?h.pial(灰质边界)。

-----进一步膨胀成?h.inflated文件

-----进一步膨胀成球体,被归一化为称为 fsaverage 的模板图像。然后就可以使用图谱将皮层划分为解剖学上不同的区域。然后重新塑造成可视化的膨胀的表面或软脑膜表面。

recon-all结果可视化

freeview是freesurfer附带的结果可视化软件。

-----------volume呈现

freeview -v \打开volume图像命令

subjID/mri/T1.mgz \T1原始图像

subjID/mri/aseg.mgz:colormap=lut:opacity=0.2 \定义了colormap和透明度

freeview -f \打开surface图像

subjID/surf/lh.white:edgecolor=blue \左侧白质分割,定义颜色

subjID/surf/lh.pial:edgecolor=red \左侧灰质外表面

----------------surface空间

freeview -f \

subjID/surf/lh.pial:annot=aparc.annot:name=pial_aparc:visible=0 \

加载左半球的脑皮质表面,并应用 aparc.annot 注释文件。在查看器中,此表面被命名为 "pial_aparc",但初始设置为不可见

subjID/surf/lh.pial:annot=aparc.a2009s.annot:name=pial_aparc_des:visible=0 \

subjID/surf/lh.inflated:overlay=lh.thickness:overlay_threshold=0.1,3::name=inflated_thickness:visible=0 \

加载左半球膨胀表面,并覆盖皮层厚度数据(lh.thickness)。它设置了一个覆盖阈值在0.1到3之间,将此配置命名为 "inflated_thickness",并将其设置为初始时不可见

subjID/surf/lh.inflated:visible=0 \

subjID/surf/lh.white:visible=0 \

subjID/surf/lh.pial \

--viewport 3d

将 Freeview 的初始视口设置为3D模式,适合查看三维大脑模型。

逐顶点组间比较

  1. 首先,将 fsaverage 模板复制到当前目录中
  2. 其次,创建 FreeSurfer 组描述符 (FSGD) 文件
    1. 创建excel/csv/tsv文件
    2. 以txt格式保存
    3. tr '\r' '\n' < glm.txt > glm.fsgd
GroupDescriptorFile 1
Title post_compane
Class G1
Class G2
RescaleFlag 1//重新标准化,混淆变量尺度统一
DemeanFlag 1//去均值,混淆变量尺度统一
Variables age
Input HBNUP001 G1 5
Input HBNUP004 G1 6
Input HBNUP006 G1 7
Input HBNUHT002 G2 8
Input HBNUHT003 G2 9
Input HBNUHT007 G2 10
  1. 下一步,创建一个contrast文件,用于指定模型中每个回归变量的对比权重
    1. echo "1 -1 0 0" > glm.mtx
1 -1 0 0
  1. 下一步,使用 mris_preproc 创建组文件

该命令需要以下参数:

    1. FSGD 文件(由选项指示);--fsgd
    2. 要重新采样到的模板 (--target);
    3. 指示要重新采样的半球 (--hemi);
    4. 输出文件的标签。--out
mris_preproc --fsgd glmtmp.fsgd --target fsaverage --hemi lh --meas thickness --out lh_tmp.mgh
  1. 下一步,用 mri_glmfit拟合一般线性模型

使用以下输入:mri_glmfit

    1. 包含所有受试者结构图(--y);
    2. FSGD 文件 (--fsgd);
    3. 对比度列表(每个对比度由包含以下内容的不同行指定--C);
    4. 指定参考表面和半球 (--surface);
    5. 对输入文件进行平滑(--fwhm);
    6. 包含结果的目录的输出标签。--glmdir
    7. 保存每个体素或顶点的残差。--eres-save
mri_glmfit --y rh_tmp.mgh --fsgd glmtmp.fsgd --C glmtmp.mtx --glmdir group1838.rh --fwhm 10 --surface fsaverage rh --eres-save
  1. 下一步进行多重比较矫正(蒙特卡洛模拟和多重比较矫正)
    1. 要针对多重比较进行更正的目录 (--glmdir);
    2. 集群方面的 p 阈值 ,通常设置为 0.05;--cwp
    3. 分析两个半球的校正(--2spaces)
    4. --perm 1000 2 abs:指定进行1000次随机排列测试,顶点聚类阈值( -log10(P)),双尾检验
mri_glmfit-sim --glmdir group1838.lh --2spaces --cwp 0.05 --perm 1000 2 abs
  1. 结果文件
group1838.lh/glmtmp/
---perm.th20.abs.pdf.dat//群集校正的概率分布函数(PDF),提供了校正后群集大小的分布信息。
---perm.th20.abs.sig.cluster.mgh// 经过群集校正后的显著性map,可作为叠加层在脑部图像上可视化。
---perm.th20.abs.sig.cluster.summary //群集的摘要信息,以文本格式提供,包含了每个显著群集的统计数据和位置信息。
---perm.th20.abs.sig.masked.mgh//未经校正的显著性值,仅限于通过群集校正存活下来的群集区域。
---perm.th20.abs.sig.ocn.annot //输出群集编号的注释文件,用于标注每个显著群集。
---perm.th20.abs.sig.ocn.mgh //输出群集编号的分割图,显示每个编号群集的位置。
---perm.th20.abs.sig.voxel.max.dat//最大体素级显著性,提供了整个分析中体素显著性的最大值。
---perm.th20.abs.sig.voxel.mgh//体素级经过多重比较校正的显著性地图,与群集校正相比,这是在体素级别进行的校正。
---perm.th20.abs.y.ocn.dat//每个群集中每个受试者的平均值,提供了群集内个体数据的概览。

参考资料

FreeSurfer Short Course — Andy's Brain Book 1.0 documentation

影像炼金第四弹:逐顶点组间比较-广义线性模型GLM:原理和代码_哔哩哔哩_bilibili

  • 41
    点赞
  • 47
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值