基于前额单通道脑电分析的睁闭眼状态检测
2023-08-10张建海
吴 昊 张建海
1(杭州电子科技大学卓越学院 浙江 杭州 310018) 2(杭州电子科技大学计算机学院 浙江 杭州 310018)
0 引 言
疲劳驾驶、睡眠不足是引发交通事故的重要诱因之一。在汽车拥有量日渐增多的今天,对驾驶员疲劳状态下进行检测并及时警告对交通安全具有重大的意义与价值[1]。目前,疲劳驾驶监测方法主要分为三类:一是直接根据车辆行驶行为信息进行判断,具有较强的实用性[2],但准确度不高,并且有较长的滞后性;二是基于视频分析的驾驶员面部状态变化,如睁闭眼状态、打哈欠以及头部姿态等[3],这类方法准确度高,可操作性强,但易于受驾驶员姿态、光线等因素影响;三是基于驾驶员生理信号的疲劳监测,如通过脑电、心电、眼电等[4],这类方法理论上具有较高的检测精度,但由于往往需要佩戴复杂的仪器设备,信号容易受到干扰且个体之间差异性较大,相关技术面临很大挑战。近年来,也有研究尝试通过面部眼肌电信号识别面部状态从而对疲劳状态进行检测,比如利用前额肌电对眨眼频率、打哈欠等状态可以实现很高的识别率[5]。肌电信号与脑电相比要明显得多且个体差异不高,设备佩戴也方便,因此这种方法引起了广泛关注。人在疲劳时眨眼动作会变得缓慢,闭眼状态持续时间明显增加,因此眼睛状态可以作为疲劳检测的有效指标。虽然基于前额肌电可以对快速眨眼频率准确检测,但由于慢眨眼所引起的肌电信号变化很小,目前利用前额肌电仍然无法有效识别。已有研究发现,在睁眼和闭眼状态下人的脑电信号存在很大不同,特别是α(8~14 Hz)波段变化尤为明显[6],因此有学者利用脑电信号来对闭眼和睁眼状态进行识别。Narejo等[7]基于14通道的脑电数据使用深度学习算法实现了98.9%准确度的眼部状态分类。Sahu等[8]基于16通道的脑电数据使用增量特征重排序算法实现了最高95.01%准确度的眼部状态分类。Li等[9]基于14通道的脑电数据发现α波段功率与眼睛闭合程度呈正线性关系,但这些工作由于通道数要求较多,设备佩戴复杂导致实用性不高。李凌等[10]通过研究发现,脑电α波段信号虽然在枕叶区最为活跃,但睁眼和闭眼状态下α波在枕叶和额叶的变化都非常显著。本文尝试利用前额单通道脑电信号,主要基于α波变化特征来对睁眼和闭眼状态进行检测识别。本文方法的优势是:一方面,前额没有头发覆盖,信号检测更为准确,设备佩戴也更为方便;另一方面,基于单通道数据也可以大幅度降低信号采集复杂度和分析处理计算的强度;本文方法实现的慢眨眼检测,与前面所述的基于前额肌电的面部状态检测方法结合可以实现更为精确的疲劳状态检测,有较强的实用性和应用价值。
1 数据采集与预处理
1.1 仪器设备与采集位置
实验采用g.MOBIlab无线脑电采集系统,采样频率为256 Hz,通过蓝牙传送数据,除接地与参考电极外最高可同时支持8通道的数据采集,本实验中只使用其中一个通道。本实验选择右前额作为采集部位,皮肤与电极片直接接触,避免了头发的影响,采集数据更加准确。如图1所示,采集电极位于右前额,耳后电极为参考电极与接地电极。
图1 电极位置示意
1.2 实验设计与数据采集
被试者为6名在校大学生,其中女性2人,年龄为21岁-22岁,身体健康,且都为右利手。为确保电极采集数据的准确性,被试者均禁止化妆,且于实验前进行面部清洁,同时在实验中除要求的慢眨眼动作外尽量避免其他的面部活动及肢体运动。
(1) 闭眼状态数据采集:由于实际疲劳状态下人眨眼动作明显放缓,睁眼状态和闭眼状态数据相似度较高,为观察在连续时间段内脑电信号从睁眼过渡到闭眼再返回睁眼的特征变化,实验采用人为模拟慢眨眼过程来采集闭眼状态数据。为确保慢眨眼过程中闭眼阶段脑电数据采集的准确性,采用人为添加标签的方式,使后续数据截取时保证截取到的为闭眼状态下的脑电数据。如图2所示,被试者在打下标签1后进行约3秒的缓慢闭眼动作,之后保持约3秒的闭眼状态,在打下标签2后睁眼,每隔约15秒进行一次慢眨眼模拟,重复采集30分钟。最终截取标签2闭眼结束之前③区域的脑电数据为闭眼状态的脑电数据。
图2 慢眨眼过程波形与标签示例
(2) 睁眼状态数据采集:被试者保持睁眼、自然、放松的状态坐在椅子上采集数据,尽量避免肢体运动和面部活动,减少自然眨眼的次数,保持较长的睁眼时间,持续采集30分钟。
在手工去除噪声干扰较大的数据后,实验共采集到闭眼状态和睁眼状态数据各600组,用以后续的处理分析。
1.3 数据预处理
数据采集完成后进行50 Hz工频滤波和5 Hz~100 Hz的带通滤波[11]。对完成滤波的脑电信号截取合适的数据长度以进行后续的分析。较长的数据段有利于提高脑电信号检测的准确率[12],但也要考虑到疲劳状态检测应用中的实时性要求,本文中我们分别截取了1秒、1.3秒和2秒数据进行分析。自然眨眼作为脑电信号中最常见的伪迹,睁闭眼过程在脑电信号中会产生较大的波动,对数据的影响在10%以上[13-14],对于闭眼状态的检测具有一定的干扰,因此截取的数据应避开眼肌的运动,故从睁眼前的标签处往前截取数据,即图2所示③区域中的数据作为后续处理分析的脑电信号数据。对照组睁眼状态脑电数据的截取同样应避免自然眨眼对波形的干扰,在采集的原始脑电数据中删去眨眼伪迹,如图3所示,保留平稳的静息睁眼状态下的脑电数据。
(a) 静息睁眼状态的原始脑电波形
2 数据分析与结果
2.1 频谱分析
由于脑电原始信号在时域幅值的变化极其微弱,因此脑电频域分析非常重要。选取本文所测脑电数据中的一段慢眨眼过程进行频谱分析,比较睁眼状态与闭眼状态下脑电信号在频域的分布情况,如图4所示,发现闭眼状态下α波段(8~14 Hz)能量有明显增加,而其他波段能量反而有所下降,所以后续特征分析及提取以α波段的变化特征为主。
(a) 睁眼状态
为验证α波变化规律,将该段慢眨眼数据通过带通滤波操作,只保留α波段(8~14 Hz),观察该波段脑电数据幅值在时域的变化。如图5所示,在开始闭眼前的静息睁眼状态和缓慢闭眼过程中(即标签1前后),α波的强度较小;待完全闭上眼,处于闭眼状态时α波强度有明显上升且在整个闭眼状态时间内均保持较高水平;在开始睁眼后(即标签2后),α波能量逐渐下降并最终回到静息睁眼状态强度。由于睁闭眼状态在α波段产生的明显变化,因此α波信号强度可作为睁闭眼状态判别的主要特征。
图5 慢眨眼过程中α波段能量在时域的变化
实验所测连续多段慢眨眼过程在α波段的能量呈现出明显且规律的变化。如图6所示为所测脑电数据在连续时间段内α波变化的情况,闭眼动作刚开始阶段α波变化较小,在中间阶段眼睛完全闭合后α波迅速上升,在闭眼状态结束恢复为睁眼状态后α波又快速下降到正常水平,符合α波从睁眼状态过渡到闭眼状态的特征。α波段的变化趋势在连续多次慢眨眼过程中均有明确体现且辨识度较高,体现了α波特征具备的良好连续性与适应性。
图6 连续慢眨眼过程中α波变化趋势
2.2 特征提取与分类算法结果
将实验采集到的600个闭眼与600个睁眼状态数据分类组合成训练集和测试集,训练集由400个闭眼数据和400个睁眼数据组成,测试集由200个闭眼数据和200个睁眼数据组成。影响本次实验睁眼状态与闭眼状态检测结果的因素主要有三:数据段截取长度,分类算法的选择和提取的特征。考虑到截取数据段较长时脑电信号特征较为明显,同时本次模拟实验以及实际疲劳状态下慢眨眼过程中闭眼状态持续时间有限,采用256数据点(1秒)、350数据点(约1.3秒)和512数据点(2秒)这三种截取长度分别对数据进行测试。由于睁眼与闭眼为二元对立状态,因此分类算法选择支持向量机SVM和决策树Tree这两种对于线性问题具有较好分类效果的算法进行分类。由于两种状态下脑电信号的时域变化不显著,频域能量分层明显,故特征提取以频域为主兼顾时域;并且由于睁眼与闭眼状态不同造成的脑电信号α波段的变化明显,故特征提取以α波段为主兼顾其他波段。β波段(14~30 Hz)作为与人体兴奋与警觉度相关的脑电波段,常与α波段一起进行脑电信号的对比分析[15]。同时我们对各种情况进行了分析对比。
1) 基于α波段特征。α波能量在闭眼状态有明显提升,因此该波段能量峰值、峰值频率等均为有效特征;同时由于α波变化在闭眼过程中具有连续性,因此时域特征也具有一定价值。具体提取的特征为:α波段能量和、峰值能量、峰值频率、峰值能量与频率乘积、中值频率、平均频率、时域绝对值总和、峰值、谷值、峰谷差值、整体能量和、平均能量和、方差,共13个。基于该特征在不同截取长度与分类算法下的实验准确率结果如表1所示。两种分类算法SVM与Tree均取得了较高的准确率,其中SVM算法效果更好。并且随着截取长度的增加,在相同条件下准确率略有上升,与预期相符,脑电信号作为较微弱的生物电信号,在较长时间间隔内的变化更加明显与突出。
表1 α波段特征准确率
2) 基于β波段特征。β波段作为脑电信号分析的重要波段,由睁眼状态转化为闭眼状态时能量略微有所下降,如图7所示。为与α波段特征分类效果对比,采用与α波段相同特征,具体为:β波段能量和、峰值能量、峰值频率、峰值能量与频率乘积、中值频率、平均频率、时域绝对值总和、峰值、谷值、峰谷差值、整体能量和、平均能量和、方差,共13个。该特征在不同截取长度与分类算法下的实验准确率结果如表2所示。对比α波段与β波段相同类别特征下的准确率结果,发现α波段效果明显优于β波段,与频谱图中α波上升显著而β波段变化不明显对应,体现了α波段变化特征在判别睁闭眼状态时的准确性与实用性。
表2 β波段特征准确率
(a) 睁眼状态 (b) 闭眼状态图7 睁眼与闭眼状态下脑电β波段频谱对比
3) 加入α波段与β波段比值特征。从图4和图7中可以看出与α波段相反,β波段在闭眼后会有所下降,因此考虑将β波段与α波段的能量比值作为特征。使用准确率较高的512点截取长度与SVM算法,测试加入α、β波段能量和比值与峰值比值后各波段特征的准确度以及相比于原来单一波段特征的提升程度,所得结果如表3所示。由于在睁眼状态转变为闭眼状态后,α波明显上升,β波略微下降,两波段相关特征的比值放大了原本单一波段的特征效果,与原本准确度较低的β波段特征相结合后分类效果得到了明显优化,同时比值自身作为特征也可达到较高的准确率。在检测睁闭眼状态这一问题上,使用不同波段的比值特征能够在使用较少特征数的情况下达成较好的分类结果。本实验采用SVM分类算法和512点截取长度,在使用α波段特征以及两波段比值特征的情况下,达到了87.9%的准确率,实现了较好的睁闭眼状态分类效果。
表3 α波段与β波段特征结合(%)
3 结 语
本文提出了一种基于前额单通道脑电信号检测睁闭眼状态的方法。通过脑电信号的频域分析发现前额脑电波在睁闭眼不同状态下会有所变化,α波会显著升高,其他多个波段有所下降。通过提取α波段时频域特征,并加入α波段与β波段比值特征,采用SVM分类器,睁闭眼状态检测准确率达到了87.9%。相较于以前的研究,本文所提方法只需要1个脑电通道,且位于前额位置,没有头发覆盖,易于操作,极大提高了方便性和实用性;同时该方法具有较高的检测准确率,能够根据脑电信号快速准确地判别睁闭眼状态。本文与已成熟的基于前额肌电的面部状态识别(眨眼频率、打哈欠等)相结合,可以显著提高疲劳状态检测的有效性和可靠性。