只有来自EMG传感器的数据,如何才能确定一个人是否处于REM阶段?换句话说,我需要从传感器的EMG中检测到最低水平的活动。好吧,或者至少登记一下相变..。
更详细的..。我要用肌电图( EMG )传感器做一个REM相位探测器。在github上已经有一个Android应用程序的草图,如果您感兴趣,我可以发布一个链接。虽然还有工作要做.)
该装置的工作应该基于这样一个事实:在不同的大脑状态下(清醒、缓慢睡眠、快速眼动睡眠),传感器将记录不同的活动水平。在快速眼动睡眠中,这种活动是最小的。
在睡觉前将蓝牙传感器连接到身体上,启动Android程序,与传感器通信并通过WiFi将从传感器读取的数据发送给连接的TCP客户端。运行在网络桌面上的TCP客户端- python脚本。它接收数据,并按设计实时确定当前的活动水平是否是整个观测期间的最低水平。如果是这样的话,脚本将告诉服务器(Android程序)打开提示--它可以是手机上的振动或健身手镯,通过耳机播放音频样本、闪光、轻微电击等。
由于只使用一个EMG传感器,我承认不可能100%准确地捕捉REM睡眠阶段,但这是不必要的。如果准确度是80% -它已经很好了。首先,即使是检测当前活动级别变化的算法也是合适的。-将有一些试验和发展的地方。
问题在于算法。我不想使用固定的阈值,因为对于不同的人,甚至对于同一个人,在不同的时间和不同的状态下,这些阈值也会不同。因此,我将很高兴从你的身边得到一些想法和建议。





我发现了一篇有趣的文章“基于EOG和EMG的自动睡眠阶段分类的自适应阈值方法”(https://www.researchgate.net/publication/281722966_A_Self-adaptive_Threshold_Method_for_Automatic_Sleep_Stage_Classification_Using_EOG_and_EMG):但是仍然有一些难以理解的观点。首先,如何计算能量(步骤1-4:能量)?
d = f.read(epoche_seconds*SAMPLE_RATE*2)
if not d:
break
print('epoche#{}'.format(i))
fmt = '<{}H'.format(len(d) // 2)
t = unpack(fmt, d)
d = list(t)
d = np.array(d)
d = d / (1 << 14) # 14 - bits per sample
df=pd.DataFrame({'signal': d, 'id': [x*2 for x in range(len(d))]})
df = df.set_index('id')
d = df.signal
# signal prepare:
d = butter_bandpass_filter(d, lowcut, highcut, SAMPLE_RATE, order=2)
# extract signal futures:
future_iv = np.mean(np.absolute(d))
print('iv={}'.format(future_iv))
future_var = np.var(d)
print('var={}'.format(future_var))
ws = 6
df = pd.DataFrame({'signal': np.absolute(d)})
future_e = df.rolling(ws).sum()[ws-1:].max().signal
print('E={}'.format(future_e))--这是对的吗?
第二,能否有人详细说明这一点:
步骤2-1:归一化处理EMG和EOG特征向量采用归一化函数处理,然后进入分类步骤。特征向量归一化为跟随函数(4):
。

其中,Xmax和Xmin是通过以下步骤得到的:首先,排序x(i)向量,设置窗口长度N表示50;然后将2_N_k (k,值从10到1)与x(i)的长度进行比较,如果2_N_k大于后者,则减少k,直到2_N_k小于x(i)的长度。如果x(i)的长度大于2_N_k,则将50个较大值的平均值计算为Xmax,将50个较小值的平均值计算为Xmin。
发布于 2022-03-19 16:18:03
如果您正在寻找REM (深度睡眠);一个平面图将显示您的强度和频率信息1页的图表/图表。某个年龄段的人把光谱图称为TFFT - wiki链接是.https://en.wikipedia.org/wiki/Spectrogram
你能把这些数据输入到平面图显示/绘图中吗?使用一个大的FFT窗口(您可能有几个小时的数据)与一个小的重叠(15%)。我建议从1秒左右的FFT窗口开始。
https://stackoverflow.com/questions/71508065
复制相似问题