信息速览
INFOBOX — stroke-eeg-fnirs 一屏速览
维度 内容 本质 同步 EEG + fNIRS 的卒中康复纵向记录数据集(不是 fNIRS 单独的、也不是 EEG 单独的) 团队 Skoltech(Vladimir Zelman 神经生物学与脑康复中心)+ 俄罗斯联邦医学生物署大脑研究联邦中心 + 莫斯科国立大学 + 皮罗戈夫医科大学 + 康德波罗的海联邦大学 第一作者 Alexandra Medvedeva(Skoltech 神经中心 Junior Research Scientist,通讯) 论文 Scientific Data 2026;13:448,doi:10.1038/s41597-026-06803-5(收到 2025-05-07 / 接受 2026-02-02 / 在线 2026-02-14) 样本 16 名上肢偏瘫患者,42–71 岁(57.2±9.68),6 女 10 男,全部右利手,全部 mRS=3 病程 13 例亚急性(<6 月)、3 例慢性(>6 月且 <1 年);缺血 13 / 出血 3 会话 84 次康复训练,每例最多 6 次(session 1 首日 → session 6 出院前) EEG NVX-52(MCS),8 导(FCC3/4/5/6、CCP3/4,参考 T9/T10),+2 EMG +1 ECG,500 Hz fNIRS NIRSport 16×16 与 8×8(NIRx),24 光源 @760/850 nm + 24 探测器,源-探距约 3 cm,13.56 Hz,剔除故障探测器后 70 通道 任务 SRT 键压任务:LED 闪光 → 腕/指伸展按键;每 run 12 闪光,200 ms,间隔 9–11 s;每手 ≥3 run/会话 量表 ARAT + Fugl-Meyer(FMA-UE 0–66 / FMA-S 0–12 / ROM 0–24 / 疼痛 0–24,合计 126) 同步 自研 Arduino 触发,刺激起始同时向 EEG 与 fNIRS 的 TTL 输入发脉冲(硬件级) 格式 FIF(MNE)+ SNIRF + EDF + TXT 事件表 + Python 脚本 获取 Figshare 10.6084/m9.figshare.28904942 公开(许可证论文未声明) 库内互链 tuh-eeg-corpus(71)、chb-mit-scalp-eeg(72)、bonn-eeg(322)、eegmmidb(342)、hbn-eeg(362)、helsinki-neonatal-eeg(880)、siena-scalp-eeg(1070)、mental-fnirs(1021)、stroke-scale-mimic-iii(596)
这个数据集回答的是一个所有卒中 BCI 团队都绕不开的问题:当患者的大脑正在重新学会控制手的时候,脑皮层上同时发生了什么、又在之后几秒发生了什么? 前者是 EEG 的观察窗口——神经元同步放电在毫秒尺度上留下的电位与节律变化;后者是 fNIRS 的观察窗口——被激活的皮层在数秒内召唤来的含氧血流。两者绑在同一根触发器上同时录制,而且不是在实验室里录一次,而是跟着患者走完整个住院康复周期、每次最多 6 回。
导语读法三则:
- 只想弄懂 EEG 与 fNIRS 为什么必须一起用:先读 §3,那是本条的生理学地基;读完之后 §4 的技术实现才有意义。
- 想下数据做实验:直奔 §6 获取与文件结构、§7 技术验证里的滤波/分段/ERD 参数——这些参数决定了你能复现论文哪张图。
- 想评估它是否适合你的课题:直奔 §8 局限与 §9 与库内 EEG 条目的区分——本条是卒中康复 + 多模态 + 纵向,与库内癫痫、睡眠、新生儿、健康人运动想象条目都不是同一类。
§0 导读:这个数据集解决什么问题
卒中(stroke)是全球成人长期残疾的首位原因,而运动障碍是对生活质量影响最大的一类后遗症。康复医学的尴尬在于:治疗师能看到患者的手抬起来多高、能捏起多大的木块,却看不到"大脑是怎么把控制权一点点拿回去的"。要看见这件事,需要两类互补的测量:
- 电生理层:EEG 记录皮层锥体细胞突触后电位在头皮上的总和。运动准备与执行会在感觉运动区留下两类可测标记——运动相关皮层电位(MRCP,毫秒级慢电位)与感觉运动节律的事件相关去同步(ERD/S,alpha 与 beta 频段的功率下降)。
- 血流动力学层:fNIRS 用 760–850 nm 近红外光穿过头皮与颅骨,靠氧合血红蛋白(HbO)与脱氧血红蛋白(HbR)的吸收差反演皮层血流变化。这个响应慢,峰值通常在刺激后 5–7 秒,但它是"这块皮层真的被调用了"的代谢证据。
真实的神经活动是"电活动先行、血流随后"的耦合过程(neurovascular coupling)。只测 EEG,看到的是放电;只测 fNIRS,看到的是补给。卒中恰恰可能破坏这种耦合本身——病灶区的血管反应性可能受损,此时若只有 fNIRS,就会把"血管坏了"误读成"皮层没工作"。因此在卒中场景里,同步双模态不是锦上添花,而是必要的交叉验证。
这个数据集的价值还在于"纵向"二字。康复是一个多周的过程,同一个患者在不同时点的脑活动不可直接比较:他会学习(对任务越来越熟,ERD 形态会变)、头皮电极与光极每次都会重新摆放(位置漂移带来通道级差异)、病灶周围组织本身在重塑。单次横断面记录无法把"学习效应"“位置漂移”"真实恢复"三者分开;只有同一患者多次、每次重新摆位、每次都带同样的任务与量表,才能把这些成分逐步剥离。84 次会话、每例最多 6 次的重复,正是为此设计的。
§0 读法三则:
- 本条目是"数据描述论文(Data Descriptor)",不是疗效研究:论文不给康复干预方案的效果结论,给的是数据规格 + 一组技术验证图(患者 03 的血流动力学与 ERD/MRCP 示例)。
- 全文的核心数字(16 / 84 / 8 导 / 70 通道 / 13.56 Hz)均可回溯到论文 Methods 节,出处见附录 C。
- 检索时若只搜 “fNIRS stroke dataset” 会漏掉它——标题里 fNIRS 与 EEG 是并列的,且仓库名在 Figshare 而非 PhysioNet/OpenNeuro(坑 1)。
§1 数据集速览:十问十答
Q1:一句话说清它是什么?
16 名卒中后上肢偏瘫患者在住院康复期间、每次训练时同步采集的 8 导 EEG 与 70 通道 fNIRS 记录,合计 84 次会话,任务为健手与患手的按键应答,附 ARAT 与 Fugl-Meyer 量表评分。
Q2:为什么说它是"全球首个"?
Skoltech 2026-03-03 的新闻稿称这是"the first in the world to combine long-term recordings of brain activity obtained using two advanced methods—EEG and fNIRS"。论文正文的表述更克制:只写"longitudinal datasets combining fNIRS and EEG in stroke populations remain limited"。把"首个"当作机构宣称,把"仍然稀少"当作论文结论——这是引用时的正确分寸(坑 2)。
Q3:84 次会话怎么分布?
每例最多 6 次:session 1 是康复第一天,session 6 是出院前最后一次。84 是全部患者的会话总数,不是每人 84 次。论文限制节明确写"incomplete session coverage for some participants"——有人没走满 6 次。
Q4:8 导 EEG 会不会太少?
确实少,论文自己把"limited number of EEG channels"列为第一条局限。但这 8 个位置不是随便选的:FCC3/FCC4/FCC5/FCC6 与 CCP3/CCP4 是 10/5 系统里紧贴感觉运动区(C3/C4 附近)的中间位置,而且被刻意布置在 fNIRS 光极之间,避免光纤与电极抢位置。少而准,是折中而非疏忽。
Q5:fNIRS 70 通道是怎么来的?
24 个光源 + 24 个探测器理论上可组成更多源-探对,实际排布产生 70 个功能通道,因为其中一个探测器故障,其构成的通道与对侧对称通道一并剔除。
Q6:两台设备怎么对齐时间?
靠硬件,不靠软件后配准:自研 Arduino 控制器在每次视觉刺激出现的瞬间,同时向 EEG 放大器和 fNIRS 设备的 TTL 同步输入口发送脉冲。因此两路信号的零点来自同一个物理事件。
Q7:任务到底是什么动作?
不是握拳,也不是抓握物体,而是腕与手指伸展按键——手掌朝下放在定制盒里,按钮在手掌上方,必须做伸展动作才能按到。每 run 12 次 LED 闪光,每次 200 ms,间隔 9–11 秒;两侧 LED 交替伪随机出现,但只有目标手一侧的闪光需要应答。
Q8:临床量表给了什么?
ARAT(上肢动作研究量表)与 Fugl-Meyer 评估。FMA 拆成四个域:上肢运动 FMA-UE(0–66)、感觉 FMA-S(0–12)、被动关节活动度(0–24)、关节疼痛(0–24),满分 126。论文 Table 1 给逐例的基线与康复后评分。
Q9:数据在哪、什么格式?
Figshare,DOI 10.6084/m9.figshare.28904942。三种格式并存:FIF(MNE-Python 原生)、SNIRF(fNIRS 社区标准)、EDF(EEG 临床通用格式),另附 TXT 事件表与 Python 加载/预处理脚本。
Q10:它和库内那些 EEG 数据集什么关系?
没关系——是"同模态、不同临床场景"的平行条目。tuh-eeg-corpus(71)、chb-mit-scalp-eeg(72)、bonn-eeg(322)、siena-scalp-eeg(1070) 都是癫痫;helsinki-neonatal-eeg(880) 是新生儿;hbn-eeg(362) 是儿童发育队列;eegmmidb(342) 是健康人运动想象。本条是卒中患者真实运动康复 + fNIRS 联采 + 纵向,在这几个维度上都是唯一(§9 详表)。
§2 数据构成与规格
2.1 队列画像:一个刻意收窄但仍然异质的卒中样本
| 维度 | 数值 | 说明 |
|---|---|---|
| 样本量 | 16 例 | 论文明确自陈"limited sample size" |
| 年龄 | 42–71 岁,均值±标准差 57.2 ± 9.68 | 集中在中年段,与首发卒中流行病学一致 |
| 性别 | 6 女 / 10 男 | 论文只写"6 females",未给男女比例之外的细节 |
| 利手 | 全部右利手 | 消除了利手对半球优势的混杂,是大样本研究常忽略的控制 |
| 诊断 | 上肢偏瘫(upper limb hemiparesis) | 只收上肢功能障碍者,不收纯下肢或纯失语患者 |
| 残疾分级 | 全部 mRS = 3 | 中度残疾,能配合任务但不完全独立 |
| 病程 | 亚急性 13 例(<6 月)/ 慢性 3 例(>6 月且 <1 年) | 慢性组仅 3 例,纵向结论主要反映亚急性期 |
| 病因 | 缺血 13 / 出血 3 | 缺血为主,与流行病学比例接近 |
| 病灶确认 | CT 或 MRI | 定位信息在论文 Table 1 逐例给出 |
| 认知语言 | 保留(preserved) | 排除失语与明显认知障碍 |
| 招募现场 | 俄罗斯联邦医学生物署大脑研究联邦中心 | 住院康复场景 |
这张表最值得注意的不是"16 例偏少",而是几处刻意的同质化控制:全部右利手、全部 mRS=3、认知语言保留、病程限制在一年以内。每一项都在减少混杂——右利手消除半球优势偏侧性,mRS=3 保证任务可完成,认知保留保证能理解指令。代价是外部效度:你的模型在 mRS=4–5 的重度患者或病程数年的慢性患者身上是否成立,这个数据集回答不了。
2.2 会话结构:84 次是如何组织的
患者(1–16)
└── session(1 … 6) ← session 1 = 康复首日;session 6 = 出院前末次
└── run(每手 ≥3 个) ← 每个 run 指定一只手为目标手
└── 12 次闪光(每侧 LED 6 次,伪随机)
三个层级的语义要分清:
- session 是时间轴:它锚定的是康复进程(住院第几天到出院),不是等间隔的日历。患者之间 session 间隔长短不一,论文未给逐例的会话日期表——因此做纵向分析时,"时间轴"应当用 session 序号做序数变量,而不是假设等间隔的连续时间(坑 5)。
- run 是随机化的单位:目标手在每个 run 开始前指定,且 run 顺序在患者间变化。这让同一 session 内的左右手对比不被固定顺序的系统误差污染。
- 试次是事件单位:每个 run 12 闪光,其中 6 次是被试手侧的"目标"(要按键),6 次是对侧的"非目标"(要忽略)。非目标试次恰好构成了一个同感官输入、无运动输出的对照——这是后续 ERD 基线定义的依据(§7.3)。
84 次会话是总数。论文限制节写"incomplete session coverage for some participants",即不是每例都走满 6 次;同时预处理又删除了 30 个 recording(主要来自前 3 名患者,因伪迹与触发错误)。84 这个数字究竟统计在剔除之前还是之后,论文没有明说,这是本条目登记的第一条待核疑点(附录 S)。
2.3 EEG 配置:8 导为什么够用又不完全够用
| 属性 | 规格 |
|---|---|
| 放大器 | NVX-52(MCS,俄罗斯泽列诺格勒) |
| 电极 | 8 个被动 Ag/AgCl |
| 位置 | FCC3、FCC4、FCC5、FCC6、CCP3、CCP4(10/5 系统) |
| 参考 | T9 / T10(双侧乳突/耳后区) |
| 阻抗 | < 10 kΩ |
| 采样率 | 500 Hz |
| 同机附加通道 | 2 路 EMG(双侧指伸肌,bipolar belly-tendon)+ 1 路 ECG(双腕,Einthoven 导联 I) |
| 单文件通道总数 | 11(8 EEG + 2 EMG + 1 ECG) |
FCC3/FCC4 与 CCP3/CCP4 是 10/5 系统在 C3/C4 周边插入的中间位置:FCC 位于 F 与 C 之间、CCP 位于 C 与 P 之间。它们比标准 C3/C4 更贴近中央前回与中央后回的交界,对感觉运动区的覆盖更聚焦;而 FCC5/FCC6 更偏外侧,覆盖手部代表区的外侧延伸。
真正的设计约束来自 fNIRS:光极与电极都要占头皮,8 个电极被安排在光极之间的空隙里(论文原文 “Electrode positions were chosen to be placed between the fNIRS optodes to cover regions over the sensorimotor cortices”)。这意味着 EEG 的布点并非最优空间采样,而是"在 fNIRS 允许的缝隙里尽量贴住感觉运动区"的联合优化结果。
由此带来的分析边界很清楚:能做的是双侧半球对比(左 vs 右)、局灶 ERD/MRCP 波形、以及少量通道间的相干性;不能做的是源定位(8 导远不足以做可靠逆问题求解)、全头地形图、或精细的空间频率分析。任何声称在本数据上做"全脑网络"的论文都需要被追问方法。
此外,EMG 与 ECG 的存在是重要的工程红利:EMG 可以用于校验"被试到底动了没有、动得多大"(在偏瘫患者身上这不是小事——运动意图与实际输出常常脱节),ECG 则可用于剔除心搏伪迹。论文没有专门展开这两路的用法,但它们在原始文件里可用。
2.4 fNIRS 配置:24 光源 × 24 探测器的排布算术
| 属性 | 规格 |
|---|---|
| 设备 | NIRSport 16×16 与 NIRSport 8×8(NIRx Medizintechnik GmbH,柏林) |
| 工作模式 | 连续波(continuous wave, CW) |
| 光源 | 24 个,每源双波长 760 nm / 850 nm,每波长功率 5 mW |
| 探测器 | 24 个(Si 光电二极管) |
| 源-探距 | 约 3 cm |
| 覆盖区 | 感觉运动区及邻近区(双侧) |
| 采样率 | 13.56 Hz(多光源同时点亮所得的等效采样节奏) |
| 通道数 | 70(1 个探测器故障,其通道与对侧对称通道一并剔除) |
| 输出 | 原始光强 → 光密度(optical density),两波长 |
三个技术点值得展开:
- 13.56 Hz 是一个"妥协值"。NIRx 的连续波系统通过分时点亮光源来区分通道,通道越多,单通道可获得的有效采样率越低。13.56 Hz 意味着时间分辨率约 74 ms——对血流动力学信号(主能量在 0.01–0.2 Hz)绰绰有余,对任何想从 fNIRS 里"看出快速电活动"的尝试则完全不够。这也正面回答了"fNIRS 能不能替代 EEG":不能,物理上就不行(§3.4)。
- 源-探距 3 cm 决定探测深度。近红外光在组织中的穿透随距离衰减,3 cm 间距是国际通行的"兼顾信噪比与皮层深度"折中值,对应约 2–3 cm 的皮层深度——即灰质表层。论文整体表述为"可达头皮下 4 cm 深度"(新闻稿与背景节),这是文献常用上界,与 3 cm 间距的常规探测深度不矛盾但不宜混用。
- 70 而非"24×24 相邻配对"的更多通道。典型排布下每个探测器与相邻若干光源配对,理论通道数取决于几何;论文只给出最终结果 70,未给逐通道的源-探坐标表(坐标存在文件头里,随数据发放)。这对复现"通道分组"分析有影响:论文的左右半球通道簇划分需要从文件元数据里读出,而不是从论文表格里抄。
2.5 多格式并存与文件命名
| 格式 | 内容 | 适用工具 |
|---|---|---|
.fif |
EEG 与 fNIRS 全量(MNE 原生) | MNE-Python(v1.3.1 起) |
.snirf |
fNIRS(社区标准 Shared Near Infrared Spectroscopy Format) | MNE-NIRS、Homer3 等 |
.edf |
EEG(European Data Format) | EDFbrowser、EEGLAB、MNE |
.txt |
SNIRF 配套事件表(时间戳 + 事件码) | 任意 |
文件命名采用四段结构:
<患侧 R/L>_<患者编号>_<session N>_<目标手+run 序号>
示例:fNIRS/R_02_session2_right1
解读:患侧为右(R)、患者 2 号、第 2 次 session、第 1 个以右手为目标的 run。论文用这个例子说明命名规则;注意 right1 里的 right 是目标手而非患侧(本例中两者恰好相同,容易误读——坑 3)。
事件标记只有两个:flash_l 与 flash_r,按视觉刺激出现在哪一侧命名,而不是按"哪只手要动"。所以在一个右手目标的 run 里,flash_r = 目标试次(右手动作),flash_l = 非目标试次(无动作)。这个约定对 ERD 分析至关重要:如果把 flash_l 误当作"左手动作",整个对比就反了。
2.6 数据量与缺口的诚实清单
论文没有公布总数据量(GB)、文件总数、逐患者 session 明细表。可确认的量化信息只有:16 例、84 次会话、每次 ≥6 个 run、每 run 12 闪光、8+3 通道 @500 Hz、70 通道 @13.56 Hz。粗略推算单次会话 6 个 run × 12 试次 × 平均 10 s 间隔 ≈ 12 分钟纯任务时间,加上准备与间歇,实际单次记录时长应更长——但这是估算,不可当作论文事实引用。
缺口清单(写论文时应当注明"论文未报告"):
- 总数据体积、文件数量:论文未报告。
- 逐患者 session 数与日期:论文未汇总(Table 1 只给临床评分与病灶)。
- 卒中侧别(左/右半球)的患者级分布:正文未汇总,仅能从文件名 R/L 推断。
- fNIRS 通道的逐通道源-探坐标:论文未列表,存于文件头。
§2.7 一份"数据规格对账单"
把论文里散落在各节的参数集中成一张表,便于复制到方法学章节直接引用。左列是"你写论文时会用到的话",右列是"能背书的原文位置"。
| 规格项 | 取值 | 原文位置 |
|---|---|---|
| 受试类型 | 上肢偏瘫卒中后患者 | Methods · Study subjects |
| n | 16 | Abstract / Methods |
| 年龄 | 42–71;57.2 ± 9.68 | Methods |
| 性别 | 6 女(其余按 10 男计) | Methods |
| 利手 | 全部右利手 | Methods |
| 病程分组 | 亚急性 13(<6 月);慢性 3(>6 月且 <1 年) | Methods |
| 病因 | 缺血 13;出血 3 | Methods |
| 残疾 | mRS = 3(全部) | Methods |
| 病灶确认 | CT 或 MRI | Methods |
| 认知语言 | 保留 | Methods |
| 康复现场 | 俄罗斯联邦医学生物署大脑研究联邦中心 | Abstract / Methods |
| 会话数 | 84(每例 ≤6) | Abstract |
| 单会话 run 数 | 每手 ≥3 | Methods |
| 单 run 试次数 | 12(每侧 6) | Methods |
| 刺激时长 | 200 ms | Methods |
| 试次间隔 | 9–11 s | Methods |
| EEG 系统 | NVX-52(MCS,泽列诺格勒) | Methods |
| EEG 电极数 | 8(被动 Ag/AgCl) | Methods |
| EEG 位置 | FCC3/FCC4/FCC5/FCC6/CCP3/CCP4 | Methods |
| EEG 参考 | T9/T10 | Methods |
| 阻抗 | <10 kΩ | Methods |
| EEG 采样率 | 500 Hz | Methods |
| 附加生理通道 | 2 EMG(指伸肌)+ 1 ECG(双腕) | Methods |
| fNIRS 系统 | NIRSport 16×16 / 8×8(NIRx) | Methods |
| fNIRS 光源 | 24,760/850 nm,5 mW/波长 | Methods |
| fNIRS 探测器 | 24(Si 光电二极管) | Methods |
| 源-探距 | ≈3 cm | Methods |
| fNIRS 采样率 | 13.56 Hz | Methods |
| fNIRS 通道 | 70(1 探测器故障后) | Methods |
| 同步方案 | Arduino TTL;刺激起始双路触发 | Methods |
| 预处理工具 | MNE-Python v1.3.1 | Methods |
| EEG 预处理程度 | 无(raw) | Methods |
| 文件格式 | FIF / SNIRF / EDF / TXT | Data Records |
| 附带内容 | 人口学、ARAT、FMA、Python 脚本 | Abstract / Data Records |
| 仓库 | Figshare 10.6084/m9.figshare.28904942 | Data availability |
| 伦理 | Skoltech 伦理委员会,protocol №10,2023-05-18 | Methods |
| 注册 | NCT06806397 | Methods |
对账单的使用方式:写方法学引用时逐行取用,凡是本表没有的项,说明论文未报告,不要凭"同类研究常见做法"补全。这是 AI-Ready 条目对下游科研写作最实际的贡献——把"论文说了什么"和"行业惯例是什么"分开。
§2.8 采样率与分辨率的一张换算表
| 量 | 数值 | 换算含义 |
|---|---|---|
| EEG 采样间隔 | 1/500 s = 2 ms | 500 ms 的 LRP 峰值定位可精确到毫秒 |
| EEG 奈奎斯特上限 | 250 Hz | 40 Hz 低通后仍余 210 Hz 保护带 |
| fNIRS 采样间隔 | 1/13.56 s ≈ 73.7 ms | 11 s 分段约 149 个采样点 |
| fNIRS 奈奎斯特上限 | ≈6.78 Hz | 0.7 Hz 低通后余量充足 |
| fNIRS 典型 HRF 峰值延迟 | 5–7 s | 相对 73.7 ms 采样间隔约 68–95 个点 |
| 单 run 时长(按 12 试次 × 10 s) | ≈120 s | 单 run 内 fNIRS 约 1628 个采样点 |
| 单会话(按 6 run) | ≈12 min 纯任务 | 不含准备与休息 |
这张表有两个用途:一是判断"这个采样率对我的分析够不够"(73.7 ms 对 HRF 绰绰有余,对 ERP 完全不够);二是估算数据规模——若你要做单试次 fNIRS 分类,每个试次只有约 149 个点,特征维度天然很低,这反过来提示单试次 fNIRS 分类的瓶颈是样本数而非特征数。
§2.9 通道命名与解剖位置的对应关系(按 10/5 系统常识)
论文给了电极名,没给坐标。下表是按 10/5 系统标准位置推得的近似解剖指向,仅供理解,不能当作论文数据引用:
| 电极 | 大致位置 | 皮层指向(近似) |
|---|---|---|
| FCC3 | F 与 C 之间、左半球中线偏内 | 左侧中央前回(手部运动区前缘) |
| FCC4 | 对称于 FCC3,右半球 | 右侧中央前回 |
| FCC5 | F 与 C 之间、左半球偏外 | 左侧中央前回外侧(手部代表区) |
| FCC6 | 对称于 FCC5,右半球 | 右侧中央前回外侧 |
| CCP3 | C 与 P 之间、左半球偏内 | 左侧中央后回(手部感觉区) |
| CCP4 | 对称于 CCP3,右半球 | 右侧中央后回 |
这张表的现实意义:六导 EEG 实际上覆盖的是"运动—感觉"配对的双侧各一对(FCC 偏运动、CCP 偏感觉),外加一对偏外侧的 FCC5/6。这解释了为什么论文能做"FCC3 vs FCC4"的偏侧化比较——它们是左右对称的同一功能位点。
§3 为什么 EEG 与 fNIRS 必须一起用:两种时间尺度的互补
3.0 先破除三个流行误解
在展开机制之前,先把三个最常见的误解摆出来。它们的共同点是"把 fNIRS 当作 EEG 的某种低成本版本",而实际关系完全不是替代关系。
误解一:「fNIRS 是新版 EEG,便宜又便携,迟早取代它。」
事实:两者测的物理量都不同。EEG 测头皮电位(毫伏级以下的电位差),物理源头是皮层锥体细胞突触后电位的同步总和;fNIRS 测近红外光的衰减(光密度),反演出的是血红蛋白浓度。血红蛋白浓度变化本身就是电活动的下游产物,存在数秒延迟。用下游产物去"取代"上游信号,等于用温度计取代体温调节中枢的监护——你测到的是结果,不是原因。
误解二:「fNIRS 只是空间分辨率差一点的 fMRI,和 EEG 拼起来就是低配多模态。」
事实:在多模态脑成像的谱系里,EEG-fNIRS 是一个独立的组合,而不是 fMRI 的降级版。它真正的独特之处在于可在床边、可重复、可长时间佩戴——这三点 fMRI 都做不到。卒中康复场景恰恰最依赖这三点:患者住在康复病房,每周训练数次,不可能每周去做一次 fMRI。因此 EEG-fNIRS 不是"廉价的 fMRI+EEG",而是"唯一能在康复现场高频重复的多模态方案"。
误解三:「有了 fNIRS 的血流信号,EEG 就只是用来做时间标记的。」
事实:在卒中人群里,EEG 的独立性反而更强。因为病灶可能破坏神经血管耦合,此时 fNIRS 会"失灵"(血流不响应),而 EEG 仍然能记录到电活动。这时 EEG 不是辅助,而是唯一可信的那一路。这也是本数据集把双模态同步作为核心设计的最实际理由——不是"两个一起测更全面"这么笼统,而是"在病理状态下能互相兜底"。
带着这三个澄清往下读,接下来的机制部分才不会被读成"两种技术各有优劣、合起来更好"的泛泛之谈。
这一节是本条目的方法论核心。如果读者只从本节记住一句话,应该是:fNIRS 不是 EEG 的廉价替代品,它测的是另一个物理量,回答的是另一个问题。
3.1 两个物理量:电位与血红蛋白
| 对比项 | EEG | fNIRS |
|---|---|---|
| 直接测量的物理量 | 头皮电位差(μV 级) | 近红外光衰减(光密度) |
| 生理来源 | 皮层锥体细胞突触后电位的同步总和 | 局部氧合/脱氧血红蛋白浓度变化 |
| 反映的过程 | 神经元电活动(兴奋性/抑制性输入到达) | 神经活动引发的血流与代谢响应 |
| 时间尺度 | 毫秒(ms):ERP 成分 100–500 ms,ERD 在数百 ms 内起效 | 秒(s):血流动力学响应函数峰值常滞后 5–7 s |
| 典型频带 | 0.1–40 Hz(含 delta/theta/alpha/beta/gamma) | 0.01–0.2 Hz(任务相关) |
| 空间分辨率 | 低(厘米级,受容积传导模糊) | 中(1–3 cm,受源-探距与部分体积效应限制) |
| 穿透深度 | 全头,但以皮层为主 | 皮层表层 2–4 cm |
| 对运动的敏感度 | 高(易受肌电、眼动、电极位移污染) | 相对低(但受头皮血流、系统性生理噪声影响) |
| 对头发/头型的敏感度 | 需要导电膏或干电极 | 需要光极贴紧头皮、避开发际 |
两者的关系不是"精度高低",而是"你问的是哪个问题"。如果你想问"刺激后 300 ms 时运动皮层有没有发出指令",只有 EEG 能回答;如果你想问"这块皮层为了这次运动调用了多少代谢资源",只有 fNIRS 能回答。
3.2 电活动与血流:神经血管耦合(neurovascular coupling)
神经血管耦合指的是:局部神经元活动增强 → 局部血管舒张 → 血流量与血氧增加,且这一过程滞后于电活动数秒。它的经典形态是"初始暗化(initial dip)→ HbO 上升 / HbR 下降 → 平台期 → 刺激结束后回落(post-stimulus undershoot)"。
这一耦合机制是 fNIRS 与 fMRI 的 BOLD 信号共同的基础。理解了它,就能理解三件事:
- 为什么 fNIRS 看到的是"滞后"的激活:fNIRS 的峰值往往出现在刺激后 5–7 s,远晚于 EEG 的 ERP 成分。在论文的图 3 里,患手运动时 HbO 地形图的时间进程正好覆盖这个窗口。
- 为什么同步双模态能验证耦合本身:EEG 给出"电活动发生在何时、哪一侧",fNIRS 给出"血流响应出现在何时、哪一侧",两者之间的时滞与空间一致性就是耦合强度的直接测量。这在卒中研究中尤为关键(§3.3)。
- 为什么"没看到 fNIRS 响应"不等于"没有神经活动":可能是血管反应性受损,也可能是信噪比不足,也可能是耦合被病灶破坏。这正是必须同时有 EEG 的理由。
3.3 卒中的特殊性:耦合本身可能坏掉
卒中本质上是脑血流供应中断。这带来一个在健康人研究里不存在的陷阱:
- 血管反应性受损:梗死核心与周围半暗带的微血管对神经活动的舒张反应可能减弱。此时即便皮层仍在放电,fNIRS 也可能测不到应有的 HbO 上升——这叫"神经血管解耦(neurovascular uncoupling)"。
- 血流动力学响应形态改变:病灶侧的响应可能延迟、变平,甚至出现"负向响应"(HbO 下降),这与健康对照的规范形态不可直接比较。
- 系统性生理噪声放大:卒中患者常伴有血压波动、心率变异改变,这些系统性成分会通过头皮血流进入 fNIRS 信号(故常需短通道回归等处理,论文未展开)。
在这种场景下,EEG 是"电活动还在不在"的判据,fNIRS 是"血管还响应不响应"的判据。两者的组合本身就是一种诊断工具:电活动在、血流不响应 → 耦合受损;电活动在、血流也响应 → 耦合保留,可用于 BCI 反馈。单独任一模态都无法区分这些情形。论文在背景节把这一逻辑写得很清楚:“Simultaneous acquisition of EEG and fNIRS provides complementary information: EEG captures fast neural dynamics, while fNIRS reflects slower cortical hemodynamic responses.”
3.4 为什么 13.56 Hz 的 fNIRS 取代不了 500 Hz 的 EEG
一个常见的误解是"fNIRS 便宜便携、又能测脑活动,是不是可以替代 EEG"。从采样率就能看出这条路走不通:
- EEG 采样 500 Hz,奈奎斯特上限 250 Hz,足以刻画 1–40 Hz 的节律与 ms 级 ERP;ERD 的起始潜伏期、MRCP 的 LRP 峰值(论文测得约 0.5 s)都可以精确定位。
- fNIRS 采样 13.56 Hz,上限 6.78 Hz,而其有效信息带宽实际上只有 0.01–0.2 Hz 量级。用它去追 300 ms 的电位变化,等于用秒表去测子弹。
反过来,EEG 也取代不了 fNIRS:EEG 完全测不到"血氧"这个量,无法回答"代谢供给是否匹配"。所以论文的技术验证把两者分开处理——fNIRS 用 0.05–0.7 Hz 带通、[−0.1, 11] s 分段;EEG 用 0.5–40 Hz 带通、[−0.2, 2] s 分段。两套滤波与分段参数几乎是"互相看不见"的,这本身就是两者时间尺度不同的最直观证据(§7)。
3.5 互补性在分析层面的三种用法
数据到手后,双模态的价值体现在三类分析上:
- 时序对齐的联合分析:以同一刺激为锁时点,分别绘制 EEG 的 ERD 时程与 fNIRS 的 HbO 时程,比较"电活动起始"与"血流响应起始"的时滞。这直接对应耦合强度。
- 空间一致性的交叉验证:EEG 的 ERD 地形(受限 8 导)与 fNIRS 的 HbO 地形(70 通道)应指向同一侧半球。若两者分道扬镳(如论文患者 03 的正中看到的情况:ERD 主要在 FCC4 即右半球,而 HbO 先起于左半球),这本身就是一个值得解释的病理现象(§7.1、§7.3)。
- BCI 特征的拼接与冗余降维:把 EEG 的频带功率与 fNIRS 的 HbO 斜率拼成联合特征向量,用于分类"患手 vs 健手运动"或"运动 vs 静息"。EEG 提供快响应(可用于触发),fNIRS 提供稳健的慢成分(可提高准确率)。库内 mental-fnirs(1021) 走的是类似的多模态思路,但场景是认知任务而非卒中康复。
3.6 纵向重复:把"学习"“漂移”"恢复"分开
"多次记录"不是把单次数据复制几遍,而是在时间上造出三种可分离的变异来源:
| 变异来源 | 表现 | 分辨方法 |
|---|---|---|
| 个体内学习效应 | 同一任务重复多次后,ERD 幅度/潜伏期变化,动作更熟练 | 看 session 1→6 的单调趋势,且该趋势在健手与患手是否同向 |
| 电极与光极位置漂移 | 每次 session 重新戴帽,通道对应皮层位置有 cm 级差异,单通道幅度出现"跳变" | 跨 session 的通道间相关性骤降;用组平均而非单通道比较 |
| 真实恢复 | 患手运动的 ERD 幅度上升、双侧激活模式向正常侧化回归 | 与 ARAT/FMA 的改善同步出现,且健手侧不出现同样趋势 |
单次横断面数据无法分离这三者——你看到的一次"患手 ERD 弱",可能只是那天电极贴歪了,也可能只是患者没睡好。多次、每次重戴、每次同任务、每次配量表,才让"个体内变异(intra-individual variability)"从噪声变成可估计的统计量。
这也解释了为什么论文把"重复"当作样本量不足的部分补偿:限制节原文写"the multiple repetitions per patient increase the reliability of the data and allow analysis of rehabilitation-related dynamics over time"。16 例是天生的样本量短板,84 次重复是设计上的对冲——但要注意,重复不能替代独立个体:统计推断的单位仍应是患者(n=16),而不是会话(n=84),否则会严重低估标准误(坑 6)。
3.7 一张时间轴:从刺激到回落
把两类信号放在同一条时间轴上,物理图像会最清楚。下面的刻度以视觉闪光为 0 s:
| 时间 | EEG 侧发生什么 | fNIRS 侧发生什么 |
|---|---|---|
| −200 ms 至 0 | 准备电位开始累积(若试次可预期) | 无(基线) |
| 0–50 ms | 视觉诱发电位(VEP)早期成分 | 无(光密度尚未变化) |
| 100–200 ms | VEP 中晚期成分,注意定向 | 无 |
| 200–500 ms | 运动执行相关负波,LRP 峰约 500 ms | 初始暗化(initial dip)可能可见,信噪比极低 |
| 500 ms–1 s | 感觉运动 alpha/beta 去同步(ERD)快速展开 | HbO 开始上升 |
| 1–2 s | ERD 达峰,MRCP 出现再传入正波(RAP) | HbO 继续上升,HbR 下降 |
| 2–5 s | ERD 逐渐恢复 | HbO 接近峰值 |
| 5–7 s | 基本回到基线 | HbO 峰值平台(论文分段窗 [−0.1, 11] s 覆盖到此处) |
| 8–11 s | 完全恢复 | HbO 回落,可能出现 post-stimulus undershoot |
这张表最直观地解释了"为什么两个模态必须同时采":它们各自的信息出现在完全不同的时间窗里,任何一个窗口截断都会丢信息。如果只采 EEG 2 s,你会看不到血流响应的上升;如果只采 fNIRS 11 s 以下,你会丢掉 ERD 的全部细节。论文的两套分段参数(EEG [−0.2, 2] s、fNIRS [−0.1, 11] s)恰好覆盖各自的核心窗——这不是巧合,而是两类信号时间常数的直接映射。
3.8 论文示例的跨模态接力再解读
把 §7.1 与 §7.2 的结果叠到上面这条时间轴上,患者 03 的故事可以这样讲:
- 0.5 s 左右:FCC3(患侧,左)出现 LRP 负峰——患侧半球在尝试发出运动指令。
- 0.5–2 s:FCC4(健侧,右)的 alpha/beta ERD 最强——健侧半球快速介入。
- 2–11 s:HbO 先在同侧(患侧)半球上升,随后在对侧(健侧)半球上升——血流层面的"接力"滞后于电层面的介入。
换句话说:电层面的双侧介入几乎同时发生(健侧甚至更强),而血流层面的响应有明确先后(患侧先、健侧后)。这种"电-血流不同步"本身就是神经血管耦合在病理条件下被扰动的证据,也正是单模态研究永远看不到的东西。
需要强调的是,这是单例观察 + 论文作者的解读,不是经过组水平统计验证的结论。它的价值在于"展示了数据能回答什么问题",而不是"给出了答案"。
3.11 本节小结:互补性的四条判据
判断"两个模态是否真的互补",可以用四条判据:
- 测不同的物理量(电位 vs 血红蛋白)——本数据满足。
- 时间尺度不同且都不可由对方推出(ms vs s)——本数据满足(500 Hz vs 13.56 Hz)。
- 空间覆盖有交叠可用于交叉验证(感觉运动区双侧)——本数据满足(8 导 vs 70 通道均覆盖 C3/C4 附近)。
- 同一事件锁时(同一刺激触发器)——本数据满足(Arduino TTL 硬件同步)。
四条全中,这是"同步联采"而非"先后采集、事后拼接"的定义性特征,也是本数据集比"另找一份 EEG 加一份 fNIRS 配对"更有价值的地方。
§3.9 三个常被问到的物理问题
问题一:为什么 fNIRS 不能"看深一点",直接测到丘脑或基底节?
近红外光在脑组织中的穿透遵循指数衰减规律:光强随深度迅速衰减,且散射远强于吸收。源-探距 3 cm 时,光子的"香蕉形"路径最深到达约 2–3 cm,正好覆盖皮层灰质上半部。要测更深的结构,需要把源-探距拉到 4–5 cm,但此时信号强度下降到难以与系统噪声区分;同时头皮与颅骨层的干扰占比显著上升。这就是为什么所有商用 fNIRS 的常规配置都停在 3 cm 附近——不是不想深,是物理不允许。卒中研究里这一点尤其要紧:基底节与内囊是常见病灶部位,但 fNIRS 对它们是"盲"的,只能通过皮层表面的次级变化间接推断。
问题二:为什么 EEG 能"看到全脑"却不能定位?
头皮电位是全脑无数神经元同步活动的叠加,容积传导(volume conduction)让颅骨与头皮把源信号在空间上严重模糊。一个位于深部的源与一个位于皮层的源,可能在头皮上产生几乎相同的电位分布——这叫"逆问题的不适定性"。要缓解它,需要 ≥32(最好 64 以上)导的密集阵列加个体化头模型。8 导时,逆问题解的自由度远多于观测数,任何源定位结果都不可信。所以本条目的正确用法是区域级分析:左半球区域 vs 右半球区域,而不是"某某皮层柱"。
问题三:13.56 Hz 这个奇怪的数字从哪来?
它不是随手选的,而是 NIRx 连续波系统分时点亮方案的整除结果。系统以固定主时钟交替点亮不同光源组,各组轮转一周的周期决定了单通道的有效采样间隔。13.56 Hz 恰好是其内部时序的整数分频(也与 13.56 MHz 的 ISM 频段无关,纯属数字巧合,容易引起误读)。这个数字的意义在于:它由硬件时序决定,不可调。想在 fNIRS 上提高采样率,除非换设备原理(如频分复用或飞行时间系统),否则行不通。
3.10 为什么同步在卒中研究里比在健康人研究里更重要
健康人研究里,EEG 与 fNIRS 各自独立采集、事后按任务标记对齐,误差通常可以容忍——因为健康人的血流响应形态稳定,稍许时滞不影响结论。卒中患者则不然,三条理由:
- 血流响应可能延迟:病灶侧半球的 HRF 峰值延迟可能达到 1–2 s 甚至更多。若对齐本身就有 ±0.5 s 误差,延迟的估计将完全失真。
- 单试次信噪比低:偏瘫患者能做成功的试次少、动作幅度小、肌电伪迹重,可用试次本就稀少,容不得对齐误差再吃掉一部分。
- 纵向比较跨设备重戴:每次 session 都要重新安装光极,通道-皮层映射有变动。同步只解决"时间",不解决"空间"——所以空间上必须靠组平均与解剖配准,而不是靠单通道的跨 session 比较。
这三点合起来说明:本数据集把"硬件同步"当作设计核心,不是技术炫技,而是卒中场景的刚需。
§4 采集现场:从病床到数据文件
4.0 一条记录的完整生命周期
伦理与入组(mRS=3、上肢偏瘫、认知保留、右利手)
↓
康复首日 → session 1(戴帽、打胶、调阻抗 <10 kΩ、装光极)
↓
SRT:每手 ≥3 run,run 间休息;LED 200 ms,间隔 9–11 s
↓
Arduino 在每个刺激起始同时发 TTL 给 EEG 与 fNIRS
↓
采集结束 → 原始 .fif/.snirf/.edf 落盘 → 伪迹/触发检查
↓
(若伪迹过多或触发错误 → 该 recording 被剔除,共 30 个)
↓
强度 → 光密度(MNE v1.3.1)→ 交付 Figshare
这条链路里有两个"人为闸门"值得注意:一是入组闸门(决定样本长什么样),二是剔除闸门(决定交付的样本与采集的样本差多少)。前者论文写得很清楚,后者只给了一个总数 30,没给逐患者明细——这是复现纵向分析时必须自己核对的地方。
4.1 现场与人员
数据在俄罗斯联邦医学生物署(FMBA)大脑研究联邦中心(Federal Center of Brain Research and Neurotechnologies)的住院康复环境内采集。这一选择决定了数据的"自然度":患者不是被请进实验室做一次性实验,而是在本来就要接受的康复训练时段内完成任务。论文未详细描述治疗师在场情况、训练日程与任务时长的关系(是嵌入康复课程还是额外加做),这是方法学复现时的一个空白。
4.2 硬件清单与角色分工
| 设备 | 型号 | 角色 | 关键参数 |
|---|---|---|---|
| EEG 放大器 | NVX-52(MCS,泽列诺格勒) | 采集 8 导 EEG + 2 EMG + 1 ECG | 500 Hz,8 被动 Ag/AgCl 电极 |
| fNIRS 主机 | NIRSport 16×16 / NIRSport 8×8(NIRx,柏林) | 采集 70 通道光密度 | 24 源(760/850 nm,5 mW)、24 探测器(Si 光电二极管),13.56 Hz |
| 同步控制器 | 自研 Arduino 方案 | 发出 TTL 触发脉冲 | 与视觉刺激呈现同源 |
| 刺激呈现与按键盒 | 自研(LED + 按钮 + 定制手盒) | 任务呈现与行为记录 | 200 ms 闪光,9–11 s 间隔 |
| 参照/辅助 | 阻抗计、导电膏、光极固定帽 | 现场质控 | 阻抗 <10 kΩ |
两台主设备的厂商路径完全不同(俄制 EEG 放大器 + 德国 fNIRS 系统),中间必须靠第三方控制器桥接——这正是自研 Arduino 方案存在的原因。论文描述得很直白:“At each visual stimulus onset, the controller simultaneously transmitted trigger pulses to the TTL synchronization inputs of both the EEG amplifier and fNIRS device.”
4.3 硬件同步为什么优于软件对齐
软件对齐(如事后用交叉相关估计时滞)的三类误差:
- 累积时钟漂移:两台设备各有独立晶振,运行数十分钟后可能相差数十毫秒到数百毫秒。
- 事件记录遗漏:靠人工按键或软件打点,漏一个事件就毁掉整个分段。
- 对齐依据不明:EEG 与 fNIRS 信号本身形态迥异,交叉相关没有可靠的"同一事件"参照物。
硬件 TTL 同步把这三个问题一次性消掉:同一个物理脉冲同时写入两个设备的同一时间点,零点在物理层一致,不存在漂移与估计误差。对 fNIRS 尤其重要——它的采样间隔 74 ms,若靠软件对齐,单是 ±1 个采样点的误差就可能让 HbO 时程的上升沿位置偏掉。
4.4 任务设计的三处精巧
第一处:按压方式是腕指伸展,不是握拳。 偏瘫患者最常见的运动模式是屈肌协同(手指蜷曲、手腕内翻),而康复训练的核心目标恰是伸肌的再激活。让患者做伸展按键,测的是他们最需要恢复、也最容易失败的那块功能——这让 ERD 与行为表现之间的关联更有临床意义。同时也巧妙避开了握拳动作中 EMG 串扰对 EEG 的污染(尽管 EMG 仍会被记录,用于核验动作幅度)。
第二处:非目标试次是对侧的"同感官、零运动"对照。 左右两个 LED 都会闪,但只有目标手一侧的闪光需要应答。于是非目标试次提供了一个理想的对照条件:视觉输入相同(同样是 LED 闪),注意方向相同(都要看),唯独缺了运动输出。ERD 分析正是拿"目标试次"减"非目标试次"的基线功率(§7.3)——这比用"静息期"作基线要干净得多,因为它扣除了视觉诱发成分。
第三处:9–11 s 的间隔是按 fNIRS 的血流动力学时间常数设计的。 血流响应从起效到回到基线需要 10 s 以上,间隔若只有 2–3 s(常见于纯 EEG 的快速事件设计),相邻试次的 HbO 响应会严重叠加,根本无法做单试次分段。9–11 s 意味着每个试次都能拿到一个完整的、不受前一次污染的血流响应窗(论文分段取 [−0.1, 11] s 正好覆盖)。这个间隔本身就是为了 fNIRS 而设计的——它对 EEG 来说是"浪费",对 fNIRS 来说是"必要"。
代价也要说清楚:12 试次 × 10 s ≈ 2 分钟一个 run,6 run 约 12 分钟,加上准备时间与偏瘫患者的疲劳,单次 session 的任务负担不小。这可能是部分患者会话不完整的原因之一。
4.5 数据托管、匿名化与伦理
- 匿名化方式:论文只写"Patient data were anonymized and depersonalized according to applicable regulations",未说明具体去标识字段、是否去除面部影像、ID 重映射方式。文件名的患者编号(如
_02_)应为重映射后的研究编号。 - 伦理审批:Skoltech 地方伦理委员会,protocol №10,2023-05-18;遵循赫尔辛基宣言;全部受试者书面知情同意。
- 注册:ClinicalTrials.gov NCT06806397。注册号的存在意味着可以核查入排标准与招募时间窗——这也是对"数据是否真实"的一道旁证。
§5 数据结构与使用骨架
5.1 三个格式的分工
Figshare 条目 28904942
├── fNIRS/ ← .fif + .snirf + .txt(事件表)
├── EEG/ ← .fif + .edf
├── demographics / clinical ← 人口学与 ARAT/FMA 评分
└── *.py ← 加载、预处理、分段与绘图脚本
选择哪个格式取决于你的分析栈:
- 纯 EEG 分析:
.edf最通用(EEGLAB/FieldTrip/MNE 都能读),但 EDF 对通道标注的保留程度依导出设置而定,建议同时保留.fif。 - fNIRS 分析:
.snirf是社区标准,MNE-NIRS、Homer3、NIRS-Kit 均可读;事件表单独存在.txt里,需要用时间戳对齐。 - 联合分析:
.fif是唯一"两个模态都在同一个文件体系里"的路径,MNE 的Raw对象可以同时装 EEG 与 NIRS 通道,便于统一分段。
5.2 加载骨架(MNE-Python)
import mne
# fNIRS:SNIRF 读入,事件来自配套 txt
raw_nirs = mne.io.read_raw_snirf("R_02_session2_right1.snirf", preload=True)
events = mne.read_events("R_02_session2_right1_events.txt")
# 强度→光密度
od = mne.preprocessing.nirs.optical_density(raw_nirs)
# 带通 0.05–0.7 Hz,按 [−0.1, 11] s 分段
od_f = od.copy().filter(0.05, 0.7, fir_design="firwin")
epochs_nirs = mne.Epochs(od_f, events, tmin=-0.1, tmax=11.0, baseline=None)
# Beer-Lambert(partial pathlength factor = 4,双波长)
# 注:论文只声明 PPF=4,未给出各波长的差分路径因子取值
# EEG:FIF 读入,带通 0.5–40 Hz,按 [−0.2, 2] s 分段
raw_eeg = mne.io.read_raw_fif("R_02_session2_right1_raw.fif", preload=True)
raw_eeg.filter(0.5, 40.0)
epochs_eeg = mne.Epochs(raw_eeg, events, tmin=-0.2, tmax=2.0,
baseline=(-0.2, -0.1), preload=True)
上面两段是骨架而非论文原脚本:论文随数据提供 Python 脚本,但具体函数调用与参数顺序以官方脚本为准。这里列出的是论文文本中明确给出的参数(滤波带、分段窗、基线窗、PPF),可作为核对官方脚本是否一致的自检点。
5.3 事件对齐的两条纪律
- 先确认事件码映射:
flash_l/flash_r按刺激侧命名,目标手由文件名决定。在右手目标的文件里,flash_l= 非目标。这个映射必须在加载时显式写进代码注释,否则半年后自己都看不懂。 - SNIRF 的事件表与 FIF 的事件可能不完全一致:论文同时提供两种格式,理论上事件内容相同,但实际读取时事件数量、时间基准(是否含设备启动延迟)需要逐一比对。建议以 FIF 内嵌事件为主、SNIRF txt 为交叉校验。
5.4 一次会话的最小可复现流程
| 步骤 | 操作 | 参数来源 |
|---|---|---|
| 1 | 读入 .snirf 与事件表 |
文件本身 |
| 2 | 强度 → 光密度 | 论文:mne.preprocessing.nirs.optical_density |
| 3 | 带通滤波 | 论文:0.05–0.7 Hz |
| 4 | 分段 | 论文:[−0.1, 11] s |
| 5 | 光密度 → HbO/HbR | 论文:Beer-Lambert,PPF=4 |
| 6 | 通道分组(左/右感觉运动区) | 需读文件头坐标(论文未列表) |
| 7 | 组平均并画时程 | 论文图 3 下栏 |
| 8 | EEG 侧:0.5–40 Hz 带通、[−0.2, 2] s 分段 | 论文 |
| 9 | Morlet 小波(1–30 Hz,0.4 Hz 步长,FWHM 270 ms) | 论文 |
| 10 | ERD/S = log10(P_mov / P_base) | 论文:基线取非目标试次 1–4 s 中位功率 |
5.5 数据字典(按论文文本可确定的部分)
| 字段/对象 | 类型 | 取值/单位 | 语义 |
|---|---|---|---|
| 文件名患侧 | 字符 | R / L |
患侧(R=右手偏瘫,L=左手偏瘫) |
| 文件名患者号 | 整数 | 01–16 | 重映射后的研究编号 |
| session 号 | 整数 | 1–6 | 1=康复首日,6=出院前末次 |
| run 名 | 字符串 | left<n> / right<n> |
该 run 的目标手与序号 |
| EEG 通道 | 浮点 | μV 或 V(论文写"recorded in volts") | 8 导头皮电位 |
| EMG 通道 | 浮点 | 同放大器量纲 | 双侧指伸肌表面肌电 |
| ECG 通道 | 浮点 | 同放大器量纲 | 双腕 Einthoven I |
| fNIRS 值 | 浮点 | 光密度(OD) | 760/850 nm 两波长 |
| 事件码 | 字符串 | flash_l / flash_r |
视觉刺激侧 |
| 采样率 | 整数 | EEG 500 Hz / fNIRS 13.56 Hz | — |
注意最后一行的量纲陷阱:论文写 EEG"recorded in volts",而临床 EEG 通常以 μV 呈现。读数时先查 raw.info['units'] 再换算,否则 ERD 的对数比虽不受影响,但 MRCP 的幅值会差三个数量级(坑 4)。
§5.6 常见读取故障与排查表
| 症状 | 可能原因 | 排查顺序 |
|---|---|---|
read_raw_snirf 报缺 nirs 通道 |
文件导出版本与 MNE 版本不匹配 | 升级 MNE;或改读 .fif |
| EEG 全是 0 或恒定值 | 读错通道类型/参考设置 | 打印 raw.ch_names 与 raw.get_data().std(axis=1) |
| 事件数为 0 | 事件不在 FIF 内嵌、而在单独 txt | 改读 txt 并手动构造 events 数组 |
| 事件数远多于 12×run 数 | 混入了设备自触发或按钮事件 | 统计事件码分布,只保留 flash_l/flash_r |
| HbO 全是负值 | 符号约定或波长顺序反了 | 核对两波长顺序与 Beer-Lambert 实现 |
| 分段后波形在基线区有斜坡 | 带通滤波的边界效应 | 加长 padding 或改用 FIR 零相位滤波 |
| ERP 幅值到 10^4 量级 | 单位是 V 而非 μV | 见坑 4 |
| 某患者某 session 缺失 | 该 recording 被剔除(30 个之一) | 对照附录 E 的覆盖率表 |
这张表的意义在于:本数据集的格式三套并存(FIF/SNIRF/EDF),每套都有自己的坑,而上游没有给"官方故障排查文档"。提前列出来,能让第一次上手的人少走几小时弯路。
§5.7 一次"最小可发表分析"的完整参数清单
若要基于本数据集写方法学论文,以下参数需要全部报告,缺一项审稿人就会追问。这里整理成可复制的清单:
| 分析环节 | 必报参数 | 本数据集的默认/论文值 |
|---|---|---|
| 数据筛选 | 纳入患者数、纳入 session 数、剔除试次比例 | 16 例 / ≤84 次 / 论文未报 |
| fNIRS 预处理 | 带通范围、分段窗、基线窗、PPF | 0.05–0.7 Hz / [−0.1,11] s / 未报 / 4 |
| fNIRS 通道分组 | 左右簇定义方式与通道数 | 论文未给逐通道表 |
| EEG 预处理 | 带通、陷波、ICA 与否 | 0.5–40 Hz / 未报 / 未做 |
| EEG 分段 | 窗长、基线 | [−0.2,2] s / [−0.2,−0.1] s |
| 时频方法 | 小波类型、频带、步长、FWHM | Morlet / 1–30 Hz / 0.4 Hz / 270 ms |
| ERD 定义 | 公式、基线条件、剔除窗 | log10(P_mov/P_base) / 非目标 1–4 s / 首秒 |
| 统计模型 | 随机效应结构、协变量 | 论文未做组水平统计 |
| 纵向设计 | session 编码方式 | 论文未给日期 |
注意最后两行的空缺:论文本身没有做组水平统计推断——它只做了单例描述性验证。这意味着你若要做组水平分析,就是本数据集的第一批使用者,没有先例可循,参数选择必须自己论证并写进方法学。
§6 获取与许可:门在哪、怎么进
6.1 获取路径
| 资产 | 入口 | 许可 | 门槛 |
|---|---|---|---|
| 数据集本体 | Figshare https://doi.org/10.6084/m9.figshare.28904942 |
论文未声明(以仓库页面为准) | 公开,无需申请 |
| 论文全文 | https://doi.org/10.1038/s41597-026-06803-5 |
CC BY-NC-ND 4.0 | 开放获取 |
| 临床注册 | ClinicalTrials.gov NCT06806397 | — | 公开 |
| 新闻稿 | Skoltech 2026-03-03(经 medicalxpress / scoop 转载) | 版权归发布方 | 公开 |
6.2 许可的两层要分清
这是本条目最容易出错的地方:
- 论文的许可 ≠ 数据的许可。论文页脚写的是 Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International(CC BY-NC-ND 4.0),这是"你可以转载这篇文章,但不能商用、不能改写";它不自动延伸到数据文件。
- 数据许可需要回 Figshare 条目页核实。论文的 Data availability 只写"available at Figshare",未声明 CC 协议类型。Figshare 上作者通常可选 CC BY 4.0、CC BY-NC 4.0 或"无许可"(默认保留所有权利,但可下载)。本条目按实核原则把数据许可记为"论文未声明",使用前必须到仓库页面确认(坑 7)。
实践建议:若你的用途是学术研究与发表,两者都无障碍;若涉及商业产品化(如把数据用于训练商用 BCI 模型),先确认 Figshare 条目的具体许可,不要以论文的 CC BY-NC-ND 推而广之——那条许可本身也禁止商用,双重保守是错的,正确的做法是查数据本身的条款。
6.3 可获取性的"直链档"定位
在库内条目构成的获取光谱上,本条落在最开放的一档:
| 档位 | 库内参照 | 本条目 |
|---|---|---|
| 请求制(upon request) | 部分老条目 | — |
| 注册墙 | 部分临床影像条目 | — |
| 平台托管(Zenodo/Figshare/OpenNeuro) | mental-fnirs(1021) 等 | ✅ Figshare 直链 |
| 公开直链 + 多格式 + 代码 | 少数高质量条目 | ✅ FIF/SNIRF/EDF + Python 脚本 |
这使它成为一个"拿来即用"的数据集:不需要邮件、不需要审批、不需要签署数据使用协议。对一个只有 16 例的专科数据集而言,这种开放性直接决定了它能否被广泛复用——而"能否被复用"正是 AI-Ready 的核心判据。
§7 技术验证:论文给出的两组示例分析
7.1 fNIRS:患者 03 的双侧血流动力学响应
论文选了 03 号患者(左半球卒中、右侧偏瘫)作为示例,取该患者全部 session 的中位数做地形图与组平均。
| 参数 | 值 |
|---|---|
| 滤波 | 带通 0.05–0.7 Hz |
| 分段 | [−0.1, 11] s |
| 浓度换算 | Beer-Lambert,partial pathlength factor = 4 |
| 通道分组 | 左右感觉运动区两个簇,分别平均 |
| 统计 | 95% 置信区间(阴影带) |
结果:患手(右手)运动时,HbO 在同侧(左侧,即病灶侧)半球先出现响应,随后对侧(右侧,健侧)半球才出现响应。论文将此解释为"contralesional sensorimotor networks 的代偿性募集"。
这个发现值得多读一遍:它不是"患侧坏了所以对侧顶上"这么简单。注意论文的用词——ipsilesional 先、contralesional 后。也就是说,病灶侧半球仍然能发出血流响应(说明耦合没有完全断裂),只是必须在健侧半球"补位"之前先动。这个时间顺序(先 ipsi、后 contra)与健康人的双侧模式不同,恰好是纵向康复研究想要追踪的轨迹。
7.2 EEG:同一患者的 ERD 与 MRCP
| 分析 | 参数 |
|---|---|
| 带通 | 0.5–40 Hz |
| 分段 | [−0.2, 2] s |
| 时频方法 | Morlet 小波,1–30 Hz,步长 0.4 Hz,FWHM 270 ms |
| ERD 频带 | alpha 7–11 Hz,beta 15–25 Hz |
| 基线 | 非目标试次刺激后 1–4 s 的中位功率;剔除首秒以避诱发电位 |
| MRCP 滤波 | 1–20 Hz,基线 −0.2 至 −0.1 s |
结果 1(ERD/S):患手运动时,alpha 与 beta 的 ERD 主要在 FCC4(右侧,健侧半球) 出现。这与"健康人同侧手运动主要引起对侧半球 ERD"的经典模式相反——在偏瘫患者身上,健侧半球的去同步反而更强。
结果 2(MRCP):运动相关皮层电位显示患侧(左,即 FCC3)更活跃。刺激后约 0.5 s 出现负峰,对应偏侧化准备电位(lateralized readiness potential, LRP),随后是正相偏转(reafferent potential, RAP)。两者的幅值在 FCC3 上都更大。
把两组合在一起读,会看到一个非常有意思的"分工":
| 观测 | 更强的一侧 | 解读(论文口径) |
|---|---|---|
| HbO 血流响应(先起) | 左侧(患侧) | 病灶侧仍有活动,先动 |
| HbO 血流响应(后起) | 右侧(健侧) | 代偿性募集 |
| alpha/beta ERD | 右侧(FCC4,健侧) | 健侧节律去同步更强 |
| MRCP(LRP/RAP) | 左侧(FCC3,患侧) | 患侧慢电位幅值更大 |
电生理与血流动力学指向不完全相同的半球——这正是 §3.2 所说"耦合本身值得研究的"的具体体现。如果只有 EEG,你会说"主要是健侧在去同步";如果只有 fNIRS,你会说"主要是患侧先响应"。两者合起来,才能看到这个跨半球的时序接力。
7.3 ERD/S 公式的两个易错点
$$\mathrm{ERD/S} = \log_{10}!\left(\frac{P_{\text{movement}}}{P_{\text{baseline}}}\right)$$
- 负值 = 去同步(ERD),正值 = 同步(ERS)。这是论文明确写的约定(“Negative values indicate desynchronization”)。别把符号弄反。
- 基线不是静息期,而是非目标试次。具体取"刺激后 1–4 s 的中位功率",且"剔除首秒"以避免视觉诱发电位污染。这个设计比"刺激前静息段"更抗漂移,因为它与被比较的试次处于同一时间窗内、同一警觉水平。
7.4 验证的边界:论文证明了什么、没证明什么
论文的技术验证(Technical Validation)只做了单例(患者 03)的示范:证明"数据可以用来做 HbO 时程、ERD 地形、MRCP 波形",而不是"全体 16 例都呈现同样的模式"。这是 Data Descriptor 体裁的常规做法——验证的是数据的可用性,不是科学结论的普遍性。
因此引用时要避免两个越界:
- 不能说"该数据集证明卒中患者健侧半球代偿"——那是单例观察,需要后续研究在全体样本上验证。
- 不能说"该数据集显示 fNIRS 在卒中 BCI 中优于 EEG"——论文没有做任何模态比较实验。
7.6 fNIRS 预处理的标准选项表(论文未展开部分)
论文只声明"强度→光密度"一步,其余预处理需使用者自行补齐。下表列出 fNIRS 社区的标准选项,并标注哪些在本数据集上应特别注意:
| 环节 | 常见选项 | 关注理由 | 本条注意 |
|---|---|---|---|
| 运动伪迹校正 | TDDR、短通道回归、PCA、小波 | 偏瘫患者头部与下颌运动多 | 每次重戴、跨会话比较时尤为关键 |
| 短通道(S-D <1 cm) | 若有则用于回归头皮血流 | 消除系统性生理噪声 | 论文未说明是否布设短通道,需读文件头 |
| 系统性生理噪声 | 带通 0.01–0.2 Hz 或 GLM 加心率/血压回归 | 卒中患者血流动力学波动大 | 论文用 0.05–0.7 Hz 带通,属宽窗 |
| 全局成分去除 | 全局平均信号回归(gmean) | 去除全头共同漂移 | 需注意左右半球对比时不要过度归零 |
| 基线 | 刺激前 2–5 s 或条件基线 | 跨会话幅度可比性 | 论文窗仅 [−0.1,0] s,偏短 |
| HRF 建模 | GLM + 标准 HRF,或平均波形 | 组水平统计用 GLM,单例展示用平均 | 论文用平均波形画图 |
| 通道质量 | SCI(scalp coupling index)或 CV | 光极贴合度 | 重戴导致 CV 跨会话漂移 |
这张表的意义:论文的"预处理"只做了一步,而这个数据集的真实价值(纵向)恰恰最依赖后面这些步骤是否严谨。如果你只是照抄论文的一步(强度→光密度),跨会话分析几乎必然被伪迹与基线差异淹没。这也是为什么本条目在 §8 与附录 F 反复强调"预处理流水线要自建并报告"。
§7.5 从验证图能读出什么:三种"数据健康"信号
技术验证图除了展示结果,还承担着"数据健康证明"的功能。用读者视角看,可以读出三条:
| 健康信号 | 在图里怎么看 | 说明什么 |
|---|---|---|
| 事件锁时干净 | 分段后组平均的基线区间应当平坦(HbO 在 −0.1–0 s 无明显斜率;EEG 在 −0.2–0 s 无大偏移) | TTL 同步有效,事件时间戳没有系统性错位 |
| 信噪比可接受 | HbO 组平均的 95% CI 阴影带宽窄于效应幅度 | 单试次噪声虽大,平均后信号浮现;样本内试次数足够 |
| 通道分组合理 | 左右两簇的响应时程形态不同但都符合 HRF 形状 | 空间分组不是随机划分,源-探几何有效 |
若你拿到数据后先跑一遍上述自检(任选一个患者的一个 session),就能在 30 分钟内判断"这份数据能不能直接用",而不必先复现论文全流程。这也是本条目推荐的第一动作——先做一个 session 的端到端流水线,再谈全量分析。
§8 局限、适用边界与误用风险
8.1 论文自陈的三条局限
论文 Limitations 节只有三句,但每条都切中要害:
- EEG 通道少(limited number of EEG channels):8 导决定了只能做区域级对比,不能做源定位,也不宜做全脑连接网络。
- 部分患者会话不完整(incomplete session coverage for some participants):纵向分析必须按患者逐一检查 session 覆盖,不能默认"每人 6 次"。
- 样本量小(limited sample size):16 例,且全部 mRS=3、全部右利手。
作者同时给出辩护:重复增加了数据的可靠性,并支持康复动态分析。这个辩护成立,但有边界(§8.3)。
8.2 论文未自陈、但使用者必须知道的五条
| 风险点 | 具体表现 | 应对 |
|---|---|---|
| 会话间隔不均等 | 论文未给逐例会话日期,session 之间可能相隔数天到数周 | 纵向建模用 session 序号 / 或向作者索取日期;不要假设等间隔 |
| 30 个 recording 被剔除 | 主要来自前 3 名患者,剔除标准是"伪迹多/触发错" | 前 3 号患者的样本可能系统性偏少,做患者级分析时报告有效 session 数 |
| 卒中侧别分布不明 | 正文未汇总左/右半球患者数 | 从文件名前缀 R/L 统计后自行报告 |
| 系统性生理噪声未处理 | 论文未描述短通道回归、心率/血压回归等 fNIRS 标准去噪步骤 | 自行补做;作者预处理的"原样交付"意味着质量控制在用户手上 |
| 原始 EEG 完全未处理 | 论文原文:“The raw EEG signal was not preprocessed in any way” | 眼动、肌电、电极漂移全部保留;预处理流水线要自建并说明 |
第五条特别值得强调。很多数据集会附带"已清洗"版本,本数据集则明确交付未经任何 EEG 预处理的原始电压。这是好事(保留全部信息、避免作者的预处理选择变成隐性偏倚),也是负担(你得自己处理 84 次会话级别的伪迹,且偏瘫患者的面部/颈部肌电伪迹比健康人更多)。
8.3 纵向重复的统计边界
n=16 例 / 84 会话的结构,最常见的误用是把会话当独立样本做组间检验。后果是标准误被严重低估——同一个患者 6 次会话之间高度相关,有效样本量远小于 84。正确做法包括:
- 混合效应模型:患者为随机截距(必要时加 session 为随机斜率),固定效应放患侧/时间/条件。
- 患者级汇总后再检验:先在每位患者内部求平均,得到 16 个观测再做组水平推断。
- 重复测量方差分析:session 作为 within-subject 因子,需处理缺失会话。
反过来,也不要走到另一个极端——认为"只有 16 例所以什么都不能做"。16 例在卒中神经影像文献里属于中等规模,配合 84 次重复与同质化的入组标准,足以支撑效应量较大的纵向现象(如康复前后 ERD 幅度的变化)的初步检验。
8.4 适用场景清单
适合:
- 卒中康复的纵向电生理/血流动力学轨迹研究(学习效应、代偿模式、恢复预测)。
- EEG-fNIRS 融合算法开发(特征拼接、时滞建模、联合源估计的方法验证)。
- 卒中 BCI 的特征工程与可行性评估(患手 vs 健手分类、运动意图检测)。
- 神经血管耦合的方法学研究(在病理人群里验证耦合度量)。
- 教学与基准:作为"真实临床噪声"的对照集,测试预处理流水线在低信噪比下的鲁棒性。
不适合:
- 需要高密度 EEG(≥32 导)的源定位、微状态分析、全脑网络研究。
- 需要大口径 fNIRS 全头覆盖(如前额叶认知任务)。
- 需要健康对照组的病例-对照设计(本数据集无健康对照组,需自行匹配)。
- 需要长病程慢性期(>1 年)患者的康复轨迹研究(本数据慢性组仅 3 例且 <1 年)。
- 需要重力/负荷条件下的运动任务(本任务是等长按键,不是抓握或举起)。
8.5 三类误用场景的"事后诊断"
误用往往在投稿被拒或被复现失败时才暴露。这里给出三类高频误用的诊断特征,便于自查:
误用一:把横断面结论说成纵向结论。
诊断:你的图里 session 轴是装饰性的(把所有 session 合并后只画了一张图),但讨论部分却写了"随康复进展……"。修正:要么做出按 session 分层的图,要么把"纵向"从结论中删掉。
误用二:把单例示范当作群体证据。
诊断:你的引用链最终指向论文 Figure 3/4(患者 03),但正文写"卒中患者表现为……“。修正:改成"在示例患者中观察到……,该模式在群体上的普遍性有待验证”。
误用三:把 fNIRS 的"无响应"解读为"无激活"。
诊断:你报告某通道 HbO 无显著变化,结论写"该区域未被激活"。修正:讨论神经血管解耦的可能性,并用 EEG 侧(若该区有电极)做交叉验证。这正是本数据集存在的意义——如果你只用了 fNIRS 一半的数据,就浪费了它最核心的设计。
8.6 一份自查清单(投稿前 8 问)
- 我报告的 n 是患者数还是 session 数?统计模型与之匹配吗?
- 我的 session 覆盖是否完整?缺失的 session 如何处理、是否报告?
- 我的 EEG 量纲确认过吗?
- 我的
flash_l/flash_r映射是按文件逐一核对的,还是想当然? - 我的 fNIRS 左右通道分组依据是文件头坐标还是序号硬切?
- 我的结论是"患者 03 的模式"还是"全体患者的模式"?措辞对得上吗?
- 我引用"首个"时注明来源是新闻稿了吗?
- 我的用途是否触及 Figshare 许可的空白区?查过条目页了吗?
八问全部能答"是",这份数据的用法基本就站得住了。
§9 与库内 EEG 条目的关系:同模态、不同临床世界
9.1 家族图谱
库内 EEG 类条目已有 7 条,加上 2 条邻近条目(fNIRS 与卒中量表),构成一张"临床场景 × 采集范式"的地图:
| 条目 | rid | 临床场景 | 模态 | 时间结构 | 与本条的关键差异 |
|---|---|---|---|---|---|
| tuh-eeg-corpus | 71 | 癫痫(含多中心异质队列) | EEG | 片段级,非纵向 | 病理类型完全不同;无 fNIRS;无运动任务 |
| chb-mit-scalp-eeg | 72 | 儿科癫痫发作检测 | EEG | 连续长程(小时级) | 目标是发作检测,不是康复;儿科 |
| bonn-eeg | 322 | 癫痫发作/间期 5 类分类 | EEG | 单次短片段 | 样本量极小、无纵向、无任务 |
| eegmmidb | 342 | 健康人运动/想象运动 | EEG | 每被试 1–2 次 | 最接近的运动范式,但对象是健康人、无 fNIRS、无临床量表 |
| hbn-eeg | 362 | 儿童青少年发育队列 | EEG | 横断面大队列 | 儿科、静息/任务混合、无卒中 |
| siena-scalp-eeg | 1070 | 癫痫发作检测(Scala/EEE) | EEG | 连续长程 | 癫痫;无 fNIRS;无康复 |
| helsinki-neonatal-eeg | 880 | 新生儿 EEG | EEG | 连续 | 新生儿;完全不同的发育阶段 |
| mental-fnirs | 1021 | 认知/心理任务 | fNIRS 单模态 | — | 有 fNIRS 无 EEG;非卒中;非运动康复 |
| stroke-scale-mimic-iii | 596 | 卒中严重度量表(EHR) | 结构化量表 | 住院记录 | 无神经信号;只有临床评分 |
| stroke-eeg-fnirs(本条,库内暂无 rid) | — | 卒中后运动康复 | EEG + fNIRS 同步 | 纵向(每例最多 6 次) | — |
9.2 四条区分线
第一线:病理 vs 生理。 71/72/322/1070 全是癫痫——记录的是异常放电的检测与分类。本条是卒中——记录的是正常功能的丧失与重建。两者在信号特征、标注方式、评价指标上毫无交集:癫痫数据集的标签是"发作/非发作",本数据集的"标签"是临床量表分数与任务条件。
第二线:单次 vs 纵向。 库内绝大多数 EEG 条目是横断面(每人一份记录)或连续长程(每人数小时但只有一次)。本条的独特性在于同一患者跨越多周、每次重新摆位,这带来了"个体内变异"这一其他条目无法研究的维度(§3.6)。
第三线:单模态 vs 同步双模态。 mental-fnirs(1021) 是库内唯一另一条 fNIRS 条目,但它是单模态、认知任务。本条是库内唯一同时含 EEG 与 fNIRS 且硬件同步的条目——这一点即便放到全库范围也是稀缺的。
第四线:健康人 vs 患者。 eegmmidb(342) 的运动想象范式与本条最接近(都是运动相关 EEG、都关注 ERD),但对象是健康志愿者、每次记录独立、无临床结局。把 eegmmidb 当作"健康对照"的想法技术上可行但需谨慎:导联系统(64 导 vs 8 导)、任务(想象 vs 执行)、设备都不同,直接合并会引入系统性偏差。
9.3 建议的互链方式
- 方法互链:与 eegmmidb(342) 互链,用"健康人运动 ERD 基线 ↔ 卒中患者运动 ERD"的对照叙事。
- 模态互链:与 mental-fnirs(1021) 互链,构成"fNIRS 单模态(认知)↔ fNIRS+EEG(运动康复)"的模态演进线。
- 临床互链:与 stroke-scale-mimic-iii(596) 互链,构成"卒中临床量表(纯结构化)↔ 卒中神经信号 + 量表",提示可做"量表预测"的下游任务。
- 对照互链:与癫痫类条目(71/72/322/1070)互链,但要在叙事上明确"不同疾病、不同任务",避免被检索算法误当作同类。
9.4 三条区分线的"检索判据"
在实际检索中,最省时的做法不是读全文,而是看三个字段就能区分:
| 判据 | 本条的值 | 对照 |
|---|---|---|
| 标题里有没有 fNIRS | 有 | 71/72/322/342/362/880/1070 全部没有 |
| 对象是不是患者 | 是(卒中) | 342/362 是健康人/发育队列 |
| 是否纵向 | 是(≤6 次/人) | 除 1021 外库内 EEG 条目均非纵向 |
三问之后仍未排除,再看任务范式(SRT 键压 vs 发作检测 vs 运动想象)即可定论。这也是 AI-Ready 条目应当提供的最低检索价值:让人在 30 秒内判断"是不是我要的"。
9.5 家族外的"近邻":库内非 EEG 的康复类条目
库内还有康复方向的非神经信号条目(如动作捕捉、可穿戴运动学类),它们与本条构成"行为层 vs 神经层"的互补:
| 层次 | 测什么 | 库内代表 | 与本条关系 |
|---|---|---|---|
| 行为/运动学 | 关节角度、步态、手部轨迹 | 康复运动捕捉类条目 | 可提供"输出侧"指标 |
| 神经电生理 + 血流 | 皮层活动 | 本条 | 提供"输入侧"机制 |
| 临床量表 | ARAT/FMA 等 | 本条自带 + 卒中量表类条目(596) | 提供"结果侧"评分 |
三层拼起来才是完整的"康复闭环":神经层解释为什么恢复、行为层测量恢复了多少、量表层记录临床上能不能用。本条恰好同时带神经层与量表层,缺的只是行为层的高速运动学——若要做闭环研究,与库内运动学条目联合检索是自然的下一步。
§10 避坑清单:十一个已踩过的坑
以下每一条都是检索或使用本数据集时真实会遇到的歧义,附有判别方法。编号固定,便于交叉引用。
坑 1:在 PhysioNet/OpenNeuro 里找不到它。
本数据集在 Figshare(DOI 前缀 10.6084/m9.figshare),不在 PhysioNet、OpenNeuro、Zenodo。检索时用 figshare + fNIRS + stroke,或用论文的 DOI 反查参考文献 [16]。用 “PhysioNet stroke EEG” 搜只会命中无关条目。
坑 2:把"全球首个"当成论文结论。
“first in the world to combine long-term EEG and fNIRS” 出自 Skoltech 新闻稿(2026-03-03),论文正文只说 “longitudinal datasets combining fNIRS and EEG in stroke populations remain limited”。引用时写"据 Skoltech 发布稿称",不要写"论文声称"。
坑 3:把文件名里的 right 当成患侧。
命名是 <患侧>_<患者号>_session<N>_<目标手><run 号>。R_02_session2_right1 里第一个 R 是患侧(右手偏瘫),最后的 right1 是目标手。当两者相同时最容易被误读为冗余;遇到 R_02_session2_left1(右手偏瘫的患者做左手任务)就会暴露理解错误。判别法:目标手会在同一 session 内交替出现 left/right。
坑 4:EEG 量纲差三个数量级。
论文写 “EEG files contain raw EEG signals … all recorded in volts”,而临床 EEG 描述习惯用 μV。若你的预处理流程默认 μV(如设置阈值 100 μV 剔除伪迹),直接用 V 数据会让所有试次都被判为"干净"(因为 100 μV = 1e-4 V,而原始值在 1e-5 量级)。加载后先打印 raw.get_data().max() 确认量级。
坑 5:把 session 序号当等间隔时间。
session 1 = 康复首日、session 6 = 出院前末次,中间间隔取决于住院时长与训练安排,论文未给日期表。若用 session 序号做线性时间回归,斜率会被间隔不均等污染。判别法:把 session 序号当序数变量(分类因子)先行检验,确认趋势单调后再考虑线性化。
坑 6:用 n=84 做独立样本统计。
84 次会话来自 16 人,不是 84 个独立个体。用会话级样本做 t 检验会低估标准误、夸大显著性。判别法:看你的代码里 groupby('subject') 有没有出现;没有就是有问题的。
坑 7:用论文的 CC BY-NC-ND 推断数据许可。
论文许可与数据许可是两件事。论文是 CC BY-NC-ND 4.0(禁商用、禁演绎),数据在 Figshare 的许可论文未声明。商用前必须去 Figshare 条目页查证;同时注意 CC BY-NC-ND 本身也禁止商用,不能用"论文可转载"来论证"数据可商用"。
坑 8:以为 fNIRS 通道的左右分组能从论文表格抄。
论文只给"左右感觉运动区两个通道簇"的概念,未给逐通道的源-探坐标与分组表。分组必须从文件头坐标自行重建(按 x 坐标符号或解剖配准)。若直接按"前 35 通道=左、后 35=右"的想当然做法,结果会完全错。
坑 9:以为"健手"就是健康对照。
健手是同一患者身上"未被病灶直接累及"的手,但它仍然属于一个经历过双侧半球广泛重塑的卒中大脑。健手的行为与脑活动可以出现"代偿性过度使用";把它当作健康对照,会系统性高估患手的缺损程度。正确做法是把它当作患者内对照,而不是健康对照。
坑 10:忽略同一 session 内 run 顺序的系统效应。
虽然目标手在每个 run 前指定且随机,但 fatigue 与注意力随时间衰减是真实存在的:第 1 个 run 与第 6 个 run 的信号质量可能有系统差异。若你把 run 序号当作忽略变量,session 内的时间趋势会混入条件效应。在混合模型里把 run 序号作为协变量即可廉价地解决。
坑 11:拿论文的分段窗去做跨被试比较却不做基线校正。
fNIRS 的 HbO 是相对变化量,如果不同 session 的初始基线水平不同(例如患者当天的血流状态),直接比较绝对幅度会失真。论文的分段窗是 [−0.1, 11] s;做跨 session 比较时,建议额外取刺激前更长窗口(如 −5 至 0 s)做条件特定的基线归一化,并在方法里写明。
10.x 坑点速查表
| 编号 | 一句话 | 一句话解法 |
|---|---|---|
| 坑 1 | 不在 PhysioNet/OpenNeuro | 用 Figshare DOI 直取 |
| 坑 2 | "首个"来自新闻稿 | 标来源 |
| 坑 3 | right 是目标手,不是患侧 |
按段解析文件名 |
| 坑 4 | EEG 是 V 不是 μV | 先打印量级 |
| 坑 5 | session 不等间隔 | 当序数变量 |
| 坑 6 | 84 不是 84 个独立人 | 混合模型/患者级汇总 |
| 坑 7 | 论文许可 ≠ 数据许可 | 查 Figshare 条目页 |
| 坑 8 | 通道左右分组没有现成表 | 从文件头坐标重建 |
| 坑 9 | 健手 ≠ 健康对照 | 当患者内对照 |
| 坑 10 | run 顺序有疲劳效应 | 作协变量 |
| 坑 11 | 跨 session 比幅度需重设基线 | 条件特定基线归一化 |
§11 总结
11.1 三句话总结
- 它是库内唯一"卒中康复 + EEG/fNIRS 同步 + 纵向重复"的数据集:16 名偏瘫患者、84 次会话、8 导 EEG 与 70 通道 fNIRS,硬件级同步,Figshare 直链公开。
- 它的科学价值来自"时间尺度互补"而非"模态堆叠":EEG 看 ms 级电活动,fNIRS 看秒级血流响应,两者在卒中场景下互为判据——单一模态无法区分"电活动消失"与"神经血管解耦"。
- 它的纵向设计把"学习效应"“电极漂移”"真实恢复"三种变异分开,但也带来统计上的强相关结构,必须用患者级的混合模型或汇总分析,不能把 84 当 84 个独立样本。
11.2 适合谁
- 卒中康复神经影像研究者:需要一个带临床量表、带双侧手任务的纵向公开数据。
- EEG-fNIRS 融合算法团队:需要一个硬件同步、事件干净、格式标准的联采验证集。
- 卒中 BCI 工程团队:需要评估"患手运动意图"在真实偏瘫信号中的可分性。
- 数据方法学研究者:需要一个"小 n、大重复、低通道、高噪声"的现实样本,用于检验纵向统计方法。
11.3 不适合谁
- 需要高密度 EEG 做源定位或脑网络拓扑的团队。
- 需要健康对照组做病例-对照比较的团队(需自行匹配,且设备不同)。
- 需要大批量预训练语料的团队(16 例、84 会话的体量不支持)。
- 想研究慢性期(>1 年)康复平台期的团队(本数据慢性组仅 3 例、<1 年)。
11.4 30 秒决策卡
| 你的问题 | 结论 |
|---|---|
| 我要做卒中康复的纵向 EEG 分析 | ✅ 直接用,注意 session 覆盖 |
| 我要做 EEG-fNIRS 融合 | ✅ 首选之一,硬件同步是硬优势 |
| 我要做高密度源定位 | ❌ 8 导不够 |
| 我要做 fNIRS 全头认知任务 | ❌ 覆盖仅感觉运动区 |
| 我要做癫痫检测 | ❌ 去 71/72/1070 |
| 我要做新生儿/儿童 | ❌ 去 880/362 |
| 我要做健康人运动想象 | ❌ 去 342 |
| 我要商用训练模型 | ⚠️ 先查 Figshare 许可,论文 CC BY-NC-ND 不可商用 |
11.5 一句话定位
这是卒中 BCI 领域的"双镜头纪录片":左镜头(EEG)拍毫秒级的电闪雷鸣,右镜头(fNIRS)拍秒级的血流潮汐,而且同一批演员、连拍六集——之前没人这么拍过公开版。
FAQ(高频问答 30 问)
A. 基础认知
1. 这个数据集到底测了什么?
测人在做动作时大脑的两层响应:头皮上的电活动(EEG)和皮层血流中的血氧变化(fNIRS),两者在同一时刻开始记录。
2. 为什么偏瘫患者要做按键任务?
腕指伸展按压是最接近日常生活"伸手取物"的动作,且正好对应偏瘫患者最常丧失的伸肌功能,因此任务表现与临床功能直接相关。
3. 16 例算多还是少?
卒中神经影像领域属于中小规模(常见 10–40 例),但配合 84 次重复与严格入组标准,仍属可发表、可复用的体量。
4. "84 次康复训练"是 84 个人吗?
不是。是 16 个人累计做了 84 次记录,每人最多 6 次。
5. mRS=3 是什么意思?
改良 Rankin 量表(modified Rankin Scale)3 分 = 中度残疾,需要一些帮助但能独立行走。全部患者都是 3 分,说明样本排除了重度卧床与完全独立两个极端。
6. 为什么全部是右利手?
为了消除利手对大脑半球功能侧化的影响。左利手人群中约 30% 存在右半球语言优势,会引入额外变异。
B. 数据与技术
7. 8 导 EEG 能做什么分析?
能做:双侧半球 ERD 对比、局灶 MRCP 波形、少量通道间相干性、通道级特征分类。不能做:源定位、全头地形图、图论脑网络。
8. 为什么 fNIRS 有 70 个通道这么多?
24 个光源与 24 个探测器在头皮上交错排布,每个探测器与邻近若干光源构成源-探对;扣除故障探测器相关通道后剩 70 个。
9. 13.56 Hz 的采样率够吗?
对 fNIRS 够(血流信号主能量在 0.01–0.2 Hz),对 EEG 完全不够。所以两者必须同时采,不能互相替代。
10. 为什么任务间隔要 9–11 秒这么长?
因为血流动力学响应从上升到回落需要 10 秒以上。间隔太短,相邻试次的 HbO 会叠加,无法做单试次分段。
11. 三个格式(FIF/SNIRF/EDF)我该用哪个?
MNE 用户用 FIF(两模态同一体系);Homer3/NIRS-Kit 用户用 SNIRF;EEGLAB/临床工具用户用 EDF。建议至少保留 FIF 一份原始备份。
12. 数据里有 ECG 和 EMG,是干什么用的?
ECG 用于剔除心搏伪迹;EMG(双侧指伸肌)用于核验患者是否真的做出了动作、动作幅度多大——在偏瘫患者身上"想动但没动"是常见现象。
13. 为什么论文说原始 EEG 完全没预处理?
作者选择交付未经任何滤波/去伪迹的原始电压,把预处理选择权留给使用者。好处是信息无损,代价是用户必须自建清洗流水线。
14. 数据量有多大?
论文未报告总数据量与文件数。可推算的只有通道数、采样率与会话数。
C. 科学与解读
15. "全球首个"这个说法可信吗?
它是 Skoltech 新闻稿的表述,论文本身用词更谨慎(“remain limited”)。作为宣传语可引,作为学术结论需谨慎。
16. 论文的技术验证是全体 16 例的结论吗?
不是。技术验证只用了患者 03 一例做示范,目的是证明数据"可用",不是证明"卒中患者普遍如此"。
17. 为什么患者 03 的 ERD 出现在健侧(FCC4)而 MRCP 出现在患侧(FCC3)?
论文没有给出机制解释,只呈现现象。可解读为健侧半球的节律去同步参与代偿,而患侧半球的慢电位反映了仍在进行的运动准备/执行尝试。这是一个值得后续研究的问题,不是已定论。
18. HbO 先起于患侧、后起于健侧,说明什么?
说明病灶侧半球仍能产生血流响应(耦合未完全断裂),健侧半球随后"补位"。论文将其解读为对侧代偿性募集。
19. 可以用这份数据训练 BCI 分类器吗?
可以,属于典型用途(患手 vs 健手、运动 vs 静息)。但要注意跨 session 的电极漂移会让直接迁移失效,需做 session 内的交叉验证或域适应。
20. 为什么说"fNIRS 不是 EEG 的低配替代"?
因为两者测的物理量不同。fNIRS 测血氧(代谢供给),EEG 测电位(电活动)。前者慢、后者快;前者无法捕捉 300 ms 级事件,后者无法反映血氧。互补而非替代。
21. 卒中患者身上 fNIRS 会不会失真?
会。血管反应性受损会导致"神经血管解耦",fNIRS 可能测不到应有的响应。这正是必须同时有 EEG 的原因——EEG 可以确认"电活动仍在"。
22. 量表分数能预测脑信号吗?
这是本数据集最自然的衍生任务之一(用 ARAT/FMA 预测 EEG/fNIRS 特征或反之)。但 n=16 的样本量限制了预测模型的复杂度,需要严格的正则化与交叉验证。
D. 获取与许可
23. 怎么下载?
访问 https://doi.org/10.6084/m9.figshare.28904942,公开无需申请。
24. 数据许可是什么?
论文未声明。论文本身是 CC BY-NC-ND 4.0,但这不自动适用于数据。商用前必须查 Figshare 条目页的具体许可字段。
25. 论文可以转载吗?
可以,在 CC BY-NC-ND 4.0 下署名、非商业、不演绎地转载。
26. 有官方代码吗?
有。论文称随数据提供 Python 脚本(导入、基础预处理、分段与绘图),与数据同处 Figshare 条目内。
E. 与其他数据集的区分
27. 它和 eegmmidb(342)有什么区别?
eegmmidb 是健康人做运动/想象运动的 64 导 EEG,每人 1–2 次;本条是卒中患者真实运动 + fNIRS 同步 + 每例最多 6 次。前者适合做范式基线,后者适合做临床纵向。
28. 它和 mental-fnirs(1021)有什么区别?
mental-fnirs 是 fNIRS 单模态的认知任务;本条是 fNIRS + EEG 双模态的运动康复。模态与场景都不同。
29. 它和 chb-mit(72)、tuh-eeg-corpus(71)有什么关系?
只有"都是 EEG"这一点相同。那些是癫痫发作检测,本条是卒中运动康复,标签体系、信号特征、评价指标完全不同。
30. 它和 stroke-scale-mimic-iii(596)能一起用吗?
概念上可互链(都是卒中、都有量表),但 596 是结构化 EHR、无神经信号,无法做信号-量表对齐。它更适合作为"量表侧的参照条目"被引用。
事实清单(硬事实 32 条)
- 论文标题:Multisession fNIRS-EEG data of Post-Stroke Motor Recovery. Recordings During Intact and Paretic Hand Movements。
- 期刊与卷期:Scientific Data,volume 13,article 448(2026)。
- DOI:10.1038/s41597-026-06803-5。
- 时间线:Received 2025-05-07;Accepted 2026-02-02;Published 2026-02-14;Version of record 2026-03-25。
- 论文许可:CC BY-NC-ND 4.0(Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International)。
- 作者序:Alexandra Medvedeva、Nikolay Syrov、Lev Yakovlev、Yana Alieva、Artemiy Berkmush-Antipova、Galina Ivanova、Natalia Shusharina、Alexander Kaplan。
- 第一作者兼通讯:Alexandra Medvedeva,Skoltech 神经中心 Junior Research Scientist,ORCID 0009-0006-9998-4741。
- Skoltech 中心署名双口径:PDF 前版本写 “Vladimir Zelman Center for Neurobiology and Brain Rehabilitation”,正式版写 “Center for Bio- and Medical Technologies”。
- 合作机构:俄罗斯联邦医学生物署大脑研究联邦中心(FMBA)、皮罗戈夫俄罗斯国立研究医科大学、康德波罗的海联邦大学神经技术与人工智能中心、莫斯科国立大学生物系、深圳北理莫斯科大学生物系。
- 样本量:16 名上肢偏瘫患者。
- 年龄:42–71 岁,均值±标准差 57.2 ± 9.68。
- 性别:6 名女性。
- 利手:全部右利手。
- 病程:13 例亚急性(<6 个月)、3 例慢性(>6 个月且 <1 年)。
- 病因:缺血 13 例、出血 3 例;病灶经 CT 或 MRI 确认。
- 残疾:全部 mRS=3;认知与语言功能保留。
- 会话总量:84 次康复训练;每例最多 6 次(session 1 首日,session 6 出院前末次)。
- 剔除:预处理阶段删除 30 个 recording,主要来自前 3 名患者。
- EEG 放大器:NVX-52(MCS,Zelenograd,俄罗斯)。
- EEG 电极:8 个被动 Ag/AgCl,位置 FCC3/FCC4/FCC5/FCC6/CCP3/CCP4,参考 T9/T10,阻抗 <10 kΩ。
- EEG 采样率:500 Hz;同文件含 2 路 EMG(双侧指伸肌)+ 1 路 ECG(双腕,Einthoven I),共 11 通道。
- fNIRS 设备:NIRSport 16×16 与 NIRSport 8×8(NIRx Medizintechnik GmbH,柏林),连续波模式。
- fNIRS 配置:24 光源(760/850 nm,每波长 5 mW)+ 24 探测器(Si 光电二极管),源-探距约 3 cm,采样率 13.56 Hz。
- fNIRS 通道数:70(1 个探测器故障,其通道与对侧对称通道剔除)。
- 同步方式:自研 Arduino 控制器,每次视觉刺激起始同时向 EEG 放大器与 fNIRS 设备的 TTL 输入发脉冲。
- 任务:SRT 键压;每 run 12 次闪光(每侧 6 次,伪随机),200 ms,间隔 9–11 s;每会话每手 ≥3 run。
- 量表:ARAT + Fugl-Meyer(FMA-UE 0–66、FMA-S 0–12、被动 ROM 0–24、疼痛 0–24,合计 126)。
- 数据格式:FIF(MNE)+ SNIRF(fNIRS)+ EDF(EEG)+ TXT 事件表 + Python 脚本。
- 仓库:Figshare 10.6084/m9.figshare.28904942(论文引用标注 2025);数据许可论文未声明。
- 预处理:MNE-Python v1.3.1;强度→光密度用
mne.preprocessing.nirs.optical_density;原始 EEG 未做任何预处理。 - 验证参数:fNIRS 带通 0.05–0.7 Hz、分段 [−0.1, 11] s、Beer-Lambert(PPF=4);EEG 带通 0.5–40 Hz、分段 [−0.2, 2] s、Morlet(1–30 Hz,0.4 Hz 步长,FWHM 270 ms)。
- 伦理与注册:Skoltech 伦理委员会 protocol №10(2023-05-18);ClinicalTrials.gov NCT06806397。
术语表(28 条)
| 术语 | 释义 |
|---|---|
| EEG(electroencephalography) | 脑电图:头皮电极记录皮层神经元突触后电位总和,时间分辨率毫秒级 |
| fNIRS(functional near-infrared spectroscopy) | 功能性近红外光谱:用 760–850 nm 近红外光测皮层 HbO/HbR 变化,时间分辨率秒级 |
| HbO / HbR | 氧合血红蛋白 / 脱氧血红蛋白;fNIRS 反演的两个核心浓度量 |
| 光密度(optical density, OD) | 入射光与出射光强度之比的对数,是 Beer-Lambert 反演前的中间量 |
| Beer-Lambert 定律 | 由光衰减推算吸收体浓度的物理定律;需配合差分路径因子(DPF/PPF) |
| 差分路径因子(DPF/PPF) | 光在组织中实际路径长度与源-探距之比;论文取 4 |
| 神经血管耦合(neurovascular coupling) | 神经元活动引发局部血流增加的机制,是 fNIRS/BOLD 信号的生理基础 |
| 神经血管解耦(neurovascular uncoupling) | 上述耦合被破坏(如卒中后),电活动存在但血流不响应 |
| 血流动力学响应函数(HRF) | 血流响应随时间变化的典型形态,峰值常滞后 5–7 s |
| ERD / ERS | 事件相关去同步 / 同步:运动时 alpha/beta 频段功率下降(ERD)/上升(ERS) |
| 感觉运动节律(SMR) | 感觉运动区 8–30 Hz 的自发节律,运动时去同步 |
| MRCP | 运动相关皮层电位:运动前后数百 ms 内的慢电位变化 |
| LRP | 偏侧化准备电位:MRCP 中反映运动准备侧化的负波成分,论文峰约 0.5 s |
| RAP | 再传入电位:运动后由体感反馈引起的正相偏转 |
| 偏瘫(hemiparesis) | 一侧肢体肌力减弱;本条全部为上肢偏瘫 |
| 亚急性期 / 慢性期 | 卒中后 <6 个月 / >6 个月;本数据慢性组限定 <1 年 |
| mRS | 改良 Rankin 量表,0–6 分评估残疾程度;本条全部为 3 分 |
| ARAT | 上肢动作研究量表(Action Research Arm Test),评估抓/握/捏/粗大运动 |
| Fugl-Meyer(FMA) | 卒中运动功能评定量表;FMA-UE 上肢运动 0–66,本条总分上限 126 |
| SRT(stimulus-response task) | 刺激-应答任务;本条为 LED 闪光→按键 |
| run | 一个连续记录段;本条每 run 12 次闪光、目标手固定 |
| session | 一次康复训练日的完整记录,含多个 run;本条每例最多 6 次 |
| 目标试次 / 非目标试次 | 需要按键的闪光 / 应忽略的对侧闪光;后者充当 ERD 基线 |
| 10/5 系统 | 比 10-20 更密的电极定位系统;FCC/CCP 为其间插位置 |
| 源-探距(SD distance) | fNIRS 光源与探测器间距;约 3 cm 对应皮层深度 |
| 连续波(CW)fNIRS | 恒定强度光源、分时点亮以区分通道的工作模式 |
| SNIRF | 近红外光谱共享数据格式,fNIRS 社区标准 |
| EDF | 欧洲数据格式,EEG 通用交换格式 |
| 硬件同步(TTL) | 用同一物理脉冲同时标记多台设备的时间点,避免时钟漂移 |
| 混合效应模型 | 含固定效应与随机效应的统计模型;处理同一患者多次测量的相关性 |
附录
附录 A:条目信息速查卡
| 项 | 值 |
|---|---|
| 条目名 | Multisession fNIRS-EEG Post-Stroke Motor Recovery |
| url_name | stroke-eeg-fnirs |
| 类型 | 数据描述论文(Data Descriptor)+ 公开数据集 |
| 论文 | Scientific Data 2026;13:448,doi:10.1038/s41597-026-06803-5 |
| 团队 | Skoltech + FMBA 大脑研究联邦中心 + 莫斯科国立大学 等 |
| 规模 | 16 例 / 84 次会话 / 8 导 EEG / 70 通道 fNIRS |
| 许可 | 数据:论文未声明(Figshare);论文:CC BY-NC-ND 4.0 |
| 抓取时点 | 2026-10-17 |
| 库内互链 | tuh-eeg-corpus(71)、chb-mit-scalp-eeg(72)、bonn-eeg(322)、eegmmidb(342)、hbn-eeg(362)、helsinki-neonatal-eeg(880)、siena-scalp-eeg(1070)、mental-fnirs(1021)、stroke-scale-mimic-iii(596) |
附录 B:DAIMS 评估全表
| 维度 | 评分(1-10) | 依据 |
|---|---|---|
| D 可发现性(Discoverability) | 7 | 论文发表于 Scientific Data、有 DOI 与新闻稿;但数据集不在主流神经数据平台(PhysioNet/OpenNeuro),检索需走 Figshare DOI |
| A 可获取性(Accessibility) | 8 | Figshare 公开直链、无需申请;扣分项是数据许可未在论文中声明 |
| I 可互操作(Interoperability) | 9 | 同时提供 FIF/SNIRF/EDF 三格式 + TXT 事件表,覆盖 MNE/Homer3/EEGLAB 生态;这是同类数据集中较高的互操作水平 |
| M 元数据质量(Metadata) | 7 | 论文给出完整参数(设备型号、电极位置、滤波带、分段窗);扣分项:无逐通道源-探坐标表、无逐例会话日期、无总数据量 |
| S 可持续性(Sustainability) | 7 | Figshare 由 Springer Nature 运营、DOI 长期有效;随数据附代码;风险在于单一机构维护、无版本更新机制 |
| 综合评级 | 7.6/10(良) | 互操作与可获取性突出,元数据与可持续性稳健,主要短板是许可声明缺失与元数据细节不足 |
附录 C:逐项证据链自证
| 关键数字 | 来源 | 位置 |
|---|---|---|
| 16 例 / 84 次会话 | 论文摘要 | Abstract |
| 42–71 岁,57.2±9.68,6 女,右利手 | 论文 Methods 节 Study subjects | 正文 |
| 13 亚急性 / 3 慢性;缺血 13 / 出血 3;mRS=3 | 论文 Methods 节 Study subjects | 正文 |
| 8 导 EEG、FCC3/4/5/6、CCP3/4、T9/T10、500 Hz | 论文 Methods 节 | 正文 |
| NVX-52(MCS) | 论文 Methods 节 | 正文 |
| NIRSport 16×16/8×8、24 源、24 探、760/850 nm、5 mW、3 cm、13.56 Hz、70 通道 | 论文 Methods 节 | 正文 |
| Arduino TTL 同步 | 论文 Methods 节 | 正文 |
| 12 闪光、200 ms、9–11 s、每手 ≥3 run | 论文 Methods 节 Experimental procedure | 正文 |
| 删除 30 个 recording、MNE v1.3.1 | 论文 Methods 节 Data preprocessing | 正文 |
| FMA 分域与 126 总分 | 论文 Methods 节 | 正文 |
| fNIRS 0.05–0.7 Hz、[−0.1,11] s、PPF=4 | 论文 Technical Validation | 正文 |
| EEG 0.5–40 Hz、[−0.2,2] s、Morlet 参数、LRP 0.5 s | 论文 Technical Validation | 正文 |
| Figshare DOI 10.6084/m9.figshare.28904942 | 论文参考文献 [16] / Data availability | 正文 |
| 卷 13、文章号 448、日期 2026-02-14 | Nature 页面 citation 元数据 | 页面 |
| CC BY-NC-ND 4.0 | Nature 页面版权声明 | 页脚 |
| NCT06806397、伦理 №10(2023-05-18) | 论文 Methods 节 | 正文 |
| "首个"表述 | Skoltech 新闻稿(medicalxpress 2026-03-03 转载) | 新闻稿 |
附录 D:数据获取决策树
你要做什么?
├─ 只想看看数据长什么样
│ → 下 Figshare 条目里的 1 个 R_XX_sessionX_right1.fif,用 MNE 读
├─ 做 fNIRS 单模态分析
│ → 用 .snirf + .txt 事件表;Homer3 或 MNE-NIRS
├─ 做 EEG 单模态分析
│ → 用 .edf(EEGLAB)或 .fif(MNE),记得查量纲
├─ 做 EEG+fNIRS 联合分析
│ → 必用 .fif,两模态同 Raw 体系
├─ 做纵向康复轨迹
│ → 先把全部文件名解析成表(患者/患侧/session/目标手),核对每例 session 覆盖
└─ 商用
→ 先去 Figshare 条目页查许可;论文 CC BY-NC-ND 不可商用
附录 E:文件命名解析脚本骨架
import re
from pathlib import Path
PAT = re.compile(r"(?P<paretic>[RL])_(?P<subj>\d+)_session(?P<ses>\d+)_(?P<hand>left|right)(?P<run>\d+)")
rows = []
for p in Path("fNIRS").glob("*.snirf"):
m = PAT.search(p.stem)
if not m:
print("UNPARSED:", p.name); continue
rows.append({**m.groupdict(), "file": p.name})
# 检查每例 session 覆盖
from collections import defaultdict
cov = defaultdict(set)
for r in rows: cov[r["subj"]].add(int(r["ses"]))
for s, c in sorted(cov.items()): print(s, sorted(c), len(c))
这段脚本只做一件事:把命名解析成结构化表并检查覆盖率。论文没有给这样的表,所以这是每个使用者都必须先做的一步——它会立刻暴露"哪些患者只有 3 次 session",从而决定你能不能做 session 1 vs session 6 的对比。
附录 F:EEG 伪迹处理建议(自建流水线参考)
论文交付的是未预处理 EEG,因此以下步骤需自行设计;顺序可参考 MNE 与 EEGLAB 常规流程:
| 步骤 | 方法 | 注意 |
|---|---|---|
| 1. 量纲确认 | 打印幅值范围,确认 V vs μV | 坑 4 |
| 2. 高通 | 0.5 Hz(与论文一致的带通) | 太低会引入漂移,太高会削 MRCP |
| 3. 低通 | 40 Hz | 论文口径 |
| 4. 工频 | 50 Hz 陷波(俄罗斯电网 50 Hz) | 论文未提,但欧洲/俄罗斯均为 50 Hz |
| 5. 眼电/肌电 | ICA 或回归;用随附 EMG 通道辅助识别肌电 | 偏瘫患者肌电伪迹更重 |
| 6. 心电 | 用随附 ECG 通道做 R 峰锁定回归 | ECG 通道的存在就是为此 |
| 7. 坏段剔除 | 幅值/方差阈值 + 目视 | 记录被剔除的试次比例,报告时注明 |
附录 G:EEG-fNIRS 联合分析的三条路径
| 路径 | 做法 | 产出 | 难度 |
|---|---|---|---|
| 描述性对齐 | 同一刺激锁时,分别画 ERD 时程与 HbO 时程,比较起始时滞 | 耦合时滞估计 | 低 |
| 空间一致性 | EEG 8 导的偏侧化指数 vs fNIRS 左右簇的偏侧化指数,做相关 | 跨模态空间一致性 | 中 |
| 特征融合分类 | EEG 频带功率 + fNIRS HbO 斜率拼特征,分类患手/健手 | BCI 可行性指标 | 中高 |
三条路径都对"同一事件锁时"有硬依赖——这正好是硬件 TTL 同步提供的保证。若用其他数据集的 EEG 与 fNIRS 事后拼接,第一条路径就做不了。
附录 H:纵向分析的统计选择
| 设计问题 | 推荐方法 | 不推荐 |
|---|---|---|
| 康复前后差异(多时点) | 线性混合效应模型(患者随机截距) | 会话级配对 t 检验 |
| 与量表改善的关联 | 患者内变化量与量表变化量的相关(n=16) | 会话级相关(伪重复) |
| 学习效应 vs 恢复 | 健手为对照:健手趋势≈学习效应,患手趋势−健手趋势≈恢复 | 只看患手趋势 |
| 缺失会话 | 混合模型可容忍;或用多重插补 | 删除整例 |
附录 I:双口径登记表
| 项 | 口径 A | 口径 B | 采用 |
|---|---|---|---|
| Skoltech 中心名 | Vladimir Zelman Center for Neurobiology and Brain Rehabilitation(PDF 前版本) | Center for Bio- and Medical Technologies(正式版) | 并列存照,正文用前者+括注 |
| Figshare 年份 | 论文引用标 (2025) | 论文发表 2026 | 视为仓储先行,正文注明 |
| “全球首个” | 新闻稿断言 | 论文"remain limited" | 以论文为准,新闻稿作宣称引 |
| 84 次会话 | 摘要/背景节 | 剔除 30 recording 之后是否仍为 84 未说明 | 记为待核疑点 |
附录 J:检索路径示范
| 目标 | 推荐查询式 | 预期命中 |
|---|---|---|
| 论文原文 | “Multisession fNIRS-EEG data of Post-Stroke Motor Recovery” | Scientific Data 13:448 |
| 数据集 | figshare fNIRS EEG stroke Medvedeva | 10.6084/m9.figshare.28904942 |
| 团队其他工作 | Medvedeva Skoltech fNIRS stroke BCI | Skoltech 神经中心系列 |
| 新闻背景 | Skoltech stroke fNIRS EEG dataset | medicalxpress 2026-03-03 |
| 临床注册 | NCT06806397 | ClinicalTrials.gov |
| 反例(勿用) | “PhysioNet stroke EEG fNIRS” | 无本数据集(坑 1) |
附录 K:与库内条目的关系声明(正文 §9 摘要)
本条与 71/72/322/1070 的区分是疾病不同(卒中 vs 癫痫);与 342 的区分是对象不同(患者 vs 健康人)且模态不同(双模态 vs 单模态);与 362/880 的区分是年龄不同(成人 vs 儿童/新生儿);与 1021 的区分是模态与场景不同(fNIRS 单模态认知 vs EEG+fNIRS 运动康复);与 596 的区分是数据形态不同(神经信号 vs 结构化量表)。以上区分均可在检索结果页通过标题与 category 标签快速判定。
附录 L:使用检查清单(10 项)
- 文件名解析成表,核对每例 session 覆盖(附录 E)。
- 确认 EEG 量纲(V vs μV),否则伪迹阈值全错。
- 确认
flash_l/flash_r与目标手的映射,按文件逐一核对。 - fNIRS 通道左右分组从文件头坐标重建,不要按序号硬切。
- 会话序号当序数变量,不做等间隔假设。
- 统计单位是患者(16),不是会话(84)。
- 前 3 名患者 recording 被大量剔除,报告中注明有效样本。
- 用健手做学习效应的对照,分离恢复与熟练度。
- 引用"首个"时注明是机构宣称。
- 商用前核实 Figshare 条目许可,勿以论文 CC BY-NC-ND 推断。
§11.6 与库内其他条目的读法差异提示
同一套检索式在不同条目上会得到不同的"该看哪一节"答案。为减少跨条目阅读成本,给出对照:
| 你的阅读目的 | 在本条看哪节 | 在库内其他 EEG 条目的典型位置 |
|---|---|---|
| 判断能不能直接下载 | §6 | 癫痫类条目多在看"是否需注册/审批" |
| 判断临床场景是否匹配 | §2.1 | 癫痫类看"发作类型与导联数",新生儿类看"孕周" |
| 判断任务范式 | §4.4、§5.2 | eegmmidb 类看"运动想象 vs 执行" |
| 判断纵向能力 | §3.6、§2.2 | 多数 EEG 条目无此节(因为不纵向) |
| 判断多模态 | §3 全节 | mental-fnirs 有单模态专节 |
| 判断统计陷阱 | §8.3 | 大样本条目多谈"类别不平衡",本条谈"伪重复" |
差异的根源很清楚:库内 EEG 条目以"检测/分类"为主(癫痫发作检测、睡眠分期、运动想象分类),评价指标是灵敏度/特异度/AUC;本条以"机制描述与纵向轨迹"为主,评价指标是组间差异、时滞、与量表的相关。两类条目的"AI-Ready"含义不同:前者关心标签质量与划分规范,后者关心连续记录的可对齐性与临床元数据的完整性。
11.7 给后续维护者的三条提示
- 等待一篇"使用本数据集"的第三方论文:截至抓取时点(2026-10-17),本数据集发表约八个月,尚未见广泛的下游引用。若后续出现基于它的 BCI 分类或纵向建模论文,应在 §7 增补"下游验证"小节,并核对是否有人报告了数据缺陷(如某患者通道异常)。
- 等待 Figshare 许可明确化:论文未声明数据许可,若仓库页面后续补充 CC BY 4.0 等明确条款,应及时更新 frontmatter 的 license 与 §6.2,并把附录 I 的双口径条目移入"已解决"。
- 关注患者 03 之外的复现:论文技术验证只做一例,若后续有人在全样本上复现"患侧先、健侧后"的模式(或证伪),这是本条目最值得更新的科学内容。
尾注
本条目为 AI-Ready Wikipedia 数据集条目,生产于 2026-10-17,抓取与核验时点见附录 A。事实陈述以 Scientific Data 2026;13:448(doi:10.1038/s41597-026-06803-5)正文、Nature 页面元数据、Skoltech 2026-03-03 新闻稿(经 medicalxpress/scoop 转载)为源。凡论文未报告之项(总数据量、逐例 session 日期、卒中侧别分布、fNIRS 逐通道坐标、Figshare 数据许可)一律按"未公开/未声明"处理,不作推测填充,已在附录 I 与 §8 存照。条目与库内 tuh-eeg-corpus(71)、chb-mit-scalp-eeg(72)、bonn-eeg(322)、eegmmidb(342)、hbn-eeg(362)、helsinki-neonatal-eeg(880)、siena-scalp-eeg(1070)、mental-fnirs(1021)、stroke-scale-mimic-iii(596) 互链,构成"生理信号—神经科学—脑机接口"家族的完整检索面。
附录 M:信号参数与常见分析目标的匹配表
| 分析目标 | 所需最低配置 | 本条是否够 | 备注 |
|---|---|---|---|
| 单试次运动意图检测(患手 vs 静息) | 2–4 导感觉运动 EEG,≥50 试次 | ✅ | 每会话 3 run × 6 目标试次 ≈ 18 试次,偏少 |
| 患手 vs 健手分类 | 双侧对称导联 | ✅ | FCC3/FCC4 对称,天然可比 |
| alpha/beta ERD 时程 | 覆盖 C3/C4 区,≥250 Hz 采样 | ✅ | 500 Hz 充裕 |
| MRCP(LRP/RAP) | 覆盖 C3/C4 区,直流耦合或 ≥0.1 Hz 高通 | ⚠️ | 论文用 0.5 Hz 高通,会削弱慢电位 |
| fNIRS 皮层激活定位(区域级) | ≥20 通道覆盖 ROI | ✅ | 70 通道覆盖双侧感觉运动区 |
| fNIRS 功能连接(左右半球) | ≥2 个通道簇 | ✅ | 论文即用两簇 |
| 源定位 | ≥32 导 + 个体头模 | ❌ | 8 导不足 |
| 高密度地形图 | ≥32 导 | ❌ | 同上 |
| 全头脑网络 | ≥32 导 + 全头覆盖 | ❌ | 同上 |
| 神经血管耦合估计 | 同步 EEG + fNIRS 同区覆盖 | ✅ | 本条核心优势 |
| 纵向恢复轨迹 | 同一患者 ≥3 次 | ⚠️ | 部分患者不足 6 次,需核对 |
表的最后一行提示了一个现实:“纵向数据集"不等于"每个患者都有完整纵向”。分析前先做覆盖率统计(附录 E),才能确定哪些患者能进纵向模型。
附录 N:2026 年卒中神经影像数据开发的三个趋势与本品位置
| 趋势 | 表现 | 本品位置 |
|---|---|---|
| 便携化 | 从 MRI 向 fNIRS/EEG/可穿戴迁移 | 站在最前沿:康复现场可重复 |
| 多模态化 | EEG-fNIRS、EEG-fMRI 同步 | 属于 EEG-fNIRS 同步的代表作 |
| 纵向化 | 从横断面走向康复轨迹追踪 | 84 次会话,纵向设计完整 |
三个趋势的交点正是"床边、可重复、多模态"——这也是本数据集最值得被引用的结构性理由。它与 MRI 类卒中数据集不是竞争关系,而是互补:MRI 提供解剖与病灶,fNIRS/EEG 提供时间维度的功能轨迹。
附录 O:一条 EEG 记录在文件层面的样子(结构示意)
R_02_session2_right1_raw.fif
├── info
│ ├── ch_names: [FCC3, FCC4, FCC5, FCC6, CCP3, CCP4, EMG_R, EMG_L, ECG, ...]
│ ├── sfreq: 500.0
│ └── ch_types: [eeg × 6, emg × 2, ecg × 1]
├── data: (n_ch, n_times) float64
├── events: [[sample, 0, code], ...] code ∈ {flash_l, flash_r}
└── annotations / metadata
对应 fNIRS 侧:
R_02_session2_right1.snirf
├── nirs/metaData
│ ├── wavelengths: [760, 850]
│ └── sourcePos / detectorPos / channelPos(坐标)
├── nirs/data1: 光强 (n_ch × n_wl, n_times)
├── nirs/data2: 光密度(若已转换)
└── nirs/stim: 事件(可对应 flash_l / flash_r)
这两段是"结构示意"而非真实文件内容——真实通道顺序、坐标数值需以文件为准。示意的作用在于告诉使用者:坐标信息就在文件头里,坑 8 所说的通道分组表是可以自己重建的。
附录 P:读这篇论文时的五个"注意措辞"
| 论文原话 | 正确读法 | 常见误读 |
|---|---|---|
| “first in the world”(新闻稿) | 机构宣称 | 学术定论 |
| “ipsilesional… followed by contralesional” | 单例时序观察 | 群体规律 |
| “may indicate compensatory recruitment” | 推测性解释 | 已证实机制 |
| “recordings during movements of both the paretic and intact hands” | 任务覆盖双侧 | 有健康对照组 |
| “the raw EEG signal was not preprocessed in any way” | 需自建清洗流程 | 数据已可直接入模 |
五条合起来说明一件事:这是一篇数据描述论文,它的任务是"证明数据可用且有用",不是"给出科学结论"。评价它的标准应当是"数据规格是否清楚、格式是否标准、可获取性是否好",而不是"发现是否重大"。按这个标准,它交出了一份相当扎实的答卷——只是"首个"与"代偿"这两处措辞需要读者自己校准。
相关数据集导航
以下为站内 AI-Ready 数据集百科中与本词条共享多个主题标签的相关数据集,按相关度降序排列:
- mental-fnirs — 共享标签:生理信号 / 脑电信号 / 神经科学 / 脑机接口 / 多模态
- ibl-brain-wide-map — 共享标签:生理信号 / 脑电信号 / 神经科学 / 多模态
- spikeinterface — 共享标签:生理信号 / 脑电信号 / 神经科学 / 多模态
- eegmmidb — 共享标签:生理信号 / 脑电信号 / 神经科学 / 脑机接口
- bci-competition-iv-2a — 共享标签:生理信号 / 脑电信号 / 神经科学 / 脑机接口
- moabb — 共享标签:生理信号 / 脑电信号 / 神经科学 / 脑机接口
- multimodal-gait-dataset — 共享标签:生理信号 / 脑电信号 / 神经科学 / 多模态
- ninapro — 共享标签:生理信号 / 神经科学 / 脑机接口
- cves — 共享标签:生理信号 / 神经科学 / 多模态
- dandi-archive — 共享标签:生理信号 / 神经科学 / 多模态
导航说明:本章节由全站统一标签体系自动计算生成(标签重合度算法),双向可达;点击链接可跳转至对应数据集词条。

