SkylordAK/SeizureDetectionProject
GitHub: SkylordAK/SeizureDetectionProject
该项目基于可穿戴 EEG 设备实现癫痫发作检测的完整流程,从带标签数据采集、频域特征工程到随机森林分类模型训练一站式覆盖。
Stars: 0 | Forks: 0
# 癫痫发作检测研究 — 数据采集与建模
本项目致力于利用可穿戴 EEG 技术对癫痫发作活动进行科学研究。它包含了用于记录高保真神经数据以及训练用于癫痫分类的机器学习模型的工具。
## 项目结构
- `eeg_recorder.py`:一个用于记录带标签 EEG 片段(Normal、Epilepsy、Seizure、Rest)的稳健工具。
- `data_prep.py`:将原始 CSV 记录处理为适用于 ML 的窗口化特征(Band Powers、Ratios)。
- `train_seizure_model.py`:训练一个 Random Forest 分类器,用于区分静息状态与发作(ictal)状态。
## 数据记录协议
记录器遵循结构化的时间表,以确保数据集的均衡:
1. **Break (10s)**:热身。
2. **Normal (60s)**:基线静息 EEG。
3. **Epilepsy (60s)**:发作前或发作间期活动。
4. **Seizure (60s)**:活跃的发作期活动。
## 特征工程
系统提取:
- 绝对和相对频段功率。
- Theta/Beta 和 Alpha/Beta 比率。
- 总频谱功率(Root Mean Square)。
## 环境要求
- Python 3.8+
- `scikit-learn`、`pandas`、`numpy`、`python-osc`
## 用法
1. **记录数据**:运行 `eeg_recorder.py` 并遵循定时提示。
2. **准备特征**:
python data_prep.py
3. **训练模型**:
python train_seizure_model.py
这将输出一个模型文件以及一份包含准确率、精确率和召回率指标的分类报告。
标签:Apex, 医疗AI, 机器学习, 特征工程, 癫痫检测, 脑电图(EEG), 逆向工具, 随机森林