近红外数据分析,有很多开源的工具包可用,如NIRS_SPM、Homer3、NIRS_KIT等。这次笔记是介绍Brainstorm分析fNIRS数据的一小部分内容,主要包括:准备阶段、创建阶段、加载事件标签、数据分析。
有几个官网链接,可供学习参考:
https://neuroimage.usc.edu/brainstorm/Tutorials/NIRSTORM
https://github.com/Nirstorm/nirstorm/wiki/Workshop-fNIRS-2022#nirstorm
https://neuroimage.usc.edu/brainstorm/Tutorials/NIRSFingerTapping#Bad_channel_tagging
准备阶段:
下载数据
上面链接1中提到的数据,或者官网download中sample_nirs.zip(这个我无法下载),或者可以用自己的数据尝试(但不建议,可以等操作熟练了,再拿自己数据分析):
链接: https://osf.io/md54y/files/osfstorage?view_only=0d8ad17d1e1449b5ad36864eeb3424ed
下载插件:
打开软件后:点击Plugins -> Inverse -> brainentropy -> Install;
点击Plugins -> fNIRS -> nirstorm -> Install;
点击Plugins -> fNIRS -> mcxlab-cl -> Install;
点击Plugins -> spm12 -> Install;
注意:
- 下载后有绿色圈点,表明成功下载,再次使用的时候,如果变成红色圈点,可以点击Load,重新加载一下;
- 如果有电脑安装不成功,可以从成功下载的电脑拷贝一份,放到指定文件夹(默认:C:\Users\guoya(自己电脑用户).brainstorm\plugins);
- 分析流程中,如果没有NIRS选项,可以将 nirstorm -> Unload,然后再 nirs -> Load,也即是重新加载一下;
创建阶段:
File -> New protocol ,点击 ‘Create’ :
在sample_nirs上右键 -> New subject,点击 ‘Save’ :
在Subject01上右键 -> Import anatomy folder,点击 ‘打开’;弹框头皮顶点数默认15000,点击 ‘确定’(文件不要选择错误了):
弹出MRI界面,在图像上右键 -> Edit fiducial positions -> MRI coordinates,弹框中输入数值,数值是根据链接1中给出的输入:
点击OK后,可以点击后面Fiducials中的View,查看可定位点,然后点击‘Save’:
会运行一小会,结束后出现一个头模,可以关掉;设置两个参数:
mid_15002V右键 -> Set as default cortex,设置后,mid_15002V会变成绿色;
head mask(…)右键 -> Remesh -> 10242,点击确定;
功能数据选项卡,在Subject01右键 -> Review raw file,添加数据,点击打开,弹框都按默认点击 ‘是’ ,点击 ‘确定’(文件不要选择错误了)
在NIRS-BRS channels上右键 ,可查看光源和探测器:
Display sensors -> NIRS(scalp),红色光源,绿色探测器
Display sensors -> NIRS(pairs),通道
MRI registration -> check;(一定要做)
加载事件标签
(链接中,也有其他不同标签加载的介绍) 比较重要,搞不好,就没办法修改后面需要叠加平均的时间;
先来看下数据:在Link to raw file上右键 -> NIRS -> Display time series:
数据显示如下,查看后可关闭;
标签显示设置,在Link to raw file上右键 -> NIRS_AUX -> Display time series;
每一个tapping对应一个刺激,我们可以用开始当作标签;
先复制出一组:点击选中tapping -> 上方Events -> Duplicate groups, 并双击新复制的tapping_02更改名字为tapping_event:
点击选中tapping_event ->上方Events -> Convert to simple event,弹窗选择 ‘Start’,也就是以每个试次的开始作为事件标签
结果如下:
数据分析
将Link to raw file拖拽到下方处理框中,点击 ‘RUN’,选择设置图标 -> NIRS :
分析所有都是在NIRS菜单下,每次设置后,重新点击设置图标, 将所有处理步骤都设置完成后,最后再点击 ‘Run’。下面依次设置,里面的参数,可以查看官网说明,其实跟其他开源软件参数都类似;
设置通道检测Detect bad channels:
点击设置图标,设置运动矫正Motion Correction:
设置转换为光密度Raw to delta OD:
设置带通滤波Band-passed filter:
设置头皮噪声Remove superficial noise:
设置浓度MBLL -delta OD to delta [HbO],[HbR],[HbT]:
这里就设置结束了,点击界面中 ‘Run’
处理后,弹出报告,数据会保存有位置显示,可关闭
在最后处理结果中,右键 -> Import in database:
设置基线参数和Epoch时间(都是ms),点击 ‘Import’
官网中说,第一个trial需要拒绝,在tapping_event(#1)中右键 -> Reject trial :
将处理流程中右键 -> Clear list,然后将tapping_event(20 files)拖拽到处理流程中,点击 ‘RUN’,点击设置图标 -> Average -> Average files:
设置结果参数,点击 ‘Run’
双击结果AvgStderr:tapping_event(19),在图中右键 -> View topograpy,可查看3D图,在3D图中右键,可设置显示参数