基于机器学习的疲劳检测及预警系统设计
2019-08-15曾心远张正华韩雪胡新盛周立言吕允博
曾心远 张正华 韩雪 胡新盛 周立言 吕允博
摘 要:据统计,疲劳驾驶是交通事故发生的主要原因之一,因此本系统采用一种基于机器学习的方法来判定驾驶员的疲劳状态。系统通过脑电采集模块、心率采集模块、图像采集模块检测驾驶员的生理参数并传输至车载处理模块进行一系列数据预处理,再利用机器学习训练好的逻辑回归模型综合判定驾驶员的疲劳状态,最后将疲劳判定结果传输至预警模块进行座椅振动及声光分级预警。在满足实时性及准确度的要求下,多种预警方式能够有效地对驾驶员进行疲劳预警。
关键词:机器学习;疲劳检测;疲劳预警;逻辑回归模型;声光预警;PERCLOS算法
中图分类号:TP39文献标识码:A文章编号:2095-1302(2019)07-00-03
0 引 言
随着中国经济和社会的持续快速发展,我国机动车总数急剧增加。截至2018年底,我国机动车保有量达3.22亿辆。车辆的剧增也伴随着意外交通事故的频发。据我国交通部门统计,因疲劳驾驶造成的交通事故约占总交通事故的20%、特大交通事故的40%以及交通死亡人数的83%,因此,实时检测疲劳驾驶并有效预警十分重要[1]。
目前,基于驾驶员生理参数[1]、驾驶员行为[2]与车辆特征的检测方法[3]较为常见。文献[4]中Brandy等人通过为驾驶员穿戴一件放置有BioHarness3生物传感器的背心(内嵌无线生理信号传感器)来测量心率、呼吸速率等生理信号。文献[5-6]中,通过计算机视觉技术检测人眼闭合状态以判定驾驶员是否处于疲劳状态,采用的PERCLOS算法将眼睑闭合度作为驾驶疲劳的度量指标,PERCLOS值越大,疲劳驾驶程度越大。
由于驾驶员身体差异、实际驾驶环境差异、道路差异,所以依靠单信号源判断疲劳状态存在漏检、错检的可能性,判定结果并不可靠。因此本文通过机器学习的方法,依靠大量驾驶员疲劳驾驶及正常驾驶的心率、脑电、人眼数据,训练疲劳判定模型,并以此模型进行实时判定,以提高疲劳判定的准确性。
本系统主要包括图像采集模块、心率采集模块、脑电采集模块、车载处理模块、预警模块。各采集模块分别采集人眼图片、心率信号、脑电信号并传输至车载處理模块进行一系列数据预处理,利用机器学习训练后的逻辑回归模型判定人的疲劳状态,并根据模型判断结果控制预警模块进行相应强度的预警。图1所示为系统架构图。
1 理论基础
疲劳驾驶主要表现为驾驶员在驾驶过程中出现打瞌睡、走神、心率变快、频繁眨眼等行为,并导致操作失误或驾驶能力丧失[7]。
1.1 心率、脑电疲劳计算及PERCLOS算法
表征疲劳的心电信号时域指标主要有R-R间期,即心脏每次搏动间期。对一段时间内的R-R间期取平均值,再除以相应的系数即可求得心脏在1 min内跳动的次数[8]即为所得
2 系统模块检测疲劳的实现方法
2.1 脑电采集模块
该模块使用非侵入式脑电采集装置,由前额脑电极、耳夹电极、TGAM芯片和蓝牙从机模块组成。
前额脑电极、耳夹电极采集待测对象的α波、β波、
θ波脑电信号并传输至TGAM芯片进行滤波、放大、模数转换、傅里叶变换、功率谱计算等处理,利用式(2)计算待测对象的脑电疲劳值r,并通过蓝牙从机模块传输至搭载了蓝牙主机模块的控制处理模块。
2.2 心率采集模块
心律采集模块使用手环佩戴式装置,由光学心率传感器、DA14580芯片组成。
光学心率传感器测量血液的透光率数据,并传输至DA14580芯片。DA14580芯片对透光率数据进行滤波、除噪、模数转换等预处理,求取R-R间期平均值后,利用式(1)求取待测对象的心率h,并通过芯片内置蓝牙模块传输至控制处理模块。
2.3 图像采集模块
图像采集模块使用摄像头采集驾驶员的行为动作,并通过USB传输至控制处理模块。
2.4 控制处理模块
控制处理模块选用树莓派3B+作为控制处理芯片,接收脑电疲劳值r、心率h及行为视频,处理步骤如下:
(1)每100 ms截取一次图像,以尽可能捕捉驾驶员的眨眼情况;
(2)利用OpenCV计算机库中已有的目标检测方法,进行基于Harr特征的人脸识别及人眼识别并截取图片;
(3)对人眼图片进行预处理,包括中值滤波、拉普拉斯锐化、灰度化、二值化;
(4)以二值化人眼图片中黑眼球的面积来表示人眼的闭合程度,并利用计时函数记下当前人眼闭合程度的时间;
(5)利用式(3)计算PERCLOS指数。
3 实验结果及分析
本文选用训练集及验证集外的驾驶员进行本模型泛化能力的测试,同时也可反映出本文训练模型的准确性。
对驾驶员采用主观评价法和客观测量法进行测试,得到表2所列驾驶员生理参数及模型评估结果。一方面,驾驶员会主观评估自己的状态;另一方面,各模块实时检测其心率、脑电疲劳值及人眼PERCLOS指数,并依靠模型进行综合评估。脑电疲劳值r对其进行了数据归一化处理,范围为0~100,值越低,驾驶员的专注度越差;心率h的范围为50~120,人在疲劳时,心率加快;当PERCLOS指数f在0.4左右时,驾驶员处于疲劳状态,值越大表明闭眼时间占总时间的比例越高。综合评估的范围为0~1,越靠近1,驾驶员越清醒。
4 结 语
本系统综合了待测对象的脑电信号、心率及人眼状态,可以准确判断出被测对象的疲劳程度,且准确率达92%以上。相比较采用单一信源判定疲劳状态,本系统所使用的方法准确性更高,且本文设计的系统已基本满足对实时性的要求。
参 考 文 献
[1]蔡馥鸿,张正华,刘金龙,等.基于TGAM脑波模块的疲劳驾驶预警系统设计[J].信息化研究,2016,42(4):76-78.
[2]万蔚,王振华,王保菊.基于驾驶行为的疲劳驾驶判别算法研究
[J].道路交通与安全,2016,16(6):21-24.
[3]黄皓.基于驾驶操作及车辆状态的疲劳驾驶行为检测研究[D].南京:东南大学,2016.
[4] WARWICK B, SYMONS N, CHEN X, et al. Detecting driver drowsiness using wireless wearables [C]// In: IEEE, International Conference on Mobile Ad Hoc and Sensor Systems. Hawaii,2015:585-588.
[5] ZHANG F, SU J, GENG L,et al. Driver fatigue detection based on eye state recognition [C]// International Conference on Machine Vision and Information Technology. Singapore,2017:105-110.
[6] MANDAL B, LI L, WANG G S, et al. Towards detection of bus driver fatigue based on robust visual analysis of eye state [J].IEEE transactions on intelligent transportation systems,2017(3):1-13.
[7]李力.基于CNNs和LSTM的駕驶员疲劳和分心状态识别研究[D].长沙:湖南大学,2018.
[8]周锐.基于面部多视觉信息融合的驾驶员疲劳状态的识别[D].哈尔滨:哈尔滨工程大学,2018.
[9]吴绍斌,高利,王刘安.基于脑电信号的驾驶疲劳检测研究[J].北京理工大学学报,2009,29(12):1072-1075.
[10]洪志阳,王猛飞,侯东强,等.基于机器视觉的驾驶员疲劳检测方法[J].物联网技术,2018,8(7):78-79.