手把手教你用 Homer 处理 fNIRS 数据

文章来源于微信公众号(茗创科技),欢迎有兴趣的朋友搜索关注。


一、Homer2软件介绍

Homer2的下载:https://www.nitrc.org/frs/?group_id=619&release_id=3661

Homer2官网:https://homer-fnirs.org/

Homer2安装:使用matlab的set path即可安装;有可能每次打开matlab都要重新安装一下。

Homer2使用中的一些常见问题:https://homer-fnirs.org/faq/

除了这里面提及的问题,有一点要注意的是在使用参数检验时,没有default掉Homer2很有可能导致程序报错。

二、Homer2可识别的NIRS文件格式

Probe source-detector 探头排布:.sd files

fNIRS experimental 数据格式:.nirs files

Data processing stream处理过程:.cfg files

Processed data files结果文件:groupResults.mat

2.1 .SD file format排布文件格式:描述 2D 源/探测器几何结构

Matlab .sd 文件包含结构体变量 SD,其中包含以下域:

域定义维度例子

Lambda用于数据采集的波长1×n(数据采集的波长)[690 830]

nSrcs光源数1×11

nDets探测器数1×12

SrcPos源坐标阵列nSrcs×3[0 0 0]

DetPos探测器坐标阵列nDets×3[30 0 0;0 30 0]

MeasList测量通道列表

[源idx探测器idx使用情况 波长idx]

通道数量*2×4[1 1 1 1;1 2 1 1;

1 1 1 2;1 2 1 2]

注意:SD 结构也包含在 .nirs 文件格式中

编辑SD文件的界面,可通过SDgui启动

2.2 .NIRS file format数据格式:包含近红外数据信息。

Matlab .nirs 文件包含以下变量:

域定义维度

SD探针几何排布,与.sd文件相同结构体变量

t数据时间点数组时间点数×1

d时间序列的原始光强时间点数×通道数

s刺激onset信息时间点数×条件数

aux每个时间点下每个辅助通道的数据时间点数×Aux数

注1:除了上述参数外,在 Homer2 数据处理过程中,.nirs 文件也会出现其他参数。

注2:其他一些数据格式(Hitachi、NIRx、Shimadzu 等)转换成.nirs,可参阅 http://homer-fnirs.org/faq

2.3 .cfg file format进程文件:包含了数据分析的步骤,一系列Homer2 函

最简单的处理流:光密度->血氧浓度->叠加平均->血液动力学响应函数(HRF),也可以在处理流中添加多个更高级的功能:修剪数据,回归短SD,删除坏段,识别运动伪迹,带通滤波,删除或校正运动伪迹象。

创建处理过程:

MATLAB 版本:运行MATLAB,运行“setpaths”函数,然后从命令窗口调用 Homer2_UI。当界面要求您加载流程选项时点击取消,然后将目录更改为存储.nirs数据的文件夹。接下来可以通多‘tools->Process Stream GUI’创建处理流,下图是创建处理流的界面简介。

三、Homer2数据处理流程

一个简单的处理包括,光密度->光强度->血氧浓度->叠加平均->血液动力学响应函数(HRF),下面以该流程为例子演示Homer2提取HRF。

3.1 创建数据流

在procStreamGUI定义好处理流函数后保存为当前处理,接下数据的处理以当前的数据处理流为准,若选择Config file,则将该处理流程流程另存为.cfg文件。调用已保存的处理流文件可以通过load process option(*.cfg)

回到Homer2_UI界面,点击主界面的Options选项可以查阅当前的数据处理流程,并可对相应参数进行修改。

参数数值修改完毕后,需要回车。否则修改无效。

3.2 数据预览

在SD光极排布窗口中,字母表示sources;数字表示 detector;左键点击某个 source 或 detector 附近会显示与该 source 或 detector 关联的所有 channel 的数据,按住 shift 键,左键每个通道即可预览所有通道的时间序列。右键单击 SD 光极排布窗口某个 channel 的连线,该连线会变为虚线,同时左侧数据预览窗口波形消失。再次右键单击连线,连线变为实线、波形出现。在显示设置栏里,Zoom 按钮可以放大数据:选中该按钮后,鼠标在数据预览窗口拖动选择感兴趣的时间段即可放大;Pan 按钮可以平移数据:选中该按钮后,左击鼠标平移数据;数据预览完后可点击 Zoom Reset 或在 Data window 右键单击选择 Reset to Original View 恢复至原始绘图窗口。

3.3 标记坏段与坏通道

Exclude Time按钮可以手动删除(噪音较大)数据:选中该按钮后,鼠标在数据预览界面选中待删除时间段的数据;这些片段段会标记为紫色;如果发现某个时间段错误地被标记为需要删除时,可以用鼠标左键或者右键单击这个紫色区域,会弹出一个对话框:Remove this Excluded Region? 选择 Yes 即可

•如果 Show Excluded前面打勾,那么被删除的时间段标记为红色

•如果 Show Excluded前面不打勾,那么被删除的时间段无波形

手动删除数据后,不会对计算 OD和血氧浓度时造成影响(这部分数据不被删除),但是在计算HRF时这些时间段包括的刺激 mark将不再考虑。

对于噪音很大的通道,鼠标左键单击该通道的连线,该连线变为虚线,即表示标记坏通道成功;再次鼠标左键单击该通道,恢复为实线,则取消标记该通道。

3.4 mark信息的编辑

选中显示设置面板上的 Stim Reject按钮后,在数据窗口中框选某个 mark 的线,这个线会变为黑色粗线的,并弹出一个窗口弹窗提示语是 Action for these stim marks,并要求选择两个选项之一:Toggle active on/off 和 Cancel。选择前者,mark 的线会变为蓝色的虚线,选择后者,mark 的线会恢复为原来的蓝色实线。变为蓝色虚线后,重新选择这个线,并选择前者,会变为蓝色实线(这个 mark 又可使用)。变为虚线后,后续的数据处理则不考虑该 mark。当要永久性的删除或者编辑某个 mark 时,可打开Tools下拉菜单的 StimGUI;在 StimGUI 界面选中某个 mark,会出现下方窗口。通过此窗口可修改mark,也可以选中 New condition 指定新的 mark;也可以选中 Toggle active on/off 将该 mark 后续分析不考虑(与 Stim Reject 相同);也可以选中 Delete 将该 mark 直接永久性删除掉。

3.5数据处理结果预览与导出

定义好处理流并调整好参数以及标记完坏段/通道/试次之后,才可以计算HRF。通过 Calculate HRF下方的下拉菜单选择对某个被试单个 run 的数据处理(Run **)、某个被试所有run的数据处理(Session **)和对所有被试的所有 run 的数据处理(Group **)。

处理后的数据可以预览每个数据的不同波长的原始数据、不同波长的 OD 以及血氧浓度(HbO、HbR、 HbT),按住 shift 可查看多通道/条件/波长的数据。也可以查看每个数据的 HRF(show Run HRF)、每个被试的 HRF(show Sess HRF)以及组平均水平的 HRF(show Grp HRF)。

尽管 Homer2 提供了数据导出选项,但是在做后续统计分析并不方便。由于 Homer2 每次处理完数据会在原始数据基础上生成新的变量,因此,可以在 matlab 加载 nirs 文件:load MCKJ.nirs -mat 加载 nirs 文件(.nirs格式只是将 mat 的文件后缀改成.nirs),下图是数据所包含的域以及其代表的意义。后续可通过代码提取感兴趣的变量做后续分析。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,098评论 5 476
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,213评论 2 380
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 149,960评论 0 336
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,519评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,512评论 5 364
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,533评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,914评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,574评论 0 256
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,804评论 1 296
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,563评论 2 319
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,644评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,350评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,933评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,908评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,146评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,847评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,361评论 2 342

推荐阅读更多精彩内容