一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于面部特征的实时疲劳驾驶检测方法和存储设备与流程

2022-02-20 00:41:17 来源:中国专利 TAG:


1.本发明涉及计算机视觉与人工智能运用领域,特别涉及一种基于面部特征的实时疲劳驾驶检测方法和存储设备。


背景技术:

2.目前市场上运用于对于疲劳检测的方法主要有基于人的生理特征以及面部特征这两大类,生理特征包括脑电波、心率信号以及肌电反应这三种,基于生理特征对于人体疲劳检测都存在着检测成本高、耗时、人体皮肤接触不适和难推广性的缺点;再者基于面部特征是目前研究的重点,面部特征包括眼动,嘴动以及头动这三大行为,目前对于面部特征的单一行为判断误差较大并且效率低下。因此对于如何提高效率、时间和准确度是待解决的重点问题。


技术实现要素:

3.为此,需要提供一种基于面部特征的实时疲劳驾驶检测方法,用以解决现有基于面部特征进行疲劳检测准确度低的技术问题。具体技术方案如下:
4.一种基于面部特征的实时疲劳驾驶检测方法,包括步骤:
5.采集目标对象的人脸视频信息;
6.对所述人脸视频信息进行处理提取脸部特征点;
7.根据所述脸部特征点对目标器官的行为轨迹进行计算;
8.根据行为轨迹计算结果判断目标对象是否处于疲劳状态;
9.所述目标器官包括但不限于:眼睛、嘴巴、头部。
10.进一步的,所述“对所述人脸视频信息进行处理提取脸部特征点”,具体还包括步骤:
11.对所述人脸视频信息进行处理提取每一帧的图像信息,对所述每一帧的图像信息进行人脸检测,若检测到人脸,则通过dlib模型提取脸部特征点。
12.进一步的,所述“根据所述脸部特征点对目标器官的行为轨迹进行计算”,具体还包括步骤:
13.通过dlib模型提取的眼部特征点计算眼部实时动作行动轨迹;
14.通过dlib模型提取的嘴部特征点计算嘴部实时动作行动轨迹;
15.通过dlib模型提取的鼻尖特征点由2d人脸信息构建出3d模型,通过所述3d模型计算出头部的行为轨迹信号。
16.进一步的,所述“根据行为轨迹计算结果判断目标对象是否处于疲劳状态”,具体还包括步骤:
17.判断某一时刻眼部纵横比是否大于等于第一预设阈值,或嘴部纵横比大于等于第二预设阈值,或头部姿态欧拉角是否大于等于第三预设阈值,若以上满足任意其一,则判定所述目标对象处于疲劳状态。
18.进一步的,所述“通过dlib模型提取的眼部特征点计算眼部实时动作行动轨迹”,具体还包括步骤:
19.通过ear算法计算眼部实时动作行动轨迹;
20.所述“通过dlib模型提取的嘴部特征点计算嘴部实时动作行动轨迹”,具体还包括步骤:
21.通过mar算法计算嘴部实时动作行动轨迹;
22.所述“通过dlib模型提取的鼻尖特征点由2d人脸信息构建出3d模型,通过所述3d模型计算出头部的行为轨迹信号”,具体还包括步骤:
23.通过dlib模型采集到的脸部特征点信息,根据鼻尖特征点运用头部姿态估计算法,计算头部的三维的欧拉角。
24.为解决上述技术问题,还提供了一种存储设备,具体技术方案如下:
25.一种存储设备,其中存储有指令集,所述指令集用于执行:采集目标对象的人脸视频信息;
26.对所述人脸视频信息进行处理提取脸部特征点;
27.根据所述脸部特征点对目标器官的行为轨迹进行计算;
28.根据行为轨迹计算结果判断目标对象是否处于疲劳状态;
29.所述目标器官包括但不限于:眼睛、嘴巴、头部。
30.进一步的,所述指令集还用于执行:
31.所述“对所述人脸视频信息进行处理提取脸部特征点”,具体还包括步骤:
32.对所述人脸视频信息进行处理提取每一帧的图像信息,对所述每一帧的图像信息进行人脸检测,若检测到人脸,则通过dlib模型提取脸部特征点。
33.进一步的,所述指令集还用于执行:
34.所述“根据所述脸部特征点对目标器官的行为轨迹进行计算”,具体还包括步骤:
35.通过dlib模型提取的眼部特征点计算眼部实时动作行动轨迹;
36.通过dlib模型提取的嘴部特征点计算嘴部实时动作行动轨迹;
37.通过dlib模型提取的鼻尖特征点由2d人脸信息构建出3d模型,通过所述3d模型计算出头部的行为轨迹信号。
38.进一步的,所述指令集还用于执行:
39.所述“根据行为轨迹计算结果判断目标对象是否处于疲劳状态”,具体还包括步骤:
40.判断某一时刻眼部纵横比是否大于等于第一预设阈值,或嘴部纵横比大于等于第二预设阈值,或头部姿态欧拉角是否大于等于第三预设阈值,若以上满足任意其一,则判定所述目标对象处于疲劳状态。
41.进一步的,所述指令集还用于执行:
42.所述“通过dlib模型提取的眼部特征点计算眼部实时动作行动轨迹”,具体还包括步骤:
43.通过ear算法计算眼部实时动作行动轨迹;
44.所述“通过dlib模型提取的嘴部特征点计算嘴部实时动作行动轨迹”,具体还包括步骤:
45.通过mar算法计算嘴部实时动作行动轨迹;
46.所述“通过dlib模型提取的鼻尖特征点由2d人脸信息构建出3d模型,通过所述3d模型计算出头部的行为轨迹信号”,具体还包括步骤:
47.通过dlib模型采集到的脸部特征点信息,根据鼻尖特征点运用头部姿态估计算法,计算头部的三维的欧拉角。
48.本发明的有益效果是:一种基于面部特征的实时疲劳驾驶检测方法,包括步骤:采集目标对象的人脸视频信息;对所述人脸视频信息进行处理提取脸部特征点;根据所述脸部特征点对目标器官的行为轨迹进行计算;根据行为轨迹计算结果判断目标对象是否处于疲劳状态;所述目标器官包括但不限于:眼睛、嘴巴、头部。通过以上方法,可以综合对眼睛、嘴巴、头部三大行为轨迹信号进行判断,获取其运动状态,使得如在某些情况有些人眼睛很小无法通过眼部纵横比来判断,或人与人之间睡觉行为不一,无法通过头部姿态欧拉角等来判断,然而根据三个目标器官的运动状态来判断目标对象是否处于疲劳状态,采用多种行为共同判断,大大改进了测量的准确性,方便了日常出行的自我疲劳驾驶检测。
附图说明
49.图1为具体实施方式所述一种基于面部特征的实时疲劳驾驶检测方法的流程图;
50.图2为具体实施方式所述一种基于面部特征的实时疲劳驾驶检测方法的示意图;
51.图3为具体实施方式所述脸部特征点示意图;
52.图4为具体实施方式所述通过数值反映眼部运动轨迹示意图;
53.图5为具体实施方式所述通过数值反映嘴部运动轨迹示意图;
54.图6为具体实施方式所述一种存储设备的模块示意图。
55.附图标记说明:
56.600、存储设备。
具体实施方式
57.为详细说明技术方案的技术内容、构造特征、所实现目的及效果,以下结合具体实施例并配合附图详予说明。
58.请参阅图1至图5,在本实施方式中,一种基于面部特征的实时疲劳驾驶检测方法可应用在一种存储设备上,所述存储设备包括但不限于:个人计算机、服务器、通用计算机、专用计算机、网络设备、嵌入式设备、可编程设备、智能移动终端、车载智能设备等。具体技术方案如下:
59.步骤s101:采集目标对象的人脸视频信息。在本实施方式中具体为通过open cv打开摄像装置采集的被测目标对象的人脸视频信息。
60.采集到人脸视频信息后,执行步骤s102:对所述人脸视频信息进行处理提取脸部特征点。具体还包括步骤:
61.对所述人脸视频信息进行处理提取每一帧的图像信息,对所述每一帧的图像信息进行人脸检测,若检测到人脸,则通过dlib模型提取脸部特征点。其中对于人脸检测在本实施方式中运用的open cv中的类haar技术和dlib模型中的人脸匹配技术,相互作用,提高人脸检测的速度同时也提高了准确度,并将视频中每一帧图像进行人脸信息判断。
62.对于采集到的人脸信息,利用dlib模型技术对于人脸中的信息进行特征点提取,dlib模型可在人脸上准确地定位出各个器官的位置,并用特征点进行标识。
63.标识好特征点后,执行步骤s103:根据所述脸部特征点对目标器官的行为轨迹进行计算。以下具体展开说明:
64.在发明过程中用的dlib模型运用到了surf算法和hog算法,其中surf算法是利用了改良的sift算法,在保留原算法的优点的同时改良了计算复杂和耗时的缺点。hog算法是用来捕捉对象轮廓信息的同时降低了图像的噪声信息。其中surf算法中要用到积分图像的概念,借助积分图像,将图像与高斯二阶微分模板的滤波转化为对积分图像的加减运算,图像中任意一点(x,y)对应的积分为ii(x,y),为原图像左上角到(x,y)的对角线区域灰度值的总和:即:
65.式中,p(i,j)表示图像中点(i,j)的灰度值,ii(x,y)可以用如下两个迭代计算得到
66.s(x,y)=s(x,y-1) p(x,y)
67.ii(x,y)=ii(x-1,y) s(x,y)
68.s(x,y)表示一列的积分,且s(x,y-1)=0,ii(x-1,y)=0。求积分只需对原图像进行扫描即可。
69.第二种方法:
70.即使用surf和hog算法先进行检测和提取,而后对于器官轨迹数值计算使用ear和mar。
71.具体还包括步骤:
72.通过dlib模型提取的眼部特征点计算眼部实时动作行动轨迹;通过dlib模型提取的嘴部特征点计算嘴部实时动作行动轨迹;通过dlib模型提取的鼻尖特征点由2d人脸信息构建出3d模型,通过所述3d模型计算出头部的行为轨迹信号,具体可为通过dlib模型采集到的脸部特征点信息,根据鼻尖特征点运用头部姿态估计算法,可以计算出头部的三维的欧拉角,分别包含x,y,z三个维度即为俯仰角,偏航角,滚转角,就是生活中常见的抬头,摇头和转头,因此利用dlib模型可以实时的模拟头部行为轨迹。
73.通过以上方法针对面部的动作轨迹用了数值形式表示出来,清晰地展现了正常情况下与疲劳情况的数值变化,如图4和图5所示,其中,x轴表示时间,y轴表示不同时间下的眼睛、嘴巴纵横比数值,纵横比是用来表示眼睛及嘴巴张开的程度。由图3可得,得到的人脸68个特征点,其中眼部数值可以为37至42表示,因此得到的纵横比可以用
[0074][0075]
表示,式中可以看出当闭合时数值接近为0。针对于头部行为运用头部姿态估计,由2d的人脸特征匹配出3d人脸模型,在利用鼻尖点的空间位置移动,计算头部的欧拉角大小来表示头部运动,可以表示出当疲劳打瞌睡的数值。
[0076]
计算好各个目标器官的行为轨迹后,可执行步骤s104:根据行为轨迹计算结果判断目标对象是否处于疲劳状态;所述目标器官包括但不限于:眼睛、嘴巴、头部。
[0077]
所述“根据行为轨迹计算结果判断目标对象是否处于疲劳状态”,具体还包括步
骤:
[0078]
判断某一时刻眼部纵横比是否大于等于第一预设阈值,或嘴部纵横比大于等于第二预设阈值,或头部姿态估计中的欧拉角是否大于等于第三预设阈值,若以上满足任意其一,则判定所述目标对象处于疲劳状态。
[0079]
一种基于面部特征的实时疲劳驾驶检测方法,包括步骤:采集目标对象的人脸视频信息;对所述人脸视频信息进行处理提取脸部特征点;根据所述脸部特征点对目标器官的行为轨迹进行计算;根据行为轨迹计算结果判断目标对象是否处于疲劳状态;所述目标器官包括但不限于:眼睛、嘴巴、头部。通过以上方法,可以综合对眼睛、嘴巴、头部三大行为轨迹信号进行判断,获取其运动状态,使得如在某些情况有些人眼睛很小无法通过眼部纵横比来判断,或人与人之间睡觉行为不一,无法通过头部姿态欧拉角等来判断,然而根据三个目标器官的运动状态来判断目标对象是否处于疲劳状态,采用多种行为共同判断,大大改进了测量的准确性,方便了日常出行的自我疲劳驾驶检测。
[0080]
请参阅图2至图6,在本实施方式中,一种存储设备600的具体实施方式如下:
[0081]
一种存储设备600,其中存储有指令集,所述指令集用于执行:采集目标对象的人脸视频信息。在本实施方式中具体为通过open cv打开摄像装置采集的被测目标对象的人脸视频信息。
[0082]
采集到人脸视频信息后,对所述人脸视频信息进行处理提取脸部特征点。具体还包括步骤:
[0083]
对所述人脸视频信息进行处理提取每一帧的图像信息,对所述每一帧的图像信息进行人脸检测,若检测到人脸,则通过dlib模型提取脸部特征点。其中对于人脸检测在本实施方式中运用的open cv中的类haar技术和dlib模型中的人脸匹配技术,相互作用,提高人脸检测的速度同时也提高了准确度,并将视频中每一帧图像进行人脸信息判断。
[0084]
对于采集到的人脸信息,利用dlib模型技术对于人脸中的信息进行特征点提取,dlib模型可在人脸上准确地定位出各个器官的位置,并用特征点进行标识。
[0085]
标识好特征点后,根据所述脸部特征点对目标器官的行为轨迹进行计算。以下具体展开说明:
[0086]
在发明过程中用的dlib模型运用到了surf算法和hog算法,其中surf算法是利用了改良的sift算法,在保留原算法的优点的同时改良了计算复杂和耗时的缺点。hog算法是用来捕捉对象轮廓信息的同时降低了图像的噪声信息。其中surf算法中要用到积分图像的概念,借助积分图像,将图像与高斯二阶微分模板的滤波转化为对积分图像的加减运算,图像中任意一点(x,y)对应的积分为ii(x,y),为原图像左上角到(x,y)的对角线区域灰度值的总和:即:
[0087]
式中,p(i,j)表示图像中点(i,j)的灰度值,ii(x,y)可以用如下两个迭代计算得到
[0088]
s(x,y)=s(x,y-1) p(x,y)
[0089]
ii(x,y)=ii(x-1,y) s(x,y)
[0090]
s(x,y)表示一列的积分,且s(x,y-1)=0,ii(x-1,y)=0。求积分只需对原图像进行扫描即可。
[0091]
第二种方法:
[0092]
即使用surf和hog算法先进行检测和提取,而后对于器官轨迹数值计算使用ear和mar。
[0093]
具体还包括步骤:
[0094]
通过dlib模型提取的眼部特征点计算眼部实时动作行动轨迹;通过dlib模型提取的嘴部特征点计算嘴部实时动作行动轨迹;通过dlib模型提取的鼻尖特征点由2d人脸信息构建出3d模型,通过所述3d模型计算出头部的行为轨迹信号,具体可为通过dlib模型采集到的脸部特征点信息,根据鼻尖特征点运用头部姿态估计算法,可以计算出头部的三维的欧拉角,分别包含x,y,z三个维度即为俯仰角,偏航角,滚转角,就是生活中常见的抬头,摇头和转头,因此利用dlib模型可以实时的模拟头部行为轨迹。
[0095]
通过以上方法针对面部的动作轨迹用了数值形式表示出来,清晰地展现了正常情况下与疲劳情况的数值变化,如图4和图5所示,其中,x轴表示时间,y轴表示不同时间下的眼睛、嘴巴纵横比数值,纵横比是用来表示眼睛及嘴巴张开的程度。由图3可得,得到的人脸68个特征点,其中眼部数值可以为37至42表示,因此得到的纵横比可以用
[0096][0097]
表示,式中可以看出当闭合时数值接近为0。针对于头部行为运用头部姿态估计,由2d的人脸特征匹配出3d人脸模型,在利用鼻尖点的空间位置移动,计算头部的欧拉角大小来表示头部运动,可以表示出当疲劳打瞌睡的数值。
[0098]
计算好各个目标器官的行为轨迹后,根据行为轨迹计算结果判断目标对象是否处于疲劳状态;
[0099]
所述目标器官包括但不限于:眼睛、嘴巴、头部。
[0100]
进一步的,所述指令集还用于执行:
[0101]
所述“根据行为轨迹计算结果判断目标对象是否处于疲劳状态”,具体还包括步骤:
[0102]
判断某一时刻眼部纵横比是否大于等于第一预设阈值,或嘴部纵横比大于等于第二预设阈值,或头部姿态欧拉角是否大于等于第三预设阈值,若以上满足任意其一,则判定所述目标对象处于疲劳状态。
[0103]
通过以上存储设备600可以综合对眼睛、嘴巴、头部三大行为轨迹信号进行判断,获取其运动状态,使得如在某些情况有些人眼睛很小无法通过眼部纵横比来判断,或人与人之间睡觉行为不一,无法通过头部姿态欧拉角等来判断,然而进而根据三个目标器官的运动状态来判断目标对象是否处于疲劳状态,采用多种行为共同判断,大大改进了测量的准确性,方便了日常出行的自我疲劳驾驶检测。
[0104]
需要说明的是,尽管在本文中已经对上述各实施例进行了描述,但并非因此限制本发明的专利保护范围。因此,基于本发明的创新理念,对本文所述实施例进行的变更和修改,或利用本发明说明书及附图内容所作的等效结构或等效流程变换,直接或间接地将以上技术方案运用在其他相关的技术领域,均包括在本发明的专利保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献