一种用于疲劳驾驶实时监测的眼睛定位方法

文档序号:6621941阅读:200来源:国知局
一种用于疲劳驾驶实时监测的眼睛定位方法
【专利摘要】本发明涉及一种用于疲劳驾驶实时监测的眼睛定位方法,利用Matlab2012软件实现,包括以下步骤:步骤一,对人脸及眼睛初始定位,获得眼睛精确图像;步骤二,基于YCbCr色彩空间肤色模型的相邻帧差法,求相邻帧差值的绝对值;步骤三,根据相邻帧差值的二值图像,判断前后两帧头部图像是否重叠;步骤四,头部位移检测:分别检测头部横向位移dx及纵向位移dy;步骤五,眼睛候选区域预测;步骤六,眼睛候选区域修正;步骤七,重复步骤二至步骤六,进行下一帧的眼睛定位。本发明能够在减少人脸定位计算量、提高眼睛定位的速度和图像处理帧速的同时,确保眼睛定位的准确性,从而兼顾依据眼睛状态进行驾驶疲劳监测的实时性及可靠性。
【专利说明】-种用于疲劳驾驶实时监测的眼睛定位方法

【技术领域】
[0001] 本发明涉及疲劳驾驶监测方法,具体涉及一种用于疲劳驾驶实时监测的眼睛定位 方法。

【背景技术】
[0002] 随着社会经济发展,汽车已成为人们日常生活中必不可少的一种交通工具。汽车 数量的日益增加,在为人们的出行、运输等带来方便的同时,频发的交通事故也给人们的生 命安全和财产带来了巨大的损失。根据国内外的相关统计数据表明,各国因疲劳驾驶而导 致的交通事故占到交通事故总数的10%?20%,可见疲劳驾驶是造成交通事故的主要因 素之一,因而近年来疲劳驾驶监测技术的研究受到越来越多的关注。
[0003] 目前,疲劳驾驶监测技术主要包括基于人体生理信号、驾驶员操作行为和车辆状 态的驾驶疲劳监测技术,但是由于生理信号非平稳性、传感器的复杂性和接触性,以及模型 的不完善,没能取得较好的监测效果。如CN 102406507 A公开"一种基于人体生理信号的 汽车驾驶员疲劳监测方法",包括疲劳标定方法和检测方法。标定方法包括:通过传感器采 集并提取N次单位时间的脉搏峰值与频率、心率以及呼吸频率构成疲劳特征标定矩阵,通 过主成分分析方法建立各疲劳特征的权重向量,将权值加成至标定矩阵,由此构建疲劳标 定向量。疲劳检测方法包括:将标定权重加成至单位时间内疲劳特征向量,计算特征向量与 标定向量的马氏距离,通过其距离离散程度判别汽车驾驶员疲劳程度,并进行预警。该监测 方法基于中医理论,结合现代信号处理方法寻找出汽车驾驶员的疲劳特征。
[0004] CN103279752A公开"一种基于改进Adaboost方法和人脸几何特征的眼睛定位方 法",其具体步骤为:步骤一:分别训练人脸分类器和眼睛分类器;步骤二:利用训练好的 人脸分类器确定人脸位置;步骤三:利用训练好的眼睛分类器在检测出的人脸区域的上部 2/3的部分确定候选眼睛区域的位置;步骤四:利用人脸统计学意义上的内在几何特征确 定各组眼睛对的几何特征系数;步骤五:确定每组候选眼睛对的各自判决度量d ;步骤六: 比较各组候选眼睛对的判决度量,判决度量越小,表示该候选眼睛对的置信水平越高;即可 确定出最佳的一组眼睛对,进而确定出眼睛的最佳位置。该定位方法利用人脸内在的几何 特征对搜索到的眼睛区域进一步甄别,能够准确有效地确定眼睛的最佳位置。但是,不能监 测眼睛疲劳程度。
[0005] 较为成熟的技术是通过视频监测眼睛疲劳程度来实现PERCLOS(Percentage of Eyelid Closure Over the Pupil Over Time,眼睛闭合占特定时间的百分率)监测。当前 PERCLOS监测在具体实现时,对每帧图像重复进行相同的定位步骤。虽然逐帧定位能实现眼 睛的精确定位,但是没有发掘相邻帧图像之间的关联来简化人脸、眼睛的某些定位步骤,计 算量大,眼睛定位速度难以提升,实时性差。前人研究结果表明,一般情况下人们眼睛闭合 的时间在0. 2?0. 3s之间,而PERCLOS指标常以一分钟作为人脸采样与分析的时间窗,若 眼睛定位方法实时性不能满足采样定理的要求,则难以准确监测眼睛的开闭状态,对于瞬 间发生的疲劳事件容易出现延误判决和漏判,难以有效避免事故的发生。因而系统延迟对 于现有PERCLOS疲劳驾驶监测方法的有效性影响甚大。为了获得较好的疲劳监测和预警效 果,还需要进一步探索眼睛定位方法,并满足PERCL0S疲劳判定模型对实时性的要求。


【发明内容】

[0006] 本发明针对现有逐帧眼睛定位方法计算量大,速度慢的缺点,提出一种用于疲劳 驾驶实时监测的眼睛定位方法,该方法能够在保证眼睛定位准确性的同时,减少人脸定位 的计算量,从而提高图像处理速度,实现对眼睛开闭状态的实时监测,保证驾驶疲劳监测系 统的可靠性。
[0007] 该方法基于YCbCr色彩空间相邻两帧的差值来检测等采样间隔中眼睛位置的移 动,并参照前一帧图像定位出的眼睛准确区域,就可以确定当前帧眼睛的候选区域,再对候 选区域进行提取,即可得到眼睛的准确区域。
[0008] 本发明所述的一种用于疲劳驾驶实时监测的眼睛定位方法,利用Matlab2012软 件实现,包括以下步骤:
[0009] 步骤一,对人脸及眼睛初始定位,获得眼睛精确图像:先利用摄像头拍摄清晰的人 脸彩色图像,再分割人脸彩色图像,获得人脸宽度Fw和人脸高度Fh,然后,利用现有眼睛定 位方法对第一帧图像进行眼睛定位,得出第一帧眼睛所在的矩形区域和精确位置,即眼睛 精确图像,并记录下眼睛位置的参数Kx,y),w,h};
[0010] 步骤二,基于YCbCr色彩空间肤色模型的相邻帧差法,求相邻帧差值的绝对值:先 将相邻两帧彩色图像均转换到YCbCr色彩空间,得到前后两帧YCbCr色彩空间的图像,用 imgl表示前一帧YCbCr色彩空间的图像,用img2表示后一帧YCbCr色彩空间的图像;然后 利用"肤色模型"(袁英.基于视觉的汽车驾驶员疲劳驾驶检测算法研究,沈阳工业大学硕 士学位论文,2010年,p. 11)对imgl和img2进行二值化处理,得到两帧二值图像,用BW1表 示前一帧二值图像,用BW2表示后一帧二值图像;最后将两帧二值图像BW1和BW2相减并取 绝对值,得到相邻帧差值的二值图像BW。
[0011] 步骤三,根据相邻帧差值的二值图像,判断前后两帧头部图像是否重叠:相邻两帧 头部图像若是重叠,则执行下一步;相邻两帧头部图像若没有重叠,返回步骤一;
[0012] 相邻两帧头部图像重叠判断的方法是,假设前一帧二值图像BW1的像素值为1的 区域面积为A1,假设后一帧二值图像BW2的像素值为1的区域面积为A2,假设相邻帧差值 的二值图像BW的像素值为1的区域面积为A3,若0彡A3 < A1+A2,则相邻两帧图像有重叠, 否则不重叠;
[0013] 步骤四,头部位移检测:分别检测头部横向位移dx及纵向位移dy ;
[0014] 步骤五,眼睛候选区域预测:
[0015] 依据头部位移,利用"眼睛位移预测模型"对眼睛横向位移Dx及纵向位移Dy进行 预测;令前一帧图像的眼睛实际所在的矩形区域表示为Kx,y),w,h},(x,y)为矩形区域左 上角点的坐标,W为矩形的宽度,h为矩形的高度;根据位移量D x、Dy和前一帧眼睛所在的矩 形区域,即可确定当前帧眼睛候选区域:·[(JC-AJ-A) w+2Z^, h+2D,j。
[0016] 步骤六,眼睛候选区域修正:
[0017] 1)利用Matlab2012软件中的rgb2gray (rgb2gray是享誉全球的科学计算软件 Matlab图像处理工具箱中的函数,其功能是将彩色图像RGB转换成灰度图像I,其使用方法 为:I = rgb2gray(RGB))函数将眼睛候选区域图转换为灰度图像;
[0018] 2)利用"最大类间方差法"(N0BUYUKI OTSU. A threshold selection method from gray level histograms. IEEE TRANSACTIONS ON SYSTREMS, MAN, AND CYBERNETICS, VOL. SMC-9, NO. 1,JANUARY 1979, p62-66.)找出图像进行灰度阈值分割所需要的阈值T ;
[0019] 3)利用阈值T对图像进行阈值分割,得到一幅二值图像;
[0020] 4)利用Matlab2012软件中的bwlabel【Matlab图像处理工具箱的函数,其功能是 标记二值图像中的连通区域,使用方法L = bwlabel (BW, η),该函数返回一个与BW同样大小 的矩阵L,L含有BW中连通对象的标记,η -般选取4或者8,意即四向连通或八向连通,默 认为8】函数对阈值分割后得到的二值图像进行连通区域标记;
[0021] "连通区域标记法"出自《数字图像处理》,作者:(美)冈萨雷斯等著出版社: 电子工业出版社,出版时间:2004-5-1字数:879000版次:1版1次页数:609印刷时间: 2004-5-1 I S B N :9787505398764。
[0022] 二值图像的连通区域标记是从仅由"0"像素(通常表示背景点)和"1"像素(通 常表示模式图形点)组成的一幅点阵图像中,将相互邻接(4_邻域或8-邻域)的"1"值像 素集合提取出来。
[0023] 5)找出连通标记结果中面积最大的两个区域,作为眼睛区域;
[0024] 6)截取眼睛候选区域原始图像中与4)中区域对应的图像,得到的图像即为眼睛 的准确区域图像;
[0025] 7)参照图2记录下眼睛的位置参数{(X,y),w, h},替代步骤一中的{(X,y),w, h}。
[0026] 步骤七,重复步骤二至步骤六,进行下一帧的眼睛定位。
[0027] 进一步,所述的现有眼睛定位方法的包括肤色检测、人脸分割、灰度积
[0028] 分投影和形态学处理四个步骤。
[0029] 进一步,所述肤色模型为: ? 98 < C/? < 127
[0030] i
[133 < Cr < 170
[0031] 其中Cb和Cr代表YCbCr色彩空间中的两个色度分量。利用上述肤色模型对imgl 和img2进行肤色检测,将符合肤色模型的点的像素值令为1,不符合肤色模型的点的像素 值令为〇,分别得到二值图像BW1和二值图像BW2,最后将BW1和BW2相减并取绝对值,得到 二值图像BW,即YCbCr空间的相邻帧差图。
[0032] 进一步,头部位移检测依据下列步骤进行;
[0033] (1)首先通过从上至下扫描图像,找到第一次出现白色像素的横线,取该横线以下 Fh的图像区域,记为pi ;
[0034] (2)取pi中上2/3的区域,记为p2 ;
[0035] (3)根据p2中白色区域的左右边界,取出左右边界内的区域,记为p3,即为头部的 横向大致运动范围,且令p3的宽为W,高为Η ;
[0036] (4)以ρ3的水平中轴线y = Η/2为界,上下分别取出占图像高度30%的图像,记 为p4 ;计算p4每一行连续白色像素的最大宽度,记为dXi,其中i e [l,0. 6H];将dXi的平 均值作为头部的横向位移,记为dx
[0037]

【权利要求】
1. 一种用于疲劳驾驶实时监测的眼睛定位方法,利用Matlab2012软件实现,包括以下 步骤: 步骤一,对人脸及眼睛初始定位,获得眼睛精确图像:先利用摄像头拍摄清晰的人脸彩 色图像,再分割人脸彩色图像,获得人脸宽度Fw和人脸高度Fh,然后,利用"现有眼睛定位 方法"对第一帧图像进行眼睛定位,得出第一帧眼睛所在的矩形区域和精确位置,即眼睛精 确图像,并记录下眼睛位置的参数Kx,y),w,h}; 步骤二,基于YCbCr色彩空间肤色模型的相邻帧差法,求相邻帧差值的绝对值:先将相 邻两帧彩色图像均转换到YCbCr色彩空间,得到前后两帧YCbCr色彩空间的图像,用imgl 表示前一帧YCbCr色彩空间的图像,用img2表示后一帧YCbCr色彩空间的图像;然后利用 "肤色模型"对imgl和img2进行二值化处理,得到两帧二值图像,用BW1表示前一帧二值图 像,用BW2表示后一帧二值图像;最后将两帧二值图像BW1和BW2相减并取绝对值,得到相 邻帧差值的二值图像BW; 步骤三,根据相邻帧差值的二值图像,判断前后两帧头部图像是否重叠:相邻两帧头部 图像若是重叠,则执行下一步;相邻两帧头部图像若没有重叠,返回步骤一; 相邻两帧头部图像重叠判断的方法是,假设前一帧二值图像BW1的像素值为1的区域 面积为A1,假设后一帧二值图像BW2的像素值为1的区域面积为A2,假设相邻帧差值的二 值图像BW的像素值为1的区域面积为A3,若0彡A3 < A1+A2,则相邻两帧图像有重叠,否 则不重叠; 步骤四,头部位移检测:分别检测头部横向位移dx及纵向位移dy ; 步骤五,眼睛候选区域预测:依据头部位移,利用"眼睛位移预测模型"对眼睛横向位移 Dx及纵向位移Dy进行预测;所述眼睛位移预测模型为:
令前一帧图像的眼睛实际所在的矩形区域表示为Kx,y),w,h},(x,y)为矩形区域左 上角点的坐标,w为矩形的宽度,h为矩形的高度;根据位移量Dx、Dy和前一帧眼睛所在的矩 形区域,即可确定当前帧眼睛候选区域:
步骤六,眼睛候选区域修正: 1) 利用Matlab2012软件中的rgb2gray函数将眼睛候选区域图转换为灰度图像; 2) 利用"最大类间方差法"找出图像进行灰度阈值分割所需要的阈值T ; 3) 利用阈值T对图像进行阈值分割,得到一幅二值图像; 4) 利用Matlab2012软件中的bwlabel函数对阈值分割后得到的二值图像进行连通区 域标记; 5) 找出连通标记结果中面积最大的两个区域,作为眼睛区域; 6) 截取眼睛候选区域原始图像中与4)中区域对应的图像,得到的图像即为眼睛的准 确区域图像; 7) 参照图2记录下眼睛的位置参数{〇^7),《,11},替代步骤一中的{〇^7),《,1 1}; 步骤七,重复步骤二至步骤六,进行下一帧的眼睛定位。
2. 根据权利要求1所述的一种用于疲劳驾驶实时监测的眼睛定位方法,其特征是:步 骤一中所述的"现有眼睛定位方法"包括肤色检测、人脸分割、灰度积分投影和形态学处理 四个步骤。
3. 根据权利要求1所述的一种用于疲劳驾驶实时监测的眼睛定位方法,其特征是:步 骤二中所述的"肤色模型"为: \^<Cb< 127 [133 < Cr < 170 其中Cb和Cr代表YCbCr色彩空间中的两个色度分量;利用上述肤色模型对imgl和 img2进行肤色检测,将符合肤色模型的点的像素值令为1,不符合肤色模型的点的像素值 令为〇,分别得到前一帧二值图像BW1和后一帧二值图像BW2,最后将BW1和BW2相减并取 绝对值,得到相邻帧差值的二值图像BW,即YCbCr空间的相邻帧差图。
4. 根据权利要求1所述的一种用于疲劳驾驶实时监测的眼睛定位方法,其特征是:步 骤二中所述的头部位移检测,依据下列步骤进行; (1) 首先通过从上至下扫描图像,找到第一次出现白色像素的横线,取该横线以下人脸 高度Fh的图像区域,记为pi ; (2) 取pi中上2/3的区域,记为p2 ; (3) 根据p2中白色区域的左右边界,取出左右边界内的区域,记为p3,即为头部的横向 大致运动范围,且令P3的宽为W,高为Η ; ⑷以Ρ3的水平中轴线y = Η/2为界,上下分别取出占图像高度30%的图像,记为ρ4 ; 计算ρ4每一行连续白色像素的最大宽度,记为dXi,其中i e [1,〇. 6Η];将dXi的平均值作 为头部的横向位移,记为dx
(5)以p3的垂直中轴线X = W/2为界,左右分别取出占图像宽度30%的图像,记为p5 ; 计算中p5每一列中连续白色像素的最大宽度,记为dy」,其中j e [1,〇. 6W];将dy」的平均 值作为头部的纵向位移,记为dy
【文档编号】G06K9/00GK104123549SQ201410369776
【公开日】2014年10月29日 申请日期:2014年7月30日 优先权日:2014年7月30日
【发明者】赵安, 梁万元, 种银保 申请人:中国人民解放军第三军医大学第二附属医院
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1