APP下载

MATLAB人脸识别在驾驶员疲劳检测中的应用研究

2016-10-21王田丰

电子技术与软件工程 2016年9期
关键词:应用

王田丰

【关键词】MATLAB人脸识别 驾驶员疲劳检测 应用

随着社会经济的发展,越来越多的机动汽车被人们所使用。但近年来,因疲劳驾驶引发的交通事故也在不断增多,从而引发了有关人员对驾驶员疲劳状态监视技术的研究。而MATLAB人脸识别技术是一种能够实现人脸特征提取的方法,能够实现人脸的识别和状态判断。因此,有必要对该技术在驾驶员疲劳检测中的应用问题展开研究,从而更好的利用该技术实现驾驶员的疲劳状态监测。

1 MATLAB人脸识别技术分析

MATLAB人脸识别其实就是利用MATLAB平台进行编程运算,然后通过利用图像处理和模式识别技术从静态或动态场景中进行人脸特征的提取,从而根据已知人脸样本库数据进行人脸的验证或识别。在人脸识别的过程中,需要先进行人脸图像的摄取,然后通过图像预处理进行人脸检测与定位。在此基础上,通过对人脸图像进行归一化处理,就可以完成人脸特征提取和识别,并且最终进行验证或识别结果的输出。而MATLAB作为高性能的数值计算和可视化数学软件,具有较为强大的图示能力和数值计算能力,同时其基本元素为矩阵,所以可以用于进行图像处理。通过将样本图像输入到预先编制的识别程序中,就可以完成对输入图像的色彩转换处理、图像消噪处理、图像尺寸归一化处理。在此基础上,利用Adaboost、LBP和LDA等人脸识别算法,就可以对图像进行训练,并且产生特征脸和平均脸。最后,经过程序判断,就可以进行识别结果的输出。

2 MATLAB人脸识别在驾驶员疲劳检测中的应用

在驾驶员疲劳检测中,应用MATLAB人脸识别技术需要使用基于Haar特征的级联Adaboost检测算法进行人脸识别。具体来讲,就是在完成驾驶员人脸图像检测后,利用Gabor滤波和梯度增强边缘信息等算法完成图像处理,然后利用形态学和二值化处理方法进行眼睛、嘴部位置的确定。在此基础上,则可以利用SVM进行线性分類器的训练,然后进行眼睛开闭状态的判断。同时,还需要通过计算对驾驶员的嘴部开闭状态进行判断,然后根据眼睛在垂直方向上的位置变化确定驾驶员头部位置。最后,经过一段时间的统计,则可以根据眼睛状态、嘴部状态和头部位置对驾驶员最终疲劳状态进行判别。

2.1 驾驶员眼睛定位及状态判别

在判定驾驶员眼睛位置时,需使用Gabor滤波器进行眼睛边缘信息增强。如果图像边缘特征方向垂直于滤波器核函数方向,滤波器则会发出强烈响应。根据人脸图像尺寸,则可以进行大小适合的滤波窗口的选择。根据面部器官的边缘长度,则能够得到滤波器的波长。所以,根据人的面部器官的几何特征,就可以粗略进行眼睛位置的确定。而对分割出的图像进行二值化处理和简单的形态学处理,则能够使眼睛位置得到准确定位。使用LBP这种用于描述图像局部纹理特征的算子,则可以对驾驶员眼睛特征进行描述。而根据线性SVM的判断,则可以得知眼睛的开闭状态。此外,为了使眼睛状态判别的准确性和鲁棒性得到提升,并且使眼睛特征具有旋转不变性,还要使用三层金字塔LBP描述眼部特征,从而完成眼部特征的准确提取。

2.2 驾驶员嘴部定位及状态判别

在对驾驶员嘴部位置进行确定时,同样可以根据人的脸部几何特征和边缘信息进行嘴部定位。但不同于眼睛,嘴部边缘信息较为复杂,除了使用滤波器进行边缘信息增强,还要对滤波后的图像进行原图像梯度图像的叠加,才能获得完整的边缘信息。在图像信息得到增强后,则可以根据几何特征对嘴部进行粗略定位,然后将分割出的图像进行二值化和形态学处理。采取这两种图像处理措施,则能够使其他干扰得到消除,从而实现嘴部二值图像的精确分割。在对嘴部状态进行判别时,需要对嘴部面积和宽高比进行分析,以确认嘴部的开闭状态。此时,需要进行嘴部面积阈值样本T1和宽高比阈值样本T2的设定,然后通过将嘴部图像的像素个数与阈值样本相比较,则能够对嘴部状态进行判别。比如在像素个数小于T1并大于T2的情况下,就可以判断嘴部处在闭合状态。

2.3 驾驶员头部定位及疲劳状态判别

在对驾驶员头部位置进行判断时,可以根据眼睛在垂直方向上的变化进行头部运动的确定。在人打瞌睡的时候,头部将连续偏离大于4帧。所以,当头部位置至少连续3帧偏离正常阈值时,可以判定驾驶员出现瞌睡情况。完成头部运动情况的确定后,需要构建一个模糊系统,然后对驾驶员在一段时间内的眼睛、嘴部和头部的位置及状态进行统计。而通过在系统输入眨眼频率、闭眼持续时间、哈欠频率和瞌睡频率四个变量,并且设置疲劳参数这一个输出变量,就可以对驾驶员的疲劳状态进行检测。此时,可以使用MATLAB的模糊逻辑工具箱,并且根据规则库中的模糊关系,就可以对输入的疲劳参数的疲劳状态系数进行推理。而通过推理则可以发现,在输入变量都较小的情况下,驾驶员一直处在清醒状态。在除了眨眼频率以外的输入变量都较小的情况下,驾驶员属于刚出现疲劳状态。在除了瞌睡频率以外的输入变量都较大的情况下,驾驶员进入到了轻微疲劳状态。在四个输入变量都较大的情况下,驾驶员则进入到了严重疲劳状态。

3 结论

总而言之,在驾驶员疲劳检测中应用MATLAB人脸识别技术,能够对驾驶员的疲劳状态进行准确判断,从而使驾驶员疲劳预警的需求得到满足。因此,相信随着相关技术的发展,MATLAB人脸识别技术将在驾驶员疲劳检测领域得到更加广泛的应用。

参考文献

[1]苏晓娜,李晓明.人脸检测及眼睛定位在驾驶员疲劳检测中的应用[J].科学技术与工程,2012,17(12):183-186.

[2]周云鹏,朱青,王耀南等.面部多特征融合的驾驶员疲劳检测方法[J].电子测量与仪器学报,2014,10(28):140-148.

[3]蔡菁,程雷,王红霞.基于Kinect的疲劳驾驶综合监测系统研究[J].计算机工程与科学,2015,12(37):379-385.

猜你喜欢

应用
多媒体技术在小学语文教学中的应用研究
微课的翻转课堂在英语教学中的应用研究