基于外周生理信号的疲劳驾驶监测研究*
2018-05-24莫泽坤徐逸峰蒋麒憬张晨曦陈兰岚
莫泽坤,徐逸峰,蒋麒憬,张晨曦,陈兰岚
(华东理工大学信息科学与工程学院自动化系,上海 200237)
前言
随着汽车产量的上升以及在日常生活中的普及,交通事故也越发频繁。2016年,全国民用汽车保有量为19440万辆,而道路交通事故万车死亡人数为2.1人。换言之,近4万人在2016年因交通事故而死亡[1]。作为交通事故重要原因之一的驾驶疲劳,也成为了人们关注的主题。然而由于疲劳的起因复杂、疲劳特征个体差异大[2]等缘故,至今没有一些成熟的疲劳状态监测方法,为交通事故埋下了严重的隐患。
近年来,计算机技术、传感器技术、人工智能技术的飞速发展让驾驶环境实时监控不再遥不可及,越来越多的科研工作者和机构开始致力于研究能够实时监测驾驶员生理信号并判断精神状态的方法,以作为安全驾驶的辅助系统。
现有的研究成果主要分为对驾驶员监测与对车辆监测。对驾驶员监测的研究,主要有眼部图像识别[3]及面部表情识别[4]。对车辆监测的研究则主要针对方向盘的转角情况进行[5]。此外,研究表明[6],利用接触式传感器检测人体外周生理信号对疲劳机理和表征的研究也是可行的。
本文对外周生理信号进行采集、预处理、提取特征之后;第一步,依据实验记录选取了典型清醒疲劳样本,结合支持向量机(SVM)研究多特征组合下对清醒疲劳样本的区分效果,并使用准确度、灵敏度、特异性、受试者工作曲线等指标对分类效果做出评价;第二步,本文以典型清醒疲劳样本作为训练样本,利用 SVM 对驾驶状态建模,再对连续的模拟驾驶过程进行状态的判断。
1 实验设计与数据提取
1.1 实验设计
1.1.1 实验设备与人员
本次实验使用了以下生理信号的传感器:肌电(EMG)传感器(贴于实验者后颈),皮电(GSR)传感器(固定于右手食指及小指),皮温(Temp)传感器(固定于左手食指),血容脉搏(BVP)传感器(夹于左手小拇指)和呼吸(Resp)传感器(绑于胸口),各个信号的采样频率皆为256Hz。此外,本实验使用了模拟驾驶方向盘与踏板套装及驾驶模拟软件进行模拟驾驶(图1)。
图1 实验设备Fig.1 Experimental Equipment
实验中使用了“ProComp Infiniti”生物反馈编码器,配合软件“BioNeuro Infiniti”测量被试的外周生理信号。
实验的被试者为4名在校学生,平均年龄为22.9±1.2岁,所有被试均为男性,身体健康。实验旁有1名观测者记录被试情况。
1.1.2 实验流程
被试者在经过适当的休息后开始模拟驾驶实验。在实验开始前,被试者将填写第一张卡罗林斯卡嗜睡表用以主观判断被试者的精神状态,卡罗林斯卡嗜睡表是一种嗜睡程度自评量表,用以被试主观评价当前疲劳程度。之后,被试者进行约2小时的模拟驾驶,休息15分钟并填写第二张卡罗林斯卡嗜睡表,再继续 0.5小时的驾驶作为对照实验。在总计长达3小时左右的实验后,被试者结束驾驶并填写第三张卡罗林斯卡嗜睡表。
在实验进行时,观测者会在旁边观察被试者,记录被试者各种疲劳状态(车辆事故、呼吸沉重、眨闭眼变多等)的时间点,及时将被试者的状态记录于被试状态记录表。同时,生物反馈传感器将被试者皮电、血容、皮温、呼吸和肌电的原始数据记录于计算机(图3)。
1.1.3 样本选取
结合被试状态记录表与卡罗林斯卡嗜睡表,实验相对准确、合理地判断出驾驶者的疲劳时间段和清醒时间段,并考虑驾驶初始阶段被试调整动作较大对信号造成的干扰、等待被试状态镇静等因素最终选取了每名被试在开始驾驶后10-20分钟、以及行驶至100-110分钟数据分别作为清醒和疲劳状态的典型样本。即图3中虚线框所示。
图3 原始数据Fig.3 Raw Data
此样本将作为短时驾驶样本进行分类,研究特征指标对清醒疲劳状态的区分效果,并在对连续驾驶过程进行状态识别中作为SVM训练集,研究经训练后的SVM对驾驶全程的被试状态识别效果。
1.2 数据预处理
原始信号通常带有较多噪音,因而,在进一步处理前,首先需要进行滤波处理。
实验所采用的滤波器是巴特沃斯数字低通滤波器。滤波器的截止频率应保证所用的频段范围内信号能无失真通过,对于之外的噪音信号则尽可能滤除。因而,考虑到一定裕度,GSR信号截止频率为5Hz;EMG信号截止频率为 127Hz;Resp信号截止频率为 10Hz;BVP信号截止频率为 10Hz;Temp信号变化较为缓慢,无需滤波。图4为EMG信号滤波前后波形图,虚线波形较为紊乱,为EMG的原始波形图,而波形较为光滑的实线图为滤波后的波形图。由图4可以看出,滤波后的效果显著,易于之后的特征提取与分析。
图4 信号滤波处理Fig.4 The Processing of Signal Filtering
2 特征提取与状态识别方法
2.1 特征提取
实验主要提取了 BVP信号的频域、时域及心率变异性(Heart Rate Variability, HRV)指标;对EMG、GSR、Resp信号进行了频域与时域上的特征指标提取;对Temp则提取了时域指标。时域参数主要包括均值、标准差、均方根、最大最小值。频域参数主要包括各个频段的功率谱密度和以及它们之间的比值关系。BVP信号还计算了四个和HRV相关的特征。HRV是指窦性心律在一定时间内周期性改变的现象。HRV能够有效反映脑力和体力的疲劳状况,能够作为检测疲劳驾驶的指标[7]。实验提取的指标具体如表 1所示。通过对原始数据点进行运算,可以获得信号时域上的特征,而获取频域上的特征则需首先将信号变换至频域信号。为此,实验对原始信号进行了快速傅里叶变换(FFT)处理。FFT是一种对离散数据快速变换至频域的算法,能够极大减少离散傅里叶变换的运算量[8]。
计算 HRV相关参数的关键是获取心跳的RR间期。而BVP可反映心跳情况(其波形如图5所示),通过提取BVP波形的RR间期数据,即可计算HRV相关参数。
图5 BVP波形图Fig.5 The Waveform of BVP
数据处理后,将进一步验证通过分析外周生理电信号能否区分被试的清醒疲劳状态,并寻找区分效果较好的特征指标。
表1 不同信号提取的参量Table1 The Features of the Signal
2.2 特征样本处理
实验将每名被试的10分钟清醒和10分钟疲劳原始数据片段进行提取,以100秒为一个窗口长度,10秒为步长计算特征,产生共120个特征样本点。4名被试构建的数据集共有清醒特征样本、疲劳特征样本各240个。
实验接着对特征样本进行线性归一化处理以缩小个体差异带来的误差,然后在特征空间中寻找清醒疲劳数据值差异明显的特征,即该特征能够较为明显地区分清醒疲劳状态。
归一化是一种无量纲处理手段,使实际的绝对数值转换为相对值进行比较,归一化后的所有数据取值范围均在[0,1]。实验使用线性函数进行归一化转换,公式如下:
式中:X,Y分别是归一化前后的数据值,Xmax、Xmin分别是归一化前每个特征的样本最大值和最小值。
2.3 使用SVM进行分类
支持向量机(Support Vector Machine,SVM)是一种可以训练的机器学习方法。分类的过程是将样本空间映射到一个高维的特征空间中,并在特征空间中构造最优分割超平面,此超平面不但能将两类特征分开,且使分类间隔最大,使得学习机得到全局最优化[9]。
分类首先将样本点混合后随机分成8组,再使用留一法进行8次交叉验证。留一法实验方式是将样本数据分成训练集和测试集,每次验证将7组作为训练集,1组作为测试集,使用SVM对测试集进行分类。最后用8次分类结果的平均值衡量分类效果。
2.4 评价SVM分类效果
对 SVM 分类效果的评判主要通过以下指标判断:准确度、灵敏度、特异性、AUC。
准确度、灵敏度、特异性的计算主要依靠真阳率、真阴率、假阳率、假阴率。
真阳率(tp)为SVM正确判断清醒状态的概率;假阳率(fp)为SVM将实际疲劳状态误判为清醒的概率;真阴率(tn)为SVM正确判断疲劳状态的概率;假阴率(fn)为SVM将实际清醒状态误判为疲劳的概率。
准确度计算:
灵敏度计算:
特异性计算:
受试者工作特征曲线(ReceiverOperating Characteristic curve, ROC)可以评估两类分类算法的性能。ROC曲线描绘的是诊断中敏感性和特异性之间的制约关系,能够更全面客观的对分类系统进行评估[10]。AUC为ROC曲线所围成的面积大小,AUC越大,则表明分类机分类效果越好。
实验绘制了 ROC曲线并计算了相应的 AUC值来评判SVM通过特征对驾驶者状态分类的效果。
3 实验结果
3.1 多特征区分结果
为了观测多维特征对驾驶状态的区分效果,特在三维特征空间里对清醒、疲劳样本进行区分,如图6所示,该图中选择了如下三个特征:Resp均值(fea.1)、GSR 0-1.2Hz功率密度和(fea.2)、Temp最小值(fea.3)并进行绘制。图6表明使用这三个特征能够非常明显地区分清醒与疲劳状态样本点,而来自外周生理信号的其他特征组合也能够在一定程度上对被试的清醒与疲劳状态加以区分。
图6 在三维特征空间中的状态区分效果Fig.6 The Effect of Classificationin Three-dimensional Feature Space
3.2 SVM分类结果
SVM分类的性能评价如表2所示。可见,对于单独某种信号特征,SVM能大致区分出驾驶者的状态,但错误率较高,而使用来自五类信号的所有特征(All)进行分类,则可以近乎完全准确地区分出驾驶者的状态。
表2 分类的性能评价Table2 The PerformanceEvaluation of Classification
3.3 使用ROC评价SVM分类效果
图7为利用SVM分类机分别根据五种信号单独分类及根据五种信号组合分类的ROC曲线。根据这五种特征的ROC曲线及计算出的AUC,可以发现ROC评判结果与使用正确率对 SVM 分类机进行评判的结果相类似,进一步证明了使用SVM能够对信号特征进行分类进而可靠判断驾驶者状态。
图7 ROC曲线Fig.7 Receiver Operating Characteristic Curve
3.4 使用SVM对连续驾驶过程分类效果
实验选取一名被试的典型清醒疲劳样本作为样本集,使用SVM分类器对其170分钟连续驾驶的信号特征进行分类,研究经过典型样本训练后的 SVM 能否对连续驾驶过程中的驾驶者状态变化做出准确的判断。
如图 8所示,前六条曲线分别为 SVM 根据相应信号(BVP、EMG、GSR、Resp、Temp及五个信号指标共同作用(ALL))对驾驶过程做出的被试清醒疲劳状态区分情况,1代表被试处于疲劳状态,0代表处于清醒状态。第七条曲线则为结合被试状态记录表和卡罗林斯卡嗜睡表所得到的真实状态曲线(Real)。
图8 基于SVM的驾驶全程分类效果Fig.8 The Classification of Whole Journey via SVM
通过比较可知,单一特征的分类曲线与真实状态曲线之间有较多的不吻合之处,而总特征分类结果与实际状态基本一致。
此结果证实了通过生理电信号的数据采集、特征提取与分析,合理使用分类手段,可以准确评价驾驶员的疲劳状态。
4 总结
本文通过长时间模拟驾驶实验,获取到被试清醒与疲劳时的外周生理信号数据,经过后续的数据处理与分析,验证了通过外周生理信号特征的某些指标或指标的组合能够有效区分驾驶员在模拟驾驶过程中清醒与疲劳的状态。
实验通过 SVM 对典型特征样本进行了分类,并通过正确率计算和 ROC曲线对分类结果进行了评价。其证明了SVM分类机可以较好区分出清醒疲劳特征样本,并使用分类机对连续驾驶过程中驾驶者的状态进行识别。其结果与实际情况基本相符,证明了本文所提方法在实际驾驶过程中具有较好的应用价值。
本文使用的指标是常见的时域及频域上的指标,后续可以研究特殊或非线性等指标对状态的区分效果。此外,本文并未使用脑电信号,此后的研究可以引入评判效果较好的脑电信号。
参考文献
[1] 国家统计局.中华人民共和国2016年国民经济和社会发展统计公报[R].2017.
[2] 于晓东,基于驾驶人生理指标的驾驶疲劳量化方法研究[D],吉林大学,2015.
[3] 黄春雨,苏李.基于图像识别的疲劳驾驶监测方式研究[J].长春理工大学学报(自然科学版),2016,(06)∶102-104+114.
[4] 马添翼,成波.基于面部表情特征的驾驶员疲劳状态识别[J].汽车安全与节能学报,2010,1(3)∶200-204.
[5] 张希波,成波,冯睿嘉.基于方向盘操作的驾驶人疲劳状态实时检测方法[J].清华大学学报(自然科学版),2010,50(7)∶1072-1076 +1081.
[6] 杨星星.基于生理信号的疲劳驾驶风险检测方法的研究进展[J].中国医学装备,2013,10(7)∶ 57-59.
[7] 李增勇,焦昆,陈铭等.汽车驾驶员驾驶过程中的心率变异性功率谱分析[J].中国生物医学工程学报,2003,(06)∶ 574-576.
[8] 胡丽莹,肖蓬.快速傅里叶变换在频谱分析中的应用[J].福建师范大学学报(自然科学版),2011,27(4)∶27-30.
[9] 刘华煜.基于支持向量机的机器学习研究[D].大庆石油学院,2005.
[10] 韦修喜,周永权.基于ROC曲线的两类分类问题性能评估方法[J].计算机技术与发展,2010,20(11)∶47-50.