基于脑电信号分类的高速公路上驾驶疲劳识别*

2015-04-13 02:52王福旺
汽车工程 2015年2期
关键词:电信号权值分量

罗 旭,王 宏, 王福旺

(1.东北大学,沈阳 110004;2.沈阳师范大学,沈阳 110034)



2015041

基于脑电信号分类的高速公路上驾驶疲劳识别*

罗 旭1,2,王 宏1, 王福旺1

(1.东北大学,沈阳 110004;2.沈阳师范大学,沈阳 110034)

为驾驶疲劳的识别提出一种基于小波变换与BP人工神经网络的自发脑电信号分类方法。利用离散小波变换对驾驶员的脑电信号滤波,得到频率低于30Hz的4个子带小波系数,由统计方法从小波系数中提取特征值。以这些特征值作为训练数据,对所建的BP人工神经网络进行训练。结果表明,用所建的神经网络对高速公路客车驾驶员分别在疲劳和非疲劳时记录的脑电信号进行分类可达93.2%的准确率。

驾驶疲劳;脑电信号;小波;BP人工神经网络

前言

疲劳驾驶是引发交通事故的主要原因之一。经统计,有20%~30% 的交通事故直接由疲劳驾驶引起[1]。因此须研究量化与识别疲劳驾驶的有效方法,为研制疲劳驾驶预警系统提供理论与技术支持。

疲劳驾驶的量化与识别,主要是通过分析人体电信号,如脑电(EEG)、眼电(EOG)和肌电(EMG)等来实现。其中,脑电信号是最为可信和准确的疲劳判断依据[2]。文献[3]中试图使用脑电信号功率记录模拟驾驶过程中驾驶员的表现,结果表明脑电信号的变化与驾驶员注意力的变化有关。文献[4]中提出,疲劳状态下的脑电波中,低频波(θ波与α波)比例增大,而高频波(β波)比例降低。文献[5]中通过支持向量机分类器对经小波滤波的脑电信号进行分类识别,分类正确率达90.04%。

本文中结合离散小波变换滤波技术与BP人工神经网络分类方法,对两类脑电数据(疲劳驾驶和非疲劳驾驶状态下的脑电信号)进行分类识别,平均正确率为93.2%。

1 小波滤波与特征提取

脑电信号在采集过程中参杂大量噪声,在分类识别之前必须先滤波。针对脑电信号的非线性与非平稳性[6],小波变换是较有效的时频分析方法[7],因此采用快速的离散小波变换设计滤波器。

1.1 离散小波滤波

信号经小波变换后,可产生压缩式的小波系数,分别为代表原信号低频部分的逼近小波系数与代表高频部分的细节小波系数。本文中使用离散小波变换[8](DWT)对脑电信号进行滤波,离散小波变换定义如下:

(1)

式中:ψ(t)为小波基函数,j、k∈Z并代表频率分辨率,fj(t)为信号f(t)在尺度2j的分类。

脑电信号经离散小波变换分解,得到频率低于32Hz(脑电信号频率主要分布在0~30Hz)的4个子带内的小波系数,从而过滤掉频率较高的干扰信号。离散小波分解过程如下:先对脑电信号f(t)进行首次分解,得到第1层低通逼近分量A1和高通细节分量D1。再对A1分解得到第2层的逼近和细节分量AA2和DA2。以此类推,一直分解到第4层。在第4层中,除了分解逼近分量AAA3,得到AAAA4和DAAA4之外,还分解细节分量DAA3,得到ADAA4和DDAA4。为表述方便,将这4个分量分别标记为P1、P2、P3和P4。小波分解过程如图1所示。

每次分解产生的两个分量的频率范围都为原分量频率范围的一半,且逼近分量覆盖低频范围,细节分量覆盖高频范围。例如,假设原始信号频率为128Hz,经分解后得到的逼近分量A1的频率范围为0~64Hz,D1为64~128Hz。经5次分解之后,在第4层产生的4个分量的频率范围分别是0~8Hz、8~16Hz、16~24Hz和24~32Hz。

1.2 提取小波系数特征

前面得到的每个小波分量Pi都含有大量的小波系数,不适合直接作为特征数据。为减少计算量,需要从每个分量内提取统计值。对每个分量Pi(i∈{1,2,3,4}),取其最大值、最小值、均值和标准差。根据4个分量一共生成16个特征值。

当采用该特征提取方法分析脑电时,须预先定义分析窗口的大小。例如,针对脑电帽的某通道,可以每当采集128组脑电数据时,便提取与之对应的16个特征值。这些特征值将作为神经网络输入数据,用于之后的神经网络训练与创建。

2 BP人工神经网络分类器

2.1 BP人工神经网络

BP神经网络[9]的学习过程由信号的正向传输与误差的反向传播两个过程组成。正向传输时,样本从输入层传入,经隐含层逐层处理后传向输出层。若输出层的实际输出与期望输出不符,则进入误差的反向传播阶段。误差的反向传播将输出误差以某种形式通过隐含层向输入层逐层反传,并将误差分摊给各层的所有单元,从而获得各层单元的误差信号,该误差信号作为修正各神经元权值的依据。

2.2 设计神经网络结构

驾驶状态下,额头AF3和AF4部位的脑电电位变化较为明显,如图2所示。

因而提取AF3和AF4两通道脑电信号的特征值作为神经网络的输入数据。两通道的窗口信号经小波过滤和特征提取后,共产生32个特征值,所以设置神经网络的输入层节点数为32。输出层节点数为1,输出值为0(非疲劳状态)或1(疲劳状态)。隐含层最佳节点数的计算公式[10]为

l=log2n

(2)

式中:n为输入层节点数;l为隐含层节点数。根据式(2)与输入层节点数32,设置隐含层节点数为5。神经网络结构如图3所示。

该神经网络属于两类分类器。理想状态下,经训练的神经网络能执行准确率较高的分类操作,即向神经网络输入属于某一类(如疲劳)的特征值后,神经网络以可接受的准确率输出与期望值相同的实际输出值。

2.3 选择神经网络训练函数

神经网络训练采用Levenberg-Marquardt函数[11],该函数由基于最大邻域思想的最小二乘估计算法得出。设E(w)由数量为m的个体误差项组成,E(w)定义如下:

(3)

式中:w为权值向量,ei(w)为第i个神经元的实际输出值oi(w)与期望输出值yi的差值。

算法的目标是计算出使E(w)最小的权值向量w。新权值向量wk+1可表示为

wk+1=wk+δwk

(4)

式中:wk为原权值向量,δwk的定义为

(5)

式中:e(wk)=[e1(wk),e2(wk),…,em(wk)]T;Jk为e(wk)在wk处的雅可比矩阵,Jk第i行第j列的元素表达式为

(6)

式中wj为权值向量w的第j个元素。

Levenberg-Marquardt算法计算过程如下:

①计算E(wk);

②将λ初始化为小正数(如λ=0.01);

③计算式(4)得到δwk,并计算E(wk+δwk);

④ 如果E(wk+δwk)≥E(wk),则将λ放大10倍,并跳转到步骤③;

⑤如果E(wk+δwk)

3 疲劳驾驶信号分类实验

3.1 采集脑电信号

3.1.1 信号采集环境设置

实验使用Emotiv电极帽采集脑电源信号。该电极帽最高采样频率为128Hz,包含国际10-20系统中的14个参考电极,如图4中黑色电极所示。

实验环境为沈阳至丹东高速公路客车内。参与实验的人员包括被试者(驾驶员)、观察员与操作员。观察员处于客车的副驾驶位,负责观察驾驶员的精神状态(如打哈欠频率、眨眼频率等),以及判断驾驶员是否进入疲劳状态。操作员位于驾驶员后座,负责操控计算机和脑电信号采集设备。出于安全考虑,客车内没有乘客。

3.1.2 信号采集过程

信号采集操作在13∶00~18∶00之间的真实驾驶状态下进行。为保证采集的非疲劳脑电信号尽量接近理想状态,驾驶员在参与实验之前的24h内,保证正常睡眠时间并且没有从事严重耗费体力与精力的活动。当驾驶员从13∶00开始驾车5min后,操作员采集3min的驾驶员脑电数据,该数据作为非疲劳数据,采集量为23 040组。

根据《中华人民共和国道路交通安全法实施条例》的规定,连续驾车4h且休息不足20min的情况认定为疲劳驾驶。因此,为获取较理想的疲劳驾驶脑电信号,实验中的驾驶员连续驾驶客车5h左右后(中途休息5min),并且当有较明显的眼神呆滞或打哈欠频率增加的情况时,由观察员手势通知操作员开始记录疲劳脑电,采集量同为23 040组。为保证数据的稳定性,采集过程中驾驶员没有说话和明显的肢体动作,如转头、摆臂和抬腿等。

通过上述方式,一共采集了4个驾驶员的脑电数据,得到4个数据集。每个数据集包含代表非疲劳和疲劳两状态的两个信号矩阵,每个信号矩阵维度为2×23040(两行分别对应AF3与AF4通道)。

3.2 生成神经网络训练数据

以MATLAB为编程工具,将属于某驾驶员的非疲劳信号矩阵,按128列为1块进行分块,得到180个数据块。对每个数据块滤波和统计后,产生与该数据块对应的32个特征值。那么,由信号矩阵得到180×32的非疲劳特征矩阵。同样方法,产生该驾驶员的180×32的疲劳特征矩阵。将两矩阵组合为360×32的特征矩阵(前180行对应非疲劳状态,后180行对应疲劳状态)作为神经网络的输入层训练数据。与该矩阵对应的输出层训练数据为长度为360的向量(前180行为0,对应非疲劳输出;后180行为1,对应疲劳输出)。

3.3 训练神经网络与结果分析

根据第2节中给出的神经网络设计方案,利用MATLAB神经网络工具箱创建BP神经网络,向网络输入已生成的属于某驾驶员的训练矩阵,执行训练网络操作。神经网络经训练后,隐含层内5个隐节点的输入与输出权值向量得到确定,如表1和表2所示。

表1 隐含层节点的输入权值向量

表2 隐含层节点的输出权值向量

执行网络训练时,MATLAB随机地从所有输入数据中提取70%用于训练操作,15%用于验证操作,15%用于测试操作。由于此随机性的存在,有必要多次执行网络训练以获取神经网络的平均分类准确率。对每个驾驶员的特征数据,分别执行了4次训练操作,记录并统计神经网络分类准确率,如表3所示。

表3 神经网络训练结果

从实验结果可以看到,BP神经网络对4个驾驶员的两类特征数据(非疲劳与疲劳数据)的分类识别效果明显。每个驾驶员的4次分类准确性都稳定在89%以上,总平均准确率为93.2%。

4 结论

驾驶状态下的自发脑电信号,经离散小波变换滤波并进行统计特征提取后,可保留用于区别是否疲劳的特征内容。根据这些特征内容训练并创建BP人工神经网络,神经网络能够以较高准确率对非疲劳与疲劳脑电信号进行分类。

另外,因为针对每个窗口下的脑电数据,其离散小波滤波与统计特征提取的计算时间,以及BP人工神经网络根据输入值计算输出值的时间,都远小于信号的采集时间。因此,为下一阶段研究实时监测驾驶疲劳奠定了基础。

[1] Lal Saroj K L, Craig A.Electroencephalography Activity Associated with Driver Fatigue: Implications for a Fatigue Countermeasure Device[J/CD].Journal of Psychophysiology, 2001, 15: 125-130.

[2] Lal S K L, Craig A.A Critical Review of the Psychophysiology of Driver Fatigue[J].Biological Psychology, 2001, 55(3): 173-194.

[3] Sehier M A.Changes in EEG Alpha Power During Simulated Driving: A Demonstration International[J].Journal of Psychophysiology, 2000, 37(2) : 155-162

[4] Eoh H J, Chung M K, Kim S H.Electroencephalographic Study of Drowsiness in Simulated Driving with Sleep Deprivation[J].International Journal of Industrial Ergonomics,2005,35(4):307-320.

[5] Zhang C,Zheng C X, Yu X L.Automatic Recognition of Cognitive Fatigue from Physiological Indices by Using Wavelet Packet Transform and Kernel Learning Algorithms[J].Expert Systems with Applications, 2009, 36(3): 4664-4671.

[6] Galka A.Topics in Nonlinear Time Series Analysis: with Implications for EEG Analysis[M].World Scientific Publishing Company Incorporated, 2000.

[7] 冯象初,甘小冰,宋国乡.数值泛函于小波理论[M]:西安:西安电子科技大学出版杜,2003.

[8] 杨帮华,颜国正, 鄢波.基于离散小波变换提取脑机接口中脑电特征[J].中国生物医学工程学报, 2006, 25(5): 518-522.

[9] Hecht-Nielsen R.Theory of the Back Propagation Neural Network[C].Proceeding of the International Joint Conference on Neural Networks(IJCNN), New York, 1989,1:593-605.

[10] 史峰,王小川,郁磊,等.MATLAB神经网络30个案例分析[M]:北京:北京航空航天大学出版社,2010:9-10.

[11] Hagan M T,Menhaj M B.Training Feedforward Networks with the Marquardt Algorithm[J].IEEE Transactions on Neural Networks, 1994, 5(6): 989-993.

Driver Fatigue Recognition in Highway Driving Based on EEG Signal Classification

Luo Xu1,2, Wang Hong1& Wang Fuwang1

1.NortheasternUniversity,Shenyang110004; 2.ShenyangNormalUniversity,Shenyang110034

A method of electroencephalogram (EEG) signal classification for driver fatigue recognition is presented based on wavelet transform and BP neural network.The EEG signals of drivers are filtered using discrete wavelet transform to obtain the wavelet coefficients in four subbands with frequencies lower than 30Hz, from which eigenvalues are extracted by statistical method.With these eigenvalues as training data, the BP artificial neural network created is trained.The results show that the classification with the neural network created on the EEG signals recorded from coach drivers in both fatigue and non-fatigue states in highway driving has reached an accuracy rate up to 93.2 %.

driver fatigue; EEG; wavelet transform; BP artificial neural network

*无线体域网下疲劳驾驶状态脑肌眼电信号特性研究基金(61071057)资助。

原稿收到日期为2013年4月6日,修改稿收到日期为2013年8月12日。

猜你喜欢
电信号权值分量
一种融合时间权值和用户行为序列的电影推荐模型
基于联合聚类分析的单通道腹部心电信号的胎心率提取
基于5G MR实现Massive MIMO权值智能寻优的技术方案研究
画里有话
趋肤效应在交流电信号的影响的研究
一种基于互连测试的综合优化算法∗
一斤生漆的“分量”——“漆农”刘照元的平常生活
一物千斤
基于Code Composer Studio3.3完成对心电信号的去噪
基于脑电信号反馈控制的双轨道小车控制器设计