基于单目视觉的驾驶员疲劳检测方法

文档序号:6584287阅读:176来源:国知局
专利名称:基于单目视觉的驾驶员疲劳检测方法
技术领域
本发明属于汽车主动安全驾驶技术,特别是一种基于单目视觉的驾驶员疲劳检测 方法。
背景技术
驾驶员疲劳是造成恶性交通事故的重要原因之一,严重危害交通安全。驾驶疲劳 检测是对驾驶员在行车中出现的疲劳现象进行实时检测并施以适当警告,防止出现事故的 过程。目前,主流的驾驶员疲劳检测技术分为三类分别是基于驾驶员生理参数的疲劳检 测、基于车辆行驶状态的疲劳检测和基于驾驶员行为特征的疲劳检测。基于驾驶员生理参 数的疲劳检测,如脑电波(EEG)、眼电波(EOG)和心律等,其中EEG被称为测量疲劳的“金标 准”。该类方法利用在清醒和疲劳时人体生理信号的不同进行检测,由于能直接且准确的反 映疲劳的发生,此类方法准确度较高,但在检测生理信号特征时都必须使用接触人体的电 极,常对司机造成干扰和负担。基于车辆行驶状态的疲劳检测,如速度、侧加速、侧位移等。 通过检测车道偏离量、行道线跟踪,驾车侧位移的功率谱密度等指标来检测驾驶疲劳。基于 驾驶员行为特征的疲劳检测,该类方法是无接触式的检测方法。行为特征主要包括眼睛状 态、点头动作等。因为基于驾驶员行为特征的方法较易实现,并且人眼既可以提供较丰富的 信息用于疲劳检测的判断,又可以做到既客观又无干扰,而且视觉传感器的价格相对便宜, 且可以获得更直观、更丰富的信息,无须接触驾驶员,所以基于行为识别、特别是基于眼睛 状态识别的驾驶疲劳检测是公认的最有前景的一种技术。实用新型专利200620132320. 3中提到的“疲劳驾驶提醒装置”利用红外线传感器 时刻监视驾驶员头部是否保持在正常驾驶位置,如果发生离开或偏移的事件,则及时启动 报警。但该方法存在的问题是疲劳时驾驶员的头部位置可能并不发生明显的变化。

发明内容
本发明的目的在于提供一种基于单目视觉的驾驶员疲劳检测方法。实现本发明目的的技术解决方案为一种基于单目视觉的驾驶员疲劳检测方法, 步骤为步骤1 对每帧图像进行人脸检测,如果检测到人脸,就记录下当前人脸区域,如 果检测不到人脸,就使用最新记录的人脸区域初始化人脸跟踪器,并用它进行人脸跟踪,若 当前帧没有检测到人脸,并且最近N帧内也没有检测到人脸的记录,则执行步骤4 ;步骤2 在人脸区域中利用形态学滤波方法检测暗区域并结合几何位置信息寻找 瞳孔区域,实现双眼的检测与定位;若检测不到可靠的双眼,执行步骤4 ;步骤3 从眼睛区域中提取瞳孔面积比率特征、最大行平均水平垂直梯度比率特 征、人眼区域均方差特征和肤色像素比率特征区分眼睛的睁闭状态,实现人眼状态识别;步骤4:进行连续状态判断以获得驾驶员疲劳状态检测结果,若当前帧没有检测 到人脸,并且在最近N帧内也没有检测到人脸的记录,则本帧判为异常,否则判为正常;若检测到了人脸,但检测不到可靠的双眼,则本帧判为异常,否则判为正常;若检测到人脸,并 且也检测到了可靠的双眼,如果双眼是闭合状态,则本帧判为异常,否则判为正常;如果连 续Tl帧出现异常,或1秒内两异常状态之间的平均间隔小于阈值T2,则认为驾驶员有疲劳 倾向。本发明与现有技术相比,其显著优点(1)直接对单幅图像进行处理,只要人脸包 含于图像中,均能进行检测,不受摄像头抖动(车辆颠簸)的影响;( 时间复杂度低,能实 时处理;C3)直接利用脸部检测与跟踪和眼睛状态识别等生物特征识别方法,避免了接触 式检测,实用性强;(4)使用单目视觉,系统配置简单、硬件成本低、易于大规模推广。下面结合附图对本发明作进一步详细描述。


图1是本发明基于单目视觉的驾驶员疲劳检测方法的整体流程图。图2是本发明基于单目视觉的驾驶员疲劳检测方法的人脸检测跟踪流程图。图3是本发明基于单目视觉的驾驶员疲劳检测方法的人眼检测与定位流程图。图4是本发明基于单目视觉的驾驶员疲劳检测方法的人眼检测与定位过程示意 图。图5是本发明基于单目视觉的驾驶员疲劳检测方法的人眼状态识别流程图。图6是本发明基于单目视觉的驾驶员疲劳检测方法的各状态识别特征鉴别性能 和肤色像素分布示意图。图7是本发明基于单目视觉的驾驶员疲劳检测方法的驾驶员疲劳状态检测结果。
具体实施例方式结合图1,本发明基于单目视觉的驾驶员疲劳检测方法,步骤如下步骤1 对每帧图像进行人脸检测,如果检测到人脸,就记录下当前人脸区域,如 果检测不到人脸,就使用最新记录的人脸区域初始化人脸跟踪器,并用它进行人脸跟踪,若 当前帧没有检测到人脸,并且最近N帧内也没有检测到人脸的记录,则执行步骤4 ;步骤2 在人脸区域中利用形态学滤波方法检测暗区域并结合几何位置信息寻找 瞳孔区域,实现双眼的检测与定位;若检测不到可靠的双眼,执行步骤4 ;步骤3 从眼睛区域中提取瞳孔面积比率特征、最大行平均水平垂直梯度比率特 征、人眼区域均方差特征和肤色像素比率特征区分眼睛的睁闭状态,实现人眼状态识别;步骤4 进行连续状态判断以获得驾驶员疲劳状态检测结果。若当前帧没有检测 到人脸,并且在最近N帧内也没有检测到人脸的记录,则本帧判为异常,否则判为正常;若 检测到了人脸,但检测不到可靠的双眼,则本帧判为异常,否则判为正常;若检测到人脸,并 且也检测到了可靠的双眼,如果双眼是闭合状态,则本帧判为异常,否则判为正常;如果连 续Tl帧出现异常,或1秒内两异常状态之间的平均间隔小于阈值T2,则认为驾驶员有疲劳 倾向。具体实施过程如下。第一步人脸检测与跟踪。对采集到的原始图像,本发明将Adaboost人脸检测算法[Viola P.,JonesM. J. Robust Real-time Object Detection, Cambridge Research Laboratory, Technical Report Series. CRL2001/01.]和 MeanShift 跟踪算法[Comaniciu D, Ramesh V, Meer P. Real-Time Tracking of Non-Rigid Objects Using Mean Shift. IEEE Conference on Computer Vision and Pattern Recognition, 2000 2:142-149]两者结合起来,采用连续 检测,短时跟踪策略,即对采集到的每一帧原图像,采用Adaboost人脸检测方法进行人脸 检测,当Adaboost检测到人脸时,对所有得到的人脸候选区域,通过区域大小、肤色信息限 制条件选出最可能的一个候选区域作为真实人脸区域,将该人脸位置输出,并记录下该区 域的位置和当前帧图像;如果检测不到或者没有一个满足限制条件的候选区域,就用最近 一次记录的图像和人脸位置对Mean-Shift进行初始化,并使用Mear^hift跟踪算法在当 前图像上匹配搜索人脸区域,如果跟踪到的区域与初始化时的人脸区域的相似度大于T, 则以跟踪到的人脸区域作为人脸检测结果。如果后续图像中Adaboost检测器仍然检测不 到,则一直进行Mear^hift跟踪。这样就使得在人脸突然发生剧烈摆动时(车剧烈颠簸), 不至于丢失人脸,在人脸侧转或被部分遮挡、Adaboost无法检测人脸时也能获得可靠的人 脸区域。Adaboost检测器检测人脸准确性高,使用其结果初始化Mear^hift算法,能提高 MeanShift的跟踪精度,将长时跟踪分成一段段短时跟踪,避免了一次初始化后长时跟踪时 MeanShift跟踪算法的尺度预测问题。在Mear^hift算法的实现中,本发明采用了 YCgCr 空间[de Dios, J. J.,Garcia. N. Face detection based on a new color space YCgCr, International Conference on Image Processing,2003,3(2) :111-909-12]中 Cg禾口Cr通 道的二维联合直方图来建立颜色直方图,肤色像素在Cg-Cr空间中的分布较紧凑。此外,为 了提高处理速度,Adaboost算法的实现上采用了加速手段,Adaboost人脸检测是在全图上 搜索得到,且分为不同尺度进行搜索,虽然速度较快,但仍可进一步加速,实现时,我们将原 图像首先降采样为原图像大小的1/4,并在降采样后的图像上进行Adaboost检测,检测到 人脸区域后再投影到原图像坐标上。这一加速对人脸检测率几乎没有影响,在定位的精度 上与不降采样结果相差很小,但速度比不降采样时提高3至4倍。第二步人眼检测与定位。本发明利用形态学滤波寻找暗眼球区域进行人眼定位。对人脸区域图像(如图 4(a))使用尺寸为5X5的方形结构元素进行灰度形态学闭运算/' = (/十6)Θ ,得到滤波 图像f',如图4(b)其中 和Θ分别是形态学膨胀和腐蚀运算;将滤波图像与原图像相 减fsub = f' _f得到突出脸部所有暗区域的差图像fsub,如图4(c),原图像中越暗的区域在 差图像中越亮;采用基于差图像直方图选取分割阈值Tf,并使用该阈值对差图像Tsub进行 分割,得到二值化图像,如图4(d);在分割后的图像中,除眼部暗区域外,人脸部分轮廓,眉 毛、鼻、嘴也被分割出来,剔除这些干扰的方法是通过连通域分析进一步去除长宽比不合 适的区域,以及离图像底边过近的区域,因为人眼不可能出现在这一区域。图4(e)是经连 通域分析后的结果;对于剩下的每一个候选区域,计算各自的区域中心,利用眼睛对的几何 关系从这些候选区域中心中挑选出满足以下条件的眼睛中心对a.两中心对之间的距离必须在人脸宽度的0. 25 0. 6倍范围内;b.两中心对之间的连线与水平方向的夹角不超过25度;最后只剩下眉毛和眼睛区域,根据眼睛在眉毛之下的约束,选择两眼区域中心的 纵坐标之和最大(离图像底边最近)的一对作为眼睛区域。图4(f)是筛选后的结果。最后从左右眼睛中心处截取M*N的原图像区域作为左右眼睛区域用于后续眼睛状态的识别。第三步眼睛状态识别。人眼分为睁开和闭合两种状态,对于人眼状态的识别,本发明设计了瞳孔面积比 率、最大行平均水平垂直梯度比率、人眼区域方差和肤色像素比率四种判据进行联合识别。a.提取瞳孔面积比率特征眼睛睁开时,瞳孔是裸露的,眼睛闭合时则看不到瞳 孔,基于照明灯光源会在人脸瞳孔中心产生高亮区域这一认识,对人眼区域图像同样使用 形态学滤波方法进行亮区域检测,这里寻找小的高亮区域,且使用较小的结构元素3X 3,其 形态学滤波与差图像计算利用公式
权利要求
1.一种基于单目视觉的驾驶员疲劳检测方法,其特征在于步骤为步骤1 对每帧图像进行人脸检测,如果检测到人脸,就记录下当前人脸区域,如果检 测不到人脸,就使用最新记录的人脸区域初始化人脸跟踪器,并用它进行人脸跟踪,若当前 帧没有检测到人脸,并且最近N帧内也没有检测到人脸的记录,则执行步骤4 ;步骤2 在人脸区域中利用形态学滤波方法检测暗区域并结合几何位置信息寻找瞳孔 区域,实现双眼的检测与定位;若检测不到可靠的双眼,执行步骤4 ;步骤3 从眼睛区域中提取瞳孔面积比率特征、最大行平均水平垂直梯度比率特征、人 眼区域均方差特征和肤色像素比率特征区分眼睛的睁闭状态,实现人眼状态识别;步骤4:进行连续状态判断以获得驾驶员疲劳状态检测结果,若当前帧没有检测到人 脸,并且在最近N帧内也没有检测到人脸的记录,则本帧判为异常,否则判为正常;若检测 到了人脸,但检测不到可靠的双眼,则本帧判为异常,否则判为正常;若检测到人脸,并且也 检测到了可靠的双眼,如果双眼是闭合状态,则本帧判为异常,否则判为正常;如果连续Tl 帧出现异常,或1秒内两异常状态之间的平均间隔小于阈值T2,则认为驾驶员有疲劳倾向。
2.根据权利要求1所述的基于单目视觉的驾驶员疲劳检测方法,其特征在于在步骤1 中,即在人脸检测与人脸跟踪中采用的步骤如下步骤11 对采集到的原始图像,采用Adaboost人脸检测方法进行人脸检测;对于所有 得到的人脸候选区域,通过区域大小、肤色信息限制条件选出最可能的一个候选区域作为 真实人脸区域,将该人脸位置输出,并记录下该区域的位置和当前帧图像;如果没有一个满 足限制条件的候选区域,则转步骤14 ;步骤12 使用最近一次记录下的人脸区域位置和相应的图像对Mean-Shift跟踪算法 进行初始化;如果一次也没有任何使用Adaboost检测过可靠的人脸区域记录,则转步骤 14;步骤13 利用Mean-Shift跟踪算法在当前帧中跟踪人脸,如果跟踪到的区域与初始化 时的人脸区域的相似度大于T,则输出跟踪到的人脸区域位置;否则继续执行; 步骤14 判定当前图像中不含人脸。
3.根据权利要求1所述的基于单目视觉的驾驶员疲劳检测方法,其特征在于在步骤2 中,即在检测与定位眼睛对中采用的步骤如下步骤21 对人脸区域图像f使用尺寸为5X5的方形结构元素进行灰度形态学闭运算, 得到滤波图像f';步骤22 将滤波图像f'与原图像f相减得到突出脸部所有暗区域的差图像fsub,原图 像中越暗的区域在差图像中越亮;步骤23 基于差图像直方图选取阈值Tf对差图像fsub采用进行分割; 步骤M 干扰去除,在分割后的图像中,除眼部暗区域外,人脸部分轮廓,眉毛、鼻、嘴 也被分割出来,剔除这些干扰的方法是通过连通域分析进一步去除长宽比不合适的区域, 以及离图像底边过近的区域,因为人眼不可能出现在这一区域;步骤25:对于剩下的每一个候选区域,计算各自的区域中心,利用眼睛对的几何关系 从这些候选区域中心中挑选出满足以下条件的眼睛中心对(1)两中心对之间的距离必须在人脸宽度的0.25 0. 6倍范围内;(2)两中心对之间的连线与水平方向的夹角不超过25度;最后只剩下眉毛和眼睛区域,根据眼睛在眉毛之下的约束,选择两眼区域中心的纵坐 标之和最大的一对作为眼睛区域。
4.根据权利要求1所述的基于单目视觉的驾驶员疲劳检测方法,其特征在于在步骤3 中,即在人眼区域中提取相关特征进行人眼睁闭状态识别中采用的步骤如下步骤31 提取瞳孔面积比率特征,眼睛睁开时,瞳孔是裸露的,眼睛闭合时则看不到瞳 孔,由于照明灯光源会在人脸瞳孔中心产生高亮区域,根据这一知识,对人眼区域图像同样 使用形态学滤波方法进行亮区域检测,只是这里寻找小的高亮区域,且使用较小的结构元 素 3X3 ;步骤32 提取最大行平均水平垂直梯度比率特征,由于人眼闭合后,眼敛紧闭成一条 水平窄带,这时人眼区域水平梯度较小,垂直梯度较大,而睁开时,不形成这种窄带,人眼区 域水平和垂直梯度均较大,因此采用水平梯度和垂直梯度比作为判据;步骤33 提取人眼区域均方差特征,当人眼睁开时区域均方差一般较大,而当人眼闭 合时均方差一般较小;步骤34:提取肤色像素比率特征,人眼睁开时,人眼区域内部被瞳孔、虹膜和晶状体占 据,肤色像素极少,而人脸闭合后,上下眼皮结合,肤色像素较多;步骤35 对左右眼区域分别使用四个判据进行判断,每个判据如果判为睁开状态则输 出为1,否则输出为0 ;四个特征的分类阈值分别设为0. 1,0. 75,25和0. 95,最后联合这个 八个判断结果投票表决眼睛状态;如果其和大于4则为睁开状态,否则为闭合状态。
全文摘要
本发明公开了一种基于单目视觉的驾驶员疲劳检测方法。该方法通过人脸检测与跟踪、人眼检测与定位以及眼睛状态识别对驾驶员工作状态进行监督以达到提醒驾驶员安全驾驶的目的。具体为在驾驶室仪表盘上方安装一个面向驾驶员脸部的摄像机,摄像机镜头周围配有红外LED照明光源;利用摄像机采集驾驶员脸部图像,对采集得到的每帧图像进行人脸检测与跟踪,在检测得到的人脸区域中进行人眼检测与定位,并利用左右眼睛区域进行人眼睁闭状态识别,最后通过连续帧的检测状态进行疲劳检测。本发明可以准确地对驾驶员疲劳进行提示,具有对驾驶员无干扰、高实时性、高鲁棒性的优点,且硬件成本低,易于推广。
文档编号G06T7/20GK102054163SQ200910233329
公开日2011年5月11日 申请日期2009年10月27日 优先权日2009年10月27日
发明者任明武, 王欢, 王琼, 赵春霞 申请人:南京理工大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1