毕业设计(论文)基于OpenCV的疲劳驾驶预警系统学院:计算机学院专业:姓名:指导老师:计算机科学与技术学号:职称:二○一一年五月Xx学院毕业设计诚信承诺书本人郑重承诺:我所呈交的毕业设计《基于OpenCV 的疲劳驾驶预警系统》是在指导教师的指导下,独立开展研究取得的成果,文中引用他人的观点和材料,均在文后按顺序列出其参考文献,设计使用的数据真实可靠。
承诺人签名:日期:年月日基于OpenCV的疲劳驾驶预警系统摘要目前,随着我国人民生活水平的不断提高,汽车已经走进了千家万户,成为人们日常出行的一种重要的交通工具,交通事故也随之增多。
造成交通事故频频发生的重要原因是由于司机的疲劳驾驶。
因此,针对疲劳驾驶方面的研究具有极大的科研价值与设计意义。
系统设计思路是采用OpenCV开源的视频图像处理库,使用摄像头采集视频图像,对输入图像做预处理(图像灰度化、中值滤波等);通过学习训练的方法构造基于类Haar特征的层叠式分类器,利用基于类Haar特征的层叠式分类器从输入图像中直接定位人眼;把人眼部分的图像截取出来,二值化人眼图像;然后计算二值化图像中垂直方向上瞳孔的宽度大小,从而判断眼睛的状态;最后通过多次的捕捉,计算眼睛闭合的频率来得出其疲劳状态。
关键词:疲劳驾驶 OpenCV 类Haar层叠式分类器图像处理眼睛定位Driver Fatigue Early Warning System Based On OpenCVABSTRACTNow, with our continuous improvement of living standards of people, cars have entered the household, become an important daily travel transport, traffic accidents also increase. Important cause frequent traffic accidents due to driver fatigue driving.Therefore, for fatigue driving has been a significant scientific value and design significance.Design of system is the use of open source video OpenCV image processing library, the use of video cameras capture images of the input image preprocessing (image graying, median filter, etc.);constructed by learning the training class based on Haar features cascade classifier, using features of class-based Haar classifier cascade of images directly from the input locate the eye;to the human eye out of part of the image capture, binary eye images;and then calculate the binary image in the vertical directionThe width of the size of the pupil, in order to determine the state of eyes;Finally, many of the capture, calculation of the frequency of close to draw the eye fatigue state.Key words:Fatigue driving OpenCV Haar classifier cascade class Image Processing Eye location目录摘要 (I)ABSTRACT................................ 错误!未定义书签。
1前言 .. (1)1.1选题背景 (1)1.2驾驶人疲劳状态监测方法分析 (1)1.2.1基于驾驶人生理信号的检测方法 (1)1.2.2基于驾驶人生理反应特征的检测方法 (2)1.2.3基于驾驶人操作行为的检测方法 (2)1.2.4基于车辆状态信息的检测方法 (2)1.3选题目标 (3)1.4需求分析 (3)1.4.1用户需求分析 (3)1.4.2功能需求分析 (3)1.5本章小结 (4)2OpenCV介绍 (5)2.1 OpenCV背景介绍 (5)2.2 OpenCV应用领域及特点 (5)2.3 OpenCV在Visual Studio 2005下安装与配置 (5)2.3.1 OpenCV的安装 (5)2.3.2 Visual Studio 2005的安装 (8)3系统方案 (12)3.1系统总体方案 (12)3.2系统主要功能 (13)3.3系统实现原理 (14)3.4本章小结 (14)4算法分析 (15)4.1 AdaBoost算法描述 (15)4.2 眼睛定位算法 (16)4.3 基于Haar特征分类器训练生成XML步骤 (17)4.3.1 采集样本 (17)4.3.2创立样本VEC文件 (18)4.3.3训练生成XML (19)4.4 本章小结 (20)5详细设计 (21)5.1程序流程图 (21)5.2 软件设计 (22)5.2.1 获取图像 (22)5.2.2 眼睛定位 (22)5.2.3 计算眼睛的高度 (23)5.2.4报警模块 (24)5.2.5 GUI设计 (24)6系统测试 (26)6.1人脸定位及眼睛定位测试 (26)6.2系统测试结果 (27)6.3本章小结 (29)7论文总结 (30)参考文献 (31)附录 (32)谢辞 (34)1前言1.1选题背景随着交通运输业的发展,交通事故已成为当前各国所面临的严重问题。
据不完全统计,全世界每年死于交通事故的人数约为60万,因车祸受伤的人更多,每年平均约有l000万人。
在美国的重型汽车事故中,57%的灾难性事故是与驾驶员疲劳有关,它已成为事故发生的主要原因。
英国交通研究实验室(Transport Research Lab oratory)认为:驾驶疲劳导致的道路交通事故占全部交通事故的10%。
法国国家事故报告表明,因疲劳驾驶而发生车祸的占人身伤亡事故14.9%,占死亡事故的20.6%。
澳大利亚每年由于交通事故的花费约为75 亿美元。
其中,将近15亿是直接由于驾驶员疲劳而导致的。
我国交通事故呈现逐年上升的趋势,1999年我国发生道路交通事故412860起,致伤286080人,死亡83529人,造成直接经济损失21.24亿元。
因此,各国研究人员都在努力开发出一个能实时监视驾驶员警觉水平,并在任何不安全状态下能对驾驶员进行预警的系统。
本系统的设计思想是以OpenCV视频图像处理技术为核心,通过摄像头实时地获取驾驶员的脸部图像,利用脸部识别技术定位眼睛,再根据眼睛的闭合的状态判断驾驶员是否处于疲劳状态。
1.2驾驶人疲劳状态监测方法分析关于驾驶人疲劳及注意分散等安全状态的监测预警技术,由于它在交通事故预防方面的发展前景而受到各国高度的重视,研究人员根据驾驶人疲劳时在生理和操作上的特征进行了多方面的研究,一些研究成果已形成产品并开始进入市场。
驾驶人疲劳状态的检测方法可大致分为基于驾驶人生理信号、基于驾驶人生理反应特征、基于驾驶人操作行为和基于车辆状态信息的检测方法。
1.2.1基于驾驶人生理信号的检测方法针对疲劳的研究最早始于生理学。
相关研究表明,驾驶人在疲劳状态下的生理指标会偏离正常状态的指标。
因此可以通过驾驶员的生理指标来判断驾驶人是否进入疲劳状态。
目前较为成熟的检测方法包括对驾驶人的脑电信号EEG、心电信号ECG等的测量。
ECG主要被用于驾驶负担的生理测量中。
研究表明在驾驶人疲劳时ECG会明显的有规律的下降,并且HRV (心率变化)和驾驶中的疲劳程度的变化有潜在的关系。
基于驾驶人生理信号的检测方法对疲劳判断的准确性较高,但生理信号需要采用接触式测量,且对个人依赖程度较大,在实际用于驾驶人疲劳监测时有很多的局限性,因此主要应用在实验阶段,作为实验的对照参数。
1.2.2基于驾驶人生理反应特征的检测方法基于驾驶人的生理反应特征的检测方法是指利用驾驶人的眼动特性、头部运动特性等推断驾驶人的疲劳状态。
驾驶人眼球的运动和眨眼信息被认为是反映疲劳的重要特征,眨眼幅度、眨眼频率和平均闭合时间都可直接用于检测疲劳。
目前基于眼动机理研究驾驶疲劳的算法有很多种,广泛采用的算法包括PERCLOS,即将眼睛闭合时间占一段时间的百分比作为生理疲劳的测量指标。
利用面部识别技术定位眼睛、鼻尖和嘴角位置,将眼睛、鼻尖和嘴角位置结合起来,再根据对眼球的追踪可以获得驾驶人注意力方向,并判断驾驶人的注意力是否分散。
基于驾驶人生理反应特征的检测方法一般采用非接触式测量,对疲劳状态的识别精度和实用性上都较好。
1.2.3基于驾驶人操作行为的检测方法基于驾驶人操作行为的驾驶人疲劳状态识别技术,是指通过驾驶人的操作行为如方向盘操作等操作推断驾驶人疲劳状态。
Yoshihiro Takei 利用FFT对监测到的驾驶人的方向盘操作数据进行处理,研究结果在一定程度上揭示了驾驶人的方向盘操作与疲劳之间的关系。
研究指出方向盘的操作是一种有效的驾驶疲劳的判断手段。
Yabuta开发的驾驶人防疲劳装置中也使用了方向盘操作信息。
总体来说,目前利用驾驶人操作行为进行疲劳识别的深入研究成果较少。
驾驶人的操作除了与疲劳状态有关外,还受到个人习惯、行驶速度、道路环境、操作技能的影响,车辆的行驶状态也与车辆特性、道路等很多环境因素有关,因此如何提高驾驶人状态的推测精度是此类间接测量技术的关键问题。
1.2.4基于车辆状态信息的检测方法利用车辆行驶轨迹变化和车道线偏离等车辆行驶信息也可推测驾驶人的疲劳状态。
这种方法和基于驾驶人操作行为的疲劳状态识别技术一样,都以车辆现有的装置为基础,不需添加过多的硬件设备,而且不会对驾驶人的正常驾驶造成干扰,因此具有很高的实用价值。
日本三菱汽车公司开发了利用车辆横向位移量、驾驶人操作量等复合参数来识别驾驶人疲劳状态的方法,实验证明该方法的识别结果与利用驾驶人眨眼次数的识别结果基本一致。
日本庆应大学(2005)中岛研究室利用EEG评价驾驶人的睡意,研究发现车辆的横向位移量、方向盘操作量可以用来作为驾驶人疲劳状态的评价指标,而且可以实现疲劳早期预警。