«上一篇 下一篇»
  计算机工程  2021, Vol. 47 Issue (8): 243-250  DOI: 10.19678/j.issn.1000-3428.0059421
0

引用本文  

樊星, 刘占文, 林杉, 等. 融合人眼特征与深度学习的疲劳驾驶检测模型[J]. 计算机工程, 2021, 47(8), 243-250. DOI: 10.19678/j.issn.1000-3428.0059421.
FAN Xing, LIU Zhanwen, LIN Shan, et al. Fatigue Driving Detection Model Fusing with Human Eye Features and Deep Learning[J]. Computer Engineering, 2021, 47(8), 243-250. DOI: 10.19678/j.issn.1000-3428.0059421.

基金项目

国家自然科学基金(61703054);陕西省重点研发计划(2018ZDXM-GY-044)

作者简介

樊星(1994-), 女, 硕士, 主研方向为计算机视觉、状态识别、深度学习;
刘占文, 副教授、博士;
林杉, 讲师、博士;
窦瑞娟, 硕士研究生

文章历史

收稿日期:2020-09-02
修回日期:2020-11-11
融合人眼特征与深度学习的疲劳驾驶检测模型
樊星1 , 刘占文2 , 林杉1 , 窦瑞娟2     
1. 长安大学 电子与控制工程学院, 西安 710064;
2. 长安大学 信息工程学院, 西安 710064
摘要:针对现有疲劳驾驶检测技术不能有效平衡准确性和实时性的问题,通过融合人眼特征与深度学习,构建一种新的疲劳驾驶检测模型。设计GP-VGG16网络进行眼部状态识别,通过将人工先验信息集成到轻量级深度网络中,提高眼部状态识别的准确性、稳定性和实时性。在此基础上,利用眼部特征-疲劳等级模型将疲劳状态划分为9个等级,定量估计驾驶员状态,同时基于少样本学习建立高效的自动标签生成网络,减少对大量无标签驾驶数据的语义标注。实验结果表明,该模型的准确率达到97.1%,运行速度达到39.96 frame/s,能够有效提高驾驶员疲劳状态识别的准确性与时效性。
关键词疲劳驾驶检测    深度学习    少样本学习    GP-VGG16网络    积分投影    
Fatigue Driving Detection Model Fusing with Human Eye Features and Deep Learning
FAN Xing1 , LIU Zhanwen2 , LIN Shan1 , DOU Ruijuan2     
1. School of Electronics and Control Engineering, Chang'an University, Xi'an 710064, China;
2. School of Information Engineering, Chang'an University, Xi'an 710064, China
Abstract: To address the problem that the existing fatigue driving detection technology cannot balance the accuracy and real-time performance effectively, a fatigue driving detection model based on human eye features and deep learning is proposed. GP-VGG16 network is designed for eye state recognition. By integrating artificial prior information into lightweight deep network, the accuracy, stability and real-time performance of eye state recognition are effectively improved. On this basis, the eye feature-fatigue level model divides the fatigue state into nine grades, and quantitatively estimates the driver's state. At the same time, an efficient automatic label generation network is established based on few-shot learning to reduce the semantic annotation of a large number of unlabeled driving data. The experimental results show that the accuracy of this method is 97.1%, and the running speed is 39.96 frame/s. The method effectively improves the accuracy and real-time performance of driver fatigue state recognition.
Key words: fatigue driving detection    deep learning    few-shot learning    GP-VGG16 network    integral projection    

开放科学(资源服务)标志码(OSID):

0 概述

疲劳驾驶是导致交通事故的重要因素之一,会给国家和个人的生命财产安全造成严重损失。疲劳是一种随着时间的推移而积累的生理状态,在事故发生前的一段时间内驾驶员就会出现相应的征兆[1]。若能提前发现疲劳状态,使驾驶人放弃对车辆的控制,则能有效减少疲劳驾驶造成的交通事故。

现有疲劳驾驶检测方法主要分为基于车辆行驶模式检测、基于驾驶员生理特征检测、基于驾驶员行为检测3类。车辆行驶模式包括转向模式、制动模式和车辆在车道上的位置[2-3],对其检测对路况和驾驶技能有很强的依赖性。驾驶员生理特征主要包括通过生物电信号获得的脑电图(EEG)、心电图(ECG)和眼电图(EOG)[4-5]。文献[6]提出一种自适应多尺度熵特征提取算法,基于脑电数据检测疲劳状态。文献[7]提取驾驶员心率变异性数据以实现疲劳驾驶的检测。文献[8]利用表颈腰部肌电信号EMG和头部脑电信号EEG判别驾驶员的疲劳状态。文献[9]通过采集眼睑周围皮肤上的肌电信号检测眼睑的闭合情况,从而达到疲劳检测的目的。然而,生理信号采集需要驾驶员佩戴各种信号测量工具,这降低了驾驶员的驾驶舒适性,易对驾驶行为造成影响,不能大范围推广。

驾驶员行为监测随着机器视觉技术的广泛应用而成为研究的热点,主要包括面部特征,如闭眼、头部运动、打哈欠时间、凝视或面部表情。文献[10]提出用Viola-Jones算法检测人脸表情和眼部位置,再利用眼跟踪技术采集眨眼持续时间和眨眼频率的特征来完成疲劳检测。文献[11]设计哈欠热成像模型来检测哈欠,以反映驾驶员的疲劳程度。文献[12]通过结合驾驶员的面部几何特征与手部运动特征来确定驾驶员的疲劳状态。

近年来,深度卷积神经网络(Deep Convolution Neural Network,DCNN)[13]在图像分类、目标检测、情感识别、场景分割等计算机视觉任务中取得了突破性成就。将人脸视觉特征与深度学习相结合,这种非接触式的方法不会干扰驾驶员的正常驾驶,适用于实际驾驶环境下的疲劳驾驶检测。文献[14]提出三网络并联架构,使用AlexnNet[15]学习图像特征,采用VGG FaceNet[16]提取人脸特征,再用FlowImageNet[17]提取行为特征。文献[18]根据PFLD深度学习模型进行人脸关键点检测并通过多特征融合策略获取驾驶人员疲劳状态。Reddy利用多任务级联卷积网络(Multitask Cascade CNN,MTCNN)[19]对人脸进行检测和对齐,然后利用驾驶员嗜睡检测网络(Driver Drowsiness Detection Network,DDDN)[20]检测驾驶员疲劳。

车载传感器的广泛应用使得人脸特征与深度学习相互融合,为疲劳驾驶检测提供了一种有效方法。然而,驾驶员的面部特征易受角度、方向变化的影响。同时,深度学习架构的规模较大,且存在较多参数冗余,这增加了计算复杂度与时间复杂度。因此,如何提高检测方法的准确性和实时性是疲劳检测研究的重点。

针对上述问题,本文提出一种融合人眼特征与深度学习的疲劳驾驶检测模型。采用端到端的学习架构进行人脸对齐,通过直接形状回归消除算法对人脸检测的依赖性,减少关键点提取的时间消耗。在此基础上,设计一个融合Ghost模块和先验约束的疲劳检测网络,将驾驶员疲劳状态定量地标记为9个等级,实现对疲劳状态的细粒度检测与识别。此外,通过少样本学习来解决收集数据标注成本高、难度大的问题,从而以最小的代价对收集到的训练数据进行标记。

1 疲劳驾驶检测模型 1.1 眼部区域提取

驾驶员处于疲劳状态时,眼部张角会发生变化,眨眼频率也会降低,在所有面部特征中,眼部参数能够更全面地揭示反映疲劳程度的信息。然而,眼部在典型人脸图像中所占的区域很小,导致人眼检测的高难度、低精度以及低实时性。基于人脸标志点的眼部区域提取是一种有效解决上述问题的方法。人脸图像和相关面部形状之间的高度非线性关系是人脸关键点检测的主要难点,为了减少对级联回归的依赖性,本文在端到端学习框架中通过直接形状回归网络(Direct Shape Regression Network,DSRN)[21]实现人脸关键点提取。DSRN利用双卷积层和傅里叶特征聚合层有效地解决了图像与形状之间高度非线性关系,再结合低阶学习的线性层有效地处理了关键点之间的相关性,提高了性能。由DSRN获得的面部标志点包括面部边界、眉毛、眼部、鼻子和嘴唇,如图 1所示。

Download:
图 1 用于人脸对齐的DSRN体系结构 Fig. 1 DSRN framework for face alignment

在所有标记点中,共有12个点与眼部特征相关,其中左眼和右眼分别为6个。研究表明,局部人脸图像可以提供与全局人脸图像相似的特征[22],因此,本文只提取左眼相关特征进行疲劳检测,标志点分布如图 2所示。其中,A和B分别是上下眼睑的内交点和外交点,C、E为AB线三等分点近内交点处与上下眼睑的交点,D、F为AB线三等分点近外交点处与上下眼睑的交点。则眼部的长度和宽度为:

$ {X}_{\mathrm{e}}=‖{X}_{{\mathrm{P}}_{\mathrm{A}}}-{X}_{{\mathrm{P}}_{\mathrm{B}}}‖ $ (1)
$ {Y}_{\mathrm{e}}=‖\mathrm{m}\mathrm{a}\mathrm{x}\left[\right({Y}_{{\mathrm{P}}_{\mathrm{C}}}-{Y}_{{\mathrm{P}}_{\mathrm{E}}}), ({Y}_{{\mathrm{P}}_{\mathrm{D}}}-{Y}_{{\mathrm{P}}_{\mathrm{F}}}\left)\right]‖ $ (2)
Download:
图 2 基于左眼标志点的眼部区域提取 Fig. 2 Eye region extraction based on left eye landmarks

基于面部标志点提取的眼部区域为:

$ {W}_{\mathrm{e}}=1.8{X}_{\mathrm{e}} $ (3)
$ {H}_{\mathrm{e}}=2.8{Y}_{\mathrm{e}} $ (4)
1.2 模型构建 1.2.1 G-VGG16

基于眼部区域建立疲劳驾驶检测模型,提取疲劳相关特征,并根据眼部状态在一段时间内的变化来估计驾驶员的状态。疲劳是一种随着时间的推移而积累的生理状态。当长时间无中断驾驶时,驾驶员需要不断地感知和识别其余交通参与者的行为状态,导致精神长期高度紧张,产生疲劳,造成事故瞬间发生。疲劳检测的实时性对其产生预警作用至关重要。

眼部结构简单,浅层网络即可对眼部特征提取分类。然而,驾驶员疲劳产生过程中存在过渡状态,不能简单地将其划分为疲劳和清醒状态。细化疲劳分类需要提取细粒度的眼部特征,选择VGG16[23]作为基础特征提取网络。为了轻量化网络以提高其实时性与移植性,受文献[24]启发,本文在VGG16中引入Ghost模块,得到G-VGG16。传统CNN通过不同卷积核参数计算得到的特征图具有高度相似性,导致特征图冗余。Ghost模块在减少输出通道的情况下,通过常规卷积运算生成固有特征图,再基于固有特征图,通过简单的线性变换生成更多的相似特征图,称为Ghost特征图,最后得到与普通卷积方法生成特征图数量相同的特征图,如图 3所示。

Download:
图 3 Ghost模型架构 Fig. 3 Ghost model architecture

假设普通卷积的通道数为n,当前通道数为m,固有特征图表示为$ Y{'} $,则得到式(5)。

$ {y}_{i}=\varphi \left({y}_{i}^{\mathrm{{'}}}\right)\mathrm{ }, \forall i=\mathrm{1, 2}, \cdots , m $ (5)

其中:$ {y}_{i}^{\mathrm{{'}}} $$ Y{'} $中第i个固有特征映图;$ \varphi $表示线性运算,用于生成相应的Ghost特征图$ {y}_{i} $。考虑到卷积能够覆盖许多广泛应用的线性运算,采用大小为3×3的卷积核对固有特征图卷积实现线性操作。在线性运算后,增加一致性映射以保持固有特征图。

G-VGG16在原有卷积运算的基础上,采用线性变换生成合适的Ghost特征图,充分揭示了特征的内在关联性。通过这种低成本的代换,有效地简化了模型的参数量和运算量,可以在较短的响应时间内得到眼部的特征表示,从而降低模型的运行成本,提高其实时性和可移植性。

1.2.2 GP-VGG16网络

通过投影变换可以将特征从高维映射到低维,从而更紧凑。对眼部区域图像进行二值化处理,并对二值化图像进行垂直积分投影,获得垂直积分投影曲线。观察发现,眼部状态的不同会导致其整体投影特征有所差异,如图 4所示。由于受眼球灰度的影响,睁眼的积分投影特征图具有主峰波形。相反,闭眼的积分投影特征图是平坦的波形,而当眼部张度不同时,主峰的高度也会随之变化。眼部积分投影波形变化的特征可以对眼部张开状态进行有效预判。

Download:
图 4 不同眼部状态的积分投影特征图 Fig. 4 Integral projection feature maps of different eye states

本文将积分投影得到的投影矢量调制作为先验知识引入到疲劳状态分类网络中。将先验信息看作一种特征映射直接附加到G-VGG16卷积层的输出中,在G-VGG16的输出端增加concat层,将网络特征提取结果与先验知识相融合,如图 5所示,输出前的最后一个卷积层可以有效提取包含先验信息的眼部特征,这种增加离线计算,对输入的眼部区域进行投影处理作为预处理的方法,可以提高眼部状态识别的准确性和有效性。

Download:
图 5 本文疲劳驾驶检测网络整体框架 Fig. 5 Overall framework of the proposed fatigue driving detection network

本文选用GP-VGG16作为特征提取模型,并基于提取的眼部特征,建立眼部特征-疲劳等级模型。先将疲劳状态划分为9个等级,再根据时间段内疲劳等级的变化来定量地估计驾驶员状态。

1.3 少样本学习

现有公测数据集并不适用于本文模型,需要自己收集数据集进行训练与测试。然而深度学习模型需要大量的标记数据和多次迭代来训练参数,若训练数据过少,在测试集上易出现过拟合现象,严重影响测试精度。因此,需要以最小的代价标记收集到的训练数据。少样本学习就是在训练数据非常有限的情况下有效识别出新目标。现有方法通常采用数据增强和正则化以及元学习来缓解数据缺乏问题,本文通过端到端的少样本学习框架实现从有限的样本实例中对新类识别的自学习。

从训练数据集的每一类中选取M个样本,并根据KSS表[25]手动标记。然后从这M个样本中选择K个样本作为支持集S,剩余样本作为查询集Q,用于模拟在数据标注中将遇到的未标记集。基于支持集和查询集训练关系网络(Relationship Network,RN)[26],再将所有的支持集和未标记数据集映射到RN中,计算来自不同集合的2幅图像之间的相似度,对采集到的疲劳数据进行自适应标记。

RN由2个部分组成,一部分是用于提取图像特征的嵌入模块$ {f}_{\phi } $,另一部分是用于计算2个图像相似性的关系模块$ {g}_{\phi } $,总体结构如图 6所示。

Download:
图 6 RN的整体架构 Fig. 6 Overall architecture of RN

首先通过嵌入模块$ {f}_{\phi } $分别得到支持集S中样本$ {x}_{i} $的特征图$ {f}_{\phi }({x}_{i}) $和查询集Q中样本$ {x}_{j} $的特征图$ {f}_{\phi }({x}_{j}) $;然后将$ {f}_{\phi }({x}_{i}) $$ {f}_{\phi }({x}_{j}) $在深度维度中连接得到特征图$ C({f}_{\phi }({x}_{i}), {f}_{\phi }({x}_{j})) $,连接特征图通过关系模块$ {g}_{\phi } $输出关系得分,以表示$ {x}_{i} $$ {x}_{j} $之间的相似性,如式(6)所示。

$ {r}_{i, j}={g}_{\varphi }\left(C\right({f}_{\phi }({x}_{i}), {f}_{\phi }({x}_{j})\left)\right)\mathrm{ }, i=\mathrm{1, 2}, \cdots , C $ (6)

其中:$ {r}_{i, j} $表示关系得分,C表示分类类别数,本文中C为9。输出关系得分为0~1,0表示非常不同,1表示完全相似。最后,根据关系得分判断未标注样本的类别。

2 实验 2.1 疲劳检测数据集

目前用于疲劳检测的公测数据集主要包括Drazy数据集[27]、NTHU驾驶员疲劳检测数据集[28]、Closed Eyes in the Wild(CEW)数据集[29]和ZJU眨眼数据集[30]。Drazy数据集包含多种用于疲劳检测的数据,但其只包含11个受试者的数据,不适用于CNN训练的模型。NTHU数据集、CEW数据集和ZJU数据集包含各种场景下的RGB图像和视频,然而其疲劳程度分类标签主要为疲劳、不疲劳两类,与本文的实验环境不同,这些局限性使得上述数据集很难应用于本文提出的模型。因此,本文在自己收集的自定义数据集上进行相应实验。

实验招募12名年龄在25~35岁的受试者(4名女性和8名男性),要求至少有2年驾驶经验,无视力矫正,健康状况良好,无睡眠障碍,且在实验前24 h时内禁食咖啡和酒精。本文使用驾驶模拟器和摄像机记录驾驶员的转向数据和面部图像。将人脸图像作为疲劳状态识别网络的训练数据集,转向数据作为数据标注的辅助。

实验采用天气正常、交通参与者行为正常的全封闭标准公路作为测试驾驶环境。不同睡眠时间的参与者进入疲劳状态的时间和最终的疲劳程度是不同的,为了收集到更全面的数据,将受试者按照要求的睡眠时间分为2组,一组睡眠时间为8 h(允许0.5 h的误差),另一组睡眠时间为4 h(允许0.5 h的误差)。实验时间为上午8点至11点,每位驾驶员在最高车速为80 km/h的要求下模拟驾驶4 h,直到疲劳过度无法继续驾驶时实验停止。实验共获得48 h的测试视频数据,将其划分为2 880个视频片段,每个视频片段包括1 500张图像。随机抽取1 920个视频片段作为训练数据集,其余数据集作为测试数据集。

2.2 数据标注

为全面反映疲劳产生过程中的过渡状态,本文根据KSS将疲劳状态分为9个等级,如表 1所示,每个等级都有唯一的KSS得分标签$ {k}_{i}, {k}_{i}\in 1,2,\cdots , 9 $。研究表明,受试者的KSS得分$ {k}_{i} $在驾驶期间呈线性增加,当$ {k}_{i}\in 1,2,3,4,5,6 $,驾驶员处于正常状态,当$ {k}_{i}\in 7 $时,驾驶员处于过渡状态,当$ {k}_{i}\in 8,9 $时,驾驶员处于疲劳驾驶状态[4]。假定状态的阈值为0.4,即当驾驶员在测试区间保持某个状态的时间超过40%时,视为驾驶员处于该状态。根据文献[31],驾驶员处于唤醒状态和过渡状态时可以正常控制车辆。因此,当疲劳驾驶检测模型输出的KSS评分满足$ {k}_{i}\in 1,2,\cdots , 7 $时,判定驾驶员处于正常状态,反之,驾驶员处于疲劳状态。

下载CSV 表 1 Karolinska困倦量化表 Table 1 Karolinska sleepiness scale

本文将驾驶员主观评价与基于驾驶模拟器转向数据的客观评价方法相结合,实现驾驶员状态的标注。首先要求驾驶员根据KSS表在固定的时间间隔(5 min)报告其驾驶状态。同时考虑到在从清醒到疲劳的整个驾驶状态下,方向盘转角的变化(CSWA)和方向盘转角变化的速度(SSWAC)存在变化,选择CSWA和SSWAC作为疲劳相关指标,对驾驶员报告的KSS评分进行修正,得到最终的KSS得分,作为疲劳驾驶检测数据集中训练集的标签。

2.3 评价指标

根据精确率、召回率、PRC、F1值、准确度和运行速度对所提出的疲劳驾驶检测模型的性能进行评估。

精确率P和召回率R表示为:

$ P=\frac{{T}_{\mathrm{T}\mathrm{P}}}{{T}_{\mathrm{T}\mathrm{P}}+{F}_{\mathrm{F}\mathrm{P}}} $ (7)
$ R=\frac{{T}_{\mathrm{T}\mathrm{P}}}{{T}_{\mathrm{T}\mathrm{P}}+{F}_{\mathrm{F}\mathrm{N}}} $ (8)

PRC是由准确率和召回率组成的折线图,F1是综合识别率的评价指标,定义如下:

$ {F}_{1}=\frac{2\times P\times R}{P+R} $ (9)
2.4 实验设计与分析 2.4.1 疲劳驾驶检测框架有效性验证

本文所有的训练和评估任务都基于配置NVIDIA GeForce GTX TITAN X GPU、12 GB内存的实验平台完成。采用随机梯度下降(SGD)算法优化训练疲劳驾驶检测网络,动量和权重衰减分别设置为0.9和0.000 1。比较VGG16、G-VGG16、GP-VGG16这3种网络结构的性能,以评估GP-VGG16中该组成部分的有效性,实验结果如表 2所示。可以看出,Ghost模块的引入使得VGG16紧凑化、轻量化,同时保持了较高的检测性能。而先验信息补充了相似开合度的眼部区域在特征提取过程中丢失的细节信息,提高了检测识别精度。在运行速度方面,G-VGG16算法将计算时间缩短了约40%,虽然增加积分投影特征图对时间消耗带来了轻微影响,但GP-VGG16较好地平衡了检测精度和时间成本,对疲劳状态的高精度实时检测具有重要意义。

下载CSV 表 2 不同检测模型的性能比较 Table 2 Performance comparison of different detection models

选取4名不同测试阶段的参与者的部分测试样本,结果如图 7所示。其中:参与者1为25岁男性,睡眠时间8 h;参与者2为32岁女性,睡眠时间8 h;参与者3为28岁男性,睡眠时间4 h;参与者4为35岁男性,睡眠时间8 h。可以看出,不同的人经过同一段时间,或者同一个人在不同的时间段,其疲劳状态存在差异。在睡眠充足的条件下,在驾驶3 h后,处于过渡状态的概率大于疲劳状态的概率。而当睡眠不充足时,在驾驶2 h后,即出现疲劳。4 h睡眠对照组的建立有效地扩展了疲劳状态的数据样本。图 7中测试样本的检测指标如图 8所示。实验结果表明,本文提出模型具有较高的检测精度,且对年龄和性别差异鲁棒性较好。

Download:
图 7 不同参与者在不同驾驶阶段的部分测试结果 Fig. 7 Some results of different participants at different driving stages
Download:
图 8 部分测试样本检测结果 Fig. 8 Results of some test samples

由于在对驾驶状态进行分类时考虑了时间延续中出现的过渡状态,分别对9种不同状态下的检测效果进行验证。如图 9所示,可以看出:当$ {k}_{i}\in 8,9 $,即驾驶员处于疲劳驾驶状态时,眼部状态与清醒时有很大不同,检测精度较高;同样,当$ {k}_{i}\in 1,2 $时,检测精度较高;当$ {k}_{i}\in 5,6,7 $时,在KSS评分的分类中,属于正常状态和过渡状态,但眼动状态的差异相对较小,疲劳检测的准确性降低。从总体上看,本文模型具有较高的检测精度,能够有效地检测出驾驶员从清醒到疲劳的各个阶段的状态。

Download:
图 9 9种不同状态的检测效果 Fig. 9 Detection effects of nine different states
2.4.2 与现有检测网络的对比

将本文提出检测模型与Faster R-CNN[32]架构和DDDN架构进行对比。在数据集和硬件配置都相同的情况下,不断调整参数以使3种网络都达到最佳性能。图 10是平均精度和平均召回率的统计结果。实验结果表明,GP-VGG16通过在传统的卷积结构中引入Ghost模型和先验积分投影特征,对目前广泛使用的疲劳检测网络进行了改进优化,平均精度比采用Faster R-CNN和DDDN的方法提高了2%左右,在疲劳检测方面取得了较好的性能表现。

Download:
图 10 3种对比度模型的P-R曲线 Fig. 10 P-R curves of three contrast models

由于在测试过程中引入积分投影会带来额外的处理时间损失,因此对测试时间和模型的大小进行对比实验,结果见表 3,表中最后一列显示了整个系统的运行时间,包括眼部特征提取和疲劳检测。可以看出,因为投影特征图的特征易于提取,在网络中加入积分投影的计算时间可以近似忽略。

下载CSV 表 3 运行速度和模型尺寸对比 Table 3 Comparison of running speed and model size
2.4.3 与现有模型的比较

将本文提出的疲劳驾驶检测方法与基于车辆行驶模式监测、基于驾驶员生理特征监测以及基于驾驶员行为监测中的典型方法进行测试对比,如表 4所示。可以看出:文献[2]中基于行驶模式的疲劳驾驶检测方法对驾驶员的驾驶风格和驾驶环境的差异非常敏感;文献[7]的方法具有较高的实时性和稳定性,然而这种接触式的检测方法会影响驾驶员的驾驶舒适度,影响驾驶行为;文献[11]中基于眨眼监测的方法受真实环境中的光照变化的影响而不稳定。对比发现,本文提出模型在准确性和实时性方面都是最好的,同时,利用少样本学习方法减少了样本标记过程中的时间和人力成本。

下载CSV 表 4 本文模型与现有检测模型的比较 Table 4 Comparison of the porposed model with exsisted detection models
3 结束语

根据驾驶员疲劳状态对其进行提前预警,可以有效减少交通事故的发生。本文提出一种融合人眼特征与深度学习的疲劳驾驶检测模型。通过DSRN提取人眼特征点,融合Ghost模块和先验约束设计GP-VGG16网络,基于眼部特征建立疲劳等级模型,对疲劳状态进行定量分类。少样本学习可以解决疲劳驾驶检测模型建立过程中缺少标记数据的问题。实验结果表明,本文模型能够有效提高复杂驾驶环境中人脸特征提取的鲁棒性,缓解特征提取过程中参数冗余的问题,减少模型训练过程中图像数据标注的成本,实现对驾驶员疲劳状态高效、精准的检测识别。下一步将研究如何降低检测网络对硬件设备的依赖性,使其得到更广泛的应用。

参考文献
[1]
KAPLAN S, GUVENSAN M A, YAVUZ A G, et al. Driver behavior analysis for safe driving: a survey[J]. IEEE Transactions on Intelligent Transportation Systems, 2015, 16(6): 3017-3032. DOI:10.1109/TITS.2015.2462084
[2]
CHAI M, LI S W, SUN W C, et al. Drowsiness monitoring based on steering wheel status[J]. Transportation Research Part D: Transport and Environment, 2019, 66: 95-103. DOI:10.1016/j.trd.2018.07.007
[3]
MCDONALD A D, SCHWARZ C, LEE J D, et al. Real time detection of drowsiness related lane departures using steering wheel angle[C]//Proceedings of the 56th Annual Meeting of the Human Factors and Ergonomics Society. Boston, USA: [s. n. ], 2012: 1-5.
[4]
GUO Z Z, NIU L B, WU Z M, et al. Driving fatigue recognition algorithm based on EEG and its validity verification[J]. Journal of Beijing University of Technology, 2017, 43(6): 929-934. (in Chinese)
郭孜政, 牛琳博, 吴志敏, 等. 基于EEG的驾驶疲劳识别算法及其有效性验证[J]. 北京工业大学学报, 2017, 43(6): 929-934.
[5]
XU L S, ZHANG W X, PANG Y X, et al. Fatigue driving detection algorithm based on short time ECG signal[J]. Journal of Northeast University: Natural Science Edition, 2019, 40(7): 937-941. (in Chinese)
徐礼胜, 张闻勖, 庞宇轩, 等. 基于短时心电信号的疲劳驾驶检测算法[J]. 东北大学学报: 自然科学版, 2019, 40(7): 937-941.
[6]
LUO H, QIU T, LIU C, et al. Research on fatigue driving detection using forehead EEG based on adaptive multi-scale entropy[J]. Biomedical Signal Processing and Control, 2019, 51: 50-58. DOI:10.1016/j.bspc.2019.02.005
[7]
GROMER M, SALB D, WALZER T, et al. ECG sensor for detection of driver's drowsiness[J]. Procedia Computer Science, 2019, 159: 1938-1946. DOI:10.1016/j.procs.2019.09.366
[8]
WANG L, HUA C C, JIANG X, et al. Fatigue driving detection based on cervical and lumbar EMG and EEG signals[J]. Journal of Northeast University: Natural Science Edition, 2018, 39(1): 102-107. (in Chinese)
王琳, 化成城, 姜鑫, 等. 基于颈腰部肌电及脑电信号的疲劳驾驶检测[J]. 东北大学学报(自然科学版), 2018, 39(1): 102-107.
[9]
ARTANTO D, SULISTYANTO M P, PRANOWO I D, et al. Drowsiness detection system based on eye-closure using a low-cost EMG and ESP8266[C]//Proceedings of International Conference on Information Technology, Information Systems and Electrical Engineering. Washington D.C., USA: IEEE Press, 2017: 1-5.
[10]
POURSADEGHIYAN M, MAZLOUMI A, SARAJI G N, et al. Using image processing in the proposed drowsiness detection system design[J]. Iranian Journal of Public Health, 2018, 47(9): 1371-1378.
[11]
KNAPIK M, CYGANEK B. Driver's fatigue recognition based on yawn detection in thermal images[J]. Neurocomputing, 2019, 338: 274-292. DOI:10.1016/j.neucom.2019.02.014
[12]
LIU M Z, JIANG Q N, HU J. Driver fatigue detection based on facial geometric features and hand movement features[J]. Journal of Mechanical Engineering, 2019, 55(2): 32-40. (in Chinese)
刘明周, 蒋倩男, 扈静. 基于面部几何特征及手部运动特征的驾驶员疲劳检测[J]. 机械工程学报, 2019, 55(2): 32-40.
[13]
WANG Y Q, FENG Y W. An improved face recognition algorithm based on convolutional neural network[J]. Semiconductor Optoelectronics, 2020, 41(4): 58-586. (in Chinese)
王彦秋, 冯英伟. 一种基于卷积神经网络的人脸识别改进算法[J]. 半导体光电, 2020, 41(4): 58-586.
[14]
PARK S, PAN F, KANG S, et al. Driver drowsiness detection system based on feature representation learning using various deep networks[C]//Proceedings of ACCV'16. Berlin, Germany: Springer, 2016: 154-164.
[15]
ALEX K, SUTSKEVER I, HINTON G E, et al. ImageNet classification with deep convolutional neural networks[C]//Proceedings of NIPS'12. Berlin, Germany: Springer, 2012: 1-5.
[16]
PARKHI O M, VEDALDI A, ZISSERMAN A, et al. Deep face recognition[C]//Proceedings of BMVC'15. Swansea, UK: [s. n. ], 2015: 1-5.
[17]
DONAHUE J, HENDRICKS L A, ROHRBACH M, et al. Long-term recurrent convolutional networks for visual recognition and description[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2017, 39(4): 677-691. DOI:10.1109/TPAMI.2016.2599174
[18]
ZHENG W C, LI X W, LIU H Z, et al. Fatigue driving detection algorithm based on deep learning[J]. Computer Engineering, 2020, 46(7): 21-29. (in Chinese)
郑伟成, 李学伟, 刘宏哲, 代松银. 基于深度学习的疲劳驾驶检测算法[J]. 计算机工程, 2020, 46(7): 21-29.
[19]
ZHANG K, ZHANG Z, LI Z, et al. Joint face detection and alignment using multitask cascaded convolutional networks[J]. IEEE Signal Processing Letters, 2016, 23(10): 1499-1503. DOI:10.1109/LSP.2016.2603342
[20]
REDDY B, KIM Y H, YUN S, et al. Real-time driver drowsiness detection for embedded system using model compression of deep neural networks[C]//Proceedings of Computer Vision & Pattern Recognition Workshops. Washington D.C., USA: IEEE Press, 2017: 1-5.
[21]
MIAO X, ZHEN X, LIU X, et al. Direct shape regression networks for end-to-end face alignment[C]//Proceedings of 2018 IEEE/CVF Conference on Computer Vision and Pattern Recognition. Washington D.C., USA: IEEE Press, 2018.
[22]
LIAO S, JAIN A K, LI S Z. Partial face recognition: alignment-free approach[J]. IEEE Transactions on Pattern Analysis & Machine Intelligence, 2013, 35(5): 1193-1205.
[23]
SIMONYAN K, ZISSERMAN A. Very deep convolutional networks for large-scale image recognition[C]//Proceedings of ICLR'15. Washington D.C., USA: IEEE Press, 2015: 1-14.
[24]
HAN K, WANG Y H, TIAN Q, et al. GhostNet: more features from cheap operations[EB/OL]. (2019-11-27)[2020-05-10]. https://arxiv.org/abs/1911.11907.
[25]
SHAHID A, WILKINSON K, MARCU S, et al. Karolinska Sleepiness Scale(KSS)[M]//SHAHID A, WILKINSON K, MARCU S, et al. STOP, THAT and One Hundred Other Sleep Scales. Berlin, Germany: Springer, 2011: 1-5.
[26]
SUNG F, YANG Y, ZHANG L, et al. Learning to compare: relation network for few-shot learning[EB/OL]. (2018-03-27)[2020-05-10]. https://arxiv.org/abs/1711.06025.
[27]
MASSOZ Q, LANGOHR T, FRANCOIS C, et al. The ULg multimodality drowsiness database(called DROZY) and examples of use[C]//Proceedings of IEEE Winter Conference on Applications of Computer Vision. Washington D.C., USA: IEEE Press, 2016: 1-5.
[28]
WENG C H, LAI Y H, LAI S H. Driver drowsiness detection via a hierarchical temporal deep belief network[C]//Proceedings of the 13th Asian Conference on Computer Vision. Taipei, China: [s. n. ], 2016: 1-5.
[29]
QIN X, TAN X, CHEN S. Tri-Subject kinship verification: understanding the core of a family[J]. IEEE Transactions on Multimedia, 2015, 17(10): 1855-1867.
[30]
ZJU eyeblink database, bibinfonote[EB/OL]. (2017-09-26)[2020-05-10]. http://www.cs.zju.edu.cn/gpan/database/db_blink.html.
[31]
WANG X S, XU C. Driver drowsiness detection based on non-intrusive metrics considering individual specifics[J]. Accident Analysis and Prevention, 2016, 95(Part B): 350-357.
[32]
REN S, HE K, GIRSHICK R, et al. Faster R-CNN: towards real-time object detection with region proposal networks[J]. IEEE Transactions on Pattern Analysis & Machine Intelligence, 2017, 39(6): 1137-1149.