Board logo

标题: 基于3G视频的驾驶员疲劳状态检测方法 [打印本页]

作者: 520503    时间: 2014-8-31 19:09     标题: 基于3G视频的驾驶员疲劳状态检测方法

关键字:DirectShow技术   人脸定位   视频流  
摘要:疲劳驾驶已成为交通事故发生的主要原因之一。文中提出了一种基于3G视频的人眼疲劳检测方法。通过DirectShow技术对视频流抓取视频帧,采用肤色聚性特征进行人脸定位,基于灰度信息进行人眼定位与追踪,并采用Perclos方法进行疲劳判断。通过此方法,可以及时了解驾驶者的疲劳状态,有效预防疲劳驾驶。
疲劳驾驶是司机在驾车过程中介于意识清醒和进人睡眠的一种非正常状态,是导致交通事故的主要原因之一。由于车辆流动性强、任务区域广、安全隐患多、风险责任大,并缺乏科学有效的监管手段,近年来疲劳驾驶所造成的车辆事故时有发生。通过3G视频监控系统对驾驶员面部状态的实时监控,一旦发现驾驶员眼睛疲劳状态立即进行报警,能有效减少驾驶员疲劳所造成的交通事故,解决车辆管理中“看不见、听不着、控不了”的难题。

基于3C视频的疲劳检测主要包括视频流解压抓帧、人脸定位、人眼定位追踪和疲劳判断4个部分。文中提出一种基于肤色检测及灰度信息的疲劳检测算法,能有效用于3G车辆视频监控系统。

1 视频采集及预处理

文中使用车辆内部的3G视频监控装置来进行视频采集,位于驾驶员头顶正面上方,拍摄在驾驶过程中多种光照环境下、不同姿势和精神状态的驾驶员视频。

视频预处理主要采用DirectShow技术进行视频流解压抓帧。利用DirectShow的媒体监测器对象(Media Detector Object),将拍摄到的驾驶员视频文件进行视频流解压缩,实时在线地从视频流中提取指定的帧视频图像,并为后续的驾驶员眼睛状态检测提供位图数据。

媒体监测器不仅能获取媒体源文件的格式信息,也可以通过捕获过滤器从一个媒体文件的视频流中捕获一幅位图图像,通常获得的位图是24位RGB格式。通过搜索媒体文件,媒体监测器可以获得这个文件中任意点的图像。应用程序通过调用IMediaDet接口与Media Detector进行交互。接口包含了一些方法能够从媒体源文件中提取重要信息,比如媒体类型、帧速率甚至是视频流的单个帧。媒体监测器将过滤器视图封装到对象中,从而使应用程序屏蔽掉与视图相关的一些细节。

在疲劳检测中,用得到的第一幅图像检测人脸和眼睛,如若失败则从下一幅图像检测直至成功,并将得到的眼睛图像作为动态模板对以后的序列进行眼睛追踪,若失败则重新定位人眼。

2 基于肤色检测的人脸定位

肤色是人脸最为显著特征之一,对于彩色图像,肤色是图像中相对集中、稳定区域。肤色信息可将人脸和背景区域分开。研究表明,在除去亮度的色度空间中,不同人脸肤色分布具有聚类性。所以肤色的差异主要取决于色彩信息,而非亮度信息。基于肤色检测方法利用人的肤色中Cr和Cb的聚类特性,在YCbCr色彩空间中检测图像中是否存在人脸。这种算法检测速度快,并且受人脸旋转或侧转的影响较小。

肤色分割可以采用的色彩空间有很多种。其中YCbCr色彩空间具有与人类视觉感知过程类似的构成机理,能很好地反映肤色分布,并反映出肤色聚类特性。YCbCr模型与RGB模型的变换公式如下




通过对人脸数据库中和人脸视频图像中黄种人人脸肤色点的采样进行分析,可得到实验环境下肤色在YCbCr空间中的聚类,用数学表达式确定肤色范围的方法进行肤色建模。可根据Chai采用YCbCr颜色空间的CbCr平面,如果某像素点的颜色落入Cr=[133:173]和Cb=[77:127]范围内,就认为是属于肤色像素,否则就认为是非肤色像素。确定为肤色区域后,将其认定的肤色区域的R、G、B值均设定为255,在图像中显示为白色;非肤色区域设y=R=G=B=0,即在图像中显示为黑色。随后对得到的图像采用自适应阈值二值化。




式中,g(t)为灰度值为t的像素个数;G为非零像素个数。最后利用投影技术及头部的特点确定人脸上下和左右边界。由于眼部处于人脸上半部分,故只需保留图像的3/5。





欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) Powered by Discuz! 7.0.0