logo资料库

基于PERCLOS的驾驶员疲劳检测算法.pdf

第1页 / 共4页
第2页 / 共4页
第3页 / 共4页
第4页 / 共4页
资料共4页,全文预览结束
计 算 机 系 统 应 用 2009 年 第 8 期 基于 PERCLOS 的驾驶员疲劳检测算法① Fatigue Detection Algorithm Based on PERCLOS 郭永彩 李文涛 高 潮 (重庆大学 光电技术及系统教育部重点实验室 重庆 400030) 摘 要: 提出了基于 PERCLOS 的驾驶员疲劳检测方法,通过测量在一定的时间内眼睛闭合时所占的时间比例 检测驾驶员的疲劳情况。设计的系统由红外光源、人眼图像传感、图像处理及眼睛面积补偿算法等组 成。在提取人眼图像过程中,利用人眼对 850nm/940nm 这两种波长的红外光线的吸收率的明显差 异,得到差分图像后可将眼睛与其余部分分离,同时也避免了背景光线的干扰,特别适合于夜间容易 出现疲劳驾驶时段的检测。在眼睛面积的计算过程中,通过面积补偿算法,修正驾驶员眼睛与检测设 备距离相对变化引起的误差,提高了检测系统的准确率。 关键词: 疲劳驾驶 PERCLOS 红外光线 差分图像 面积补偿 中国 2005 年交通事故报告显示,因为疲劳驾驶 导致的死亡占全部交通事故死亡人数的 2.6%;美国 国家公路交通安全局(NHTSA)调查显示,因为疲劳驾 驶导致的死亡人数占交通事故死亡总人数的 3.7%;还 有很大一部分原因为“采取措施不当”的交通事故也 被怀疑为疲劳驾驶导致。由此可见,疲劳驾驶是交通 事故的一个主要原因。因此,如何在驾驶中实时检测 出疲劳的发生成为当前国内外研究的热点。 疲劳是由于体力或脑力劳动使人产生生理机能和 心理机能失调的现象。驾驶疲劳是驾驶车辆时,由于 驾驶作业引起的身体上的变化、心理上的疲劳以及客 观测定驾驶技能低落的总称[1]。疲劳虽然是一个正常 的生理现象,但是对驾驶员这一特殊的群体,就可能 引起严重的后果,甚至危及生命。因此,对驾驶员疲 劳的检测具有重要的现实意义,应用要求十分迫切。 1 各种疲劳驾驶的检测方法 目前驾驶员疲劳特征的检测方法较多,主要可以 分为接触式和非接触式的检测两大类。 1.1 接触式检测 接触式检测主要是通过附着于驾驶员身上的传感 器检测驾驶员身体特征变化来检测疲劳驾驶情况。具 体有脑电图检测和头部位置感应。疲劳产生的脑电变 ① 收稿时间:2008-12-09 54 研究开发 Research and Development 化大脑皮层兴奋与抑制时,其脑电图上的表现是不相 同的。通过记录各种脑电波的幅频响应,统计其分布, 可达到疲劳检测的目的;疲劳时头部会经常向下倾 斜,利用传感器检测司机的头部位置可反映司机的疲 劳状况。 接触式疲劳检测有着明显的缺点。首先,设备需 要与驾驶员有身体上的接触,对驾驶员有干扰;其次, 脑电图容易受外界因素的干扰且个体间的生理反映差 距较大,价格过高,因此难以在实际中使用。 1.2 非接触式检测 非接触式检测主要是通过非接触的传感器检测驾 驶员身体特征变化或车辆状态来检测疲劳驾驶情况。 车辆状态的检测主要是通过方向盘的状态检测以及道 路追踪器来检测疲劳驾驶情况,其中方向盘检测是根 据驾驶员疲劳程度加深时,方向盘的转动幅度次数会 增多,握紧方向盘的力量变大;道路追踪器是通过安 装在车辆上的摄像头检测车辆越过车道线的频率和时 间来确定驾驶员的疲劳程度。这两种检测方法的准确 率都不高,只能作为辅助检测手段。驾驶员身体特征 检测包括利用瞳孔计以及眼睛闭合百分比 PERCLOS 的检测。其中瞳孔计是检测某一段时间瞳孔直径的变 化频率,PERCLOS 方法是检测某一段时间内眼睛闭合 时间所占的比例。
2009 年 第 8 期 计 算 机 系 统 应 用 大量实验证明 PERCLOS 方法是准确率最高的检 测方法,是被美国公路交通安全局(NHTSA)惟一认可 的疲劳驾驶检测方法[2]。 2 PERCLOS原理及实现方法 2.1 PERCLOS 原理 PERCLOS 是 Percent Eye Closure 的缩写,指在 一定的时间内眼睛闭合时所占的时间比例[3]。在具体 试验中有 P70,P80, EM 三种测量方式。其中 P80 被 认为最能反映人的疲劳程度。图 1 为 PERCLOS 值的 测量原理图[4]。图中曲线为一次眼睛闭合与睁开过程 中睁开程度随时间的变化曲线,可根据此曲线得到所 需测量的眼睛某个程度的闭合或睁开持续的时间,从 而计算出 PERCLOS 值。图中 t1 为眼睛完全睁开到闭 合 20%的时间;t2 为眼睛完全睁开到闭合 80%的时间; t3 为眼睛完全睁开到下一次睁开 20%的时间;t4 为眼 睛完全睁开到下一次睁开 80%的时间。通过测量出 t1 到 t4 的值就能计算出 PERCLOS 的值 f。 式中,f 为眼睛闭合时间所占某一特定时间的百分率。 对于 P80 测量方式来说,我们认为当 PERCLOS 值 f>0.15 时,认为驾驶员处于疲劳状态。 − − t t t t 3 4 f = 2 1 图 1 PERLOS 值的测量原理图 2.2 PERCLOS 实现方法及系统硬件构成 研究表明,视网膜对 850nm 波长红外线的反射 率约为 90%,对 940nm 红外线的反射率约为 40%, 面部其他位置对这两种波长红外线反射率相当[5]。用 相同光照度的这两个波长的红外光源照射,同时采集 到的两个波长的反射图像只有视网膜灰度不同,其它 位置灰度基本完全相同。如将两幅图像相减,面部绝 大部分区域灰度值接近于 0,只有视网膜的灰度比较 大,因此可方便地从脸部头像中找出眼睛的位置,并 计算瞳孔的面积。 本文研究的 PERCLOS 疲劳检测系统硬件框图如 图 2 所示: 图 2 PERCLOS 疲劳检测系统硬件框图 红外灯阵列提供等光照强度的 850nm/940nm 红外光源;红外摄像机同时拍摄两个波长的司机面部 反射图像;滤光片分别滤出 850nm 和 940nm 波长 的反射图像;图像处理模块完成图像相减、眼睛位置 跟踪、眼睛面积补偿和计算等;控制系统控制各模块 的同步,控制红外灯阵列的光照强度;告警系统输出 声光告警信息,提醒疲倦的驾驶员。 3 PERCLOS疲劳检测算法设计及实现 3.1 疲劳检测算法流程 本文研究的 PERCLOS 疲劳检测方法为:通过相 同光照度的两个波长的红外光源照射,采集到两个波 长的反射图像并且进行相减,经过二值化后将眼睛部 分与脸部其他部分分开,从而进行眼睛面积的计算, 统计一段时间内驾驶员眼睛闭合的时间所占的比例。 在眼睛面积计算的同时,需修正驾驶员眼睛与检测设 备距离相对变化引起的眼睛面积变化。疲劳检测算法 的流程框图如图 3 所示。 在疲劳检测算法流程中,最为关键的是眼睛位置 跟踪算法与眼睛面积修正算法。其中眼睛位置跟踪算 法充分利用了眼睛与脸部其他部位对 850nm 和 940nm 波长反射率不同的特点,通过采集相同光照 下这两个波长的反射图像,由于同时采集到的两幅图 像只有眼睛部分灰度不同,其他位置灰度基本完全相 同。因此通过相减运算,可将眼睛部分与脸部其余部 分分离出来,从而为接下来的眼睛面积计算以及面积 补偿算法提供基础[6,7]。 Research and Development 研究开发 55
计 算 机 系 统 应 用 2009 年 第 8 期 图 3 疲劳检测算法流程框图 双眼间距 d,眉心 f;头部运动后双眼位置为 BB,眉 心 F1,图像中双眼间距 d1,眉心 f1。 (1) 前后运动:眉心位置不变,双眼间距比例 d1/d,因此双眼面积与正常位置双眼面积比例应该为 (d1/d)2。 (2) 转动:眉心位置不变,双眼与眉心的举例分 别为 dx 和 dy,则双眼面积与正常位置双眼面积比例 应该是(2*dx/d)2 和(2*dy/d)2。 (3) 左右运动:眉心位置移动距离Δd,则双眼面 积与正常位置双眼面积比例应该是(d-2Δd/d)2 和 (d+2Δd/d)2。 4 实验结果及结论 4.1 实验过程及结果 (1) 眼睛定位实验 本文基于上述疲劳检测算法,利用 MATLAB 对眼 睛定位以及眼睛面积补偿过程进行了仿真实验。图 5 中从左到右依次为 850nm 波长反射图像、950nm 波 长反射图像以及两幅图像进行差分的结果图。图 6 总 从左到右依次为差分前的灰度直方图、差分后的灰度 直方图以及将差分后图像二值化后得到的眼睛定位结 果图。 3.2 眼睛面积计算的补偿 在计算眼睛面积时,由于驾驶员头部相对于检测 设备有位置移动,因此为了实现实时跟踪驾驶员眼睛 位置并且计算面积,需要修正眼睛与检测设备距离相 对变化引起的眼睛面积变化。 眼睛面积补偿算法包括训练过程和校正过程。 其中训练过程是在初始几分钟,主要完成驾驶员眼 睛的定位,正常双眼面积的计算;校正过程是一个 三个自由度的几何运算,可以分解为三个单自由度 的几何运算。 眼睛面积补偿算法原理如图 4 所示。 (a)850nm 波长 (b) 950nm 波长 (c)差分图像 反射图像 反射图像 图 5 双波长反射图像以及差分图像 图 4 眼睛面积补偿算法原理图 (左图为前后运动; 中间为转动; 右图为左右运动) 如图所示:正常双眼位置为 AA,眉心 F,图像中 a 差分前灰 b 差分后的灰 c 眼睛定位 度直方图 度直方图 结果 图 6 差分前后灰度直方图以及眼睛定位结果图 (2) 眼睛面积误差补偿实验 由 MATLAB 图像处理工具箱中的 bwarea 函数计 56 研究开发 Research and Development
2009 年 第 8 期 计 算 机 系 统 应 用 确 地 定 位 眼 睛 位 置 并 计 算 其 面 积 , 从 而 提 高 了 PERCLOS 计算的准确性和可靠性。 (3) 本系统采用机器视觉方法,并利用红外光源 成像,避免了与驾驶员的直接身体接触,排除了环境 光源的干扰,提高了装置的适用性,满足任何驾驶情 况下对驾驶员状态的监测要求。 (4) 引入眼睛面积补偿算法,有效地解决了由于 驾驶员头部运动造成的眼睛面积变化的问题,提高了 系统检测的准确率。 算得知,图 6(c)中眼睛部分面积为 77.3755(图像眼 睛部分的像素个数),并以此为初始情况下的眼睛面 积。图 7 为另一时刻得到的眼睛定位结果图,经计算 此时刻眼睛面积为 89.3578,与初始状态面积相比相 对误差达到了 15.48%。经对比得到此时刻眉心位置 不变,但眼睛间距发生了变化,因此可知此时驾驶员 头部相对于初始情况发生了前后运动,造成眼睛面积 的变化(面积明显变大),从而引起误差。基于上述眼睛 面积补偿算法,经过眉心定位与对比,距离计算,最 终得到补偿后眼睛面积为 79.4798,将相对误差降低 到了 2.72%。可见经过眼睛面积补偿后,得到的眼睛 面积能更真实的反映驾驶员的眼睛状态,能更准确地 判断驾驶员的疲劳状态。 参考文献 1 Stutts JC, Wilkins JW, Vaughn BV. Why do people have drowsy driving crashes. AAA Foundation for Traffic Safety, Washington, 1999. 2 PERCLOS:A Valid Psychophysiological Measure of Alertness As Assessed by Psychomotor Vigilance, Washington, Office of Motor Carriers, 1998. 3 宋正河,周一鸣.基于 PERCLOS 的机动车驾驶员驾驶 疲劳的识别算法.中国农业大学学报, 2002,7(2): 104 -109. 4 韩相军,梁艳荣,关永.基于 DSP 的嵌入式驾驶疲劳监 测系统研究.公路交通科技, 2007,24(1):147-150. 5 刘志强,汪呖.驾驶员疲劳监测方法设计.农业机械学 报, 2006,37(4):26-29. 6 徐飞,施晓红.MATLAB 应用图像处理.西安:西安电 子科技大学出版社, 2002:101-123. 7 杨秋芬,桂卫华,胡豁生,周书仁. 驾驶员疲劳驾驶中 的眼睛定位创新算法.计算机工程与应用,2008,44(6): 20-24. 图 7 某时刻眼睛结果定位图(非初始状态) 4.2 结论 (1) 从实验过程可以看出,采用 850/940nm 双 波长检测眼睛状态,经过将图像进行差分后图像的灰 度值差别明显,便于提取眼睛部分图像,表明该检测 方法有效。 (2) 从眼睛定位结果可以看出,采用本文所述方 法对驾驶员眼睛状态进行检测,能有效地将眼睛与脸 部图像其余部分分离,避免了背景环境的干扰,能准 Research and Development 研究开发 57
分享到:
收藏