一种人眼状态实时检测算法的研究
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一种人眼状态实时检测算法的研究
张恺1,邓昌葛2,朱传雨3,徐海萍1
(1.解放军电子1:程学院光电系.安徽合肥230037;2.中国科学技术大学电子科学与技术系,安徽合肥230027;3.中国科学院合肥物质研究院安 徽光学精密仪器研究所环境光学与技术重点实验窒,安徽合肥230027)
摘要:通过人眼图像来检测驾驶员疲劳状态是目前的主流方向,面部及眼睛定位、眼睛状态判别是其中关键环节。文中对一种基于 人脸面部特征的人眼粗定位方法进行了研究。在此基础上提出一种灰度映射的方法判别人眼状态。经实验验证:该方法实时性好, 对320x240的彩色图像.平均处理速度为每帧30ms。该系统对一定旋转和偏转角度,以及睁闭眼、戴眼镜等条件有很强的鲁棒性。
Key words:rough positioning of eyes;zone searching;eyes’state distinguishing
世界上每年死于交通事故的人数为60万,造成经济损失12.5亿美元。根据英国汽车协会统计,英国车祸的死产事故中,有
10%是凶一J机疲劳驾驶引起的。同时有资料表明,高速公路发生的交通事故巾,有50%以上是南于长时间疲劳驾驶或所她目标单凋
(4)
设图像的大小为MxN。I(x,y)是二值化的图像,pv(x)是垂直映射函数。Smooth(x)对pv(x)的函数曲线进行平滑,其中k是可调整 的参数.根据我们需要网像的大小为320x240,将k设为32。
找出smooth(x)的极大值点,设该点坐标为(X0,Y0),。在图2c中,可以看出,若X0是smooth(x)的极大值点横坐标,并且XO属 于脸部Ⅸ域,则以x=X0为对称轴,smooth(x)必然存在对称近似对称的部分。
利用厌度信息定位眼睛容易受光照,戴黑框眼镜等影响;仅仅采用复杂度函数进行眼睛判别,正确率和准确率都需要进一步提高。针 对此。我们提出一种基于人脸面部特征的人眼粗定位方法。在此基础上提出一种厌度映射的方法,结合复杂度函数判别人眼状态。
1算法分析
算法由三部分组成:A基于肤色匹配的脸部区域检测们。B眼睛区域定位。C眼
com=com_x(k)+com_y(k)
(10)
灰度映射的判别方法:
对眼睛的灰度图像eye(x,y)用(11)式进行水平方向灰度映射。
H
Pf(Y)=Eo'e(x,y)
x=J
(11)
试验表明,无论睁眼或闭眼情况下,找到Pf(y)的最小值点,设坐标为(minpf(yo),yO),y=y0是眼睫毛附近的水平直线。 根据 (12)式对眼睛的状态作出判别。
230031,China)
Abstract:Detecting drivers’tireness state through human eyes’images is the main direction nowadays,and positioning of the face&eyes
and eyes’state distinguishing is the key link.In this paper one rough positioning method human eyes based on the face characters is re—
睛状态判别。流程网如图l。 1.1脸部区域检测
一般来讲。需要处理的图像为RGB形式,分别反映三个颜色信息。可以将RGB 形式转换为其他形式,比如YUV,YIQ,XYZ,YCbCr等。本文中,我们选择YCbCr颜
色模型.将亮度和颜色分量分离,能更好的定义肤色模型。
按照文献【7】,先对RGB分量进行归一化(如l式),然后从RGB变换到YCbCr
a)原始图像
b)利用肤色模型二值化后的图像
c)smooth(x)函数曲线
图2
d)分割出来的脸部区域
1.2眼睛区域定位
经过上述的处理,得到了脸部区域RGB图像,为便于后面的处理,转换为灰度图像,采用下面的公式171。
I=0.259R+0.587G+0.144B
(5)
采用(6)式的卷积模板F昀与灰度图像做卷积:
(如2式)。
.
fr=限+25卸佩+G+B1
{g=fG+255),I’R+G+Bl
(1)
lb:幛’255),(R+G+B)
图1系统流程图
收镐日期:2009-07-27 作者简介:张恺(1982一),男,上海徐汇人,硕士,主要从事光电子学方面的教学和科研工作。
万方数据
ห้องสมุดไป่ตู้
本栏目责任编辑:谢媛嫒
第5卷第31期(2009年11月)
c)睁开眼睛的粗略定位
图3
d)闭合眼睛的粗略定位
·-,t·一一-t软件设计开发··8699
Computer Knowledge 8nd Technology电脯知识与技术
第5卷第31期(2009年11月)
1.3眼睛状态判别
罔提出了复杂度函数的判别方法。我们引入灰度映射的方法,与复杂度函数配合进行判别。为了提高算法的实时性,我们只对 左眼的灰度图像eye(x,y)进行状态判别。在应用复杂度函数之前,将眼睛灰度图像二值化,并进行边缘检测。可以看到,眼睛睁开边缘 的复杂度比眼睛闭合是的复杂度高Is]。
其中Y是亮度信号,Cb,Cr是色差信号。 当93<Cb<133且i23<Cr<175,认为是属于肤色范围。对属于肤色范围的像素点,赋值为255;否则赋值为0。这样,我们得到了 二值化的图像I(x,Y)。下面将在此二值图像中标记出脸部Ⅸ域。 对二值化图像进行垂直映射(如3式)。
y=1
册wotlgx)=—L Vp“0
定的时间内眼睛闭合时所占的时间比例来判断眼睛的疲劳程度,它的关键在于是眼睛的定位和眼睛状态判别。 目前。相关的研究主要是基了图像处理和模式识别技术。驾驶员眼睛状态检测}柯两部分组成:1)眼睛的定位和追踪;2)眼睛状
态判别。目前已经有许多父于眼睛定位的方法。一些研究[-叫基于眼睛的特征,直接从整幅图像检测出眼睛的位置。T.D'Orazioll-21等 利用Circle Hough变换在整幅网像中搜索瞳孔。Jiatao Song,Hai HAN等13jI在灰度图像中引入算术形态学检测眼睛的位置。
得到眼睛区域的中心点(如图3c),对于睁开眼睛,该点瞳孑L中心点存在一定的误差;对于闭合的眼睛,该点与睫毛线的中心点 也存在一定的误差。但是,实验表明,以定位出的眼睛区域中心点为中心构建27×27的币方形,足够包含眼睛主要区域。
a)脸部灰度图像
本栏目责任编辑:谢媛媛
万方数据
b)模板提取后的二值化图像
IsSN 1009—8044
Computer Knowfedge and Technology电脑知识。i技术 V01.5,No.3 1,November 2009,PP.8698—8700
E-mail:xsjl@ecee.net.en
http://www.dnzs.net.en Tel:+86—55 l一5690963 5690964
为了适合单只眼睛的状态判别,我们把文献【8】中的复杂度函数改造如下:
COrH一《||})=∑∑6(f’-,)+kO) .,2I”l (8)
coni一,(七)=∑Eb(t,/)+k(O .,=li=1
其中,二值图像的大小为mXn。k(i),k(j)如(9,,(10)式。
㈨={掰一篇!≥<:册 (9)
七∽={川川i,i<:<n:/2似;肚
其中
d(yO)=p好o+2)-pf(yO)
(12)
图4
2试验结果
该算法在Windows XP操作系统平台,采用VC++6.0编程实现。实验图像为现场采集的60张320X240的图像。实验表明,该算 法对眼睛的粗略定位能限制在眼球内。定位的准确率为100%。每幅图像的平均处理时间为30ms。
3总结
我们提出的眼睛粗略定位方法。大大提升了算法的实时性,并且抵抗戴各种眼镜(黑框,白框等)的影响。
确定脸部区域边界的步骤如下: 11找出smooth(x)所有的极大值坐标点 2)选择可能的极值点坐标,设为(X0,Y0)。以x=XO为起点,x坐标递减,直到smooth(x)<0.3*Y0,记录此时的x坐标,记为XI;以 x=X0为起点,X坐标递增,直到smooth(x)<0.3*Y0,记录此时的x坐标,记为x2。 31若I(X2一XO)一(XO—XI)I<D0,DO为可变参数,则X1.X2是脸部区域的左右边界,结束。否则,返网2),,
关键词:眼睛粗定位:区域搜索;眼睛状态判别
中图分类号:TP311 文献标识码:A 文章编号:1009—3044(2咖9)31—8698埘
Research on one Algorithm of Human Eyes7 State Real-time Detecting
ZHANG Kail,DENG Chang—ge2,ZHU Chuan—yu3,XU Hai—pin91
参考文献:
[1]Orazio T D,Leo M,Distante A.Eye detection in face images vigilance system[C].Italy:2004 IEEE Intelligent Vehicles Symposium
使司机注意力不集中、甚至打瞌睡等原闪造成的。实验表明,驾驶员的眼睛状态和他的注意力有关:驾驶员较清醒时眼睛睁开较大, 而疲劳时眼睛睁开较小甚至闭合。冈此.可以存驾驶员行驶过程中,通过摄像头实时采集视频序列,得到眼部区域进行眼睛的状态 分析,判断驾驶员的注意力及是否疲劳。美国联邦公路管理局(Federal Highway Administration)采用“PERCLOS”方法,指的是在一
f1.Electronic En两aeering Institute of PLA,Hefei 230037,China;2.University of Sciences and Technology of China,Hefei 230027,China; 3.Key Lab of Environment Optics&Technology,Anhui Institute of Optics and Fine Mechanics,Chinese Academy of Sciences,Hefei
Comt叫ter Kno刚edge and Technolo鲫电脑知识与技术
其中,RGB是原始颜色分量,r,g'b是归一化后的颜色分量。
Y=0 2990r+0 5870窖+0 11柏b
{Cb=--0 l’飞7r-0 33139+o 5000b+128
(2)
Cr=0.‘1000r-0 418’g-00813b+128
mapping human searched.And then one gray level
method is put forward further to distinguish
eyes7 state.Through experiment it’S proved
that this method is welt real—time and its average processing speed is 30ms per flame to images with the resolution ratio of 320x240.This system is robustness to the conditions of some circumvolution,deflexion,and opening closing eyes or wearing ghsses,etc.
,
F1 2IL■生二!L纠
(6)
f盯
2n
"l
该卷积模板F为4nxI的矩阵,参数n可以适当选择,本文中n=5。
对卷积后的网像进行二值化:
玳力={2麓麓’囊篙5
∽
二值化后的图像如图3b。可见,该图像中存在很多区域,要在这些区域中找出眼睛区域,关键在与区域的标记和搜索。在文献[6】 的基础l-.,我们提出了一种近似快速的搜索算法,迅速标记出各Ⅸ域的中心,区域像素和。
由于上述大多数方法基于睁眼的特性.在眼睛闭合的时候性能不好。然而在进行疲劳检测时,眼睛的闭合更是特别需要检测出 的因素。因此,在检测出胀部区域后,我们利用嘶部特征而不是眼睛睁开的特征来检测眼睛的化置,这样可以获得比较好的性能。
文献『71巾提出一种肤色分割模型检测}H人脸,然后利用水平和垂直灰度映射定f证跟睛,并采用复杂度甬数进行眼睛状态判别。