基于计算机视觉的驾驶员疲劳状态检测方法技术

技术编号:33780779 阅读:16 留言:0更新日期:2022-06-12 14:35
本发明专利技术公开了一种基于计算机视觉的驾驶员疲劳状态检测方法,包括以下步骤:对目标进行人脸识别获取人脸图像以及人脸关键点数据;根据人脸关键点数据,判断是否闭眼以及打哈欠;对人脸感兴趣区域进行分割并预处理;对预处理图像使用深度神经网络检测光电容积脉搏波信号,并计算心率变异率;根据上述获取到的数据,分析驾驶员当前驾驶状态。本发明专利技术运用计算机视觉技术,对驾驶员的心率变异率、闭眼时长以及打哈欠频率进行检测,从而分析出当前驾驶员是否处于疲劳状态;并在驾驶状态处于异常时及时发出警报,避免车祸的发生。而本发明专利技术方法实施只需要给车辆加装摄像头即可完成,具有低成本、高效率等优点。高效率等优点。高效率等优点。

【技术实现步骤摘要】
基于计算机视觉的驾驶员疲劳状态检测方法


[0001]本专利技术涉及视觉智能检测
,具体涉及一种基于计算机视觉的驾驶员疲劳状态检测方法。

技术介绍

[0002]目前,每年因交通事故导致数万人死亡,其中很大一部分交通事故由于驾驶员疲劳驾驶、注意力不集中导致。因此,对驾驶员尤其是公共交通的驾驶员的疲劳状态进行检测,防止因疲劳驾驶导致交通事故发生是非常必要的。
[0003]目前疲劳状态检测技术主要通过检测目标脸部关键点从而获取目标在一段时间内的闭眼时长、打哈欠频率等特征,根据特征判断目标是否处于疲劳状态。或根据深度学习技术,通过大量数据进行训练获取神经网络模型,进行面部表情识别,判断目标是否处于疲劳状态。但是人处于疲劳状态并不一定有具体面部特征表现,仅通过面部特征判断目标是否处于疲劳状态缺乏有效性。

技术实现思路

[0004]本专利技术的目的是为了解决传统心率检测需要佩戴额外设备贴近人体检测且无法实现对驾驶员疲劳状态有效监测,而同时实现上述要求需要高昂的车辆改造成本的问题,提供一种基于计算机视觉的驾驶员疲劳状态检测方法。本专利技术利用计算机视觉技术,通过摄像头捕捉人脸皮肤区域的视频,分析人脸皮肤区域因心跳而引起的血液规律性流动对光的规律吸收而引起反射光周期性变化,进而通过深度神经网络技术恢复成对应的光电容积脉搏波信号,并测量心率变异率。该方法还能够结合人脸识别技术对驾驶员的驾驶状态进行分析,得到驾驶员是否处于疲劳驾驶。
[0005]本专利技术的目的可以通过采取如下技术方案达到:
[0006]一种基于计算机视觉的驾驶员疲劳状态检测方法,所述检测方法包括以下步骤:
[0007]S1、对检测目标进行人脸识别以及人脸关键点检测,根据眼睛、嘴唇内部轮廓关键点,计算眼睛横纵比、唇部横纵比,检测目标是否闭眼以及打哈欠;
[0008]S2、对获取到的一段时间内连续的目标人脸图像帧序列,根据人脸关键点数据进行掩膜处理,保留人脸皮肤区域;并对人脸皮肤区域进行区域划分,获取多个ROI区域;对每一个ROI区域提取YUV各颜色通道平均值,获取目标人脸帧图像皮肤区域颜色通道值随时间变化的周期性变化数据,合成时空特征表示图;
[0009]S3、将时空特征表示图作为输入,训练深度神经网络,并通过训练得到的深度神经网络,计算检测目标在一段时间内的光电容积脉搏波信号;所述深度神经网络包括依次顺序连接的输入层、第一卷积层、第一均值池化层、第一残差块层、第二残差块层、第三残差块层、第四残差块层、第五残差块层、第六残差块层、第一适应性均值池化层、第一反卷积层、第二反卷积层、第二适应性均值池化层、第二卷积层、输出层;
[0010]S4、通过阈值法提取光电容积脉搏波信号峰值,提取信号峰值点集合,通过快速傅
里叶变换计算光电容积脉搏波信号的功率谱图,估计检测目标的心率变异率;
[0011]S5、将上述步骤获取的闭眼时长、打哈欠频率以及心率变异率结合开源数据集,通过C4.5决策树算法,构建疲劳检测决策树,对真实检测目标的人脸进行疲劳检测,判断检测目标当前是否处于疲劳驾驶状态。
[0012]进一步地,所述步骤S1过程如下:
[0013]S101、通过摄像头获取驾驶员头部视频图像,并对驾驶员进行人脸识别,获取驾驶员人脸部分的视频帧图像;
[0014]S102、对收集到的驾驶员人脸部分的视频帧图像,进行关键点回归,获取人脸关键点数据;
[0015]S103、根据获取的人脸关键点数据,提取左眼轮廓关键点、右眼轮廓关键点以及嘴唇内部轮廓关键点;
[0016]S104、根据左眼轮廓关键点、右眼轮廓关键点,计算眼睛纵横比,并根据获取的眼睛纵横比的取值与事先指定的第一判断阈值比较,当眼睛纵横比的取值高于第一判断阈值,则表示闭眼,低于第一判断阈值表示睁眼,并持续统计驾驶员在一段时间内的闭眼时长ET;
[0017]S105、根据嘴唇内部轮廓关键点,计算唇部纵横比,并根据获取的唇部纵横比的取值与事先指定的第二判断阈值比较,当唇部纵横比的取值高于第二判断阈值,表示张嘴或驾驶员正在打哈欠,当低于第二判断阈值,表示闭嘴,并统计驾驶员张嘴时间,如果张嘴时间超过事先指定的第三判断阈值,则表示驾驶员正在打哈欠;然后持续统计驾驶员在一段时间内打哈欠的频率M。
[0018]该步骤S1对驾驶员进行人脸识别以及人脸关键点检测,并通过关键点计算眼睛纵横比以及唇部纵横比实现对驾驶员的闭眼检测以及打哈欠检测。实际上,人脸识别以及人脸关键点检测可通过开源人脸识别工具实现。
[0019]进一步地,所述步骤S2过程如下:
[0020]S201、提取时间长度为t共n帧人脸图像以及每一帧图像对应的人脸关键点数据;
[0021]S202、根据人脸关键点数据,通过掩膜处理,去除眼睛、嘴唇以及人脸区域以外的所有图像数据,保留人脸皮肤数据。通过去除其余对检测光电容积脉搏波无关的图像数据,可有效提高检测的准确度。将人脸皮肤数据根据关键点划分为m个ROI区域;
[0022]S203、对每一个ROI区域图像转换为YUV格式图像,其中YUV颜色模型,反映图像亮度以及色度,将RGB图像转换为YUV格式图像,有助于提取人脸皮肤彩色的微小变化。对每一个ROI区域进行均值化处理,提取每一个ROI区域的YUV各颜色通道平均值C
yuv
,RGB格式转YUV格式具体实现如下:
[0023]Y=0.299R+0.587G+0.114B
[0024]U=0.500R

0.419G

0.081B+128
[0025]V=

0.169R

0.331G+0.500B+128
[0026]其中,R为红色颜色通道,G为绿色颜色通道,B为蓝色颜色通道,Y为明亮度,U为蓝色色度,V为红色色度;
[0027]S204、设C
i
为第i帧人脸图像的m个ROI区域,执行步骤S203得到反映人脸不同皮肤区域的YUV颜色通道平均值数据,令
MstMap(n,m,c)={C1,C2,...,C
n
},MstMap(n,m,c)表示长为n、宽为m,通道数为c的时空特征表示图。
[0028]该步骤S2对一段时间提取到的人脸帧图像序列通过皮肤分割,颜色模型转换,ROI区域划分,ROI区域均值计算,将每一帧图像转化为一维向量。n帧人脸图像,经上述步骤转化并组合,得到时空特征表示图,其中时空特征表示图横轴方向表示人脸一个ROI区域不同时间点的ROI颜色通道平均值,即人脸视频帧图像序列的时间域特征。纵轴方向表示人脸在有一个时间点,不同ROI区域的颜色通道平均值,即人脸视频帧图像序列的空间域特征。
[0029]进一步地,所述深度神经网络具体如下:
[0030]输入层,将时空特征表示图维度调整为深度神经网络所需的三维张量,作为深度神经网络输入数据;
[0031]第一本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于计算机视觉的驾驶员疲劳状态检测方法,其特征在于,所述检测方法包括以下步骤:S1、对检测目标进行人脸识别以及人脸关键点检测,根据眼睛、嘴唇内部轮廓关键点,计算眼睛横纵比、唇部横纵比,检测目标是否闭眼以及打哈欠;S2、对获取到的一段时间内连续的目标人脸图像帧序列,根据人脸关键点数据进行掩膜处理,保留人脸皮肤区域;并对人脸皮肤区域进行区域划分,获取多个ROI区域;对每一个ROI区域提取YUV各颜色通道平均值,获取目标人脸帧图像皮肤区域颜色通道值随时间变化的周期性变化数据,合成时空特征表示图;S3、将时空特征表示图作为输入,训练深度神经网络,并通过训练得到的深度神经网络,计算检测目标在一段时间内的光电容积脉搏波信号;所述深度神经网络包括依次顺序连接的输入层、第一卷积层、第一均值池化层、第一残差块层、第二残差块层、第三残差块层、第四残差块层、第五残差块层、第六残差块层、第一适应性均值池化层、第一反卷积层、第二反卷积层、第二适应性均值池化层、第二卷积层、输出层;S4、通过阈值法提取光电容积脉搏波信号峰值,提取信号峰值点集合,通过快速傅里叶变换计算光电容积脉搏波信号的功率谱图,估计检测目标的心率变异率;S5、将上述步骤获取的闭眼时长、打哈欠频率以及心率变异率结合开源数据集,通过C4.5决策树算法,构建疲劳检测决策树,对真实检测目标的人脸进行疲劳检测,判断检测目标当前是否处于疲劳驾驶状态。2.根据权利要求1所述的基于计算机视觉的驾驶员疲劳状态检测,其特征在于,所述步骤S1过程如下:S101、通过摄像头获取驾驶员头部视频图像,并对驾驶员进行人脸识别,获取驾驶员人脸部分的视频帧图像;S102、对收集到的驾驶员人脸部分的视频帧图像,进行关键点回归,获取人脸关键点数据;S103、根据获取的人脸关键点数据,提取左眼轮廓关键点、右眼轮廓关键点以及嘴唇内部轮廓关键点;S104、根据左眼轮廓关键点、右眼轮廓关键点,计算眼睛纵横比,并根据获取的眼睛纵横比的取值与事先指定的第一判断阈值比较,当眼睛纵横比的取值高于第一判断阈值,则表示闭眼,低于第一判断阈值表示睁眼,并持续统计驾驶员在一段时间内的闭眼时长ET;S105、根据嘴唇内部轮廓关键点,计算唇部纵横比,并根据获取的唇部纵横比的取值与事先指定的第二判断阈值比较,当唇部纵横比的取值高于第二判断阈值,表示张嘴或驾驶员正在打哈欠,当低于第二判断阈值,表示闭嘴,并统计驾驶员张嘴时间,如果张嘴时间超过事先指定的第三判断阈值,则表示驾驶员正在打哈欠;然后持续统计驾驶员在一段时间内打哈欠的频率M。3.根据权利要求2所述的基于计算机视觉的驾驶员疲劳状态监测,其特征在于,所述步骤S2过程如下:S201、提取时间长度为t共n帧人脸图像以及每一帧图像对应的人脸关键点数据;S202、根据人脸关键点数据,通过掩膜处理,保留人脸皮肤数据,并将人脸皮肤根据关键点划分为m个ROI区域;
S203、对每一个ROI区域图像转换为YUV格式图像,对每一个ROI区域进行均值化处理,提取每一个ROI区域的YUV各颜色通道平均值C
yuv
,RGB格式转YUV格式具体实现如下:Y=0.299R+0.587G+0.114BU=0.500R

0.419G

0.081B+128V=

0.169R

0.331G+0.500B+128其中,R为红色颜色通道,G为绿色颜色通道,B为蓝色颜色通道,Y为明亮度,U为蓝色色度,V为红色色度;S204、设C
i
为第i帧人脸图像的m个ROI区域,执行步骤S203得到反映人脸不同皮肤区域的YUV颜色通道平均值数据,令MstMap(n,m,c)={C1,C2,...,C
n
},MstMap(n,m,c)表示长为n、宽为m,通道数为c的时空特征表示图。4.根据权利要求1所述的基于计算机视觉的驾驶员疲劳状态监测,其特征在于,所述深度神经网络具体如下:输入层,将时空特征表示图维度调整为深度神经网络所需的三维张量,作为深度神经网络输入数据;第一卷积层,使用64个大小为7
×
7的卷积核,使用Relu激活函数,对输入层数据进行卷积;第一均值池化层,对第一卷积层输出的数据采用一个大小为2
×
2卷积核的滤波器进行均值池化;第一残差块层,包括按顺序连接的两个卷积层,每个卷积层使用64个大小为3
×
3的卷积核,第一个卷积层使用Relu函数作为激活函数,对第一均值池化层输出数据进行卷积操作,第一残差块层输出为第二个卷积层输出加上第一均值池化层输出并通过Relu激活函数计算得到;第二残差块层,包括按顺序连接的两个卷积层,每个卷积层使用64个大小为3
×
3的卷积核,第一个卷积层使用Relu函数作为激活函数,对第一残差块层输出数据进行卷积操作,第二残差块层输出为第二个卷积层输出加上第一残差块层输出并通过Relu激活函数计算得到;第三残差块层,包括按顺序连接的两个卷积层,每个卷积层使用128个大小为3
×
3的卷积核,第一个卷积层使用Relu函数作为激活函数,对第二残差块层输出数据进行卷积操作,第三残差层输出为第二个卷积层输出加...

【专利技术属性】
技术研发人员:孟小华梁杰华胡辉林兴立胡荣
申请(专利权)人:广州翰南工程技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1