基于深度学习的驾驶员疲劳及分心行为检测算法研究

摘要

        最近几年来我国机动车的数量不断增多,驾驶人员数量的不断上涨导致交通问题发生的概率逐年增大。根据相关研究表明,驾驶员的操作行为不规范以及疲劳驾驶是引起事故发生的主要原因,因此对这两种行为进行及时的监控与预警变得越来越重要。现有的检测方法很难保证同时满足精准度与速度的需求,所以针对这两种问题本文研究内容如下。

        对于疲劳检测,首先从传统面部行为和基于深度学习检测算法研究入手,针对当前算法准确性与实时性不平衡的问题,将疲劳检测转化为目标检测的问题,最后根据疲劳判定指数检测驾驶员状态。针对驾驶员分心动作(抽烟、打电话、喝水)提出一种YOLOv5s卷积经网络的目标检测方法。

目  录

一、研究背景

二、疲劳检测算法

2.1 眼部疲劳检测

2.2 嘴部疲劳检测

​编辑三、驾驶员分心行为检测

3.1 YOLOv5s 网络结构

3.2 训练结果

四、系统界面展示

4.1 疲劳检测

4.2 分心检测

五、下载链接


一、研究背景

        随着我国经济的稳步发展,人民生活也在不断得改善,对汽车的需要也在不断提高。通过 2021 年的国民经济与社会发展统计数据显示,在 2021 年,我国汽车拥有量已经达到了 30151 万辆,这其中汽车和低速三轮车占了七百多万数量,与去年相比车辆增多了近 2064 万辆,私人汽车数量已经超过 26246 万辆,对比去年增加了 1852 万辆。民用轿车数量也已经达到了 16739 万辆,其中私人轿车数量超过了 15732 万辆,对比去年上升达到了 1059 万辆。汽车数量的不断提高也日益带来了严重的交通问题。如图所示。

二、疲劳检测算法

        疲劳检测方法主要是通过提取驾驶人员面部特征或车辆特征信息来建立疲劳检测模型,对数据进行统计与计算后设定相应阈值后对驾驶人员状态进行判定。

        疲劳检测往往通过驾驶员的面部特征来进行模型的建立,而与疲劳相关最明显的特征就是异常睁闭眼以及嘴部的打哈欠两种行为特征,还有一种就是瞌睡点头的方法。不过瞌睡点头等驾驶员头部姿态晃动情况很容易与驾驶员其他行为区分开,误检率特别高。所以本文集中在嘴部以及眼部的特征的提取上来建立疲劳检测模型。首先介绍眼部以及嘴部状态判别指标。

2.1 眼部疲劳检测

        2016 年 Soukupova T 提出了基于眼部特征点的纵横比(EAR)判定概念。通过相关人脸模型或环境库提取 68 个人脸关键点后,对于每只眼睛都会有 6 个关键点,如图的眼部关键点位置,p1,p2,p3,p4,p5 和 p6 是对应眼部的关键点。

        根据上图可知,EAR 值变化趋近于 0.215 之间,所以 EAR 阈值设定为 0.215。所以可以根据实际 EAR 值与阈值进行比较,从而判断在当前时间段驾驶员的眼睛状态。如图所示驾驶员眼部 EAR 值为 0.13,此时驾驶员眼睛状态为闭眼状态。

2.2 嘴部疲劳检测

        嘴部纵横比与眼睛相似,全称为 Mouth Aspect Ratio,简称 MAR,嘴部六个主要参考点如图所示,嘴部的参考阈值也是基于关键点得到的。根据上嘴唇和下嘴唇关键点的坐标信息变化来确定 MAR 值,当张嘴时 MAR 趋近于某一值,闭嘴时 MAR 分子为0。

        本文采用视频进行测试,在检测到嘴部纵横比大于 0.60 时判断为张嘴,将时间和帧数相结合来判断疲劳,经查阅资料,驾驶员行驶过程连续张嘴帧数达到15 帧即可判定驾驶员处于哈欠状态,发出哈欠预警,结果如瞌睡状态预警所示,驾驶员此时 MAR 为 0.63。

三、驾驶员分心行为检测

        驾驶员在驾驶过程中从事一些影响驾驶员注意力,与正常行驶无关的活动称为分心驾驶。目前美国安全局将分心驾驶分为四个类别,分别指影响驾驶员的视觉、听觉、行为、认知的注意力分散行为。为了提高驾驶员行为检测方法的多样性,本章内容将主要针对驾驶员打电话、抽烟、喝水等三类听觉、视觉、行为分心展开研究。

3.1 YOLOv5s 网络结构

        YOLO 作为单阶段目标检测的经典算法,开创了单阶段目标检测先河,解决了过去深度学习目标检测网络层数深、应用差、速度低的问题。自 2015 年被提出后不断的被完善改良,在公开数据集上不断刷新记录。YOLOv2 采用anchorbox 先验框,并且主干网络替换为 Darknet-19,YOLOv3 引入特征金字塔进行多尺度检测并改进主干网络使其更加轻量化,历经了多个版本后 YOLO 经过不断地创新改良,解决了以往速度快精度低的问题。YOLOv5s 是目前最快的网络,模型所占体积仅有 14MB,下面 YOLOv5 网络进行介绍和分析。

3.2 训练结果

        网络训练结果主要观察精度和召回率波动情况,波动起伏较小则证明训练效果较好。通过下图所示的曲线波动结果来看,曲线平稳上升,说明训练效果是良好的。

        部分检测结果显示:

四、系统界面展示

4.1 疲劳检测

        当检测到驾驶员每一帧睁眼、闭眼、张嘴、闭嘴行为时,后端实时计算驾驶员 PERCLOS 值,时间设置为 150 帧判定一次。当 PERCLOS 的值超过 0.45 时驾驶员会被判定处于疲劳状态,右侧会给予红色字体预警,右侧下角边框内实时刷新驾驶员状态信息。

4.2 分心检测

        检测到驾驶员打电话、吸烟等驾驶分心行为,右侧会给予提示处于分心状态,并给于红色字体预警。

五、下载链接

        若您想获得博文中涉及的实现完整全部程序文件, 完整代码下载,请添加下方公众号!!!

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值