Paper reproduction: Instantaneous 3D EEG Signal Analysis Based on Empirical Mode Decomposition and the Hilbert–Huang Transform Applied to Depth of Anaesthesia
时域是客观世界中唯一实际存在域;频域是一个数学构造,也被一些学者称为上帝视角。
以时间轴为坐标表示动态信号的关系
正弦波是频域中唯一存在的波形
动态信号从时间域变换到频率域主要通过傅立叶级数和傅立叶变换实现。周期信号靠傅立叶级数,非周期信号靠傅立叶变换。时域越宽,频域越短。
麻醉的程度(DoA)是评估全身麻醉剂对患者中枢神经系统抑制程度的重要指标。通过监测病人脑电信号(electroencephalography(EEG))来判断病人是否处于全麻状态有助于调节DoA并减轻手术的风险。
EMD可以从原始EEG信号中滤除噪音相关的频率,并可以结合挑选出来的固有模态函数得到滤波后的EEG信号。之后在滤波后的EEG信号的基础上用HHT得到瞬时频率和瞬时振幅。
之后就可以用“瞬时频率、瞬时振幅和EEG信号中的时间元素”重组并构建 可以实时显示脑电信号振幅和频率的 实时3D表示图。
graph TD
0[Raw EEG signal] --> 1[Step 1.<br />Decompose into IMF]
1 --> 2[Step 2.<br />Convert to frequency domain]
2 --> 3[Step 3.<br />Cut off the noise]
3 --> 4[Step 4.<br />Reverse into time domain]
4 --> 5[Step 5.<br />Construct filtered EEG]
5 --> 6[Step 6.<br />Obtain instantaneous frequency]
6 --> 7[Step 7.<br />Build the 3D representation]
$x(t)$是时域下的原始信号,$c_i(t)$是第$i$个IMF(固有模态函数),$r_n(t)$是残余信号。
使用FFT将IMF从时域转换到频域。
人脑产生的脑电信号的正常频率在0.5赫兹Hz到32Hz之间,它们分别包含从低频到高频的δ,θ,α波和β波。
使用快速傅立叶逆变换IFFT
IFFT带来的边缘效应会使前5秒和后5秒的振幅异常地高,因此去掉前5秒和后5秒。
丢掉过小的IMF。
δ (0.5–4 Hz), θ (4–8 Hz), α (8–16 Hz), β (16–32 Hz)
Other: Noise
x轴:频率,y轴:时间,z轴:振幅
Codes/main.py
:主程序,主要负责调用Codes/BaseClass.py
:数据类,包括数据、起始截止时间、采样频率等Codes/BaseFunction.py
:一些基本的函数功能Codes/LetEMD.py
:实现了EEG的EMD分解Codes/Visualize.py
:将数据可视化Codes/Txt2numpy.py
:读取数据Codes/ShowOriginalEEGdata.py
:显示原始EEGCodes/Data2IMFs.py
:将数据分成很多IMF、将IMF转换到频域Codes/IMFs2FrequencyDomain.py
:将IMF转换到频域Codes/CutoffNoice.py
:将信号中不符合频率范围的部分删除Codes/IMF2TimeDomain.py
:将IMF转回时域Codes/ConstructEEG.py
:将IMF构建回EEG(并去除前2s和后2s的信号)Codes/HHT.py
:通过HHT获得实时频率Codes/ShowRealtime3D.py
:显示为实时三维图