权威期刊网官方网站

基于心率变异检测疲劳驾驶的研究

2020-06-12 00:00:00 来源:《创新时代》2020年5期 作者:方娇,王子纯,邱敏霞,李鑫,杨雪

基于心率变异检测疲劳驾驶的研究

方娇 王子纯 邱敏霞 李鑫 杨雪

天津农学院 天津 300000

摘要疲劳驾驶引发的交通事故案件严重影响人们的生命财产安全,为了避免此类事故发生,本文提出了一种检测疲劳驾驶的方法,通过定位人脸感兴趣区域采取与心率有关的信号,结合快速独立分量分析法(FASTICA)、相关性分析和小波变换提取R波,然后对心率信号进行心率变异分析,得出判断疲劳的指标,从而判断司机是否处于疲劳状态。采取非接触性方法从根本上解决疲劳驾驶引发的安全问题。

关键词:疲劳检测;心率变异;盲源分离

1 引言

随着汽车走进千家万户,加速人与人、物资和信息的流动速度。但是,汽车数量快速增长导致了全国交通事故频发。造成的交通事故案件中20%左右是因为驾驶员的不规范的行车驾驶导致,而最大一部分是因为疲劳驾驶导致的[1]。我国驾驶员经常存在疲劳驾驶的现象,中华医学会的一则报告显示,有超过50%的驾驶员在驾驶过程中打过瞌睡,更有超过22%的驾驶员反应在驾驶途中有过昏昏沉沉、神志不清的状态出现[2]。驾驶员产生疲劳反应后,生理机能持续下降,并伴随着头痛恍惚,精力不集中,视野变窄,反应迟钝,动作僵硬,思维活力下降等多种症状。经研究表明,因疲劳驾驶导致交通事故发生的概率要比清醒驾驶汽车的概率超过4到6倍。

日本的尼桑汽车公司,研制出一款可以自动提醒司机驾驶汽车不打瞌睡的电子报警系统,操作原理是通过安装在汽车仪表盘上的电子眼时刻拍摄记录下驾驶员的眼部图像,然后将图像信息送入处理器分析。司机的眨眼频率与此时刻人的清醒程度有着直接的关系,若司机出现眨眼频率异常增多的情况,电子眼就会进行蜂鸣警报,并对驾驶员释放含有薄荷和柠檬香等醒脑物质的香气,以便于缓解司机的睡意。德国奔驰公司旗下的E300L系列豪华型汽车装备中基于疲劳驾驶预警的系统Attention Assist所使用的分析方法是对驾驶行为的检测方法。该系统使用车载的传感器网络对驾驶员的驾驶行为进行实时监测,并为驾驶员定制个人专用驾驶行为数据库。

2 研究流程

通过视频模块采集信息,经过人脸检测,获取ROI(感兴趣区域),提取出人脸的RGB通道信号(观测信号),进行中值滤波预处理,通过FASTICA分离出原信号,进行相关性分析,得出能反映心率变化的一组信号,如图1所示,画布 24

信号处理

信号处理

信号处理

信号处理

图1 心率提取流程图

3 人脸检测--感兴趣区域提取

通过摄像头采集到人脸信息,提取感兴趣区域(ROI);感兴趣区域是从被处理的图像以方框、圆、椭圆、不规则多边形等方式勾勒出需要处理的区域,使用ROI圈定目标,可以减少处理时间,增加精度。由于驾驶员距离摄像头的位置几乎是不变的,所以从摄像头获取的图像中选取大小为[0 -75 0 0]的矩阵,此矩阵选定出的区域为ROI——额头;考虑到后期能对信号高效处理并且提高信号提取的正确率,本文选择了人脸较平滑的额头区域作为感兴趣区域。将采集到的视频转换为图像,因为视频帧率高于16帧/秒时,人眼看见的视频画面是连续的并且计算机显示卡的处理能力=帧率*分辨力,当处理能力不变时,帧率越高,分辨力越低,所以本文选取16帧/秒的速率处理视频。本文利用MATLAB自带的分类器实现对人脸检测和感兴趣区域的提取。

4 信号处理

4.1中值滤波

为了消除孤立点的噪声,本文引入了中值滤波的方法[3]。中值滤波是一种能有效的预制噪声的非线性信号处理技术,其原理是选定一个窗口,把数字图像中的一点的值用该窗口的中值代替,使周围的值逼近真实值,从而消除孤立点的噪声。

5ee2ea0e37f46_html_820d13c16f969080.gif (1)

式中,W为3*3窗口,g(x,y)为窗口中心灰度值,f(x-k,y-l)为窗口W的像素灰度值。

4.2 FASTICA算法的信号分离

由于摄像头拍摄出来的视频是混合的观测信号,因此需要从混合信号中分离信号,这也就是所谓的盲源分离(ICA)。ICA的算法有很多种,本文选择FASTICA算法从混合系统中分离出RGB信号。FASTICA的原理图如下;

源信号s

混合系统

观测信号x

分离系统

分离信号y

肘形连接符 4肘形连接符 9肘形连接符 8

图2 FastICA的原理图

FASTICA算法步骤[4-5]

  1. 对数据中心化。使观测信号x的均值为零,

5ee2ea0e37f46_html_16df3a8c3671e728.gif i=1,2,3... (2)

式中,5ee2ea0e37f46_html_c1b07be73aa0afdc.gif 是取均值之后的观测值,5ee2ea0e37f46_html_73edf4a1d5da5a99.gif 是均值期望。

  1. 数据白化。去除冗余信息,使数据之间有较低的相关性。

5ee2ea0e37f46_html_31c2f1300bf54a51.gif (3)

式中D为观测数据的协方差矩阵的特征矩阵,E为特征向量矩阵。

  1. 初始化一个随机矩阵并设置迭代误差。

  2. 牛顿迭代法,

5ee2ea0e37f46_html_63af31b483ebcb28.gif (4)

5ee2ea0e37f46_html_f0a920582ccce1cd.gif (5)

式中,w为混合矩阵的逆矩阵。

经过FASTICA后,为了得到R信号、G信号和B信号,再对FASTICA之后的信号进行相关性分析。

4.3 相关性分析

研究表明,在RGB信号未进行FASTICA之前,G通道信号能反映出心率信息[6]。因此,为了提取心率信号,需要用FASTICA之后得出的RGB信号与源G通道信号做相关性分析。在此,本文引用皮尔逊相关系数[7]来判断FASTICA后的分离信号与G通道信号的相关性;皮尔逊相关系数运用原点矩原理,作用是为确定两变量x与y之间的相关性程度,如表1所示,

5ee2ea0e37f46_html_6bd0657dad6186ee.gif (6)

式中,5ee2ea0e37f46_html_a008449ac2fbfb51.gif 表示5ee2ea0e37f46_html_451cd1f8bcc0f4f1.gif 的样本值,5ee2ea0e37f46_html_d4392f469200c7b.gif 表示5ee2ea0e37f46_html_c01347a6beddc515.gif 的样本值,5ee2ea0e37f46_html_451cd1f8bcc0f4f1.gif5ee2ea0e37f46_html_c01347a6beddc515.gif 式两个随机变量的均值。

表1 皮尔逊相关系数参数对比表

相关性

正值

负值

不相关

0.0~0.09

-0.09~0.0

中等相关

0.1~0.5

-0.5~-0.1

强相关

0.5~1.0

-1.0~-0..5

4.4滤波处理

为了突显出有用信号,本文采用巴特沃斯低通滤波[8]对与心率相关性最强的信号进行滤波。巴特沃斯滤波器的特点是通频带内的频率响应曲线最大限度平坦,没有起伏,而在阻频带则逐渐下降为零。心率信号频率范围在0.7~4Hz,所以滤波器的截至频率选择0.7Hz,其滤波函数如下,

5ee2ea0e37f46_html_75219b8aa513241d.gif (7)

式中,D0表示截至频率,n表示的是巴特沃斯滤波器的次数。

5 心率的提取

5.1 心率变异

经过信号处理之后,得到可以提取心率的G信号。要得到正确的心率变异(HRV)数据,就必须获取逐次心跳,而能准确的测量心率信号的R波波峰是获取HRV的关键,因此,需要进行R峰检测。本文通过双正条小波来检测R波。输入心电信号;用Mallat算法[9]对输入信号进行快速变换;分析R峰值与小波变换极大值对的零交叉点的关系。

心率变异的时域分析是根据R-R序列的一些统计指标来完成的。本文采用Marek[10]在1996提出的统计学方法计算出两个时域指标MEAN和SDNN来反应疲劳的。

  1. MEAN:全程记录中相邻R-R间期的平均值,反应心率变异的平均水平。(为了避免把R-R中的-当作数学公式中的减号使用,本文在算法中涉及的R-R都用RR表示)

MEAN=5ee2ea0e37f46_html_7a4f779b366c79de.gif (9)

  1. SDNN:正常R-R间期的标准差。资料显示,当SDNN<100ms为中度降低;SDNN≥100ms心率变异程度高;当SDNN<50ms为明显降低。

SDNN=5ee2ea0e37f46_html_d3f9793660d02a4e.gif (10)

5.2心率变异与疲劳的关系

通过心率变异的时域分析既可以判断出司机是否处于疲劳驾驶状态。本文以30s为间隔,计算出一分钟内的SDNN值。计算结果与表2对比得到如下结论,就可以判断驾驶员是否处于疲劳驾驶。

表2 SDNN指标

变异程度

变异程度低

变异程度中等

变异程度高

SDNN

<50ms

<100ms

>100ms

经过大量实验,选择出了三组数组如表3所示,

表3 疲劳程度检测

第一次SDNN值

第二次SDNN值

是否疲劳驾驶

44.4ms

38.8ms

正常驾驶

85.9ms

88.9ms

中度疲劳

124.3ms

155.0ms

重度疲劳

6 结果与分析

感兴趣区域提取(额头),本文利用Matlab自带的分类器提取感兴趣区域,得到图3a所示的额头区域;信号预处理,对信号进行分析计算。通过采集60s的人脸信息,经过MATLAB提取RGB混合信号,并用MEDFILT函数对RGB混淆信息进行中值滤波和处理,最终得到图3b所示的波形图;FASTICA,输入混合的观测信号,经MATLAB处理之后,得到原信号,如图3c所示;相关性分析,研究表明,在RGB信号未进行FASTICA之前,G通道信号能反映出心率信息。因此,把G通道信号与FASTICA之后的信号做相关性分析。经过相关性分析后,相关系数分别为-0.2616、-0.9291、-0.2600,根据皮尔逊相关系数参数对比表(表1),当a=|0--0.09|为不相关;当a=|0.1--0.5|为中等相关;当a=|0.5--1|为显著相关。得到第二组分离信号与G通道信号的相关度最高,因此,本文选择第二组分离信号做心率信号,如图3d所示;由于噪声的影响,本文对相关性分析后的信号做低通滤波处理得到图3e所示的心率信号图,易于之后做R波检测;通过双正条小波来检测R波,得到54个R波,53对R-R间期,图3f是R波检测的结果图;通过心率变异的时域分析既可以判断出司机是否处于疲劳驾驶状态。

画布 45

图3 心率检测

7 结论

疲劳驾驶严重危害人们的生命安全,为了减少这一事故的发生,本文提出了基于心率变异检测疲劳驾驶的研究。通过定位人脸的ROI(额头),采取与心率有关的信号,结合快速独立分量分析法(FASTICA),提取出RGB信号,进行相关性分析找出与心率相关的信号;最后进行小波变换提取R波,对心率信号进行心率变异分析,得出判断疲劳的指标,从而判断司机是否处于疲劳状态。

参考文献

  1. 公安部交通管理局.中华人民共和国道路交通事故统计年报(2016年度)[M].北京:公安部交通管理局,2017.

  2. 刘文玲,钱晓飞,裴军.基于关联规则的公安事故伤亡情况预测研究[J].控制工程,2016.23(9):1448-1453.

  3. Knipling R R,Wierwille W W.Vehicle-based drowsy driver detection:Current status and future prospects[C]. Moving Toward Deployment.Proceedings of the IVHS America Annual Meeting. 2 Volumes.1994.

  4. A.Hovhannisyan,A.Chilingarian.Median filtering algorithms for multichannel detectors[J].Advances in Space Research,2017,47(9).

  5. 叶瑜,沈继忠.基于独立分量分析的P300 脑电信号处理算法研究[J].中国学为论文全文数据库,2013.

  6. 王炳浩,魏建勤,吴永红.汽车驾驶员瞌睡状态脑电波特征的初步探索[J].汽车工程,2004,26(1):70-72.

  7. M.Z.Poh,D.J.McDuff,R.W.Picard.Advancements in contact,multipara physiological measurements using a webcam[J].IEEE Transactions on Biomedical Engineering,2011,58(1):7-11.

  8. 李钟慎.基于MATLAB设计巴特沃斯低通滤波器[J],信息技术.2003,27(3):49-50.

  9. Mallat Stephen,Hwang Wen-liang.Singularity detection and processing with wavelets [J].IEEE Transactions on Information Theory,1992,38(2):617-643.

[10]Marek M Heart rate variability:standards of measurement,physiological interpretation,and clinical use Circulation,1996,93:1043-1065.

作者简介:

方娇,女,生于1996年10月,贵州普定人,天津农学院,本科在读,物联网研究方向

指导老师:

杨雪,女,生于1988年11月,甘肃武山人,天津农学院,讲师,生物信号检测与处理和图像处理研究方向

基金项目】本文系天津农学院2018年度大学生实践创新训练计划项目,项目编号:201808003

本文系天津农学院天津市教委科研计划项目,项目编号:2018KJ184

9