一种基于人眼状态的驾驶员疲劳检测方法及系统转让专利

申请号 : CN201710430629.3

文献号 : CN107292251B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 徐文平韩守东李倩倩

申请人 : 湖北天业云商网络科技有限公司

摘要 :

本发明公开了一种基于人眼状态的驾驶员疲劳检测方法及系统,结合人脸检测、人脸跟踪,确定驾驶员图像的眼部初步矩形范围,对于眼部初步矩形范围做预处理,利用轮廓查找和矩形拟合定位眼睛精确矩形范围图像,根据垂直投影判断一帧驾驶员图像中驾驶员是睁眼还是闭眼,根据连续的驾驶员图像中驾驶员均处于闭眼状态的连续帧数判断驾驶员眨眼还是眼睛持续闭合,并计算眨眼频率,从而判断驾驶员是否处于疲劳状态。有益效果:本发明对于驾驶员是否戴了眼镜以及光照强度的不同选择对眼睛初步矩形范围图像进行不同预处理,使得本发明的疲劳检测方法更加准确,鲁棒性更高;对于不同光照条件下都适用,实时性更高,检测速度更快。

权利要求 :

1.一种基于人眼状态的驾驶员疲劳检测方法,其特征在于,包括:

S1、实时获取驾驶员图像,并对驾驶员图像进行人脸检测,获取包含人脸的人脸矩形框,获取人脸矩形框中的眼睛初步矩形范围图像以及所述眼睛初步矩形范围图像在人脸矩形框中的坐标;

S2、获取一帧驾驶员图像的人脸矩形框后,对于后续驾驶员图像进行人脸跟踪,获取后续驾驶员图像的人脸矩形框;

S3、对于后续驾驶员图像的人脸矩形框,根据所述眼睛初步矩形范围图像在人脸矩形框中的坐标,获取后续驾驶员图像的所述眼睛初步矩形范围图像;

S4、对于S3获取的眼睛初步矩形范围图像先后进行裁剪和二值化的预处理;

S5、对S4中二值化后的所述眼睛初步矩形范围图像进行轮廓查找,并利用矩形拟合精确定位眼睛精确矩形范围图像,获取所述眼睛精确矩形范围图像在人脸矩形框中的坐标;

S6、根据所述眼睛精确矩形范围图像在人脸矩形框中的坐标从人脸矩形框中提取非二值化的眼睛精确矩形范围图像,并将提取的眼睛精确矩形范围图像进行二值化后形成睁闭眼判断图像,将睁闭眼判断图像向X轴进行垂直投影,通过垂直投影中黑色与白色像素的比例判断一帧驾驶员图像中驾驶员是睁眼还是闭眼;

S7、统计连续的驾驶员图像中驾驶员均处于闭眼状态的连续帧数,根据连续处于闭眼状态的帧数所处范围判断驾驶员是眨眼还是眼睛持续闭合,并计算眨眼频率;

S8、如果眨眼频率处于设定的正常范围之外,则判断驾驶员处于疲劳状态,如果驾驶员眼睛持续闭合,则判断驾驶员处于疲劳状态;其中,在步骤S4中:判断驾驶员图像中驾驶员是否戴有眼镜,根据判断结果选择裁剪区域的大小对所述眼睛初步矩形范围图像进行裁剪,再根据获取驾驶员图像时光照强度的不同选择不同平均灰度阈值对裁剪后的所述眼睛初步矩形范围图像进行二值化。

2.如权利要求1所述的基于人眼状态的驾驶员疲劳检测方法,其特征在于,步骤S1中:利用带有红外补光功能的红外摄像头获取驾驶员图像,驾驶室内光照强度高于设定光强阈值时,获取驾驶员的彩色图像,驾驶室内光照强度低于设定光强阈值时,开启红外补光,并获取驾驶员的红外黑白图像。

3.如权利要求1所述的基于人眼状态的驾驶员疲劳检测方法,其特征在于,步骤S1中:利用Adaboost算法训练分类器对驾驶员图像进行人脸检测,获取到包含人脸的人脸矩形框,对获取到的人脸矩形框内部图像进行stasm特征点定位,从而识别眼睛特征点,获取大于眼睛特征点范围的预设大小矩形范围的图像为所述眼睛初步矩形范围图像。

4.如权利要求1所述的基于人眼状态的驾驶员疲劳检测方法,其特征在于,步骤S2中:利用KCF算法对于后续驾驶员图像进行人脸跟踪,对每一帧驾驶员图像人脸跟踪后均产生评价指标数据用以评估跟踪效果,当评价指标数据低于设定阈值时,调整跟踪策略。

5.一种基于人眼状态的驾驶员疲劳检测系统,其特征在于,包括:

人脸检测模块:实时获取驾驶员图像,并对驾驶员图像进行人脸检测,获取包含人脸的人脸矩形框,获取人脸矩形框中的眼睛初步矩形范围图像以及所述眼睛初步矩形范围图像在人脸矩形框中的坐标;

人脸跟踪模块:获取一帧驾驶员图像的人脸矩形框后,对于后续驾驶员图像进行人脸跟踪,获取后续驾驶员图像的人脸矩形框;

眼睛初步范围图像获取模块:对于后续驾驶员图像的人脸矩形框,根据所述眼睛初步矩形范围图像在人脸矩形框中的坐标,获取后续驾驶员图像的眼睛初步矩形范围图像;

预处理模块:对于眼睛初步范围图像获取模块中获取的眼睛初步矩形范围图像先后进行裁剪和二值化的预处理;

眼睛精确范围图像获取模块:对预处理模块中二值化后的所述眼睛初步矩形范围图像进行轮廓查找,并利用矩形拟合精确定位眼睛精确矩形范围图像,获取所述眼睛精确矩形范围图像在人脸矩形框中的坐标;

睁眼闭眼判断模块:根据所述眼睛精确矩形范围图像在人脸矩形框中的坐标从人脸矩形框中提取非二值化的眼睛精确矩形范围图像,并将提取的眼睛精确矩形范围图像进行二值化后形成睁闭眼判断图像,将睁闭眼判断图像向X轴进行垂直投影,通过垂直投影中黑色与白色像素的比例判断一帧驾驶员图像中驾驶员是睁眼还是闭眼;

眨眼持续闭眼判断模块:统计连续的驾驶员图像中驾驶员均处于闭眼状态的连续帧数,根据连续处于闭眼状态的帧数所处范围判断驾驶员是眨眼还是眼睛持续闭合,并计算眨眼频率;

疲劳判断模块:如果眨眼频率处于设定的正常范围之外,则判断驾驶员处于疲劳状态,如果驾驶员眼睛持续闭合,则判断驾驶员处于疲劳状态;其中,预处理模块中:判断驾驶员图像中驾驶员是否戴有眼镜,根据判断结果选择裁剪区域的大小对眼睛初步矩形范围图像进行裁剪,再根据获取驾驶员图像时光照强度的不同选择不同平均灰度阈值对裁剪后的所述眼睛初步矩形范围图像进行二值化。

6.如权利要求5所述的基于人眼状态的驾驶员疲劳检测系统,其特征在于,人脸检测模块中:利用带有红外补光功能的红外摄像头获取驾驶员图像,驾驶室内光照强度高于设定光强阈值时,获取驾驶员的彩色图像,驾驶室内光照强度低于设定光强阈值时,开启红外补光,并获取驾驶员的红外黑白图像。

7.如权利要求5所述的基于人眼状态的驾驶员疲劳检测系统,其特征在于,人脸检测模块中:利用Adaboost算法训练分类器对驾驶员图像进行人脸检测,获取到包含人脸的人脸矩形框,对获取到的人脸矩形框内部图像进行stasm特征点定位,从而识别眼睛特征点,获取大于眼睛特征点范围的预设大小矩形范围的图像为眼睛初步矩形范围图像。

8.如权利要求5所述的基于人眼状态的驾驶员疲劳检测系统,其特征在于,人脸跟踪模块中:利用KCF算法对于后续驾驶员图像进行人脸跟踪,对每一帧驾驶员图像人脸跟踪后均产生评价指标数据用以评估跟踪效果,当评价指标数据低于设定阈值时,调整跟踪策略。

说明书 :

一种基于人眼状态的驾驶员疲劳检测方法及系统

技术领域

[0001] 本发明涉及计算机视觉处理技术领域,尤其是涉及一种基于人眼状态的驾驶员疲劳检测方法及系统。

背景技术

[0002] 疲劳检测(Fatigue Detecting)是通过监测人体各种疲劳特征,及时发现疲劳状态并给出预警信号,涉及到生理学、心理学、图像处理、运动跟踪、模式识别等多个领域,是一个复杂而又同时兼具理论与现实价值的研究课题。在较长时间的驾驶过程中,驾驶人的疲劳程度逐渐积蓄,由浅入深。假如可以利用技术手段对驾驶人的精祌状态进行实时检测,一旦有疲劳迹象出现,就即刻发出预警,那么安全行车系数将会得到有效的提高。
[0003] 驾驶人疲劳状态的检测目前有较多研究的方法,按检测的类别可大致分为基于驾驶人生理信号的检测、基于驾驶人操作行为的检测、基于车辆状态信息的检测和基于驾驶人生理反应特征的检测等方法。其中,基于驾驶人生理反应特征的检测方法为非接触式检测,利用机器视觉来判断疲劳,测量过程不会对驾驶人的正常驾驶行为造成干扰,具有非常大的发展潜力。但是现有的检测分析人眼状态从而实现驾驶员疲劳状态检测的方法精确性不够、实时性不强。

发明内容

[0004] 本发明的目的在于克服上述技术不足,提出一种基于人眼状态的驾驶员疲劳检测方法及系统,解决现有技术中的上述技术问题。
[0005] 为达到上述技术目的,本发明的技术方案提供一种基于人眼状态的驾驶员疲劳检测方法,包括:
[0006] S1、实时获取驾驶员图像,并对驾驶员图像进行人脸检测,获取包含人脸的人脸矩形框,获取人脸矩形框中的眼睛初步矩形范围图像以及眼睛初步矩形范围图像在人脸矩形框中的坐标;
[0007] S2、获取一帧驾驶员图像的人脸矩形框后,对于后续驾驶员图像进行人脸跟踪,获取后续驾驶员图像的人脸矩形框;
[0008] S3、对于后续驾驶员图像的人脸矩形框,根据眼睛初步矩形范围图像在人脸矩形框中的坐标,获取后续驾驶员图像的眼睛初步矩形范围图像;
[0009] S4、对于S3获取的眼睛初步矩形范围图像先后进行裁剪和二值化的预处理;
[0010] S5、对S4中二值化后的眼睛初步矩形范围图像进行轮廓查找,并利用矩形拟合精确定位眼睛精确矩形范围图像,获取眼睛精确矩形范围图像在人脸矩形框中的坐标;
[0011] S6、根据眼睛精确矩形范围图像在人脸矩形框中的坐标从人脸矩形框中提取非二值化的眼睛精确矩形范围图像,并将提取的眼睛精确矩形范围图像进行二值化后形成睁闭眼判断图像,将睁闭眼判断图像向X轴进行垂直投影,通过垂直投影中黑色与白色像素的比例判断一帧驾驶员图像中驾驶员是睁眼还是闭眼;
[0012] S7、统计连续的驾驶员图像中驾驶员均处于闭眼状态的连续帧数,根据连续处于闭眼状态的帧数所处范围判断驾驶员是眨眼还是眼睛持续闭合,并计算眨眼频率;
[0013] S8、如果眨眼频率处于设定的正常范围之外,则判断驾驶员处于疲劳状态,如果驾驶员眼睛持续闭合,则判断驾驶员处于疲劳状态。
[0014] 本发明还提供一种基于人眼状态的驾驶员疲劳检测系统,包括:
[0015] 人脸检测模块:实时获取驾驶员图像,并对驾驶员图像进行人脸检测,获取包含人脸的人脸矩形框,获取人脸矩形框中的眼睛初步矩形范围图像以及眼睛初步矩形范围图像在人脸矩形框中的坐标;
[0016] 人脸跟踪模块:获取一帧驾驶员图像的人脸矩形框后,对于后续驾驶员图像进行人脸跟踪,获取后续驾驶员图像的人脸矩形框;
[0017] 眼睛初步范围图像获取模块:对于后续驾驶员图像的人脸矩形框,根据眼睛初步矩形范围图像在人脸矩形框中的坐标,获取后续驾驶员图像的眼睛初步矩形范围图像;
[0018] 预处理模块:对于眼睛初步范围图像获取模块中获取的眼睛初步矩形范围图像先后进行裁剪和二值化的预处理;
[0019] 眼睛精确范围图像获取模块:对预处理模块中二值化后的眼睛初步矩形范围图像进行轮廓查找,并利用矩形拟合精确定位眼睛精确矩形范围图像,获取眼睛精确矩形范围图像在人脸矩形框中的坐标;
[0020] 睁眼闭眼判断模块:根据眼睛精确矩形范围图像在人脸矩形框中的坐标从人脸矩形框中提取非二值化的眼睛精确矩形范围图像,并将提取的眼睛精确矩形范围图像进行二值化后形成睁闭眼判断图像,将睁闭眼判断图像向X轴进行垂直投影,通过垂直投影中黑色与白色像素的比例判断一帧驾驶员图像中驾驶员是睁眼还是闭眼;
[0021] 眨眼持续闭眼判断模块:统计连续的驾驶员图像中驾驶员均处于闭眼状态的连续帧数,根据连续处于闭眼状态的帧数所处范围判断驾驶员是眨眼还是眼睛持续闭合,并计算眨眼频率;
[0022] 疲劳判断模块:如果眨眼频率处于设定的正常范围之外,则判断驾驶员处于疲劳状态,如果驾驶员眼睛持续闭合,则判断驾驶员处于疲劳状态。
[0023] 与现有技术相比,本发明的有益效果包括:本发明对于驾驶员是否戴了眼镜进行检测,并根据是否戴眼镜对眼睛初步矩形范围图像进行不同裁剪,根据光照强度的不同选择不同平均灰度阈值对眼睛初步矩形范围图像进行二值化,使得本发明的疲劳检测方法更加准确,鲁棒性更高;对于不同光照条件下都适用,实时性更高,检测速度更快。

附图说明

[0024] 图1是本发明提供的一种基于人眼状态的驾驶员疲劳检测方法流程图;
[0025] 图2是本发明提供的一种基于人眼状态的驾驶员疲劳检测系统结构框图;
[0026] 图3是本发明的人脸矩形框和眼睛初步矩形范围图像示意图;
[0027] 图4是对于眼镜检测区域进行边缘检测后的效果图;
[0028] 图5是红外补光和未开启红外补光时睁眼、闭眼的垂直投影过程示意图。
[0029] 附图中:1、基于人眼状态的驾驶员疲劳检测系统,11、人脸检测模块,12、人脸跟踪模块,13、眼睛初步范围图像获取模块,14、预处理模块,15、眼睛精确范围图像获取模块,16、睁眼闭眼判断模块,17、眨眼持续闭眼判断模块,18、疲劳判断模块。

具体实施方式

[0030] 为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
[0031] 本发明提供了一种基于人眼状态的驾驶员疲劳检测方法,包括:
[0032] S1、实时获取驾驶员图像,并对驾驶员图像进行人脸检测,获取包含人脸的人脸矩形框,获取人脸矩形框中的眼睛初步矩形范围图像以及眼睛初步矩形范围图像在人脸矩形框中的坐标;
[0033] S2、获取一帧驾驶员图像的人脸矩形框后,对于后续驾驶员图像进行人脸跟踪,获取后续驾驶员图像的人脸矩形框;
[0034] S3、对于后续驾驶员图像的人脸矩形框,根据眼睛初步矩形范围图像在人脸矩形框中的坐标,获取后续驾驶员图像的眼睛初步矩形范围图像;
[0035] S4、对于S3获取的眼睛初步矩形范围图像先后进行裁剪和二值化的预处理;
[0036] S5、对S4中二值化后的眼睛初步矩形范围图像进行轮廓查找,并利用矩形拟合精确定位眼睛精确矩形范围图像,获取眼睛精确矩形范围图像在人脸矩形框中的坐标;
[0037] S6、根据眼睛精确矩形范围图像在人脸矩形框中的坐标从人脸矩形框中提取非二值化的眼睛精确矩形范围图像,并将提取的眼睛精确矩形范围图像进行二值化后形成睁闭眼判断图像,将睁闭眼判断图像向X轴进行垂直投影,通过垂直投影中黑色与白色像素的比例判断一帧驾驶员图像中驾驶员是睁眼还是闭眼;
[0038] S7、统计连续的驾驶员图像中驾驶员均处于闭眼状态的连续帧数,根据连续处于闭眼状态的帧数所处范围判断驾驶员是眨眼还是眼睛持续闭合,并计算眨眼频率;
[0039] S8、如果眨眼频率处于设定的正常范围之外,则判断驾驶员处于疲劳状态,如果驾驶员眼睛持续闭合,则判断驾驶员处于疲劳状态。
[0040] 本发明所述的基于人眼状态的驾驶员疲劳检测方法,步骤S1中:
[0041] 利用带有红外补光功能的红外摄像头获取驾驶员图像,红外摄像头设有光照强度感应器,光照强度感应器感测到驾驶室内光照强度高于设定光强阈值时,不开启红外补光功能,获取驾驶员的彩色图像,光照强度感应器感测到驾驶室内光照强度低于设定光强阈值时,自动开启红外补光,并获取驾驶员的红外黑白图像,使得在不同光照强度下,均可获取到清晰驾驶员图像并做分析处理,适应性强,适用性广。
[0042] 本发明所述的基于人眼状态的驾驶员疲劳检测方法,步骤S1中:
[0043] 利用Adaboost算法训练分类器对驾驶员图像进行人脸检测,获取到包含人脸的人脸矩形框,对获取到的人脸矩形框内部图像进行stasm特征点定位,从而识别眼睛特征点,获取大于眼睛特征点范围的预设大小矩形范围的图像为眼睛初步矩形范围图像;
[0044] 如图3所示,眼睛初步矩形范围图像为包括眼睛特征点和眉毛特征点的图像,为眼睛的一个大致区域图像,也就是对眼睛的一个初步定位,人脸矩形框中的眼睛初步矩形范围图像有两个,分别为左眼的眼睛初步矩形范围图像和右眼的眼睛初步矩形范围图像,左眼和右眼的眼睛初步矩形范围图像大小一致,处于同一水平位置。
[0045] 本发明所述的基于人眼状态的驾驶员疲劳检测方法,步骤S2中:
[0046] 利用KCF(High-speed tracking with kernelized correlation filters)算法对于后续驾驶员图像进行人脸跟踪,对每一帧驾驶员图像人脸跟踪后均产生评价指标数据用以评估跟踪效果,当评价指标数据低于设定阈值时,调整跟踪策略;
[0047] 对每一帧的驾驶员图像进行KCF人脸跟踪后均产生一评价指标数据peak_value,peak_value值为0到1的小数,值越大代表跟踪结果的置信度越高,跟踪效果越好;正脸情况下的peak_value值较大,非正脸(转向、点头等)情况下的peak_value值较小;针对评价指标数据peak_value预先设定了一个固定阈值,当评价指标数据大小高于预设阈值时,判断评价指标数据对应的一帧驾驶员图像为正脸,当评价指标数据大小低于或等于预设阈值时,判断评价指标数据对应的一帧驾驶员图像为非正脸;当跟踪的一帧驾驶员图像为非正脸时,则不再继续进行人脸跟踪,如果继续跟踪,由于非正脸情况下的漂移最为严重,会导致后续所有帧的驾驶员图像人脸跟踪错误,此时应该每间隔5帧对后续帧驾驶员图像进行人脸检测,判断能否获取包含人脸的人脸矩形框,如果获取到了包含人脸的人脸矩形框,说明这一帧驾驶员图像是正脸(非正脸的驾驶员图像是检测不到人脸矩形框的),开始进行人脸跟踪,否则,继续间隔5帧对后续帧驾驶员图像进行人脸检测。
[0048] 本发明所述的基于人眼状态的驾驶员疲劳检测方法,步骤S4中:
[0049] 判断驾驶员图像中驾驶员是否戴有眼镜,根据判断结果选择裁剪区域的大小对眼睛初步矩形范围图像进行裁剪,再根据获取驾驶员图像时光照强度的不同选择不同平均灰度阈值对裁剪后的眼睛初步矩形范围图像进行二值化;
[0050] 判断驾驶员图像中驾驶员是否戴有眼镜的方法:确定眼镜检测区域,眼镜检测区域是以眼睛初步矩形范围图像的高度为高度,以人脸矩形框宽度为宽度,眼镜检测区域覆盖左眼和右眼的眼睛初步矩形范围图像;确定镜框检测区域,镜框检测区域位于眼镜检测区域内,具体的是处于两眼之间、鼻梁上方,根据stasm特征点定位可以确定两眼之间、鼻梁上方的位置从而可以确定镜框检测区域;
[0051] 如图4所示,对于眼镜检测区域中的图像进行边缘检测,在没有戴眼镜的情况下,镜框检测区域几乎没有边缘信息,在佩戴眼镜的情况下,镜框检测区域含有丰富的边缘信息(不考虑透明的眼镜架),因为佩戴眼镜时,两眼之间、鼻梁上方的镜框检测区域含有眼镜架,通过统计边缘检测后镜框检测区域中每一列白色像素的个数,若存在连续的n列白色像素的个数都为0,则可以认为一帧驾驶员图像驾驶员没戴眼镜,否则认为戴了眼镜,n要实际情况选取合适的值。
[0052] 本发明所述的基于人眼状态的驾驶员疲劳检测方法,步骤S4中:
[0053] 由于左眼的左侧和右眼的右侧容易带来光照的影响,左右眼的眼睛初步矩形范围图像在裁剪时要区别对待,分别裁掉左眼左侧和右眼右侧的部分区域,并且在驾驶员佩戴眼镜时,扩大裁剪范围,尽量减少镜框的干扰。
[0054] 本发明所述的基于人眼状态的驾驶员疲劳检测方法,步骤S4中:
[0055] 平均灰度阈值为裁剪后眼睛初步矩形范围图像的平均灰度乘以系数m,根据不同的光照强度,决定是否开启红外补光,从而获取驾驶员的彩色图像或者红外黑白图像,在驾驶员图像是彩色或者红外黑白图像时,采用不同的系数m,从而实现依据获取驾驶员图像时光照强度的不同,采用不同的平均灰度阈值对裁剪后的眼睛初步矩形范围图像进行二值化;如果眼睛初步矩形范围图像的某个像素点灰度值小于平均灰度阈值时,设置该像素点灰度值为255,否则设置该像素点灰度值为0。
[0056] 本发明所述的基于人眼状态的驾驶员疲劳检测方法,步骤S5中:
[0057] 由于眼睛初步矩形范围图像为包括眼睛特征点和眉毛特征点的图像,S4中眼睛初步矩形范围图像二值化后,由于眼睛和眉毛颜色均深于其他部分,眼睛和眉毛二值化后为白色,其他部分为黑色,对S4中二值化后的眼睛初步矩形范围图像进行轮廓查找,找到所有白色的区域,再根据眼睛和眉毛的几何关系识别出上面的轮廓是眉毛,下面的轮廓是眼睛,确定眼睛轮廓后,利用矩形拟合来定位眼睛的精确位置图像为眼睛精确矩形范围图像,获取眼睛精确矩形范围图像在人脸矩形框中的坐标。
[0058] 本发明所述的基于人眼状态的驾驶员疲劳检测方法,步骤S6中:
[0059] 将提取的眼睛精确矩形范围图像进行二值化后形成睁闭眼判断图像,二值化方法是采用平均灰度阈值的方法二值化,平均灰度阈值为提取的眼睛精确矩形范围图像的平均灰度乘以系数m,在驾驶员图像是彩色或者红外黑白图像时,采用不同的系数m,如果眼睛精确矩形范围图像的某个像素点灰度值小于平均灰度阈值时,设置该像素点灰度值为255,否则设置该像素点灰度值为0;
[0060] 如图5,二值化完成后,将睁闭眼判断图像向X轴进行垂直投影,具体的:如果睁闭眼判断图像原来的驾驶员图像是彩色图像,则将睁闭眼判断图像向X轴进行垂直投影,统计睁闭眼判断图像每一列黑色像素的个数,分析各列黑色像素个数之间是否发生突变,如果发生突变,则认为睁闭眼判断图像中驾驶员睁眼,否则认为驾驶员闭眼;衡量是否发生突变的方法为:用垂直X轴的4条直线将垂直投影划等分为5个区域,计算每个区域中各列黑色像素个数的平均值,计算5个平均值两两之间的差值,如果存在一差值大于差值阈值,则认为各列黑色像素个数之间发生突变,否则认为不发生突变;
[0061] 如果睁闭眼判断图像原来的驾驶员图像是红外图像,则将睁闭眼判断图像向X轴进行垂直投影,统计睁闭眼判断图像每一列白色像素的个数,如果发现每一列白色像素的个数均为0,则认为睁闭眼判断图像中驾驶员闭眼,否则认为驾驶员睁眼;
[0062] 如果发现每一列白色像素的个数均为0,则认为睁闭眼判断图像中驾驶员闭眼的原因是,经过多次试验验证,在红外环境下,闭眼时,眼睛精确矩形范围图像二值化后的睁闭眼判断图像为全黑,将睁闭眼判断图像向X轴进行垂直投影,睁闭眼判断图像每一列白色像素的个数均为0。
[0063] 本发明所述的基于人眼状态的驾驶员疲劳检测方法,步骤S7中:
[0064] 统计连续的驾驶员图像中驾驶员均处于闭眼状态的连续帧数,并根据帧数与时长的关系,例如摄像头采集驾驶员图像为60帧/秒,计算连续帧数对应的连续时长,当连续时长处于0.2-0.4秒,认为驾驶员眨眼,并计算眨眼频率,眨眼频率根据一段时长内驾驶员眨眼次数来计算,当连续时长超过2秒,认为驾驶员眼睛持续闭合。
[0065] 本发明所述的基于人眼状态的驾驶员疲劳检测方法,步骤S8中:
[0066] 眨眼频率过低或者过高,都表明疲劳程度的加深,眨眼频率过低眼睛睁开的状态持续时间较长,说明驾驶员目光呆滞,处于走神的状态,预示疲劳状态的显现;眨眼频率过快,说明驾驶员眼睛干涩或者在努力使自己保持清醒,表明疲劳状态发生;如果眨眼频率处于设定的正常范围之外,则判断驾驶员处于疲劳状态,如果驾驶员眼睛持续闭合,则判断驾驶员处于疲劳状态。
[0067] 本发明还提供一种基于人眼状态的驾驶员疲劳检测系统1,包括:
[0068] 人脸检测模块11:实时获取驾驶员图像,并对驾驶员图像进行人脸检测,获取包含人脸的人脸矩形框,获取人脸矩形框中的眼睛初步矩形范围图像以及眼睛初步矩形范围图像在人脸矩形框中的坐标;
[0069] 人脸跟踪模块12:获取一帧驾驶员图像的人脸矩形框后,对于后续驾驶员图像进行人脸跟踪,获取后续驾驶员图像的人脸矩形框;
[0070] 眼睛初步范围图像获取模块13:对于后续驾驶员图像的人脸矩形框,根据眼睛初步矩形范围图像在人脸矩形框中的坐标,获取后续驾驶员图像的眼睛初步矩形范围图像;
[0071] 预处理模块14:对于眼睛初步范围图像获取模块中获取的眼睛初步矩形范围图像先后进行裁剪和二值化的预处理;
[0072] 眼睛精确范围图像获取模块15:对预处理模块中二值化后的眼睛初步矩形范围图像进行轮廓查找,并利用矩形拟合精确定位眼睛精确矩形范围图像,获取眼睛精确矩形范围图像在人脸矩形框中的坐标;
[0073] 睁眼闭眼判断模块16:根据眼睛精确矩形范围图像在人脸矩形框中的坐标从人脸矩形框中提取非二值化的眼睛精确矩形范围图像,并将提取的眼睛精确矩形范围图像进行二值化后形成睁闭眼判断图像,将睁闭眼判断图像向X轴进行垂直投影,通过垂直投影中黑色与白色像素的比例判断一帧驾驶员图像中驾驶员是睁眼还是闭眼;
[0074] 眨眼持续闭眼判断模块17:统计连续的驾驶员图像中驾驶员均处于闭眼状态的连续帧数,根据连续处于闭眼状态的帧数所处范围判断驾驶员是眨眼还是眼睛持续闭合,并计算眨眼频率;
[0075] 疲劳判断模块18:如果眨眼频率处于设定的正常范围之外,则判断驾驶员处于疲劳状态,如果驾驶员眼睛持续闭合,则判断驾驶员处于疲劳状态。
[0076] 本发明所述的基于人眼状态的驾驶员疲劳检测系统1,人脸检测模块11中:
[0077] 利用带有红外补光功能的红外摄像头获取驾驶员图像,驾驶室内光照强度高于设定光强阈值时,获取驾驶员的彩色图像,驾驶室内光照强度低于设定光强阈值时,开启红外补光,并获取驾驶员的红外黑白图像。
[0078] 本发明所述的基于人眼状态的驾驶员疲劳检测系统1,人脸检测模块11中:
[0079] 利用Adaboost算法训练分类器对驾驶员图像进行人脸检测,获取到包含人脸的人脸矩形框,对获取到的人脸矩形框内部图像进行stasm特征点定位,从而识别眼睛特征点,获取大于眼睛特征点范围的预设大小矩形范围的图像为眼睛初步矩形范围图像。
[0080] 本发明所述的基于人眼状态的驾驶员疲劳检测系统1,人脸跟踪模块12中:
[0081] 利用KCF算法对于后续驾驶员图像进行人脸跟踪,对每一帧驾驶员图像人脸跟踪后均产生评价指标数据用以评估跟踪效果,当评价指标数据低于设定阈值时,调整跟踪策略。
[0082] 本发明所述的基于人眼状态的驾驶员疲劳检测系统1,预处理模块14中:
[0083] 判断驾驶员图像中驾驶员是否戴有眼镜,根据判断结果选择裁剪区域的大小对眼睛初步矩形范围图像进行裁剪,再根据获取驾驶员图像时光照强度的不同选择不同平均灰度阈值对裁剪后的眼睛初步矩形范围图像进行二值化。
[0084] 与现有技术相比,本发明的有益效果包括:本发明对于驾驶员是否戴了眼镜进行检测,并根据是否戴眼镜对眼睛初步矩形范围图像进行不同裁剪,根据光照强度的不同选择不同平均灰度阈值对眼睛初步矩形范围图像进行二值化,使得本发明的疲劳检测方法更加准确,鲁棒性更高;对于不同光照条件下都适用,实时性更高,检测速度更快;本发明相比于其它使用眼睛区域内黑色像素的个数或者利用眼部拟合椭圆的宽高比来判断眨眼的方法具有更高的准确率和鲁棒性。
[0085] 以上所述本发明的具体实施方式,并不构成对本发明保护范围的限定。任何根据本发明的技术构思所做出的各种其他相应的改变与变形,均应包含在本发明权利要求的保护范围内。