论文部分内容阅读
基于生理反应的疲劳检测研究成果,主要是利用机器视觉等技术检测驾驶员的眼睛、面部及头部位置等信息,可以实现非侵入地疲劳检测,但是存在一定的技术局限,主要表现在:传统的机器视觉算法容易受到光照、头部姿态、面部遮挡等环境影响;此外,对于眼睑、瞳孔等部位的定位精度以及头部姿态的检测精度,易受到算法效率的影响,实时性和准确率有待提高。本课题以建立基于深度学习方法的面部信息处理为主要任务,以提高算法在复杂环境下的检测性能。本文围绕眼睛关键点检测、三维头部姿态估计以及疲劳分类模型设计等核心问题展开相关研究,主要研究内容有:(1)建立了基于多任务学习范式和级联CNN(Convolutional Neural Network)的眼睛关键点检测模型。首次创建并分析了眼睛关键点检测数据集——OCE数据集。接着详细分析了多任务学习和级联结构的原理和实现机制,在此基础上针对眼睛关键点检测任务,设计了级联的CNN网络结构,兼顾了图像输入的尺寸和背景噪声的消除两方面,由粗到精的调整眼睛关键点位置,并在第一层CNN网络中联合眼睛状态任务实现hard参数共享方式的多任务学习机制,作为正则化手段辅助模型学习到眼睛更本征的特征。在OCE的测试集上的实验结果表明,相比于测试基准,级联结构和多任务学习机制测试精度分别提升了27.5%和13.4%。最后在公有数据集UBIRIS V1.0,MMU V1.0和MICHE-I上的对比实验进一步验证了该模型的有效性和泛化性。(2)提出了基于弱监督学习的眼睛关键点检测模型,能够在遮挡严重的人脸图像和局部眼睛图像上实现眼睛关键点检测。首先,分析了WSS数据集的样本组成及特性,包括有监督样本和弱监督样本。接着阐明了在弱监督学习框架下的算法学习原理,详细分析了faster R-CNN模块和循环学习模块。faster R-CNN模块利用有监督样本和弱监督样本可以实现端到端地训练,能够检测人脸部件和眼睛的初始位置;循环学习模块在眼睛初始形状的基础上,综合利用不同阶段的监督信息,实现眼睛关键点位置的优化。在WSS的测试集上实验结果表明,faster R-CNN利用两种样本相比于仅使用有监督样本的眼睛关键点检测精度提升了17.7%;循环学习模型相比于基准测试模型和级联结构模型分别提升了24.8%和11.0%。进一步在公有数据集上验证模型的泛化性能,首先是在LFPW测试集和300W测试集的测试结果表明,该算法在人脸关键点检测任务上表现出较高的测试精度;最后在UBIRIS.v2和MICHE数据集上的对比实验验证了该算法在眼睛定位任务上的提升作用。(3)提出了基于两层融合的top-k回归的改进头部姿态检测模型。首先,对于以分类任务为基础的头部姿态估计算法,分析讨论了不同角度间隔对头部姿态估计方法的性能影响;接着选择了两种角度间隔,理论推导了top-k回归头部姿态检测模型,并实验分析了不同k值对头部姿态估计的性能影响;对于分类和回归任务,理论推导了两任务结合的参数学习策略,从训练数据中学习超参数的数值。该策略避免了复杂的手动设计超参数,同时提升了头部姿态检测的精度。最后,在AFLW2000和BIWI数据集上的平均测试误差为5.28°和4.29°,验证了提出算法的有效性和泛化性。(4)提出了基于统计学的和基于时序LBP-3DCNN的疲劳状态检测模型。首先分析了疲劳数据集的样本特性,然后采用统计学的方法结合提取的驾驶员眼动特征和三维头部姿态,构建了疲劳特征参数空间。利用该特征空间设计了基于浅层神经网络的疲劳状态分类器,该分类器在疲劳数据集的测试集上的精度为85.91%。本文进一步尝试研究了基于时序LBP-3DCNN的疲劳状态估计模型。该模型采用多帧图像序列作为输入,通过时序LBP纹理特征和3D卷积模块,提取图像的空间表观特征和时空运动特征。该方法构建地深度LBP-3DCNN网络能够实现端到端地学习,并集成三通道的特征融合输出驾驶员的疲劳水平,在疲劳数据集的测试集上的精度为89.54%,相比于基于统计学的疲劳状态估计算法提升了4.23%,该实验结果验证了该方法的有效性。