基于MTCNN的驾驶员疲劳检测方法

2021-11-12 03:21王琪唐阳山
汽车实用技术 2021年20期
关键词:步长边框人脸

王琪,唐阳山

基于MTCNN的驾驶员疲劳检测方法

王琪,唐阳山

(辽宁工业大学 汽车与交通工程学院,辽宁 锦州 121001)

驾驶疲劳是引发交通事故的重要原因之一。研究驾驶疲劳检测算法对提高道路交通安全性和人类生命财产安全具有重要意义。为此,文章提出了一种基于MTCNN的疲劳检测方法。通过对人脸图像进行处理,使MTCNN算法得到优化,然后通过训练样本进行实验验证,证实了算法对实际的驾驶疲劳检测的有用性。

疲劳检测;图像金字塔;MTCNN;卷积神经网络

引言

近些年来,随着生活水平的不断提高,机动车保有量连年增长,车祸致死的数目随之增加。据相关调查表明,驾驶疲劳是诱发交通事故的重要原因之一[1]。因此,为了更好地避免驾驶疲劳所带来的生命财产损失,提高驾驶安全性,研究一种能够及时有效的驾驶疲劳检测方法具有十分重要的意义。目前的检测方式大致分为三种:第一种方式是根据车辆行驶状况进行检测[2]。第二种方式,监测驾驶人员的生理信号,主要包含脑电信号、心电信号、肌电信号等[3]。第三种方式,根据驾驶员的面部特征进行检测,包括眼部、嘴部特征以及头部姿态等[4]。

随着人工智能技术的不断发展,诸多研究学者们开展了基于深度学习的驾驶疲劳检测研究[5]。大多数是在获取人脸特征参数之后,将特征图像输入到已经训练好的网络模型中进行检测。但由于实际的行车过程中,车外的行驶环境、车内光照条件以及驾驶人复杂多变的驾驶姿态,对检测方法的准确性和实时性要求很高。因此,本文提出了一种基于MTCNN的检测算法进行疲劳识别。

1 算法原理

MTCNN是一种用于检测人脸任务的多任务神经网络模型,它是由一个三层网络(P-Net、R-Net、O-Net)组成的网络结构。该模型主要采用候选框加分类器的思想,并通过多任务训练模型参数来实现快速高效的人脸检测。

1.1 MTCNN网络结构

表1 P-Net结构

输入图像 12*12*3 卷积层C1卷积核3*3特征图10*10*10 最大池化层2*2步长2特征图5*5*10 卷积层C2卷积核3*3特征图3*3*16 卷积层C3卷积核3*3特征图1*1*32 1*1*2人脸分类 1*1*4边框回归 1*1*10关键点定位

P-Net的结构十分简单,首先是1个3*3的卷基层,然后是1个2*2的最大池化层。池化结束后继续跟2个3*3的卷积层。此时的维度变成了1*1*32,用来判断输入网络的图像在12*12个像素区域内是否存在人脸。最后分别跟三个不同的1*1的卷积层,产生1*1*2、1*1*4,以及1*1*10三种输出。

表2 R-Net结构

输入图像 24*24*3 卷积层C1卷积核3*3特征图22*22*28 最大池化层2*2步长2特征图11*11*28 卷积层C2卷积核3*3特征图8*8*28 最大池化层2*2步长2特征图4*4*28 卷积层C3卷积核3*3特征图3*3*64 全连接层 1*1*2人脸分类 1*1*4边框回归 1*1*10关键点定位

表3 O-Net结构

输入图像 48*48*3 卷积层C1卷积核3*3特征图46*46*32 最大池化层2*2步长2特征图23*23*32 卷积层C2卷积核3*3特征图20*20*64 最大池化层2*2步长2特征图10*10*64 卷积层C3卷积核3*3特征图8*8*64 最大池化层2*2步长2特征图4*4*64 卷积层C4卷积核3*3特征图3*3*128 全连接层 1*1*2人脸分类 1*1*4边框回归 1*1*10关键点定位

R-Net与P-Net是不同的,其基本构造是一个卷积神经网络,比P-Net多了一个全连接层。它的输入实际上是P-Net的输出结果,较为复杂的网络结构能够进一步对人脸区域窗口进行筛选和调整,从而达到高精度过滤和优化人脸区域的效果。

O-Net是一个更复杂的卷积网络,该网络输入的特征更多。在整个MTCNN模型中,前两个网络主要是完成人脸区域的检测,而O-Net网络则是完成人脸关键点的检测。

1.2 检测原理

首先将图像进行不同尺寸大小的变换,以适应不同大小的人脸检测。然后通过较为浅层、较为简单的P-Net网络快速生成人脸候选窗口,图片在P-Net处理后,会留下许多预测的窗口,然后将这些预测窗口送入R-Net,这个网络会过滤掉大量效果比较差的候选框,最后对选定的人脸候选区域窗口进行非极大值抑制计算和边框回归,进一步预测优化结果。同样的,把R-Net的输出结果作为O-Net的输入,保留更多的图像特征,同时使用复杂的网络结构,再次进行人脸判别、边框回归和人脸关键点定位,最终输入五个面部特征点。

图1 MTCNN检测流程图

2 检测过程

2.1 图像金字塔

利用MTCNN进行人脸检测任务时,输入的是一张图片,输出是图像中人脸所在位置的边界框(Bounding Box)。MTCNN是一种基于卷积的神经网络,通常只适用于检测一定尺寸范围内的人脸,比如第一阶段的P-Net,用于判断12*12大小范围内是否有人脸,但通常输入图像的人脸尺寸是未知的,所以需要构建图像金字塔获得不同尺寸的图像,缩放图像是为了将图像中的人脸检测放到网络能检测的合适尺寸,只要某个人脸被缩放到12*12左右大小,就可以被检测出来。

图2 生成图像金字塔

2.2 IOU

IOU的全称为交并比,IOU计算的是“预测的人脸候选框”和“真实的边框”的交集与并集的比值。IOU与分类任务不同,预测人脸框的坐标需要去匹配实际框的坐标,而坐标完全匹配是不太可能的。因此,需要一个评估标准来奖励那些与匹配框匹配较好的预测框。

图3 IOU测试结果

3 实验与结果分析

3.1 实验环境

为了验证MTCNN算法的有用性,在CPU为1.60 GHz的计算机上,采用Python3.6、Opencv以及tensorflow搭建了实验环境。

3.2 数据集准备

人脸区域检测采用公开WIDER FACE数据集,人脸关键点检测采用CelebA数据集。WIDER FACE数据集可以从遮挡、姿态、事件等全方位多角度评估算法的性能。而CelebA此数据集中的图像覆盖了复杂的姿势变化以及背景杂乱的情景,每个图片都有40个属性注释。

3.3 结果分析

通过对多种不同驾驶员面部行为(疲劳状态、正常状态、说话状态)进行检测,验证了算法对实际驾驶疲检测的有用性。

图4 疲劳状态下(哈欠)识别效果

图5 正常状态下的识别效果

图6 说话状态下的识别效果

4 结束语

本文提出了一种基于MTCNN的驾驶疲劳检测方法,通过对算法的网络结构、检测过程的介绍,验证了多任务卷积神经网络对实际的驾驶疲劳检测的有用性,对之后的研究奠定了一定的理论基础。

[1] 李都厚,刘群,袁伟,等.疲劳驾驶与交通事故关系[J].交通运输工程学报,2010,10(02):104-109.

[2] M.S.Wang, N.T.Jeong, K.S.Kim,et al. Drowsy behavior detection based on driving information[J].International Journal of Automotive Technology,2016,17(1):165-173.

[3] Tuncer T,Dogan S,Ertam F,et al.A dynamic center and multi thre- shold point based stable feature extraction network for driver fatigue detection utilizing EEG signals[J]. Cognitive Neurodynamics, 2021, 15(7):223-237.

[4] Hu S,Lin Z.Fatigue Driving Detection Based on Machine Learning and Image Processing Technology[J].Journal of Physics:Conference Series,2018,069(1):012179.

[5] Wang Z,Shi P,Wu C.A Fatigue Driving Detection Method based on Deep Learning and Image Processing[J].Journal of Physics: Confe- rence Series,2020,1575(1):012035.

Driver Fatigue Detection Method Based on MTCNN

WANG Qi, TANG Yangshan

( School of Automobile and Traffic Engineering, Liaoning University of Technology, Liaoning Jinzhou 121001 )

Driving fatigue is one of the important causes of traffic accidents. The research on driving fatigue detection algorithm is of great significance to improve road traffic safety and human life and property safety. Therefore, this paper proposes a fatigue detection method based on mtcnn. Through the face image processing, the mtcnn algorithm is optimized, and then through the experimental verification of training samples, it is confirmed that the algorithm is useful for the actual driving fatigue detection.

Fatigue testing; Image pyramid; MTCNN;Convolutional neural network

U491.3

A

1671-7988(2021)20-49-03

U491.3

A

1671-7988(2021)20-49-03

10.16638/j.cnki.1671-7988.2021.020.013

王琪(1996—),女,在读研究生,就读于辽宁工业大学汽车与交通工程学院。

唐阳山(1972—),男,教授,博士,就职于辽宁工业大学汽车与交通工程学院,研究方向:交通信息感知与辅助驾驶技术。

基于机器视觉的驾驶员危险驾驶行为识别研究(编号:JJL20195410)。

猜你喜欢
步长边框人脸
玻璃窗上的人脸
董事长发开脱声明,无助消除步长困境
步长制药50亿元商誉肥了谁?
起底步长制药
步长制药
——中国制药企业十佳品牌
外出玩
“领家系”可爱脸VS“高冷系”美人脸
通过美工刀切分屏幕与边框
长得象人脸的十种动物
用不上的砖块