基于多源信息源融合的疲劳检测系统

2022-10-11 07:37王振宇廖健熙
电子设计工程 2022年19期
关键词:电信号心率状态

王振宇,吕 勇,廖健熙,赵 凯

(1.嘉兴学院信息科学与工程学院,浙江嘉兴 314001;2.万科思自控信息(中国)有限公司,浙江嘉兴 314006)

脑力疲劳是一种长时间、高强度脑力劳作或单调重复工作的并发现象,影响着人类的生理、心理机能。随着现代化进程的推入,脑力工作者群体也在日益增加,不间断工作及睡眠不足会导致作业绩效显著降低,严重时甚至会引发安全事故[1],众多学者为此做了大量的精神运动及行为分析。文献[2]表示,眼睑闭合度(Percentage of EyeIid CIosure over the PupiI over Time,PERCLOS)和打哈欠频率影响疲劳程度;文献[3]指出用脑电信号(Electroencephalograph,EEG)和心电信号(Electrocardiogram,ECG)可以有效监测疲劳;文献[4]研究了多个面部特征的疲劳信息检测,但在实际应用场景中,单一信息的采集有明显缺陷,如光线较差场景下面部识别效果差[5]、个人差异和环境复杂干扰脑电信号[6]等;文献[7]综合了多种多源信息融合的疲劳检测手段,指出了需要平衡实际应用场景实时性和稳定性的必要。

1 理论基础

当人体产生疲劳时,会出现心率加快、精神涣散、注意力难以集中等现象,面部特征和身体姿态随之发生变化[8-9]。

1.1 脑 电

随着脑力疲劳程度的加深,大脑皮层复杂程度变低,α波段频率增加,β波段能量减少,而当人体开始从疲劳状态转变到睡眠状态时,θ波段频率显著增加[10]。因此,可用式(1)的脑电波相对能量之比表示疲劳程度;

其中,r为谱功率分布,α、θ、β分别代表α波、θ波、β波频率。

1.2 基于频域计算的心率

随着人体生理疲劳及心理疲劳程度越来越深,心跳速度会逐渐减缓,心率也随之降低,传统表征心电信号的方法是基于时域分析中R-R 波峰期间的均值计算,实时性不强,而基于快速傅里叶变换(FFT)的频域计算明显提高了分析速度。1 min 内心电信号的频率即心率可用式(2)表示:

其中,X为谐波幅值,F为FFT采样点数,fs为FFT 采样频率。

1.3 姿态判定

当人体产生疲劳时,会自然出现困意点头行为。排除其他外界因素,设置pitch(俯仰角)为20°,如果点头时间持续3 s,则判断为困意点头,每分钟内困意点头大于3 次认定为疲劳状态。

1.4 面部识别算法

1)PERCLOS 算法

PERCLOS 代表人的眼睛下皮在一定时间内的下垂程度。在清醒状态下,人的PERCLOS 参数值较小,处于疲劳状态时,闭眼帧数明显增加,PERCLOS参数值随之增大。PERCLOS 值的计算如式(3)所示,其超过预定阈值时,判定为疲劳:

2)MAR 算法

嘴部纵横比(Mouth Aspect Ratio,MAR)是基于人体嘴部水平方向和垂直方向之间特征点的距离之比,通过式(4)可判断测试人员是否张嘴及打哈欠。将MAR的阈值设置为0.75,当MAR>0.75 时就可以认定打哈欠行为一次,1 min内打哈欠的次数超过两次可判定为疲劳。嘴部特征点计算欧氏距离示意图如图1所示。

图1 嘴部特征点计算欧氏距离

1.5 Yolo-V5s模型

为了达到实时检测区域快速定位[11]并部署到开发板部署的目的,选用了体积较小、检测速度较快的Yolo-V5s模型。Yolo(You only look once)的核心思想是将输入图片划分为网格后,找到目标中心的网格对该目标进行预测,再使目标框回归位置坐标并进行置信度值的预测,之后设定置信度阈值,筛选出置信度较高的目标框进行非极大值抑制(NonMaximum Suppression,NMS)处理,最终得到预测结果。而Yolo-V5s模型在此基础上采用Mosaic数据增强,自适应锚框计算算法加速了推理速度,Neck 端采用FPN(Feature Pyramid Networks)+PAN(Pixel Aggregation Networ)结构对特征提取能力作了进一步提高,从而可快速有效提取到疲劳信息。Yolo目标检测流程图如图2所示。

图2 Yolo目标检测流程图

1.6 RBF神经网络

神经网络兼顾并行性和适应性,具有计算优势,可优化程序性能。利用神经网络的任意逼近和抗干扰能力,可以很好地实现决策分析。径向基函数神经网络(Radial Basis Function,RBF)利用全局任意精度逼近任意非线性函数,利用均值聚类找到径向基中心,并选取关键参数对其模糊化处理,由此简化特征结构和计算复杂度,降低疲劳信息源空间维数。通过上述步骤建立决策表,可以有效进行决策融合,进一步分析疲劳状态[12]。

2 实现方法

为实现疲劳检测系统设计,文中使用RBF 神经网络分别采集实验对象在疲劳状态和非疲劳状态下的特征参数,建立决策系统对疲劳状态进行评估。决策系统包括脑电采集模块、心电采集模块、图像采集模块、头部姿态采集模块及控制模块,系统收集到脑电信号、心电信号、姿态信息以及面部信息后对每一个部分进行预处理优化,再将它们作为数据样本放入构建好的模型进行训练,最后部署到jeston nano(深度学习开发板)上,这样可以在保证准确性的同时增加实时稳定性能,满足实验需求。系统框架如图3所示。

图3 系统框架

2.1 脑电特征提取

多电极采集设备价格昂贵,探头数目繁多,复杂程度较高,故脑电的特征提取模块选用了Neuro sky公司相对廉价、简单的TGAM 模块,采集端包括单点干变极传感器、耳夹电极片、蓝牙从机、TGAT芯片及电源模块。采用非侵入式脑机接口(Brain-Computer Interface,BCI)[13]设备,避免了传统穿戴设备的浸湿需求,同时使电极片增加了导电能力,使信号传输得以有序稳定的进行,且该设备佩戴方便、操作便捷,可行性相比传统设备更高。而基于4.0 低功耗蓝牙部分(Bluetooth Low Energy)满足在较高数据传输速率下支持自适应跳频,加强了可靠性和安全性,最后由TGAT芯片的内部算法过滤眼电噪声以及50/60 Hz交流干扰,将检测的脑电信号转换成数字信号,通过串口发送至显示端,用于判断疲劳程度。数据采集具体步骤如下:

1)增加校验和检察,即检查数据包中数据和检验位是否一致。

2)解析TGAM 发送的小包数据。

3)设置好大包数据时间间隔,将数据和大包交叉核对,得到脑电信号频率宽带(EEG power)。

4)利用式(1)计算待测对象的疲劳值。

5)将疲劳数据通过蓝牙设备传送到显示端。

2.2 心电特征采集

心电采集模块选用TI 公司医用级双通道同步采样的ADS1292 模块,该模块具有两个可编程增益放大器(PGA)和两个24 位模拟数字转换器(ADC)。

由于心电信号幅值较小,而高次谐波形成的干扰具有较大的位移特性,为了使心电信号采集具有实时性,选择了输出信号能够进行FFT 运算的FIR 滤波器。设置250 Hz 的采样频率,选取Kaiser 窗函数,在抑制噪声的同时保留了边缘特性。在计算滤波器滤波后的心电数据值时,采用基4FFT 原理,将长序列计算分割成2 点DFT 计算,即先将单位长度的DFT 序列分割成两个1/2 单位长度DFT 序列的线性组合,再各自拆分为2 个单位长度为1/4 的DFT,依次进行下去,直至每个序列都由2 个单位长度表示为止,由此大大减少了计算量,增加了实时性。选取寄存器中的单位点数,根据频谱特性找到存入硬件设备中的最大谐波幅值下标,与相关系数相乘,得到心率数据,通过串口通信设备将心率数据发送至上位机,上位机读取串口数据绘并制成图4所示的连续波形图。

图4 心电数据显示

2.3 姿态特征提取

将Acc_Gyro Accelerometer+Gyro IMU 作为惯性传感器采集人体姿态原始数据,由于传感器供电参考电压是3.3 V,故需要将采集到的10 位原始ADC(模拟数字转换器)值转换成电压值。根据加速度计检测的惯性力矢量得到加速度计输出的线性相关值,导入加速度计的灵敏度,得到单位为g 的重力矢量力分量,通过简单的反三角函数关系得到加速度计计算倾角,再通过陀螺仪惯性元件测量实时角速度,参考陀螺仪的灵敏度转换单位,通过对角速度积分得到倾角位置,最后通过卡尔曼滤波(KF)融合两个传感器得到的倾角数据后,解算四元数,得到俯仰角数值,判定点头次数后,通过SPI(Serial Peripheral Interface)通信将结果传送下位机,最后通过串口通信发送到显示端进行综合分析。

2.4 图像采集

选择jeston nano为上位机,rt1064为下位机,上位机用于提取视频流,收集图像信息,并收集实验对象不同张嘴程度、眼睑闭合度及点头角度的图像信息。

①选定100 ms 捕捉实验对象在白天和深夜的面部状态,以便更好地采集眨眼及哈欠特征,并使用图像标注工具进行标注,制作数据集。

②对数据集预处理,采用Mosaic算法对数据样本进行增强,并利用自适应Anchor算法找到最佳锚框值。

③将数据集导入CSPDarknet 框架进行训练,利用FPN+PAN 结构推理整合,得到训练权重结果。

④将权重结果部署至jeston nano,通过式(3)、式(4)计算PELCOS 值、MAR 值,初步综合判定疲劳状态。正常状态疲劳状态检测示例如图5 所示。

图5 正常状态疲劳状态检测示例

3 实验结果分析

由于人面部区域占整个图像比例较小,为了滤除背景对面部识别的干扰并加速识别过程,在矫正摄像头后,将640×480 像素压缩至160×160 像素,空白处补灰色。利用权重文件找到人物,再将人物剪裁成320×320 像素大小,用训练好的数据集模型检测人脸,对标注的2 000 张数据集进行实验,结果如

表1 所示,由表1 可以看出,改进后的模型在保障准确率的同时提高了检测速度。表1 人脸检测结果

对比文献[5]提出的基于Yolo-V4 的轻量化疲劳检测模型,文中面部识别模型采用单帧采集速度更快的Yolo-V5s 模型,对于单目标检测采用自适应计算最佳锚框值,推理性能更加卓越。

以一组现场测试人员白天和深夜采集的疲劳信息为例,建立多传感器生理数据融合系统,对基于RBF 的多源信息融合方法加以说明。取PERCLOS、人脑功率谱密度之比、心率、点头次数、打哈欠次数5 种常见监测参数的测量值作为疲劳信息决策表的条件属性。系统的决策属性决定着疲劳等级,其中疲劳程度为“清醒”状态用d1 表示,疲劳程度为“轻度疲劳”状态用d2 表示,疲劳程度为“重度疲劳”状态用d3 表示。

剔除无效属性及重复属性后对剩余条件属性值进行化简,得到决策表如表2 所示。通过约简处理后使用Matlab 仿真工具箱,调用RBF 函数对该网络进行训练,根据最终的网络决策输出值即可判断疲劳情况。图6 所示为RBF 神经网络训练效果。

图6 RBF神经网络训练效果

表2 疲劳检测系统信息决策表

其中,Performance 表示传递误差大小,Goal 表示设定误差。该网络是以决策属性样本数据作为训练样本,对应属性测试数据为测试样本,选用输入层单元为6、输出层单元为3 的网络模型。

实验测得模型在jeston nano tx1 开发板上的单帧平均检测时间为63 ms,可满足疲劳驾驶检测的实时性要求。文中方法与其他信息融合手段如基于面部与心率特征融合疲劳检测[14]方法、基于功能近红外光谱的多生理脑力疲劳检测[15]以及基于信息融合的驾驶员疲劳状态检测方法研究[16]对比结果如表3所示。通过仿真可以证明,基于RBF 的多传感器信息融合方法在疲劳检测系统中的准确率可到0.97。对比其他疲劳驾驶检测方法,文中方法具有精度优良、鲁棒性高、稳定性强且能在低成本的硬件设备上完成检测的优点。

表3 不同疲劳检测方案的对比

4 结束语

为解决单一信息源检测疲劳稳定性不足的问题,文中设计了RBF 神经网络对多个疲劳信息源进行融合,并针对每个信息源来源进行优化,采用单点干变级接触传感器TGAT 模块对脑电信号进行特征提取,并设计大包交叉核对方式增强数据稳定性,同时将心率的时域计算变成频域计算,由此提高系统实时性。为了缩短人脸识别进程,使用惯性传感器检测头部姿态,采用改进Yolo-V5s 作为面部特征检测的模型,提高了检测速度和识别精度。实验证明,该系统对疲劳检测整体精度达到了97%,具有很高的鲁棒性和实时性。

猜你喜欢
电信号心率状态
基于单片机的心电信号采集系统设计
离心率
智珠二则
神经元电生理模型的构建及分析
在最佳心率区锻炼
生命的另一种状态
探索圆锥曲线离心率的求解
机电工程中存在问题之我见
“牛顿第一定律”练习
一种心电信号采集放大电路的简单设计方法