一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于深度学习与熵结合的疲劳驾驶检测方法与流程

2022-03-22 23:02:34 来源:中国专利 TAG:


1.本发明涉及深度学习领域,尤其涉及一种基于深度学习与熵结合的疲劳驾驶检测方法。


背景技术:

2.近年来,随着我国居民生活水平的不断提高,人们的物质生活和精神生活有了很大的改善,尤其是交通出行方面的改善,私家车的数量不断提高。据公安部2020年统计,全国机动车保有量达3.72亿辆,其中汽车2.81亿辆。车辆的增多代表着驾驶员的数量增多。据统计,按照全中国14亿人口来计算,相当于每5个人中就有1人拥有汽车。随着汽车数量以及驾驶员数量的不断增多,近年来发生的交通事故也逐年增多,其中因疲劳驾驶导致的交通事故占据很大一部分。为了降低因疲劳驾驶而引发交通事故的概率,如何实时检测驾驶员的疲劳状态就变得越来越重要。
3.驾驶员在正常驾车时,因为需要不停的观察路况,所以,驾驶员需要不停地转动自己的头部。相反,如果驾驶员正处在疲劳状态,昏昏欲睡,自然就不会去时刻关注路况,所以头部的转动频率就会减弱,甚至不会主动通过转头来获得周围信息,也就导致了车祸发生的概率急剧增加。因此,在行车时,头部运动状态就是判断驾驶员是否处于疲劳状态的一个重要的指标。
4.由此,有一个概念可以应用到疲劳驾驶检测领域
‑‑‘
熵’。熵,是热力学中表征物质状态的参量之一,其物理意义是体系混乱程度的度量,体系内越混乱,所对应的熵值越大,相反,熵值越小。由此可推断:驾驶员在驾驶车辆时,正常状态与疲劳状态头部运动轨迹所蕴含的信息量是不同的。如果用一个点来抽象表示驾驶员的头部,在一定时间内,分别将正常驾驶状态和疲劳驾驶状态的这个点的运动轨迹呈现出来,那么前者的轨迹是比后者混乱的。所以,正常驾驶状态下的头部运动的信息熵比疲劳驾驶状态下的大。
5.随着深度学习的飞速发展,imperial college london等发表的《retinaface:single-stage dense face localisation in the wild》论文中提出了一种人脸识别网络
‑‑
retinaface,在wider face数据集的基础上,手动标注了5个坐标点,分别是左眼、右眼、鼻尖、左嘴角、右嘴角。在wider face数据集的验证集上的准确率为96.9%(easy),96.1%(medium),91.8%(hard),在测试集上的准确率96.3%(easy),95.6%(medium),91.4%(hard)。在保证了准确率的前提下,论文中还提及该网络可以实现在cpu上实时检测。
6.目前,基于机器视觉的疲劳检测方法大致分为以下几种:
7.(1)单纯应用图像处理的检测算法:此方法虽然速度快,但是对光照条件要求较高,无法适应光线复杂的情况,鲁棒性较差。
8.(2)基于人眼的状态判断是否处于疲劳状态:1)传统的机器学习方法虽然速度不慢,鲁棒性强,但是无法判别眼睛小的人群的人眼的开闭程度,会一直认为是闭眼状态。2)基于深度学习的疲劳检测,精度得到了很大的提升,但是无法实现实时监测。


技术实现要素:

9.本发明的主要目的在于解决上述检测方法存在的问题,提出一种疲劳驾驶检测方法:一种基于深度学习与熵结合的疲劳驾驶检测方法。本发明采取上述的retina face网络,选用网络配置中的mobile net 0.25作为主干特征提取网络,论文中提到该配置可以在cpu上实现实时监测。本发明通过记录鼻尖的运动轨迹,来作为判断驾驶员的疲劳状态的依据。由于鼻尖的辨识度很高的特殊性,本发明使用的神经网络可以准确地定位出鼻尖的位置,该方法用在疲劳驾驶检测领域,可以准确并且实时地判断出驾驶员当前的疲劳状态,从而采取进一步措施来降低因疲劳而引发的交通事故的发生率。为了实现上述目标,本发明采用如下技术方案:
10.首先,通过摄像头获取被检测者的视频,然后将其按帧读取送进神经网络,得到输出结果,尤其需要记录鼻尖的位置坐标。实验记录n帧视频的鼻尖位置坐标,结合熵的计算公式,得到n帧的鼻尖运动的信息熵,然后将得到的熵值与预先设置好的阈值进行比较,从而判断出当前驾驶员的疲劳状态。
附图说明
11.图1为本发明方法的实施例流程图
12.图2为神经网络输出结果
13.图3为模拟驾驶员疲劳状态时的鼻尖运动散点图
14.图4为模拟驾驶员正常状态时的鼻尖运动散点图
具体实施方式
15.下面将结合附图和实施例对本发明做进一步详细说明。
16.图1为本发明方法的实施例流程图。如图1所示,本实施例包含以下步骤:
17.s1:通过摄像头获取待测者的驾驶状态视频。
18.s2:首先读取步骤s1中获取的视频的一帧图像,并将其传进神经网络,得到如图2所示的输出结果,并且记录鼻尖位置坐标。
19.s3:重复步骤s2的操作100次,即得到100个鼻尖位置坐标点,作为一组数据进行分析。
20.s4:对步骤s3得到的100个鼻尖位置的坐标进行以下处理:
21.s4-1:计算步骤s3中所述的100个点的中心位置o的坐标其中:
[0022][0022][0023]
s4-2:计算步骤s3中所述的每个点(xi,yi)到中心点o的距离di,公式为
[0024][0025]
s4-3:因为车辆行驶过程中必不可免会出现非人为原因的小幅度抖动情况,为了避免这种小幅度抖动对结果产生影响,需要对步骤s4-2中计算出的结果di进行进一步处理:令di等于di/10所得结果的整数部分。
[0026]
s4-4:对驾驶员两种状态的视频分别进行上述所有步骤,最后,将步骤s4-3中得到
的结果输出出来,得到以下列出两组数据,分别是a组(疲劳状态){0:89,1:8,2:4,3:1},b组(正常状态){1:58,2:15,3:6,7:5,4:4,5:4,6:3,9:3,0:2,8:2}。a组数据对应散点图如图3所示,b组数据对应散点图如图4所示。下面以a组数据为例进行解释:在步骤s3中所述的100个点中,距离中心点o的距离小于10个像素点的有89个点,距离在10
‑‑
20个像素点之间的有8个点,距离在20
‑‑
30个像素点之间的有4个点,距离在30
‑‑
40个像素点之间的有1个点。共计102个点,多出来的两个点(左下角和右上角)是为了固定住横轴和纵轴的范围,目的是使画出来的坐标点的散点图看起来更加直观,易于分辨,(在实际应用中不需要固定坐标轴)。
[0027]
s5:利用信息熵公式,分别对步骤s4-4中得到的两组数据进行计算。
[0028]
s5-1:信息熵公式:h(xi)=-p(xi)log2p(xi),其中,h(xi)是步骤s4-4中所述数据中的一个元素xi所对应的熵值;p(xi)是元素xi在这组数据中出现的概率。
[0029]
s5-2:利用步骤s5-1中公式对步骤s4-4中的两组数据进行计算可得:a组数据对应的熵值h=0.7083049953439524,b组数据对应的熵值h=2.2116856641811267。根据计算结果可以得出如下结论:疲劳状态下的鼻尖点的运动信息熵小于正常状态下的鼻尖点的运动信息熵。
[0030]
在实际应用中,根据实际情况,合理设置阈值t,将步骤s5-2中计算所得到的结果h与阈值t进行对比,如果h≥t,则此时驾驶员处于正常状态;如果h<t,则此时驾驶员处于疲劳状态。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献