一种检测疲劳驾驶的方法和装置与流程

文档序号:11951830阅读:340来源:国知局
一种检测疲劳驾驶的方法和装置与流程

技术领域

本发明涉及电子领域,尤其涉及一种检测疲劳驾驶的方法和装置。



背景技术:

生活中,驾驶员疲劳驾驶的情况时有发生,危及交通安全。

现有技术中,对驾驶员疲劳驾驶的检测不够准确,经常导致误报警,给驾驶员带来困扰。

为了解决检测驾驶员疲劳驾驶中出现的各种问题,需要对现有技术中的缺陷进行改进,同时使整体的驾驶员驾驶的安全性提高,使交通事故减少。



技术实现要素:

基于以上问题,本发明提出一种检测疲劳驾驶的方法和装置,通过从拍摄装置获取人脸图像,对人脸图像中的特征部位进行识别,得到特征部位图像,若连续多个特征部位图像中特征部位的特征值满足预设条件,则判定为疲劳驾驶的方式,能够准确的判断出驾驶员是否为疲劳驾驶,从而提高了驾驶的安全性,使检测疲劳驾驶的成本降低。

一方面,本发明提出一种检测疲劳驾驶的方法,包括:

获取人脸图像步骤,包括:从拍摄装置获取人脸图像;

识别特征部位步骤,包括:对所述人脸图像中的特征部位进行识别,得到特征部位图像;

判断步骤,包括:若连续多个所述特征部位图像中所述特征部位的状态满足预设条件,则判定为疲劳驾驶。

此外,所述识别特征部位步骤中所述特征部位包括眼睛和/或嘴。

此外,所述特征部位为眼睛,所述识别特征部位步骤具体包括:对所述人脸图像中的眼睛进行识别,得到左眼睛图像、右眼睛图像或两只眼睛图像。

此外,所述判断步骤具体包括:若连续多个左眼睛图像、右眼睛图像或两只眼睛图像中眼睛的上边缘位置与下边缘位置之间的绝对差值小于预设第一差值,则判断为疲劳驾驶;

或所述判断步骤具体包括:计算左眼睛图像、右眼睛图像或两只眼睛图像中眼睛的上边缘位置与下边缘位置之间的眼睛绝对差值,计算眼球的上边缘位置与下边缘位置之间的眼球绝对差值,若连续多个眼球绝对差值与眼睛绝对差值之间的比例小于预设比例值,则判断为疲劳驾驶;

或所述判断步骤具体包括:若连续多个左眼睛图像、右眼睛图像或两只眼睛图像中眼睛为闭合状态,则判断为疲劳驾驶。

此外,所述特征部位为嘴,所述识别特征部位步骤具体包括:对所述人脸图像中的嘴进行识别,得到嘴图像。

此外,所述判断步骤具体包括:若连续多个嘴图像中嘴的上边缘位置与下边缘位置之间的绝对差值大于预设第二差值,则判断为疲劳驾驶;

或所述判断步骤具体包括:若连续多个嘴图像中的嘴为张开状态,则判断为疲劳驾驶。

此外,所述识别特征部位步骤中对所述人脸图像中的特征部位进行识别,具体包括:通过滑窗图像对所述人脸图像中的所述特征部位进行搜索,识别出所述特征部位。

此外,所述判断步骤之前还包括样本训练步骤,包括:对人脸样本进行训练、对非人脸样本进行训练、对眼睛样本进行训练、对非眼睛样本进行训练、对眼睛睁开样本进行训练、对眼睛闭合样本进行训练、对嘴样本进行训练、对非嘴样本进行训练、对嘴张开样本进行训练和/或对嘴闭合样本进行训练。

此外,所述判断步骤之后,还包括提示步骤,包括:若判断为疲劳驾驶,则通过声音或图像的方式进行提示。

另一方面,本发明提出一种检测疲劳驾驶的装置,包括:

获取人脸图像模块,用于:从拍摄装置获取人脸图像;

识别特征部位模块,用于:对所述人脸图像中的特征部位进行识别,得到特征部位图像;

判断模块,用于:若连续多个所述特征部位图像中所述特征部位的特征值满足预设条件,则判定为疲劳驾驶。

采用上述技术方案,具有以下有益效果:

通过从拍摄装置获取人脸图像,对人脸图像中的特征部位进行识别,得到特征部位图像,若连续多个特征部位图像中特征部位的特征值满足预设条件,则判定为疲劳驾驶的方式,能够准确的判断出驾驶员是否为疲劳驾驶,从而提高了驾驶的安全性,使检测疲劳驾驶的成本降低。

附图说明

图1是根据本发明一个实施例的检测疲劳驾驶的方法的流程图;

图2是根据本发明另一个实施例的获取的人脸的灰度图像示意图;

图3是根据本发明另一个实施例的对人脸进行截取后的示意图;

图4是根据本发明另一个实施例的识别的人眼的示意图;

图5是根据本发明另一个实施例的检测疲劳驾驶的方法的流程图;

图6是根据本发明另一个实施例的检测疲劳驾驶的装置的框图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

参照图1,本发明提出一种检测疲劳驾驶的方法,包括:

获取人脸图像步骤S001,包括:从拍摄装置获取人脸图像;

识别特征部位步骤S002,包括:对人脸图像中的特征部位进行识别,得到特征部位图像;

判断步骤S003,包括:若连续多个特征部位图像中特征部位的特征值满足预设条件,则判定为疲劳驾驶。

获取人脸图像步骤S001中,拍摄装置为可连续拍照的装置,如摄像头。人脸图像为驾驶员的人脸图像,从拍摄装置连续的获取驾驶员的人脸图像。由安装在驾驶员前方的摄像头获取得到路面的实况图。

由于驾驶员的座位固定,并且驾驶员需要系安全带,所以驾驶员的位置基本固定不变,即驾驶员的人脸的位置变化不大,所以可以采用对驾驶员的人脸进行识别的方式,判断驾驶员是否疲劳驾。

识别特征部位步骤S002中,对人脸图像先进行图像处理,具体如下:

将人脸图像转换为灰度图像,图像库中的转换函数为cvCvtColor,然后对灰度图像进行去噪处理,图像库中的去噪函数为cvSmooth。

对灰度图像中的人脸进行粗略检测,可以采用图像库函数cvHaarDetectObjects对人脸进行粗略检测。

然后,通过训练样本去除掉非驾驶员的人脸图像,如训练样本为model_face,通过model_face去掉非驾驶员的人脸图像,保留同训练样本相似度高的人脸图像。

支持向量机,因其英文名为support vector machine,故一般简称SVM。

在机器学习中,支持向量机(SVM,还支持矢量网络)是与相关的学习算法有关的监督学习模型,可以分析数据,识别模式,用于分类和回归分析。给定一组训练样本,每个标记为属于两类,一个SVM训练算法建立了一个模型,分配新的实例为一类或其他类,使其成为非概率二元线性分类。一个SVM模型的例子,如在空间中的点,映射,使得所述不同的类别的例子是由一个明显的差距是尽可能宽划分的表示。新的实施例则映射到相同的空间中,并预测基于它们落在所述间隙侧上属于一个类别。

除了进行线性分类,支持向量机可以使用所谓的核技巧,它们的输入隐含映射成高维特征空间中有效地进行非线性分类。

将保留下的人脸图像中非人脸的部分截取掉,只保留人脸的部分。在其中的一个实施例中,将截取后的人脸图像缩放到分辨率为100x100,以标准尺寸存储人脸图像,方便后续的特征部位识别,特征部位比较。

在其中的一个实施例中,当人脸图像的光照不均时,可采用归一化的方法处理,使图像中不同部位的图像的亮度差减少,使亮度均匀。

对截取后的人脸图像进行特征部位识别,特征部位包括:眼睛或嘴。可采用滑窗算法对特征部位进行识别。

滑窗算法 (sliding window algorithm)中滑窗的尺寸为12x32,使滑窗在截取后的人脸图像中进行搜索,得到900个滑动窗口,对900个滑动窗口分别进行分类,根据眼睛训练样本model_eye对分类中的图像计算得分,得分最高的滑窗为眼睛图像。根据右眼睛的眼睛训练样本得到右眼图像img_eye_right, 根据左眼睛的眼睛训练样本得到左眼图像img_eye_left。

用眼睛睁开样本和眼睛闭合样本model_open_close识别眼睛图像中的眼睛是睁开还是闭合。

举例:人脸图像灰度处理后的灰度图像如图2所示,将灰度图像中非人脸部分去掉,保持人脸部分的图像如图3所示,通过滑窗算法识别出的眼睛图像如图4所示。

同样,可以采用嘴训练样本对嘴进行识别。

判断步骤S003中,若连续多个特征部位图像中特征部位的状态满足预设条件,则判定为疲劳驾驶。当连续多张人脸图像中眼睛处于闭合状态,那么认为疲劳驾驶。

在其中的一个实施例中,检测截取后人脸图像中眼睛的轮廓,若判断眼睛的上边缘位置与下边缘位置之间的绝对差值小于预设第一差值,则判断为疲劳驾驶。若连续多个嘴图像中嘴的上边缘位置与下边缘位置之间的决定差值大于预设第二差值,则判断为疲劳驾驶。

例如,一秒中获取30帧人脸图像,那么当眼睛闭合的时间持续达到3秒钟,则判断驾驶员为疲劳驾驶。或当检测到嘴持续保持张开状态3秒,则判断驾驶员为疲劳驾驶。

在其中的一个实施例中,若人脸图像发生畸变,则对人脸图像进行校正处理。若检测到人脸图像发生旋转,则可以通过检测到的两只眼睛之间的连线与水平线之间的角度值,来校正图像,使图像处于水平。

通过从拍摄装置获取人脸图像,对人脸图像中的特征部位进行识别,得到特征部位图像,若连续多个特征部位图像中特征部位的特征值满足预设条件,则判定为疲劳驾驶的方式,能够准确的判断出驾驶员是否为疲劳驾驶,从而提高了驾驶的安全性,使检测疲劳驾驶的成本降低。

在其中的一个实施例中,识别特征部位步骤中特征部位包括眼睛和/或嘴。通过眼睛的闭合时间判断驾驶员是否在闭眼睡觉。通过嘴的张开时间判断驾驶员是否在打哈欠。通过这两个特征部位能够准确的判断驾驶员是否为疲劳驾驶。

在其中的一个实施例中,特征部位为眼睛,识别特征部位步骤具体包括:对人脸图像中的眼睛进行识别,得到左眼睛图像、右眼睛图像或两只眼睛图像。通过滑窗算法对人脸图像中的眼睛进行识别。

在其中的一个实施例中,判断步骤具体包括:若连续多个左眼睛图像、右眼睛图像或两只眼睛图像中眼睛的上边缘位置与下边缘位置之间的绝对差值小于预设第一差值,则判断为疲劳驾驶;

或判断步骤具体包括:计算左眼睛图像、右眼睛图像或两只眼睛图像中眼睛的上边缘位置与下边缘位置之间的眼睛绝对差值,计算眼球的上边缘位置与下边缘位置之间的眼球绝对差值,若连续多个眼球绝对差值与眼睛绝对差值之间的比例小于预设比例值,则判断为疲劳驾驶;

或判断步骤具体包括:若连续多个左眼睛图像、右眼睛图像或两只眼睛图像中眼睛为闭合状态,则判断为疲劳驾驶。

采用检测眼睛的轮廓图像中眼睛的上边缘位置与下边缘位置之间的绝对差值是否小于预设第一差值,来判断驾驶员是否眯眼或者闭眼,从而判断驾驶员是否疲劳驾驶。

因为不同人的人眼的大小不同,所以还可以通过判断眼球绝对差值与眼睛绝对差值之间的比例是否小于预设比例值的方式,判断驾驶员是否为疲劳驾驶。从而解决因为人眼不同,而采用同样的标准对人眼进行判断带来的误判。

采用与眼睛训练样本匹配的方式,得到眼睛的状态,若眼睛为闭合状态,则判断为疲劳驾驶。

在其中的一个实施例中,特征部位为嘴,识别特征部位步骤具体包括:对人脸图像中的嘴进行识别,得到嘴图像。

在其中的一个实施例中,判断步骤具体包括:若连续多个嘴图像中嘴的上边缘位置与下边缘位置之间的绝对差值大于预设第二差值,则判断为疲劳驾驶;

或判断步骤具体包括:若连续多个嘴图像中的嘴为张开状态,则判断为疲劳驾驶。

检测嘴的轮廓,若嘴的上边缘位置与下边缘位置之间的绝对差值大于预设第二差值,则判断为疲劳驾驶。当嘴在打哈欠的时候,嘴会持续张开一段时间,所以通过对嘴的检测可以准确判断驾驶员是否为疲劳驾驶。

在其中的一个实施例中,识别特征部位步骤中对人脸图像中的特征部位进行识别,具体包括:通过滑窗图像对人脸图像中的特征部位进行搜索,识别出特征部位。通过滑窗图像配合训练样本方法,使识别出的特征部位更加准确。

在其中的一个实施例中,判断步骤之前还包括样本训练步骤,包括:对人脸样本进行训练、对非人脸样本进行训练、对眼睛样本进行训练、对非眼睛样本进行训练、对眼睛睁开样本进行训练、对眼睛闭合样本进行训练、对嘴样本进行训练、对非嘴样本进行训练、对嘴张开样本进行训练和/或对嘴闭合样本进行训练。

在其中的一个实施例中,判断步骤之后,还包括提示步骤,包括:若判断为疲劳驾驶,则通过声音或图像的方式进行提示。通过对驾驶员进行提示,使驾驶员可以解除睡意,或者选择休息后再驾驶,从而可以避免危险驾驶。

参照图5,说明本发明一个实施例的流程。

步骤S501,从摄像装置连续获取人脸图像;

步骤S502,对人脸图像进行灰度处理、去噪声处理;

步骤S503,将人脸图像中非人脸部分去掉,只保留人脸部分;

步骤S504,采用滑窗算法,配合训练样本,对人脸图像中的特征部位:眼睛和嘴进行识别;

步骤S505,判断眼睛和嘴的状态,若持续3秒钟眼睛的状态为闭合状态或嘴的状态为张开状态,则判断驾驶员为疲劳驾驶;

步骤S506,通过声音对驾驶员进行提示。

参照图6,本发明还提出一种检测疲劳驾驶的装置,包括:

获取人脸图像模块601,用于:从拍摄装置获取人脸图像;

识别特征部位模块602,用于:对人脸图像中的特征部位进行识别,得到特征部位图像;

判断模块603,用于:若连续多个特征部位图像中特征部位的特征值满足预设条件,则判定为疲劳驾驶。

以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。

最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

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