一种基于眼睛睁闭状态的驾驶员疲劳状态识别方法与流程

文档序号:16505203发布日期:2019-01-05 08:59阅读:788来源:国知局
一种基于眼睛睁闭状态的驾驶员疲劳状态识别方法与流程

本发明涉及驾驶安全技术领域,更具体的是,本发明涉及一种基于眼睛睁闭状态的驾驶员疲劳状态识别方法。



背景技术:

现如今驾驶员疲劳检测技术越来越成熟,疲劳检测方法主要可分为三类:基于驾驶员行为特征、基于驾驶员生理参数和基于车辆行为特征的检测方法。依据驾驶员行为特征进行检测:驾驶员的行为特征主要包括面部特征变化和手部运动两方面。面部特征主要包括头部姿态、眼部状态和嘴部状态;手部运动主要包括操作方向盘的力度和旋转角度。驾驶员生理参数主要包括脑电图、心电图等等,但由于检测时驾驶员需佩戴相应的实验设备,对于操纵汽车有一定的干扰,故应用受到一定的限制。车辆行为主要通过检测方向盘转角、车辆速度和转弯角度等参数。

在现有的基于驾驶员面部特征变化进行疲劳判断中,通过嘴部进行判断时,主要根据嘴部的张开度进行识别,但当驾驶员说话或者笑的时候嘴巴张开度很大,会影响检测效果,精确度降低;基于头部姿态时,主要根据点头频率进行识别,需要建立头部的三维坐标,以身体某一点作为基点,还需要进行投影变换,而且有时疲劳时还会侧偏头,计算量大;基于眼睛闭合程度时,主要分为两种方法:眼球的黑色像素变换以及基于perclos准则进行眼睛的状态识别,上述三种方法只能进行疲劳判断,形式单一。



技术实现要素:

本发明设计开发了一种基于眼睛睁闭状态的驾驶员疲劳状态识别方法,能够对驾驶员驾驶视频进行分帧提取图像,并确定眼球面积以判定人眼睁闭状态,以根据驾驶疲劳系数确定驾驶员疲劳状态,结果更准确。

本发明提供的技术方案为:

一种基于眼睛睁闭状态的驾驶员疲劳状态识别方法,包括如下步骤:

步骤1:采集驾驶员视频并进行分帧处理,确定驾驶员脸部位置;

步骤2:采用差分法确定驾驶员眼睛位置,并基于harris算法对眼白和眼球分界处进行角点检测,确定露出眼球的面积s,当s≤0.35s0时,s0为人眼完全睁开时眼球的面积,则人眼处于闭眼状态;

步骤3:确定驾驶疲劳系数为:

当t0>0时,

当t0<0时,

当t0=0时,

其中,t0为环境温度,t为车内温度,α为降雨量,β为降雪量,g为紫外线强度,f(v)、g(v)为速度函数,v为车速,k为驾驶疲劳系数,e为自然对数的底数,n1为闭眼帧数,n为总数帧数;

步骤4:当k≤15%时,驾驶员处于清醒状态;

当15%<k≤50%时,驾驶员处于一级疲劳,应提醒驾驶员;

当k>50%时,驾驶员处于二级疲劳,应发出警报,若驾驶员无反应,则强制停车。

优选的是,所述步骤1中,采集驾驶员视频并提取每帧图像,预处理后基于adaboost算法确定驾驶员脸部位置。

优选的是,所述步骤2中,选取驾驶员上半部分脸部图像进行差分,并以没有运动目标的图像作为差分的背景图像。

优选的是,所述基于harris算法对眼白和眼球分界处进行角点检测包括:

计算每帧图像i(x,y)在x和y两个方向的梯度ix,iy,

式中,为卷积;

计算图像i(x,y)在x和y两个方向的乘积,

ixx=ix2,iyy=iy2,ixy=ix·iy;

使用高斯函数对ix2,iy2,ix·iy进行高斯加权,得到矩阵m的元素a、b、c,

式中,w为高斯函数;

计算每个像素的harris响应值r,并对小于某一阈值t的r置为零,

r={r:detm-α(tracem)2<t},

式中,detm为矩阵m的行列式,tracem为矩阵m的直迹,α为经验常数;

在邻域内进行非极大值抑制,并确定图像中的角点。

优选的是,所述露出眼球面积的确定包括:

人眼完全正睁开时,确定三个眼白和眼球分界处的角点,则人眼完全睁开时眼球的面积s0为:

式中,a,b,c分别为相邻角点之间的直线距离;

当眼睛有一定的闭合时,基于harris算法,确定上眼睑与眼球边缘交界处的点,此时眼球的面积s为:

式中,h为上眼睑与眼球边缘交界处的点之间的直线距离。

优选的是,当连续5帧图像测不到角点时,判断驾驶员处于睡眠状态。

本发明所述的有益效果:

(1)本发明所述的基于眼睛睁闭状态的驾驶员疲劳状态识别方法,能够对驾驶员驾驶视频进行分帧提取图像,并确定眼球面积以判定人眼睁闭状态,以根据驾驶疲劳系数确定驾驶员疲劳状态,结果更准确。

(2)本发明基于harris算法进行眼睛的检测,不仅可以判别驾驶员的状态,还可以判断驾驶员头部的运动方向,可以根据头部运动方向判断车是准备左转还是右转。而且在进行疲劳判断时只需计算黑色眼球的面积,计算量小,检测精度高,而且眼白和黑色眼球的灰度差很大,受外界干扰小,提高了检测的效果。

附图说明

图1为本发明所述基于眼睛睁闭状态的驾驶员疲劳状态识别方法的流程图。

具体实施方式

下面结合附图对本发明做进一步的详细说明,以令本领域技术人员参照说明书文字能够据以实施。

如图1所示,本发明提供一种基于眼睛睁闭状态的驾驶员疲劳状态识别方法,包括如下步骤:

步骤1:采集驾驶员视频并进行分帧处理,确定驾驶员脸部位置:

对于采集的驾驶员视频提取每帧图像,进行预处理,减少噪声的干扰和增强图像效果,采用adaboost算法进行人脸的定位。

步骤2:采用差分法确定驾驶员眼睛位置:

在运用差分法进行眼睛的定位时,为了减少计算量及提高精确度,根据五官的分布特点,截取上半部分人脸图像进行差分。当运动检测开始的时候选择一帧没有运动目标的图像作为差分的背景图像,出现运动目标的时候开始把当前图像和背景图像做差分,当运动目标检测结束时,更新背景图像,当下一个运动目标出现的时候再进行差分。差分的结果可以去除一部分噪声,而且可以去掉与运动目标检测无关的静止背景区域,采用背景图像更新机制,还可以在一定程度上适应背景和光线的变化。在进行差分处理之后,差分图像中只剩下了运动目标和部分噪声,此时再进行滤波去躁处理。

步骤3:并基于harris算法对眼白和眼球分界处进行角点检测,具体包括:

计算每帧图像i(x,y)在x和y两个方向的梯度ix,iy,

式中,为卷积;

计算图像i(x,y)在x和y两个方向的乘积,

ixx=ix2,iyy=iy2,ixy=ix·iy;

使用高斯函数对ix2,iy2,ix·iy进行高斯加权,得到矩阵m的元素a、b、c,

式中,w为高斯函数;

计算每个像素的harris响应值r,并对小于某一阈值t的r置为零,

r={r:detm-α(tracem)2<t},

式中,detm为矩阵m的行列式,tracem为矩阵m的直迹,α为经验常数;

在邻域内进行非极大值抑制,并确定图像中的角点(即局部极大值点),移动的小窗口越小,检测的角点越精确,故选择3*3大小。

当然,当连续5帧图像测不到角点时,判断驾驶员处于睡眠状态。

步骤4:确定露出眼球的面积s:

人眼完全正睁开时,确定三个眼白和眼球分界处的角点,则人眼完全睁开时眼球的面积s0为:

式中,a,b,c分别为相邻角点之间的直线距离;

当眼睛有一定的闭合时,基于harris算法,确定上眼睑与眼球边缘交界处的点,此时眼球的面积s为:

式中,h为上眼睑与眼球边缘交界处的点之间的直线距离。

当s≤0.35s0时,则人眼处于闭眼状态。

步骤5:确定驾驶疲劳系数为:

当t0>0时,

当t0<0时,

当t0=0时,

其中,t0为环境温度(℃),t为车内温度(℃),α为降雨量(m),β为降雪量(m),g为紫外线强度(0~15之间),f(v)、g(v)为速度函数,v为车速(km/h),k为驾驶疲劳系数,e为自然对数的底数,n1为闭眼帧数,n为总数帧数。

步骤6:当k≤15%时,驾驶员处于清醒状态;

当15%<k≤50%时,驾驶员处于一级疲劳,应提醒驾驶员;

当k>50%时,驾驶员处于二级疲劳,应发出警报,若驾驶员无反应,则强制停车。

本发明所述的基于眼睛睁闭状态的驾驶员疲劳状态识别方法,能够对驾驶员驾驶视频进行分帧提取图像,并确定眼球面积以判定人眼睁闭状态,以根据驾驶疲劳系数确定驾驶员疲劳状态,结果更准确。

本发明基于harris算法进行眼睛的检测,不仅可以判别驾驶员的状态,还可以判断驾驶员头部的运动方向,可以根据头部运动方向判断车是准备左转还是右转。而且在进行疲劳判断时只需计算黑色眼球的面积,计算量小,检测精度高,而且眼白和黑色眼球的灰度差很大,受外界干扰小,提高了检测的效果。

尽管本发明的实施方案已公开如上,但其并不仅仅限于说明书和实施方式中所列运用,它完全可以被适用于各种适合本发明的领域,对于熟悉本领域的人员而言,可容易地实现另外的修改,因此在不背离权利要求及等同范围所限定的一般概念下,本发明并不限于特定的细节和这里示出与描述的图例。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1