一种多特征融合驾驶员异常表情识别方法与流程

文档序号:18886812发布日期:2019-10-15 21:03阅读:309来源:国知局
一种多特征融合驾驶员异常表情识别方法与流程

本发明涉及疲劳检测、人机交互及视频图像模式识别领域,尤其涉及一种多特征融合驾驶员异常表情识别方法。



背景技术:

现代社会道路交通日益繁荣,随之而来的交通事故呈现多发的趋势,在交通事故中疲劳驾驶是一个重要的诱因,如何对司机的疲劳驾驶进行有效的跟踪个报警,是减少交通事故发生的一个重要措施。其中基于计算机视觉监控的司机驾驶异常行为检测是一个新的研究热点和方向,novidia推出了aico-pilot辅助驾驶系统,使用车载摄像头获取驾驶员图像视频,结合人工智能算法,对驾驶员进行人脸识别、头部追踪、眼球运动跟踪,还可以对驾驶员的唇语进行识读,在头部出现较快速的转动偏转时会出现跟踪丢失;百度推出的疲劳驾驶监测系统,将视频信息通过4g网络上传到百度大脑云服务进行识别处理。在车辆经过信号不良的路段,数据传输会出现延迟。发明201610835397.5使用对眨眼检测识别的方法进行疲劳监测,但是缺少对其他疲劳行为的识别,201610104142.1公开一种使用脑电波识别驾驶员疲劳行为的方法,但是需要进行设备佩戴,在实际应用中不便于应用。

从目前的疲劳驾驶检测技术来看,尽管取得了一定的应用,但是仍然存在许多不足。



技术实现要素:

本发明要解决的技术问题在于针对现有技术中的缺陷,提供一种多特征融合驾驶员异常表情识别方法。

本发明解决其技术问题所采用的技术方案是:

本发明提供一种多特征融合驾驶员异常表情识别方法,实现在复杂的交通场景下,使用车载摄像头对驾驶员进行实时跟踪识别,对其异常动作进行检测,并触发报警信号,该方法包括以下步骤:

s1、通过车载摄像头,对驾驶员进行实时检测,在视频中检测是否存在驾驶员人脸;如果存在,则对驾驶员人脸位置进行标识,作为进一步分析其表情细节的输入图像;

s2、在检测到的驾驶员人脸区域中,定位关键表情单元的位置,分别在驾驶员人脸框内定位其眼睛、嘴巴、头部、颈部位置,并分别进行表情区域截取,作为后续精确分析表情的基础;

s3、检测眼睛位置,使用眼睛状态分类器,识别眼睛的眨眼、睁眼动作,出现眨眼时,判断其眨眼的时长,作为判断其是否疲劳的依据;

s4、在嘴部区域,定位嘴部边缘轮廓,并识别嘴部的张合动作,将该动作与哈欠状态分类器进行匹配,判断其是否出现哈欠动作;

s5、对头部姿态进行定位,检测头部是否出现偏转、俯仰、摇摆的动作,并检测该动作出现的时长,作为其是否出现疲劳的依据;

s6、对眼睛状态、嘴部状态、头部运动状态的检测结果进行加权,分别计算其疲劳状态参数,最终判断其是否出现疲劳,并进行输出;

s7、将当前帧的疲劳状态输出,并将当前帧的识别结果作为后续帧的识别的预估位置,分别检测后续帧中的动作,实现对驾驶员异常行为的连续检测识别;若出现驾驶员异常行为,则触发报警信号。

进一步地,本发明的步骤s1的具体方法为:

s11、通过车载摄像头拍摄驾驶员,对获取的实时视频进行人脸检测,采用快速人脸匹配算法,对驾驶员人脸位置进行定位;如果当前视频图像为第一帧或前帧跟踪丢失,则对全幅图像进行金字塔图像分解,在分解的图像中进行人脸检测;

s12、将检测到的人脸区域分别在横向纵向进行20%像素扩展,以应对脸部的运动。

进一步地,本发明的步骤s2的具体方法为:

s21、在检测到的人脸区域,使用表观匹配算法,对脸部的关键表情位置进行定位,分别定位各子部位,包括:眼睛位置、嘴部位置、头部轮廓位置、颈部位置;截取各子部位的图像,分别输出其子部位的矩形框;在检测的人脸区域的矩形框上,分别向上下左右区域扩展设定比例的像素,并将扩展的矩形区域作为人脸表情特征点的检测图像;

s22、将子部位图像进行亮度均衡处理,消除噪声点,并分别获取其灰度图。

进一步地,本发明的步骤s3的具体方法为:

s31、获取眼睛局部图像,对图像做归一化处理;

s32、对眼睛图像计算其lbp特征,并分别作为左右眼睛的状态特征;

s33、使用svm算法分别对眼睛的睁闭状态进行识别;

s34、对闭眼状态,计算其持续的时长;

s35、将闭眼时长与疲劳检测的异常时长进行比较,输出比较结果。

进一步地,本发明的步骤s4的具体方法为:

s41、提取嘴部局部图像,对局部图像进行灰度均衡和归一化处理;

s42、使用嘴部匹配模板,定位嘴部的边缘及嘴角特征点;

s43、根据匹配的边缘特征,计算嘴巴的张合度;

s44、将张合度与哈欠特征参数进行匹配,判断其是否出现哈欠动作;

s45、输出检测识别的结果。

进一步地,本发明的步骤s5的具体方法为:

s51、识别头部的位置;

s52、在后续帧中检测头部的更新位置,记录连续位置轨迹;

s53、对头部运动轨迹进行识别,判断其运动状态;

s54、根据运动轨迹,识别头部运动,分三种轨迹识别,包括:左右偏转、上下俯仰、前后摇摆,并输出状态结果;

s55、记录头部异常动作时长,作为是否出现头部异常动作的标志。

进一步地,本发明的步骤s6的具体方法为:

s61、对眼睛状态、嘴部状态、头部运动状态的检测结果进行加权,设置权重值进行结果计算;

s62、设置疲劳结果阈值,与加权计算的结果进行比较,判断是否出现异常,如果出现异常,则进行报警输出,否则继续检测后续帧。

进一步地,本发明的步骤s7的具体方法为:

s71、存储当前表情局部区域的位置信息,将位置信息上下左右各扩展20%的像素区域,做为新帧中子区域的搜索范围;

s72、获取新帧,在前帧预估的搜索范围内,计算各子表情的状态参数;

s73、对新帧中的子表情状态参数进行加权,计算识别的结果,并输出。

本发明产生的有益效果是:本发明的多特征融合驾驶员异常表情识别方法,本发明针对疲劳驾驶的应用场景,结合目前公开的技术中的不足,对驾驶员的视频图像疲劳分析方法进行改进,通过将多种疲劳情形的综合识别,进行加权,对驾驶员的疲劳驾驶行为进行全面、客观评价,采用车载装置和嵌入式算法,实现辅助疲劳驾驶的实时检测,不需依托后台数据上传下载,使系统能够在全天候、各种路况下、无需网络支持均可稳定工作,算法在以下几个方面对现有的技术进行了改进和创新:1.将驾驶员的眨眼、哈欠、点头、视线偏移等影响正常驾驶的行为分别进行识别,并将识别的结果进行综合获得疲劳驾驶的评价输出;2.使用优化的视频预估算法,使后续视频帧对疲劳表情的识别搜索范围缩小至前帧结果的附近,提高了检测的效率,并进一步提升了识别的精度。本发明能够在自然驾驶推荐场景下,使用车载摄像头进行视频采集,对驾驶员的疲劳驾驶状态进行实时的检测识别;该方法在智能驾驶辅助系统、疲劳驾驶报警系统、智能交通领域具有广泛的应用前景,可以获得较好的社会效益。

附图说明

下面将结合附图及实施例对本发明作进一步说明,附图中:

图1是本发明实施例的方法流程图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。

如图1所示,本发明实施例的多特征融合驾驶员异常表情识别方法,实现在复杂的交通场景下,使用车载摄像头对驾驶员进行实时跟踪识别,对其异常动作进行检测,并触发报警信号,该方法包括以下步骤:

s1、通过车载摄像头,对驾驶员进行实时检测,在视频中检测是否存在驾驶员人脸;如果存在,则对驾驶员人脸位置进行标识,作为进一步分析其表情细节的输入图像;

s11、通过车载摄像头拍摄驾驶员,对获取的实时视频进行人脸检测,采用快速人脸匹配算法,对驾驶员人脸位置进行定位;如果当前视频图像为第一帧或前帧跟踪丢失,则对全幅图像进行金字塔图像分解,在分解的图像中进行人脸检测;

s12、将检测到的人脸区域分别在横向纵向进行20%像素扩展,以应对脸部的运动。

s2、在检测到的驾驶员人脸区域中,定位关键表情单元的位置,分别在驾驶员人脸框内定位其眼睛、嘴巴、头部、颈部位置,并分别进行表情区域截取,作为后续精确分析表情的基础;

对驾驶员的各子表情细节图像分别进行提取,并对子表情分别建立识别模板,t=(t0,t1,t2),其中t0,t1,t2分别为眼睛闭眼模板,嘴部状态模板,头部姿态模板。模板与实际子表情图像特征w=(w0,w1,w2)的分类识别,在算法上即构建如下的形状差:δwi=wi-ti,并定义:q=[δw1…δwn],对qqt做奇异值分解,建立形状模型:

δw=qsξs

当驾驶员表情出现异常变化动作时,子表情中的关键点坐标产生变化,根据子表情对应的纹理模型所对应的纹理变化数据,建立这两者的关联。

训练模板有训练样本在离线阶段学习获取,其中形状参数和纹理参数之间存在映射函数ξg=g(ξs),ξs为子表情的形状关键点参数,ξg为子表情的图像纹理参数,g为映射函数,建立两者之间的约束:

根据上述纹理和形状关键点之间的变化与模板的匹配结果可以获取子表情的异常识别结果:r=(r0,r1,r2),为提高对异常动作表情的识别精度,对各子表情的识别结果采用加权求最终的识别输出:

其中ωi为个子表情的权重。

s21、在检测到的人脸区域,使用表观匹配算法,对脸部的关键表情位置进行定位,分别定位各子部位,包括:眼睛位置、嘴部位置、头部轮廓位置、颈部位置;截取各子部位的图像,分别输出其子部位的矩形框;在检测的人脸区域的矩形框上,分别向上下左右区域扩展设定比例的像素,并将扩展的矩形区域作为人脸表情特征点的检测图像;

s22、将子部位图像进行亮度均衡处理,消除噪声点,并分别获取其灰度图。

s3、检测眼睛位置,使用眼睛状态分类器,识别眼睛的眨眼、睁眼动作,出现眨眼时,判断其眨眼的时长,作为判断其是否疲劳的依据;

s31、获取眼睛局部图像,对图像做归一化处理;

s32、对眼睛图像计算其lbp特征,并分别作为左右眼睛的状态特征;标准的lbp算法为:

其中,p表示图像子窗口中心像素外的第p个像素点;s(c)为中心点像素的灰度,s(p)为该邻域内第p个像素点的灰度,l(x)表示对x进行二值化:

考虑到眼睛区域近似为圆形,因此对上述标准的lbp算法进行改进优化,以适应眼睛局部区域的特殊表观形态。

圆形lbp算法以眼睛区域的像素点为中心点,采样点从标准的3*3的矩形邻域,改进为以采样点为中心,半径为r的圆形邻域:

在以采样点(xc,yc)为中心圆形区域中共采样p个点,其中p为每个像素点的序号,i(c)表示中心像素的灰度,i(p)表示第p个像素点的灰度。

以r为采样像素邻域的半径,以采样点(xc,yc)为中心的圆形采样邻域内,每个采样点的坐标(xp,yp)可以表示为:

其中d为第p个点的角度值:

d=2πp/p

s33、使用svm算法分别对眼睛的睁闭状态进行识别;

使用lbp特征,构建睁闭眼训练图像的特征样本集,在训练集上进行svm分类器的训练,寻找一个超平面:

wtx+b=0

实现对两类样本的分类。根据此分类超平面,对于待识别的眼睛状态图像,可以使用下式计算其到超平面的距离:

考虑到驾驶员疲劳时采集到的眼睛的睁闭眼状态非常接近,因此实际的眼睛状态的特征集并不都是线性可分的,因此,在实际的算法中对线性分类的svm算法进行改进,引入松弛因子,使某些样本处于分类错误的一侧:

yi(wtxi+b)≥1-ξii=1,2,...,n

s34、对闭眼状态,计算其持续的时长;

s35、将闭眼时长与疲劳检测的异常时长进行比较,输出比较结果。

s4、在嘴部区域,定位嘴部边缘轮廓,并识别嘴部的张合动作,将该动作与哈欠状态分类器进行匹配,判断其是否出现哈欠动作;

s41、提取嘴部局部图像,对局部图像进行灰度均衡和归一化处理;

s42、使用嘴部匹配模板,定位嘴部的边缘及嘴角特征点;

s43、根据匹配的边缘特征,计算嘴巴的张合度;

其中pi,qi为实际的特征点的坐标与模板的坐标,计算其对应点的距离之和,作为嘴巴张合度的计算结果。

s44、将张合度与哈欠特征参数进行匹配,判断其是否出现哈欠动作;

h(t)为该帧视频的哈欠识别结果,通过对连续帧的嘴巴张合度的计算结果累计进行判别。

s45、输出检测识别的结果。

s5、对头部姿态进行定位,检测头部是否出现偏转、俯仰、摇摆等动作,并检测该动作出现的时长,作为其是否出现疲劳的依据;

s51、识别头部的位置;

s52、在后续帧中检测头部的更新位置,记录连续位置轨迹;

s53、对头部运动轨迹进行识别,判断其运动状态;

s54、根据运动轨迹,识别头部运动,分三种轨迹识别,包括:左右偏转、上下俯仰、前后摇摆,并输出状态结果;

(1)左右偏转:左右偏转针对脸部两侧的轮廓关键点进行计算,识别其围绕头部的主轴左右旋转的角度,s1为两侧的轮廓关键点集:

(2)上下俯仰:上下俯仰针对脸部两侧的轮廓关键点进行计算,识别其围绕头部的主轴上下俯仰的角度,s2为头部上下边缘轮廓点集:

(3)前后摇摆:前后摇摆体现为轮廓点在深度方向前后唯一变化,可以通过计算三维空间上的脸部轮廓关键点的z轴坐标实现判别:

s55、记录头部异常动作时长,作为是否出现头部异常动作的标志。

s6、对眼睛状态、嘴部状态、头部运动状态的检测结果进行加权,分别计算其疲劳状态参数,最终判断其是否出现疲劳,并进行输出;

s61、对眼睛状态、嘴部状态、头部运动状态的检测结果进行加权,设置权重值进行结果计算;

s62、设置疲劳结果阈值,与加权计算的结果进行比较,判断是否出现异常,如果出现异常,则进行报警输出,否则继续检测后续帧。

s7、将当前帧的疲劳状态输出,并将当前帧的识别结果作为后续帧的识别的预估位置,分别检测后续帧中的动作,实现对驾驶员异常行为的连续检测识别;若出现驾驶员异常行为,则触发报警信号。

s71、存储当前表情局部区域的位置信息,将位置信息上下左右各扩展20%的像素区域,做为新帧中子区域的搜索范围;

s72、获取新帧,在前帧预估的搜索范围内,计算各子表情的状态参数;

s73、对新帧中的子表情状态参数进行加权,计算识别的结果,并输出。

本发明的优点是:

1、针对驾驶员行车过程中的视频跟踪的实时问题,采用连续帧位置预估算法,使用前帧对其结果,对后续帧的表情位置进行预估,后续帧的检测范围在此预估范围的基础上进行搜索,减少了搜索范围,提高了搜索效率,使跟踪该算法可以实现实时跟踪;

2、对视频中的闭眼问题,使用lbp特征和svm算法,通过离线样本训练,获取分类器,在线提取双眼实际图像后,使用离线的分类器,对眼睛的闭合状态进行识别,从而使眼睛状态的识别精度得以提升;

3、使用嘴部状态模板,对是否打哈欠出现的嘴部异常进行识别,改进了直接计算嘴部关键点位置导致的识别误差,使识别的精度和效率得到提高;

4、改进现有的发明算法中使用单一特征进行疲劳状态带来的误差,而考虑多种疲劳状态的识别与检测,并将多种检测的结果进行加权,使识别的结果更为精确,减少了单项特征导致的误差。

应当理解的是,对本领域普通技术人员来说,可以根据上述说明加以改进或变换,而所有这些改进和变换都应属于本发明所附权利要求的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1