4、实验设计:受试者招募与伦理审批、实验范式设计、数据采集协议与流程

好,咱们进入实验设计环节。说实话,这一章是整个肌电协同研究的「地基」。地基没打好,后面算法再漂亮也是白搭。我见过太多同学,上来就调模型,结果数据一塌糊涂——电极贴歪了、动作没对齐、受试者中途放弃了……最后只能重做。

所以,咱们一步步来。从受试者怎么找,到实验怎么做,再到数据怎么存,我把我踩过的坑都告诉你。

4.1 受试者招募与伦理审批

先聊伦理审批。很多人觉得这是走形式,其实不是。伦理委员会要看你有没有保护受试者。我建议你提前准备三样东西:

  • 知情同意书:写清楚实验目的、流程、风险、数据用途。别用太学术的语言,受试者得看懂。
  • 受试者筛选标准:比如年龄范围、是否有神经肌肉疾病、皮肤是否过敏等。
  • 数据隐私保护方案:数据怎么脱敏、谁有权访问、实验后怎么销毁。
⚠️ 注意: 伦理审批通常需要 2-4 周。别等到实验前一天才提交。我有个项目就因为伦理卡了,硬生生推迟了一个月。

受试者招募这块,我个人的习惯是:

  • 健康受试者:10-20 人足够做 pilot study。如果做机器学习,建议 20 人以上。
  • 患者群体:这个比较难。我建议先联系临床合作者,通过医院招募。人数少没关系,5-8 人也能发文章,但统计上要小心。
  • 排除标准:皮肤破损、金属植入物、癫痫病史(尤其做动态运动时)。

嗯,这里有个小技巧:招募时给点小报酬,比如 50-100 元/小时,受试者配合度会高很多。别问我怎么知道的……

4.2 实验范式设计

实验范式说白了就是「让受试者做什么动作」。肌电研究里,常见的有三类。我分别说说。

4.2.1 等长收缩

等长收缩就是肌肉发力但关节不动。比如握拳、屈腕、伸肘。这种范式的好处是:

  • 信号稳定,重复性好
  • 容易控制发力大小
  • 适合做力-肌电关系建模

我建议你设计 3-5 个不同发力等级,比如 20%、40%、60%、80% MVC(最大自主收缩)。每个等级保持 5 秒,中间休息 2 分钟。为什么休息这么久?因为肌肉会疲劳,信号会漂移。我曾经连续做 10 次 80% MVC,结果最后几次信号明显变形——白做了。

💡 提示: 做等长收缩时,用绑带固定关节。不然受试者会不自觉地动,引入运动伪迹。

4.2.2 动态运动

动态运动更贴近实际应用,比如抓握、抬臂、行走。但信号也更复杂——有运动伪迹、肌肉长度变化、电极位移。

我常用的设计是:

  • 单关节运动:肘屈伸、腕屈伸。速度控制在 30°/s 左右,用节拍器引导。
  • 多关节协同:比如喝水动作(肩屈+肘屈+腕伸)。这个更难,但更有价值。
  • 连续运动:比如从放松到抓握到放松,循环 10 次。注意标记每个阶段的起止时间。

你想想看,动态运动的数据处理起来更麻烦。但如果你要做假肢控制或人机交互,这一步绕不开。

4.2.3 手势识别

手势识别是肌电研究的热门方向。常见手势包括:握拳、伸掌、捏、OK、竖拇指等。我建议选 6-10 个手势,每个手势重复 10 次,每次保持 3 秒。

这里有个坑:手势之间要有足够的休息时间。我见过有人设计 1 秒切换,结果受试者手都抽筋了。我一般设 3 秒动作 + 3 秒休息。

手势 动作描述 保持时间 重复次数
握拳 五指用力握紧 3 秒 10
伸掌 五指完全张开 3 秒 10
拇指与食指对捏 3 秒 10
OK 拇指与食指形成圆圈 3 秒 10

4.3 数据采集协议与流程

数据采集协议,说白了就是「每一步怎么做」。我建议写成标准操作流程(SOP),这样不同实验员做出来结果一致。

4.3.1 采集前准备

  • 皮肤处理:用酒精棉擦拭电极放置处,去除油脂和死皮。如果汗毛多,建议剃一下。别笑,我见过信号差到没法看,最后发现是汗毛导致的。
  • 电极放置:按 SENIAM 标准放置。双极电极间距 2 cm,参考电极放在骨性突起处(如腕部、肘部)。
  • 设备检查:采样率至少 1000 Hz,增益 1000 倍,带通滤波 20-500 Hz。检查电极阻抗,低于 5 kΩ 才算合格。

4.3.2 采集流程

我一般按这个顺序来:

  1. 基线记录:让受试者完全放松,记录 10 秒静息肌电。用于后续去噪。
  2. MVC 测试:做 3 次最大自主收缩,每次 3 秒,取最大值。用于归一化。
  3. 正式实验:按随机顺序执行动作。每个动作前有提示音,动作结束后有休息。
  4. 重复测试:如果做可靠性分析,隔天再测一次。
📌 关键点: 每次动作开始前,用触发信号(比如 TTL 脉冲)标记时间戳。这样后期分割数据时,能精确对齐。

4.3.3 数据存储格式

我推荐用 HDF5 格式存储。一个文件包含:

  • 肌电信号(numpy array)
  • 触发信号(时间戳)
  • 受试者信息(年龄、性别、BMI)
  • 实验参数(采样率、电极位置、动作标签)

举个例子,Python 里这样存:

import h5py
import numpy as np

with h5py.File('subject_01.h5', 'w') as f:
    f.create_dataset('emg', data=emg_signal)
    f.create_dataset('trigger', data=trigger_times)
    f.attrs['sampling_rate'] = 1000
    f.attrs['subject_id'] = 'S01'
    f.attrs['gesture_labels'] = ['rest', 'fist', 'open']

嗯,这样存的好处是:一个文件搞定所有信息,不会丢。我早期用 CSV 存,结果每次都要写一堆脚本去对齐——烦死了。

4.4 本章知识体系

下面这张图,是我自己梳理的实验设计流程。你可以照着它一步步来,不容易漏。

肌电实验设计核心流程 伦理审批 知情同意书 + 隐私方案 受试者招募 筛选标准 + 报酬 等长收缩 3-5 等级 MVC 动态运动 单/多关节 + 速度控制 手势识别 6-10 手势 × 10 次 采集前准备 皮肤处理 + 电极放置 正式采集 基线 → MVC → 动作 数据存储 HDF5 格式 + 元数据 避坑总结 1. 伦理审批提前 1 个月提交 2. 每个动作间留足休息时间 3. 用触发信号标记时间戳,别靠手动

好了,实验设计这块就聊到这儿。记住:好的实验设计,是成功的一半。另一半?是数据处理和算法——那是后面章节的事。

专注资料整理