研究
neurokit2 avatar

neurokit2

全面的生物信号处理 Python 工具包,支持 ECG、EEG、EDA、RSP、EMG 和 EOG。专为心理生理学、临床研究和人机交互领域的心血管、自主神经及神经信号分析而设计。

简介

NeuroKit2 是一款专业级的 Python 工具包,专门用于生理信号的处理与高级分析。它是心理生理学、临床诊断及人机交互(HCI)领域研究人员与工程师的重要资源。通过为各类生物信号提供统一的接口,该工具简化了从原始信号清洗到高级统计建模与特征提取的复杂工作流程。它广泛应用于心率变异性(HRV)研究、通过自主神经系统监测进行的认知负荷评估,以及脑信号动力学分析。

  • 心脏信号处理:提供 ECG 与 PPG 的端到端处理流程,包含 R 波检测、信号质量评估,以及全面的时域、频域与非线性域 HRV 分析。

  • 神经信号分析:高级 EEG 处理功能,涵盖频带功率、微状态(Microstate)分割,并可与源定位框架(Source localization)集成。

  • 自主神经与呼吸信号:将 EDA(GSR)信号分解为紧张(Tonic)与阶段(Phasic)成分,并分析呼吸变异性(RRV)及单位时间呼吸量。

  • 肌肉与眼动活动:具备稳健的 EMG 肌肉激活检测与基于 EOG 的眼动及眨眼分析工具。

  • 通用工具:包含多种信号处理功能,如带通/带阻滤波、重采样、插值法及分形维数计算。

  • 适用于认知科学、临床医学及情感计算领域,需要经过验证的信号处理常规的研究人员。

  • 输入需求:时间序列数组(如 CSV、NumPy 数组)以及精确的采样率(Hz),以确保分析准确性。

  • 输出格式:包含处理后的波形、计算出的指标(如 SDNN、LF/HF 比值、SCR 幅度)以及用于可重复性研究的元数据之结构化字典或 DataFrame。

  • 集成能力:与标准科学 Python 技术堆栈(NumPy, Pandas, SciPy)兼容,并常与 MNE-Python 结合使用于 EEG 工作流程。

  • 注意事项:尽管自动化程度高,但在特定临床或实验背景下解释生理指标时,仍需具备专业领域知识。

仓库统计

Star 数
19,622
Fork 数
2,196
Open Issue 数
41
主要语言
Python
默认分支
main
同步状态
空闲
最近同步时间
2026年4月28日 11:26
在 GitHub 查看