版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
司机疲劳驾驶检测系统设计司机疲劳驾驶检测系统设计/NUM司机疲劳驾驶检测系统设计司机疲劳驾驶检测系统设计司机疲劳驾驶检测系统设计摘要:随着社会经济的发展,商用长途运输车越来越多,司机为了追求经济效益,经常罔顾交通法的规定疲劳驾驶,而一些私家车也因为各种各样的原因经常铤而走险疲劳驾驶,酿成很多人间惨剧。为了减少减轻司机的精神压力并对疲劳及时提示预警,本论文以计算机视觉技术为主体,设计实用操作简单的疲劳驾驶检测系统,辅助驾驶员安全驾驶。司机疲劳驾驶实时检测系统在实际应用中有很重要的意义。设计了一个利用图像分析的方法,通过测量PERCLOS指标值来进行疲劳判断的该类系统。系统首先对图像进行预处理,然后采用基于YCbCr颜色空间肤色模型进行人脸粗定位,根据人脸特征,逐次进行人眼区域缩小;最后通过对边缘信息进行先验知识结合积分投影的方法进行人眼定位和闭合度测量。考虑到视频图像序列帧与帧之间的相关性,采用线性运动预测的方法对人眼进行跟踪,减少了系统的运算量。实验结果表明系统能实时、准确地反映司机的疲劳状态。关键词:疲劳驾驶人脸检测
肤色检测交通安全
疲劳判断 目录摘要Abstract1.疲劳驾驶检测系统研究背景与意义 2.疲劳驾驶检测系统研究与实现 2.1国内外疲劳驾驶检测系统研究现状国外疲劳驾驶检测系统的研究成果 国内疲劳驾驶检测系统的研究现状 2.2疲劳驾驶检测系统浅析 2.3驾驶员疲劳检测系统的研究 3.基于人脸特征的列车司机疲劳驾驶检测与识别系统研究 3.1研究内容及目标 基于人脸特征的疲劳驾驶检测与识别算法开发 疲劳驾驶检测与识别算法OSP移植3.2基于Adaboost算法的人脸检测3.3基于Adaboost算法的人脸检测软件实现人脸检测程序3.4人眼检测与人眼状态分析算法4.基于贝叶斯网络的驾驶疲劳程度识别模型4.1基于贝叶斯网络模型的驾驶疲劳程度识别4.2驾驶疲劳程度识别模型驾驶疲劳贝叶斯网络结构4.3模型有效性验证5.基于FPGA的疲劳驾驶检测系统设计5.1疲劳驾驶检测系统总体设计方案5.2系统硬件设计与实现6.基于NiosII多核驾驶疲劳检测系统设计6.1系统介绍6.2系统关键模块设计 7.疲劳驾驶预警系统的研究进展 7.1预警系统的组成及工作原理7.2典型的疲劳驾驶预警系统7.3疲劳驾驶预警系统比较7.4发展趋势8.新型多功能驾驶员状态监测系统设计8.1无线脑电信号采集和分析8.2酒精监测9.多源信息融合在驾驶疲劳检测中的应用9.1驾驶疲劳特征9.2模糊神经网络疲劳识别9.3智能控制技术在汽车疲劳驾驶监控中的应用研究结束语 参考文献 1.研究背景与意义驾驶疲劳川是指驾驶员由于睡眠不足或长时间持续驾驶造成的反应能力下降,这种下降表现在驾驶员困倦、打磕睡、驾驶操作失误或完全丧失驾驶能力。美国印第安那大学对交通事故原因的调查研究发现85%的事故与驾驶员有关,车辆和环境因素只占15%。驾驶员在事故发生前一瞬间的行为和故障直接导致了事故的发生,这些行为包括知觉的延迟、对环境的决策错误、对危险情况的处理不当等。在所有的驾驶员错误中,最常见的是知觉延迟和决策错误,这些错误会产生注意力不集中、反映迟钝、操作不当等,产生这些错误的根本原因就是驾驶疲劳。随着我国生活水平的提高,人们的衣食住行等方面有了很大的改善,在交通方面更是有了质的飞跃。四通八达的道路、便捷的交通工具大大地缩短了人与人的距离,其中汽车保有量更是与日俱增,一个家庭拥有两辆以上的小车已经不是什么新鲜的事情。但是,汽车在带给人们方便的同时,随之而来的交通事故也源源不断。据统计,我国交通事故死亡人数己连续10多年居世界第一。我国在滚滚车轮下丧生的人数,短短十几年间己从每年5万多人增长到10多万人,是交通事故死亡人数居世界第二位国家的两倍。其中,驾驶员疲劳造成交通事故的占总数的20%左右,占特大交通事故的40%以上。同样,在国外情况也不容乐观。据美国国家公路交通安全委员会的估计,在美国大约发生56000次与睡眠有关的交通事故,其中约40000人次受伤和1550人死亡。1965年美国俄克拉荷马州收费公路局发表了1953年至1964年2128名机动车驾驶员发生车辆碰撞事故的调查结果:22%的驾驶员打吨驾驶,48%的交通事故归结于疲劳驾驶疲劳。由此可以知道,疲劳驾驶正逐渐成为交通事故的主要原因之一,成为马路上的“第一杀手”,如果我们能积极开展疲劳检测的工作,提醒驾驶者,很大程度上就能预防和减少交通事故的发生,使得公民的出行更加安全。因此,研究出一套疲劳检测的系统对社会和民众都有不可估量的社会意义和经济价值。一套好的检测系统必须要有成熟而完善的算法。本文对疲劳检测系统的实现方法进行研究,以期提高疲劳检测的速度和准确度。如果能将好的算法应用于疲劳检测系统之中,无疑能更有效的预防驾驶员疲劳驾驶而引起不必要的人员伤亡和经济损失。2.疲劳驾驶检测系统研究与实现2.1国内外疲劳驾驶检测系统研究现状对疲劳驾驶的研究在国外最早可以追溯到20世纪30年代,但实际上,投入真正研究的却还是从上世纪RO年代美国国会通过的汽车驾驶状态与交通安全之间的关系研究开始的。进入上世纪90年代,疲劳驾驶的科研工作得到了人们更大的重视,取得了一系列卓有成效的成果。早期的疲劳驾驶测评主要是从医用角度出发,借助医疗器件进行生理特征测量的。疲劳驾驶的实质性的研究工作是从20世纪80年代由美国国会批准交通部研究交通安全和机动车驾驶的关系,并健全汽车安全管理条例开始的。由此把疲劳驾驶的研究提高到了立法高度,保证了开展疲劳驾驶研究的有效性、合法性和持续性。其研究工作大概可以分为两大类:一是研究疲劳磕睡产生的原因和其他诱发因素,寻找能够降低这种危险的方法:二是研制智能报警系统,防止驾驶员磕睡状态下驾驶。20世纪90年代,美国对疲劳驾驶电子装置的研发工作发展的较快。在各国研制的装置中具有代表性的成果有:(1)美国研制的打磕睡驾驶员侦探系统DDDS(TheDrowsyDriverDetectionSystem)。采用多普勒雷达和信号处理方法,可获取驾驶员烦躁不安的情绪活动、眨眼频率和持续时间等疲劳数据,用以判断驾驶员是否打磕睡或睡着。该系统可制成体积较小的仪器,安装在驾驶室内驾驶员头顶上方,完全不影响正常的驾驶活动。(2)美国华盛顿大学通过自行开发的专用照相机、脑电图仪和其他仪器来精确测量头部运动瞳孔直径变化和眨眼频率,用以研究驾驶行为问题。一般情况下入们眼睛闭合的时间在0.2-0.3s之间,驾驶时若眼睛闭合时间达到0.5秒就很容易发生交通事故。(3)卡内基梅隆研究所的Copilot装置。研究所的Grace等人采用特制的红外LED装置,根据人的视网膜对不同波长红外光的反射量不同所表现出生理特征,使用850nm和950nm波长的红外光源,在同一时间内得到两幅眼部具有微小差别的图像,然后将这两幅图像进行差分相减,就可以提取出眼部瞳孔的位置和大小。再用PERCLOS法则计算眼睛的闭合程度来判断疲劳的程度。使用此装置能比较准确地定位出人眼然后进行疲劳判断。(4)2000年1月明尼苏达大学计算机科学与工程系的NikolaosP.Papanikolopoulos教授成功开发了一套驾驶员眼睛的追踪和定位系统,通过安置在车内的一个CCD摄像头监视驾驶员的脸部,用快速简单的算法确定驾驶员眼睛在脸部图像中的确切位置,追踪多幅图像来监控驾驶员是否驾驶疲劳。同年3月,他对上述系统进行了改进,改用红外线彩色摄像头并加滤波器滤除图像的噪声和非脸部的图像,使搜索脸部图像的次数减少,加快了处理图像的速度。(5)日本成功研制了电子“清醒带”,固定在驾驶员头部,将其一端的插头插入车内点烟器的插座,装在带子里的半导体温差电偶使平展在前额部位的铝片变凉,使驾驶员睡意消除,精神振作。(6)日本先锋公司最近开发出防止驾驶员开车打磕睡的系统。它可通过心跳感应器每隔巧秒检测司机的心跳速度,监测司机驾驶员是否打磕睡,在睡意来临巧分钟前提醒司机注意,防止发生事故。先锋公司还研究了通过测量眨眼频率和车体摇晃频率监测司机是否磕睡的系统。(7)西班牙的防磕睡系统(Anti-DrowsinessSystem),测量驾驶时手对方向盘的握力,一旦检测到疲劳发生,利用汽车的灯不停的闪烁,提醒周围的交通车辆。(8)澳大利亚的头部位置测量跟踪系统与沃尔沃合作,通过测量头部位置、闭眼和眨眼评估疲劳驾驶,但是它要求在司机的脸上作一些标记,给司机带来极大的不便。(9)2005年,澳大利亚的研究人员们推出了一款眼镜,它可以检测出司机是否已经处于疲劳状态,并及时提出警告。原理是通过红外线传感器监测司机的眼睑活动和眨眼频率,据此判断司机是否己经处于疲劳状态。(10)转向盘监视系统S.A.M(SteeringAttentionMonitor),一种监测方向盘非正常运动的传感器系统,当方向盘正常运动时传感器系统不报警,若转向盘4s不运动就会发出报警声直到转向盘继续正常运止。该系统固定在车内录音机旁,转向盘下面的杆上装有一条磁性带,用以监测转向盘的运动。(11)头部位置测量仪(ASCIAdvancedSafetyConceptsInc研制)。传感器设计安装在司机座位上方,每个传感器都能输出司机头部距离传感器的位置,利用三角代数算法就可以计算出头在X,Y,Z三维空间中的位置,也能够实时跟踪头部的位置,同时利用各个时间段头部位置的变化特征,可以表现出司机处于清醒还是磕睡状态。该传感器物理特点基于传感器电极屏蔽之间的电容,通过人这个高导体可以改变电极之间的电容,通过测量电压计算头部与传感器之间的距离。当人进入电容区域时,临近的电容改变同距离之间的关系是,利用3个传感器,就可利用三角代数计算出头的X,Y,Z的坐标。并对司机的头部位置进行实时跟踪,并且根据头部位置的变化规律判定司机是否磕睡,发现点头的动作和磕睡有非常好的相关性。(12)法国图卢茨西门子汽车公司投资1700万法郎研制的一整套疲劳检测系统。他们在汽车上装上5种传感器:汽车速度传感器(监测汽车是否超速)、脚踏板传感器(监控脚踏板上压力的情况,是否在预定时间内没有压力变化)、方向盘传感器(监测方向盘情况)、车尾CCD传感器(测量汽车和马路上旁侧或中间的白线距离)、眼睛传感器(专门监控眼部的疲劳特征)。这套系统主要是从多方面情况来联合监控驾驶员的情况,运用传感器融合的原理来综合判断驾驶员的情况,在实时性、准确性上有很大的保障。国内疲劳驾驶检测系统的研究现状国内的疲劳驾驶预警系统的研究还处于起步阶段,相对国外来说还比较落后。我国对疲劳驾驶的研究最早始于20世纪60年代,其中主要以高校居多。到目前为止,还没有很成熟的产品问世。目前的检测方法主要有:(1)江苏大学汽车与交通工程学院的葛如海教授等〔5]人设计的一套疲劳监控系统,运用图像差分、灰度直方图等一系列图像处理方法,定位驾驶员眼睛睁开闭合状态,再用PERCLOS指标衡量驾驶员的疲劳状态。(2)上海交通大学石坚、吴远鹏等人通过在车上安装传感器来测量方向盘、踏板压力等情况间接或许驾驶员的疲劳信息,当踏板或方向盘长时间不动的时候,驾驶员可能有疲劳的迹象,但是这和驾驶员的驾驶经验和习惯有关,准确性不高。(3)中南大学对驾驶员驾驶时的疲劳检测方法进行了研究,设计出了一套眼睛跟踪系统,可达到实时的跟踪效果,同时研究了疲劳时眼睛的闭眼时间、快眨眼次数、慢眨眼时间和次数的特征模式。(4)航空医学研究所的俞梦孙、周俞斌等司利用人眼在特定波长的红外光照射下的不同成像特点,设计了适用于全天候的疲劳检测系统。(5)西南大学的姜德美提取驾驶员驾驶时的反应时间和方向盘转动角度作为BP神经网络模型的输入,来进行仿真验证。(6)浙江大学正在研究驾驶防磕睡装置,该装置通过实时监测一段时间内驾驶人员眼睛的活动如眼睛的闭合时间、闭合频率等参数,来判断当前驾驶人员的注意力程度,从而识别驾驶员是否疲劳。(7)中国农业大学车辆与交通工程学院正在进行机动车驾驶员疲劳测评方法的研究,他们使用CCD摄像头来采集图像数据,数据采集到计算机后,先利用高斯肤色模型进行驾驶员人脸定位,然后根据人脸图像的灰度分布检测出眼睛在图像中的具体位置,最后利用模板匹配技术判断出人眼的开闭状态,并计算出眼睛的闭合时间和PERCLOS,当眼睛的持续闭合时间大于3秒,PERCLOS大于80%时,就认为驾驶员处于疲劳驾驶状态,发出警告。(8)吉林大学的王荣本等与中国业大学郑培等,利用机器视觉的方法对驾驶员的眼睛特征进行实时跟踪从而判断驾驶员的精神状态。(9)深圳长途汽车公司的周鹏应用人体生理学、现代神经学、电子工程学分析了驾驶员疲劳事故隐患的起因,提出了消除疲劳事故隐患必须消除司机开车时的异常疲劳和大脑麻痹。根据这一思想他研究了佩戴于司机小腿部与手腕部的“司机疲劳事故预防器”。(10)中国的金吉公司制造了一种像戒指一样的测量装置,利用人的皮肤阻抗的变化,司机磕睡时,通过声音提醒司机当前的状态,由于特异性和准确度不高,误报率和漏报率都很高。综合国内外的现状来看,能做到实时、有效、简单地检测驾驶员的疲劳情况是目前研究的重点和热点,但是目前市场上还没有非常成熟的产品投入到市场上进行实际的应用,这主要存在着以下的困难:首先产品的投入成本比较高,汽车厂商研制出了较好的预警系统但是却无法很好地进行商业化的推广;其次目前疲劳的判断没有确切的定义,因此在进行疲劳检测的时候可能会出现误判等情况:再者诸如EEG,“清醒带”、监测眼镜等方法的有效性良好,但是由于是接触性的装置,大大影响了驾驶员了自由活动;最后还因为个体和环境的差异(诸如男女性别、近视眼镜、光照情况、路况等)受到不同的影响。总体看来,驾驶员疲劳检测是个复杂的过程,我国的驾驶疲劳检测的方法同发达国家相比,还存在较大的差距。研究表明,眼睛状态和疲劳有很大的关联性,现阶段随着数码相机和网络摄像头的价格越来越便宜,通过监测驾驶员的眼睛状态来判断驾驶员是否疲劳的技术正逐步成为热点。因此,研究如何利用机器视觉技术、图像处理技术、人脸识别技术PERCLOS疲劳检测方法相结合,开发出一种车载的、非接触式的、实时的员疲劳检测系统是当前的一个研究热点,这就是本课题研究的初衷。2.2疲劳驾驶检测系统浅析经过几十年的研究疲劳检测技术仍远未达到成熟、完善的地步国内外主要研究成果如下(1)利用方向盘内置传感器感应驾驶员对航向纠正的速率若对方向的掌控迟钝则判为疲劳驾驶并发出警报但这个系统并未充分考虑长距直路、路况好的情况。(2)利用内置摄像头侦测驾驶员眼部状态包括:眼睑、瞳孔变化及眨眼频率等来判断驾驶员是否疲劳。但这个系统并未充分考虑人眼特征差异,比如:眼眼小的人、睡觉睁眼的人戴眼镜的人等。(3)利用连续驾车时间来判断驾驶员是否疲劳。这种方法很难扼制短暂停车继续驾驶的人。(4)利用后视镜传感器检测车辆是否偏离车道若车辆非线性行驶则判为疲劳驾驶并发出警报。该系统不适合崎岖、颠簸的道路。(5)利用驾驶员脸部肤色变化来判断是否疲劳驾驶这种方法受光照强度的影响很大。其他如通过检测心跳、血压、明视持久度、能见度、调节时间变动率、闪光融合频率、脑电图、心电图、肌电图等判定疲劳的方法形式单一多信息融合系统随之产生担其准确性、可靠性有待完善。疲劳直接反映了神经的传导时间人在疲劳时房使神经传导时间明显延时。所以神经传导速度可作为反应驾驶员是否疲劳驾马史的基本生理参数。1.感觉神经传导速度测定方法疲劳早期驾驶员主要是感觉障碍基本无运动障碍和肌肉萎缩问此时测定感觉神经传导速度对于预防疲劳驾驶、避免交通事故的发生具有重要意义。根据如下公式计算出感觉神经传导速度:检测方法如下(以挠神经为例)使用指环电极作为刺激电极,使用表面电极作为记录电极,刺激位置为拇指接近虎口的指关节,记录位置选择手腕挠测或前臂下1/3}}a测出刺激点与记录点之间的距离S并测出刺激开始至感觉神经收缩产生动作电位的潜伏期T。2.运动神经传导速度测定方法运动神经传导速度检查能直接测定运动神经的传导性。根据刺激点与记录电极之间的距离差及潜伏期间隔来推算该段距离内的运动神经传导速度。根据如下公式计算出运动神经传导速度:本系统主要靠检测、计算出的神经传导速度与参考值作比较来判断驾驶员是否疲劳。通过内嵌在方向盘内的电极及腕、肘部的电极来测得神经传导速度的关键参数并传入控制系统,由控制系统通过计算、与参考值进行比较最终对是否疲劳作出裁决厂旦认定疲劳驾驶,便启动声、光报警系统甚至自动刹车系统,以避免交通事故的发生。2.3驾驶员疲劳检测系统的研究为了减少由于驾驶员疲劳驾驶引起的交通事故,提出驾驶员疲劳状态检测系统的方案。使用3×3中值滤波去除噪声和光照对图像的影响,通过对AdaBoost算法的强分类器训练算法改进、级联分类器优化实现人脸的快速检测,在检测到的人脸区域,通过积分灰度投影和从粗到细改进的模板匹配方法对人眼进行准确定位;通过PERCLOS、眼睛闭合时间、眼睛眨眼频率、嘴巴张开程度、头部运动的计算,进行驾驶员疲劳程度的综合判定。实验结果表明,该方法准确率高,兼具了良好的实时性和鲁棒性。1.图像预处理由于自然条件下的噪声和光照影响等一些因素,会给人脸图像的处理带来一定的干扰,所以需要找到合适的方法滤除噪声和改善非均匀光照的影响。经实验验证,3×3中值滤波法可达到很好的预处理效果。2.改进的AdaBoost检测方法1995年,Freend和Schapire提出AdaBoost算法,ViolaP和JonesM提出的与基于积分图的Haar-like特征快速计算算法相结合的AdaBoost算法,在历史上第一次真正实现目标的实时检测。这个算法的基本思想就是将大量的分类能力一般的弱分类器通过一定方法叠加起来,构成一个分类能力很强的强分类器,且算法不需要任何关于弱分类器性能的先验知识,很容易应用到实际问题中。AdaBoost算法流程如图2所示。ViolaP和JonesM提出的基于AdaBoost的快速目标检测方法,虽然得到了广泛的应用,但是该算法还存在很多问题。如:虽然AdaBoost系统检测速度很高,但是由于AdaBoost算法本身训练比较耗时,整个系统的训练时间非常惊人。根据文献[7],其系统在训练上花费了数周的时间。在分析这些问题的基础之上,本文提出了改进的AdaBoost目标检测算法,极大降低了检查的时间。(1)强分类器训练改进算法基于AdaBoost的快速目标检测算法在计算Haar-like特征时使用积分图的方式进行了快速计算,根据文献[8]的统计,24×24的搜索窗口虽然有18万的特征,但是过半的矩形特征面积非常小(小于2×2),这些特征在实际目标检测的性能很差,使训练的特征不具有很好的泛化能力。本文在进行特征选取的时候将这些小面积矩形特征进行过滤,避免了此类特征的计算,在保证分类器检测率的同时,提高了分类器的训练速度。由AdaBoost训练强分类器的训练算法可以看出,该算法是选择单个特征作为弱分类器,且选择弱分类器的标准是弱分类的检测准确率略大于随机猜测(即略大约0.5),则将该弱分类器保留。但是在训练的过程中,很可能出现非常相似的特征,这类相似的特征对分类器的性能没有提高的作用,而且不利于分类器的泛化能力。(3)级联检测技术的优化AdaBoost算法能够完成实时性检测的原因除了通过积分图进行快速特征计算之外,另一个重要原因是该算法在进行检测目标时采用了级联分类器。级联结构分类器如图3所示。在将训练出强分类器串联在一起形成层叠分类器时,应遵循“先重后轻”的分级分类器思想,将由重要特征构成的结构较简单强分类器放在前面。这样可以先排除大量假样本,从而提高检查速度。AdaBoost算法在进行级联分类器训练的时候,对每一级强分类器都进行了重新训练,训练比较耗时。已经证明:“随着弱分类器数量的增加,通过AdaBoost构建的强分类器的检测率也会不断提高”。本文为了提高训练速度,在对级联分类器训练时,后一级的强分类器会重复利用前一级已经训练好的弱分类器,并在此基础上通过增加弱分类器的数量来提高强分类器的性能。这样可以大大减少强分类器的训练时间。1.灰度积分投影确定准眼睛区域在准确定位脸部位置后,根据人脸的面部器官的分布,人眼在脸部的上半部,所以首先截取人脸区域是上半部进行处理。人脸图像中眼睛部位的灰度值通常比周围区的灰度值小,利用该特征常使用积分投影的方法来定位眼睛。最为常用的投影函数是积分投影函数。2.改进的模板匹配精确定位眼睛模板匹配方法是假设待搜索图像S的尺寸为W´H,模板T的尺寸为M´N,通过一定的算法在大图像(即待搜索图像S)中搜索与模板T具有相近的尺寸、方向和图像的子图,并确定其坐标位置。基于相似度的模板匹配算法以各局部图像作为模板,先在人脸集中手工提取各种状态的眼睛图像作为模板。一幅眼睛图片为一个模板,即一个二维矩阵,利用眼睛模板与人脸图像作相关匹配,匹配函数如下:当模板匹配的相关系数R(ij)等于1的时候,说明搜索子图与模板完全匹配。这只是一个理想值,模板匹配的过程中主要是寻找相关系数的最大值,此时它所对应的搜索子图便是所要寻找的目标子图。显然,用这种公式做图像匹配计算量大、速度慢。可以使用另外一种算法来衡量T和Sij的误差,其公式为:计算两个图像的向量误差,可以增加计算速度,根据不同的匹配方向选取一个误差阀值E0,当E(ij)>E0时就停止该点的计算,继续下一点的计算。驾驶员疲劳的判定会因错误检查带来不良影响,本文采用PERCLOS、眼睛闭合时间、眼睛眨眼频率、嘴巴张开程度、头部运动的计算,进行疲劳程度的综合判定,准确、有效地进行驾驶员疲劳的检测。1.PERCLOSPERCLOS(PercentageofeyelidClosureoverthepupilovertime)是指眼睛闭合时间占某一特定时间的百分率。PERCLOS方法有P70,P80和EM三种判定标准。研究表明P80与疲劳程度间具有最好的相关性。2.嘴巴张开程度嘴巴的状态通常有三种,闭合,说话及打哈欠,在疲劳状态下,人会频繁地打哈欠。在人脸下半部分进行水平灰度投影,观察不同单人图像的水平灰度投影曲线,会发现该区域下半部分的水平灰度投影曲线有一个波谷,即为嘴唇间位置。对人脸下半部分区域二值化,从嘴唇间向上、下计算连通区域(连通区域可以防止鼻孔及胡须对计算带来影响)的像素值,即可得到嘴巴的张开程度。3.眼睛高度D及嘴巴高度H补偿在上眼睑到下眼睑的垂直距离D及上嘴唇到下嘴唇的垂直距离为H时,由于驾驶员头部相对于检测设备有位置移动,因此为了实现驾驶员眼睛高度和嘴巴高度的准确计算,需要修正眼睛、嘴巴与检测设备距离相对变化引起的D及H变化。眼睛闭合时间眼睛闭合时间,一般用眼睛闭合到睁开所经历的时间来表示。人处于正常清醒状态时,眼睛闭合时间是很短的,会迅速睁开眼。而当疲劳时,眼睛闭合时间会明显变长,因此眼睛闭合时间能直接反映驾驶员的精神状态。本文采用计算从眼睛闭合D/3到睁开D/3的最大帧数,帧数越多,闭合时间就越长,则疲劳程度就越严重。5.眼睛眨眼频率人在疲劳状态下,眨眼频率会比清醒状态下频率高。本文也将其作为一项参数作为疲劳判断的依据。眼睛闭合D/3到睁开D/3为眨眼一次。累加一段时间内眨眼次数,作为疲劳判断的一项参数。6.头部运动的疲劳参数驾驶员在疲劳状态下会出现频繁点头,头部向前倾。本文通过水平灰度积分投影得到眼睛瞳孔、嘴角的水平位置。d1为瞳孔水平位置到采集图片的上边缘距离,d2为嘴角的水平位置到采集图片的下边缘距离。在驾驶员疲劳出现点头情况,则d1增大且d2减小。驾驶员疲劳时,头部向前倾,则d1增大且d2增大。点头和头部向前倾可以作为疲劳判断的一项重要的依据。3.基于人脸特征的列车司机疲劳驾驶检测与识别系统研究3.1研究内容及目标本章的目标是开发一套基于人脸特征识别的非接触式列车司机疲劳驾驶实时检测预警装置。本文的研究内容为:结合列车司机驾驶的特点和规律,利用模式识别与图像处理知识分析列车司机疲劳驾驶时的脸部特征,研究适合于列车运行时驾驶室光照情况复杂多变及高频低幅振动环境下的列车司机疲劳检测和识别算法,并在以DSP数字信号处理芯片为核心的硬件平台上实现检测与识别算法,以达到系统实时检测的性能要求。主要完成以下研究内容:1.实现由摄像头实时捕捉视频数据;2.提出适合列车驾驶室环境的人脸检测算法,使其对振动环境和光照变化有较强的鲁棒性;3.提出人眼检测算法,及判断眼睛睁开/闭合的状态识别分析算法;4.根据眼睛睁开/闭合数据,基于PERCLOS的P80模型,给出列车司机疲劳驾驶的判定算法;5.在以DSP为核心的硬件平台上,将列车司机疲劳驾驶检测与识别算法移植到DSP芯片中,提高算法的检测速度。本识别系统的开发主要分为两大阶段进行:1.检测与识别算法开发:在PC上进行基于人脸特征的列车司机疲劳检测与识别算法开发。主要完成基于Adaboost算法的人脸与人眼分类器训练,以及人眼状态识别算法开发;2.基于DSP的疲劳检测与识别算法移植:将PC上的非实时疲劳驾驶检测与识别算法移植到基于DSP的高速数据处理嵌入式系统,使算法达到实时检测与识别的要求。本阶段的主要任务是:结合列车司机驾驶的特点和规律,分析列车司机疲劳驾驶时的脸部特征,研究适合于列车运行时驾驶室光照情况复杂多变及高频低幅振动环境下的列车司机疲劳驾驶检测与识别算法。整个检测与识别系统必须准确地检测和定位眼睛,根据查阅的相关技术资料,最终确定本阶段算法开发分为三个步骤进行:l)检测视频中的人脸;2)在人脸区域中定位人眼;3)对人眼状态进行识别,确定其状态,睁开或闭合。采用先检测人脸,再检测人眼的策略,可以减少检测算法的计算量,同时提高人眼检测的准确率。根据国内外研究人员发表的论文或技术资料显示:采用Adaboost算法开发的人脸检测系统,计算量大,在对视频进行检测时,实时性方面表现不尽理想,而且本系统在人脸与人眼检测阶段均采用Adaboost算法,同时考虑到本系统设备便携式的要求,所以将算法移植到具有高速数据处理性能的DSP嵌入式系统中,提高系统检测与识别速度。疲劳驾驶检测算法的DSP移植及优化,首先完成基于DSP旧105最小视频输入输出系统程序,然后将疲劳检测算法从PC移植到.DSP系统,并完成移植过程涉及到的相关算法优化及线性汇编优化等工作,使系统达到实时检测与识别的要求。3.2基于Adaboost算法的人脸检测整个疲劳检测系统首先必须准确地检测到人眼位置,我们采用先确定人脸区域,然后在人脸区域内进一步检测、定位人眼的方法,这样可以使得人眼的检测与定位更准确一些。人脸检测采用的方法大致可分为基于统计和基于知识两种类型[5]。基于统计的方法将人脸图像视为一个多维向量,从而将人脸检测问题转化为多维空间中分布信号的检测问题;而基于知识的方法则利用人脸特征先验知识定义若干规则,建立相应的数学模型,从而将人脸检测问题转化为假设和验证问题,比如利用人脸肤色和几何结构等。从表2一1可以看出,每种人脸检测方法都有一定的优缺点以及应用场合。基于知识建模的方法,一般对建模的假设条件依赖性强,而基于统计的方法,一般精度较高、鲁棒性强,但运算量大。对于本系统,列车驾驶室光照环境变化迅速,同时带有一定程度的震动,很难保证一个稳定的建模假设环境。例如,列车的光照环境不能保证基于肤色的检测算法要求的光照稳定的建模条件,而列车的震动环境也不能保证基于运动的检测算法要求的背景稳定的建模条件。基于统计的检测方法,通过模式识别的训练过程,提取人脸样本中的大量人脸本质特征,在光照不理想的情况下,即使缺失少部分特征,仍可以正确识别人脸。t一般来说,基于统计的人脸检测方法只需要当前帧图像,对振动环境并不是很敏感,带来的只是少许图像噪声,对算法检测性能影响不大。由于本系统采用高速DSP数字信号处理芯片,在很大程度上解决了基于统计的人脸检测算法计算量大的问题。从上面的分析,可以看出基于统计的算法对列车复杂多变的光照、振动环境都有较强的适应性。在基于统计的人脸检测算法中,我们最终选择了基于Adaboost算法的人脸检测算法。1.集成学习算法集成学习中一个关键问题就是弱分类器的集成问题。大部分机器学习算法只是通过单个分类器的生成来对新的样本做出预测,而集成学习则是多个弱分类器的结合,每一个弱分类器都可能是一种传统的机器学习模型。对一个新样本分类,集成分类器把这个新样本交给其多个弱分类器,再把各个弱分类器对新样本的分类结果通过某种方式(比如投票或求均值)组合来得到集成学习的预测结果。Hansen等研究发现,集成学习算法生成的分类器要比参与集成的那些单分类器的准确度高许多。我们也可以说成集成学习的优点是集成分类器的性能比单个弱分类器具有更好的表达能力。在众多的集成学习算法中,Adaboost算法因其有以下优点而被广泛使用:(1)算法速度快;(2)除了训练轮数参数T外,不需要调节任何参数;(3)不需要知道任何关于弱分类器的先验知识;(4)对弱分类器的性能要求不高,只需要比随机猜测性能稍好即可,这种弱分类器在实际情况下很容易获得,从而降低了算法的复杂度,提高了效率;(5)在弱分类器的构成上可以兼容多种方法,这些弱分类器可以是神经网路、决策树、最近邻域分类器、经验规则等;(6)训练数据可以是文本、数字、离散值等,并且Adaboost算法很容易被推广到多类目标的分类问题中去。2.Adaboost算法Adaboost算法的训练过程是一个样本权重的迭代更新过程。在Adaboost算法中每个样本的权重值表示该样本被错分次数的多少,在每一轮权重更新的过程中,被错分样本的权重会变大,在下一轮循环中算法就会更加关注上一轮被分错的样本。如果一个样本被错分了很多次,那么这个样本的权重就会越来越大,我们就称这样的样本为“困难样本”。通过这样的方式Adaboost算法能够“聚集于”那些困难(更富有信息)的样本上。下面按照集成学习算法的两个关键问题介绍Adaboost算法,首先是Adaboost算法应用于人脸检测的弱分类器H~like特征,然后介绍Adaboost的集成方法,即由Haar一like特征组成的弱分类器生成强分类器,最终获得级联分类器的方法。3.3基于Adaboost算法的人脸检测软件实现Adaboost分类器实现主要分两部分:Haar一like特征的选择过程,即样本训练过程;检测过程,即利用得到的Haar一like特征进行人脸检测。下面分别给出样本训练过程及检测过程的软件逻辑实现。样本训练过程的主要目的是从过完全的弱特征中获取分类能力较好的少量弱特征,进而生成强分类器和级联分类器。下面详细介绍样本训练过程。在样本训练过程中,首先需要解决的就是人脸样本库的选择及预处理。人脸检测程序主要是利用基于Adaboost学习算法训练得到的人脸级联分类器,进行实际的人脸检测。人脸检测程序流程包括图像预处理、积分图生成、特征值计算、级联分类器判断等步骤。下面给出级联分类器人脸检测程序的流程图,以及程序关键代码。3.4人眼检测与人眼状态分析算法人眼训练过程需要人眼库,因为没有现成的人眼库,所以只能自己收集人眼样本,建立人眼库。人眼样本,主要裁剪自人脸库样本以及一些互联网下载人脸图片中。样本被统一缩放到20x12像素,样本库共包括1000个人眼样本和1500个非人眼样本利用人眼检测程序进行了大量图片检测,发现人眼检测正确率非常高,只要能够正确定位人脸,人眼检测几乎可以达到100%。经过分析,可以发现,这是由人眼特征决定的。首先,人眼特征简单、变化小,不像人脸特征多、变化大。其次人眼搜索区域小,人眼的搜索区域为先前定位的人脸区域,而人脸搜索区域为整幅图像。特征简单、搜索区域小,导致人眼检测正确率高,基本不会出现漏检和误检。人眼状态分析是疲劳状态识别最关键的步骤,也是一个主观的定义过程。人眼状态分析算法可以分为基于统计和基于知识建模两种方法。因为人眼开闭状态连续,状态确定主观,而基于统计的人眼状态分析方法(模板匹配,Fisher法等)固有的离散特点,使得基于统计的方法样本选择难度大,使用灵活性很差,因此本系统优先考虑基于知识建模的方法,该方法最大的特点就是模型参数可调,所以可以通过调节参数,尽量达到PERCLOS的P80模型的要求。最常见的两种基于知识建模的人眼状态分析基本方法是:Hough找圆法和灰度投影法。1.Hough找圆法Hough变换是图像处理中从图像中识别几何形状的基本方法之一。Hough变换的基本原理在于利用点与线的对偶性,将原始图像空间给定的曲线通过曲线表达形式变为参数空间的一个点。这样就把原始图像中给定曲线的检测问题转化为寻找参数空间中的峰值问题。简而言之,Hough变换思想为:比如检测图像中的一条直线,在原始坐标系下的一个点对应了参数坐标系中的一条直线,同样参数坐标系的一条直线对应了原始坐标系下的一个点。原始坐标系下呈现直线的所有点,它们的斜率和截距是相同的,所以它们在参数坐标系下对应于同一个点。这样在将原始坐标系下的各个点投影到参数坐标系下之后,看参数坐标系下有没有聚集点,这样的聚集点就对应了原始坐标系下的直线。2.灰度投影法灰度投影法基本原理:若人眼睁开,黑色瞳孔未被眼睑遮盖,则其垂直灰度投影在瞳孔位置形成一个波峰。若人眼闭合,黑色瞳孔被眼睑遮盖,则其垂直灰度投影基本呈水平直线。对眼睛部位进行垂直灰度投影,得到其灰度投影图,然后判断投影图是否具有明显的波峰,就可以判定眼睛状态。灰度投影法同样面临Hough找圆法同样的问题,需要图像的质量较高和准确的人眼定位,否则就不能获得明显的波峰,甚至可能出现两个较小波峰的情况,导致灰度均值较大等异常情况,导致状态分析错误。其次灰度投影法需要较复杂的前处理步骤,以消除噪声,才能得到很好的灰度投影图(即明显的单波峰,或小均值呈直线形式)。3.区域灰度特征比较法鉴于上述Hough找圆法、灰度投影法两种基于知识建模方法固有的过分依赖其假设条件,需要精确几何模型、鲁棒性较差的缺点,我们提出了一种区域灰度比较法,即使得眼睛状态分析具有基于知识建模方法的连续性、参数可调性,而且不需要精确的几何模型,同时也使得状态分析具有不错的鲁棒性。4.基于贝叶斯网络的驾驶疲劳程度识别模型4.1基于贝叶斯网络模型的驾驶疲劳程度识别驾驶疲劳作为一个不可直接观测的研究对象,其影响因素非常多且难以定量,各类度量指标对驾驶疲劳的界定又没有统一的标准。因此,判断驾驶疲劳程度是一个非常复杂的系统问题。与酒后驾驶的检测指标不同,所有用来检测驾驶疲劳的指标在获取过程中均会受到不同程度的干扰。目前,还没有一种方法能够对驾驶疲劳程度进行准确无误的检测。因此,使用概率论的方法对驾驶疲劳程度进行识别具有一定的合理性。贝叶斯网络模型的基本思想是:在信息不完备的情况下,通过可观察随机变量(证据变量)推断不可观察随机变量(隐含变量),进行概率推理。利用贝叶斯网络求解驾驶疲劳程度识别的问题可以表述为:在已知疲劳度量指标测定结果的情况下,利用贝叶斯网络方法求解在一定影响因素条件下,疲劳状态处于各种程度(清醒、轻度疲劳、重度疲劳)时的概率。驾驶疲劳贝叶斯网络的构建包括两个主要内容:1)确定网络节点;2)计算节点间的先验概率。其中,网络节点的选择取决于疲劳的各种特征及影响因素,而节点先验概率的确定则依赖于某个特征或因素对判断疲劳程度的可能性。4.2驾驶疲劳程度识别模型驾驶疲劳贝叶斯网络结构驾驶疲劳作为系统的核心,其复杂的影响因素即该系统的输入,在生理、眼动及驾驶绩效等方面表现出来的特征即该系统的输出。将驾驶疲劳的影响因素分为三类:驾驶环境属性、驾驶人个体属性以及原始疲劳属性。各类影响因素的具体度量指标见图1。其中,温度、天气等变量是驾驶环境变量的父节点,相应的驾驶环境变量是温度、天气等变量的子节点,以此类推。在建立的驾驶疲劳贝叶斯网络模型中,条件概率分为两类:一类是输入层变量与隐含层变量之间的条件概率,另一类是隐含层变量与输出层变量之间的条件概率。输入层变量和输出层变量统称为贝叶斯网络中的证据变量。利用贝叶斯网络建立驾驶疲劳程度识别模型的原理是在已知网络中各节点先验概率的前提下,结合证据变量的取值,根据贝叶斯公式计算不同驾驶疲劳程度的后验概率。4.3模型有效性验证采用模拟驾驶的方法进行实验设计。实验设备包括模拟驾驶仿真实验平台—AS1300卡车驾驶模拟系统、多通道生物生理记录仪、摄像机等。同时采用斯坦福嗜睡量表(StanfordSIeepinessScale,SSS)对驾驶人的主观疲劳状况进行问卷调查,以了解驾驶过程中驾驶人对疲劳的主观感受。5基于FPGA的疲劳驾驶检测系统设计5.1疲劳驾驶检测系统总体设计方案主动红外光源理论的内容:人眼视网膜对不同波长红外光的反射率不同,对850nm波长红外光的反射率是90%,对940nm红外光的反射率是40%,红外波长在880士80nm范围之内时,人脸的其他部分对于红外光的反射程度基本一致。这样通过控制这两组LED灯的闪烁频率得到亮瞳孔和暗瞳孔图像,将这两幅图像经过差分获得瞳孔明显的几乎没有背景干扰的以人脸为主体的差分图像,大大简化了整体算法的复杂度。如图2.1所示:获得了差分图像后,对其在水平和垂直方向上进行投影,通过确定人脸的上、下、左、右边界来定位出人脸区域。依据人眼和人脸的固定几何关系来定位出人眼的大致区域,接着在此区域内利用复杂度算法检测到瞳孔。人眼睛睁开时瞳孔面积大,当人闭眼时,瞳孔面积随闭眼程度变化,当完全闭眼时瞳孔面积为0,所以通过统计瞳孔面积可以判断当前采集到图像中驾驶员是睁眼还是闭眼。最后通过统计一段时间内闭眼帧数占总帧数的比例得到眨眼频率进行驾驶员是否疲劳的判断。P80疲劳算法定义了闭眼的标准和疲劳判断的标准。闭眼标准为:眼脸遮住瞳孔的面积超过80%;疲劳标准是:一段时间内闭眼帧数己:`总帧数的比例大于40%。本系统主要集成了图像采集、存储、算法处理、报警和显示模块,组成了以FPGA为核心控制器的疲劳驾驶检测系统。系统的总体方案图如图2.2所示。本设计中的图像处理算法都是在FPGA上实现的,算法处理速度达到了视频源25帧每秒的速度,解决了现有疲劳驾驶系统领域普遍存在的难以满足实时性的问题。5.2系统硬件设计与实现整体硬件电路根据功能划分为三部分,完成图像输入功能的图像采集板、完成系统控制、图像存储以及其他功能模块的主控电路板、实现图像数据模拟转数字以及数字转模拟的辅助电路。下面分模块介绍硬件电路的具体实现。图像采集板上集成的元器件由图像传感器、外围电路元件和LED灯,设计并不复杂,所以我们设计为双层板。考虑到本系统主要是基于主动红外光源原理,所以图像传感器的选型以及LED灯的布局结构设计对整个系统的功能实现有重要影响。1.图像采集电路原理图设计该模块包括两部分:CMOS图像传感器电路和LED电路。(1)CMOS图像传感器电路:CMOS图像传感器的外围电路主要由控制电路、石英晶振组成,它正常工作所需要的5v电压则主要由主控板提供。在差别主要是为了保证两种灯的照度大致相等。图中限流电阻大小是470欧姆,保证了LED灯可以正常工作。2.图像采集电路PCB设计在CMOS图像传感器电路里,外围电路不是很复杂,布局时注意:晶振应尽量靠近芯片的时钟输入管脚。另外,每个电源管脚接的电容要尽量靠近其管脚放置,这样才`能有效的起到抗干扰的作用。LED灯电路的布局设计主要考虑了红外光源原理,该原理得以实现并出现亮瞳孔和暗瞳孔的前提条件是:红外光源必须沿透镜光轴位置,而且要保证产生暗瞳孔图像时两幅图像有相同的光照度,实际操作中这一点很难实现,所以如何布局这两组LED灯是该系统功能是否成功实现的关键。通过多次实验论证,本文将红外光源设计为环形,圆心和图像传感器的几何中心重叠,外圆直径为61.93mm,内圆直径为41.24mm,内圆上放置940nm的LED灯,外圆上放置850nm的LED灯,取得了不错的效果。1.主控板原理图设计原理图的设计必须保证其正确性和可靠性,并且尽量使绘制的原理图清晰、流畅。电路原理图的两个基本要求是:直观;能表示电路的电器连接。绘制原理图前有很多准备工作,下面主要对器件如何选型进行说明:对于每个模块来说,首先是基准件的选择,也就是该模块的核心元件。选择的时候考虑了以下几点:第一:性价比高,这对于节省产品的成本来说很重要;第二:容易开发:主要体现在硬件调试工具多,参考设计多,成功的案例多;第三:可扩展性好。其次,对于核心元件周围的外围器件的选择考虑了以下几点:第一:普遍性原则:尽量少使用冷芯片,而是使用被广泛验证过的元器件,这样可以减少设计风险;第二:可替代原则:尽量选择管脚之间兼容种类多的器件;第三:方便采购的原则:这样才能在预期的时间内完成工作;第四:资源节约原则:尽量用上器件的全部功能和管脚。2.主控板PCB设计(l)元件布局(2)布线辅助电路板上实现的功能模块包括:电源电路、视频解码电路、视频编码电路以及串口电路。它的主要作用是配合主控板完成整体所需功能。没有将辅助电路板上面实现的功能放在主控板上主要是基于以下的考虑:首先,为了保证产品的小型化,必须限制板子的尺寸,所以将两个板子通过插槽连接起来,通过主控板上引出的管脚来控制辅助电路板信号,使得面积尽量的做小;其次,主控板是6层板,布线的复杂度比较高,如果将辅助板的功能放在上面使得难度加大。再次,这样设计是为以后做打算,现在系统使用的是模拟摄像头,所以需要视频解码芯片,如果将来使用数字摄像头,这部分就可以削减掉。视频编码电路主要是为了将图像通过VGA接口显示到电脑上,如果以后该部分换作小型液晶屏来显示,这部分也可以消减。串口模块的作月J主要是将读取图像数据通过串口传到PC机上,然后借助Matlab工具分析图像数据为加速寻找到适合FPGA实现的图像算法做准备。所以对于以后的产品优化来说,这部分也可以根据需要进行取舍。另外,主控板上和辅助电路板上都设计了电源模块也考虑到将来整个系统功能只在主控板上实现来降低成本以及设计的复杂度。电路板制作好后,利用万用表、示波器等仪器完成了硬件电路的物理测试。物理测试包括:测试电源模块出来的电压是否正确、电源和地之间有没有短路,元器件有没有虚焊的情况、电源电压正确后有源品振输出的时钟是否正确等。对于集成芯片,先测试其电压和地有无短路,没有则通电并测试其内部的参考电压是否正确。本电路在调试的时候出现以下问题:电源模块的FPGA内核电压不正确,查明原因是接的电阻太大,没有满足工作电流的要求,后用500欧姆电阻替换后,电压正确。蜂鸣器不工作,问题就在画封装的时候,两个管脚的网络定义反了,修改后工作正常。6基于NiosII多核驾驶疲劳检测系统设计6.1系统介绍系统中配置了双NiosII软核CPU,两个CPU同在一块SDRAM内存中运行,由Avalon总线模块提供仲裁机制实现双CPU对SDRAM的分时访问。CPU_A主要负责图像数据实时采集与SD卡的数据写入等任务;CPU_B则完成图像数据处理与发出控制信号。两个CPU通过邮箱建立相互通信。CPU_A把采集到的数据存入到SRAM中。SRAM有两块地址固定的数据存储区A与B。当CPU_A采集一帧图像数据并存储在A区后便产生中断信号通知邮箱,CPU_B开始读取A区的数据,数据送至CPU_B的图像预处理与人脸检测模块进行人脸检测与定位。当CPU_B在读取A区数据的时候摄像头采集模块继续传来数据,这时CPU_A将接收的数据存储到B区中,当B区写满后CPU_B则开始读取B区,CPU_A又开始写A区,因此CPU_B读取数据区数据与CPU_A写入数据区数据不会产生冲突。人脸检测模块完成人脸定位后的数据通过总线送至CPU_B,继续进行人眼检测与特征值提取,最后经过计算判断驾驶员的状态,并通过邮箱通知CPU_A把状态数据写入SD卡。系统的框图如图1所示。6.2系统关键模块设计本系统主要由图像采集、图像数据处理、SD卡存储3大关键模块组成。系统的硬件平台采用Altera公司CycloneII2C35FPGA芯片(DE2开发板),采用SOPC技术将NiosII软核、图像采集模块IP核、图像数据处理模块、存储器、功能接口和扩展I/O口等集成在一块FPGA芯片上,外围扩展了CMOS摄像头、SD卡存储器等硬件来实现系统的整体架构。本设计采用Micron公司的130万像素CMOS图像传感器MT9M011进行图像采集。该图像传感器具有可编程的增益控制、曝光控制和黑标准校正,可以在保持流畅、连续的动态图像的同时,在50mW的能耗下,以最高30帧/秒的帧率,进行任意大小的图像捕捉。为了实现NiosII处理器能对摄像头进行控制,获取摄像头采集到图像数据,因此需要设计摄像头图像采集控制器IP核。该控制器核采用VerilogHDL自行设计,图像数据能够通过Avalon总线主端口的块传输方式进行传输,利用DMA控制器实现从片上YCrCb_FIFO到SRAM的自动写入。该图像采集控制器IP主要由3个部分组成:接口模块、内存模块和变换处理模块。该部分主要由以下4个步骤组成:图像数据预处理、人脸检测、眼睛检测与跟踪、状态判断。图像数据预处理包括噪声消除与图像增强处理。考虑到中值滤波与梯度锐化在图像预处理中的优点,我们采用中值滤波与梯度锐化实现图像的预处理。本系统还采用改进的层次型AdaBoost检测算法实现人脸的检测,该部分采用FPGA实现。在定位好人脸后开始眼睛检测,这里采用了Hough变换找眼球和眼睑、累积差分帧相结合的方法来检测眼睛,然后通过眼睛跟踪得到相应的眼睛位置,提取相关参数后用眼睑的宽度来判断眼睛的开闭。系统中用到的图像处理算法多且复杂,在单CPU上用纯软件实现该算法耗时较长,不能达到实时检测的目的,因此在系统中配置了一个CPU_B来专门完成图像处理任务。同时采用了NiosII处理器定制指令的方法与C2H加速编译器工具对部分算法进行硬件加速,以此提高系统的整体性能。NiosII处理器定制指令是把用户自定义的功能模块直接添加到NiosIICPU的算术逻辑单元(ALU)中,来加快专项任务的执行速度。定制指令逻辑和NiosII的连接在SoPCBuilder中完成。系统生成时,NiosIIIDE为每条用户指令产生一个在系统头文件中定义的宏,可以在C或C++应用程序代码中直接调用这个宏进行程序设计。本设计选用SD卡作为外接存储硬盘。SD存储卡具有大容量、高性能、安全性好等特点的多功能存储卡,被广泛用于数码相机、掌上电脑和手机等便携式设备中。SD卡上所有单元由内部时钟发生器提供时钟,接口驱动单元同步外部时钟的DAT和CMD信号到内部所用时钟。SD卡有两种通信协议,即SD通信协议和SPI通信协议,与SPI通信协议相比,SD通信协议的最大优点是读写速度快,单根数据线理论上可以达到25MB/秒,四线传输可以达到100M/s,本设计采用的是四线SD通信协议。本设计中对SD卡的协议采用软件编写:首先在SOPCBuilder里定义了6个可编程I/O口:SD_CMD、SD_DAT0-DAT3、SD_CLK,分别对应SD卡的命令、数据、时钟端口,然后在NiosIIIDE上按照SD卡的传输协议编写C程序来对6个I/O口进行操作,以此来实现SD卡的传输协议。7.疲劳驾驶预警系统的研究进展7.1预警系统的组成及工作原理生理学研究表明!驾驶员疲劳驾驶时脑电、心电、肌电信号会发生异常!并伴有频繁眨眼、点头、打呵欠等面部疲劳特征!同时转向盘、油门和制动踏板长时间不动!甚至车辆会出现蛇形、前方车距过小等危险驾驶行为"为准确、可靠、实时地识别出驾驶员的疲劳特征并及时给驾驶员以警示!疲劳驾驶预警系统一般由以下模块组成%信号采集模块、特征提取、信息融合、疲劳判决和输出报警模块"系统的工作原理为%利用多种传感器!如图像、激光雷达、压力、角位移传感器等!对上述典型疲劳特征信息进行实时采集和处理!运用各种信号处理方法提取和识别驾驶疲劳特征信息!应用多传感器信息融合理论!对互补或冗余的疲劳特征信息进行有机融合!进而建立疲劳驾驶智能决策模型对驾驶员是否疲劳驾驶进行准确可靠判断!最后输出报警模块可将检测结果实时显示!并通过声光报警装置提醒驾驶员注意行车安全"预警系统的功能结构如图所示。7.2典型的疲劳驾驶预警系统尽管研究人员提出了很多疲劳检测方法!但由于很多方法的实验条件有其局限性!故很难利用其研制成有效实用的预警系统!下面介绍几种比较成功的预警系统。1.心跳速度检测仪2.头部位置检测仪3.车道偏离报警系统DAS20004.转向盘监测系统5.驾驶员警示系统6.PERCLOS系统7.QiqngJi等研发的预警系统8.FaceLAB系统9.Copilot系统10.AWAKE系统7.3疲劳驾驶预警系统比较从20世纪90年代开始,基于各种物理传感器的疲劳驾驶检测方法成为预警系统的研究重点。进入21世纪以来,随着计算机技术和集成电路制造技术的发展,疲劳驾驶预警系统在实时性、可靠性、舒适度和集成度等方面有了较人的改善和提高,表1详细列出了几种典型疲劳驾驶预警系统的性能对比情况。通过对疲劳驾驶预警系统的对比分析可以得出以卜结论。1)在这些疲劳驾驶监测设备中,应用最为)广泛的是车道偏离报警系统,但是该报警系统属于间接监测,对驾驶疲劳的敏感度不高,在夜晚或冰封的雨雪天气监测容易失败。2)随着图像处理技术的不断发展,使基于机器视觉的驾驶疲劳监测系统成为流行,视觉检测具有非接触、检测范围)‘一、信息容量人、可扩展性强等优点,但其在夜晚无光和强光干扰卜系统可靠性明显卜降。3)各种根据眼部状态检测疲劳的车载报警装置应运而生,成为当前车载疲劳预警系统中的主流产品。其中尤以基于PERCLOS的眼部疲劳状态预警系统可靠性最强,但其对于少数驾驶员磕睡时眼睛睁开、戴眼镜驾驶时测量难度较人,误报警率较高。4)基于多传感器信息融合技术的疲劳驾驶智能监测系统己在市场上初现端倪,但其在实时性、可靠性及疲劳特征的有机融合方面还需进行更深入的研究。7.4发展趋势目前,疲劳驾驶预警系统的研究方兴未艾,虽然对其进行研究逐渐引起许多国家的关注和重视,但到目前为止,实用的产品尚未推出,系统监测的准确性、可靠性和有效性亟待提高,今后其发展将呈现以卜趋势。1)深入认识研究疲劳驾驶的特性及形成机理。人们将会结合心理学的最新研究成果,从生理学、生物化学、人机工程学、行为科学等多门学科的角度,深入研究驾驶员疲劳的形成机理,并揭示其形成机理的木质,为系统实时检测驾驶员的疲劳状态提供理论依据。2)准确建立起描述驾驶行为与疲劳之间关系的数学模型。利用目前常用的接触式检测方法,找出疲劳驾驶的表征及原因,为实时的、客观的非接触式检测方法确定合理的疲劳驾驶检测标准。3)建立可靠的驾驶疲劳评价体系。随着脑成像技术以及认知神经科学的飞速发展,系统地研究认知疲劳过程和功能状态,并通过人量的实验研究,探讨确定详细的驾驶疲劳评价标准。4)进一步融合多种信息,提高疲劳驾驶监测系统的可靠性,将是今后的重点研究方向之一。随着智能传感器、数字图像处理、移动通信、模式识别、计算机科学、白动控制、信息处理、DSP等技术的大力推广和发展,使其能对驾驶员疲劳程度进行定性和定量相结合的检测,以达到提高检测准确性的目的。5)设计可靠、低廉、有效、便携的疲劳驾驶监测系统,促进疲劳驾驶预警系统的产品化和商品化要在汽车上普及,成功安装、使用疲劳驾驶预警系统,首先是对驾驶员的驾驶行为不产生干扰,方便驾驶员的驾驶;其次是必须绝对准确、可靠;最后必须保证价格低廉,使有关公司及车主在费用上能轻松承担。6)利用数字移动通信和无线传感技术开发驾驶员疲劳驾驶网络监控系统,扩人疲劳驾驶监控系统的时空覆盖范围,加强交通管理部门的监管,将是今后疲劳驾驶监测系统的一个重要发展方向8.新型多功能驾驶员状态监测系统设计8.1无线脑电信号采集和分析1924年德国精神病学家、耶那大学的HansBerger教授首次发现并捕捉到人脑有规则的电活动,即脑电信号(EEG),就是脑部神经细胞电位变化的信号频率。当前大多数脑电信号采集使用单片、DSP、ARM、FPGA等作为处理器,这些属于有线传输。依据脑电图仪记录的数据分析和临床生理学会国际联盟的分类,脑电信号的频率分为:α波(8~13Hz,20~100uV)、β波(13~30Hz,5~20uV)、δ波(0.5~4HZ,20~200uV)、θ波(4~8Hz,100uv~150uV)4个频段。脑电信号非常微弱,一般只有50μV左右,幅值范围为5μV~100μV。所以,脑电信号放大增益要比一般的信号高得多,一般要放大20000倍左右。系统分为数据采集传输、滤波放大、电源设计和数据处理四个模块。数据采集传输与处理模块采用MSP430系列单片机作为控制器,无线收发模块CC2500作为数据传输,MSP430单片机通过SPI口进行数据的发送与接收,然后把接收到的脑电数据通过UART转USB芯片传输给数据处理服务器进行数据处理。滤波放大模块采用前置放大器AD620作为主放大器,前级采用两个单运放OP07运放放大器组成并联型差动放大器,采用无源高通滤波(阻容耦合电路),采用集成芯片MAX280作为低通滤波,采用反相放大器进行后级放大。电源设计模块采用两种供电模式:1)四节干电池供电,中间接地,将另一端拉至-3v。2)采用单电源供电,可直接使用汽车电源接口转换为3v。驾驶员在愤怒、亢奋、悲伤等情绪状态下发生交通事故的几率远远高于正常情况,据统计由情绪化驾驶引起的交通事故约占事故总数的9.2%~14.8%。有效的实时监测驾驶员情绪状态对车辆人员安全和遏制交通事故具有一定的应用价值。脑电采集的关键参数设置:采样率为500Hz;取0.53~60Hz之间的脑电信号;低通40Hz,高通0.35Hz;采用EDF数据存储;电极通道选用:额叶区H1,H2和H3,H4,顶叶区D1,D2,枕叶区Z1,Z2,颞叶区S1,S2;参考电极为左右耳部电极C1,C2为参考。分别采集当驾驶员处于平静、兴奋和悲伤情绪状态模拟驾驶时的四个区的脑电信号。采用Neroscan4.3软件对采集的脑电信号进行分析和伪迹剔除发现,驾驶员在平静、兴奋和悲伤情绪状态模拟驾驶时,前额叶区H1,H2的脑电信号变化明显,对识别有重要价值。经实验分析发现,驾驶疲劳状态脑电特征与α波、θ波、β波均有关系,因此把C=(α+θ)/β设定在一定时间段内疲劳或瞌睡状态出现的次数达到3次以上报警。随着工作节凑加快,压力增大,越来越多的人出现各种突发疾病,甚至猝死,驾驶员出现突发性疾病将带来极其严重的后果。通过脑电信号实时监测到疾病信号好,及时发出报警,对预防此类交通事故有很好的价值。判定突发疾病的脑电信号参数:轻度异常:α波频率差超过24.5Hz,波幅不对称,两侧波幅差超过30%,枕区超过50%,生理反应不明显或不对称;α波频率减慢至8Hz,波幅达100μV以上且调节不佳;β波增多,波幅达50~100μV;额区或颞区中幅θ波达20%,低幅δ波达10%;过度换气诱发出θ波大于70μV或δ波大于25μV。2)中度异常:α波频率减慢为7~8Hz,枕区原有α波消失或一侧减少消失;额、颞区有阵发性波幅较高的α活动;中波幅θ活动数量达50%;出现少量棘波、尖波、棘或尖-慢综合波等;过度换气诱发出高幅δ波。3)重度异常:高波幅θ或δ波为主要节律,α波消失或仅存少量8Hzα波散在;自发或诱发长程或反复出现高幅棘波、尖波、棘或尖-慢综合波等;高度失律、爆发性抑制、周期性发放等;持续性广泛性扁平电位。8.2酒精监测驾驶员酒后驾驶检测一般分为血液检测和呼气式酒精气体检测两种。本系统采用汽车嵌入式酒精气体检测方法,通过酒精传感器检测驾驶员呼出气体中的酒精浓度值判定驾驶员的饮酒程度。采用高灵敏度的MQ-3酒精传感器,5V直流供电,如图2所示。选择AOUT,模拟量输出,直接将AOUT脚接AD转换的输入端。在没有被测气体的环境中,设定传感器输出电压值为参考电压,AOUT端的电压在1V左右,当传感器检测到被测气体时,电压每升高0.1V,实际被测气体的浓度增加20ppm(1ppm=1mg/kg=1mg/L=1×0.000001常用来表示气体浓度,或者溶液浓度),根据这个参数就可以在单片机里面将测得的模拟量电压值转换为浓度值。9.多源信息融合在驾驶疲劳检测中的应用9.1驾驶疲劳特征医学上把人体困顿、倦怠的感觉定义为疲劳,并作为一种信号来提醒人们休息和放松。驾驶疲劳,则是指驾驶人在长时间连续行车后,产生生理机能和心理机能的失调,而在客观上出现驾驶技能下降的现象。驾驶疲劳会影响到驾驶人的注意力、感觉、知觉、思维、判断、意志、决定和运动等诸方而。眼睛的状态变化已经被研究证明是反映人疲劳最为直接和有效的表征。口前基于眼睛的相关检测方法主要有PERCLOS法、眨眼频率检测法、瞳孔大小的检测和眼睛视线方向检测法等几种。其中PERCLOS法已经被公认为疲劳检测最好的视觉参数。而其他几种眼睛的检测方法也都基于视觉,处理方法类似,因此在文中我们只选取了PERCLOS值作为融合的其中一个参数。PERCLOS(percentageofeyelidclosureoverthepupilovertime)是指眼睛闭合时间占某一特定时间的百分比。PER-CLOS法是1994年Wierwille等根据在驾驶模拟器上的实验结果确立的。其中眼睛闭合还设定了三种标准,分别为70%、80%和完全闭合,通过实验证明80%标准是效果最好。在人体工程学原理中提到,当驾驶员进入疲劳状态后,反应迟钝、注意力不集中。当车辆转弯时,行驶路线改变,此时如果转向灯并未开启,则可以间接认为是驾驶员由于疲劳过度或精神不集中造成。因此把识别行驶方向变化和驾驶员反应的不一致情况也作为判断的一个因素。检测汽车的转向我们通过方向盘转向传感器来实现,同时通过检测转向灯的开关电压值来判断转向灯是否开启。而最后通过计算检测这一不一致情况发生的次数,将此次数作为信息融合的参数,根据次数的多少来判断疲劳程度。由于车辆何时转向是不定问题,而检测得的数据又希望是对疲劳的实时反映,因此对次数的统计,我们以检测前5分钟作为统训一时间。通常,驾驶员在行车过程中,需要不断对方向作出调整,即使在笔直的道路上行驶,也总是需要对方向盘做一些轻微的转动。而根据驾驶疲劳的定义及其从生理表现上考虑,当驾驶员处于驾驶疲劳状态时会出现注意力不集中,操纵停顿等现象,因此通过监测方向盘的动作状态可以间接反映驾驶员是否处于疲劳状态,如果在经历一定时间内方向盘没有任何动作,就可以判断为动作疲劳,方向盘动作状态异常,而且该疲劳的程度与方向盘无动作的时间成正比关系。根据方向盘监视装置S.A.M中的理论,方向盘不动以4、为判断阂值,当检测到方向盘持续不动时间超过4、时,可以判定为驾驶疲劳。驾驶疲劳产生的一个原因是驾驶员连续行车时间过长,导致生理机能和心理机能的失调。根据我国国家交通法规定,机动车驾驶人在连续驾驶时间达4小时,就必须休息20分钟。由此可以相信连续驾驶时间过长也可以作为驾驶员疲劳的间接原因,因此当驾驶员连续驾驶时间超过一定时间,可以作为判断驾驶疲劳的依据之一,而且疲劳程度也与该时间成正比关系。由于图像处理技术在光线条件差的情况下无法获取信息,因此在光线条件差的情况下我们不能把PERCLOS值作为检测疲劳的重要依据,而主要作为参考的是其他非图像手段获取的疲劳特征信息。因此我们需要对时间进行分段考虑,文中我们简单的分成白天和夜晚两个时间段,上午8点至下午5点为一个时间段,其余为另一个时间段。9.2模糊神经网络疲劳识别我们描述了5种常用的驾驶疲劳检测特征参数,各检测方法能够一定程度地检测出疲劳,但由于在实际行车过程中,情况复杂,因此各自检测的可靠性均存在不同程度的疑问,也都存在较高的误报情况。PERCLOS值由于依靠图像处理方法检测,受光线等影响较大,因此不同时间其可靠性不够,另外在眨眼上,不同的人的差异也较大;而对行驶方向改变与司机反应不一致情况和方向盘动作状态单一检测,则由于不同驾驶习惯的区别其检测可靠性也难以满足要求。在分析以上方法单一检测的情况后,针对其存在的问题,再结合模糊逻辑在处理不确定性和非线性问题的优势,以及神经网络容错能力强且具备自适应学习能力的优点,我们将模糊神经网络的融合方法来进行驾驶疲劳检测。1.疲劳度量化2.TS模糊神经网络设计(TSFNN)9.3智能控制技术在汽车疲劳驾驶监控中的应用研究本课题的目标设计基于MM908E625和Low-G加速度传感器的汽车驾驶状态(疲劳驾驶)监控仪,以嵌入式PC为核心的汽车网络控制系统,实现对汽车驾驶状态的监控。监控仪特性有:(1)方向盘的转向轴、油门踏板和刹车踏板多点监控。(2)加速度传感器信号独立处理,确保实时性。(3)LIN总线网络,实现汽车中的分布式电子系统控制。(4)互动平台:驾驶路况选择,更有利于控制系统监控。提供声光、振动报警提示。(5)大容量数据存储和采集,大屏幕LCD显示,异动驾驶时间段数据查询。(6)神经元网络技术、模糊控制和专家系统。1.硬件系统构成系统主节点为嵌入式PC机,配置触摸屏提供智交交互式界面,主节点完成数据库的建立、更新,能控制程序运行和对LIN子节点的通信管理。交互式界面提供路段、路况、测控时间等选择,对驾驶状态的等级提示和报警等。2.智能控制(模糊控制器)设计各种对车辆的操作控制,作为输入量,表现为油门开度、制动踏板的位置、发动机转速、车速的变化、速度的变化(即加速度),方向盘转向的角度和角加速度等。车辆在不同的路况下产生的振动作为输入量,也会影响到传感器的测量,特别是对加速度传感器的影响,对振动信号由I_IN子节点测量模块按“平均振动信号强度”在信号预处理程序中减弱或消除。作为输出量,表现为对车辆的驾驶状态的优劣,分为“好”、“中”、“差”三个等级。以下以油门开度作为变量说明模糊控制器的设计。结束语1.研究工作总结本文在借鉴了很多驾驶疲劳检测研究资料的基础上,比较了驾驶疲劳检测方法,描述了基于视觉的人脸检测、眼睛定位、眼睛状态识别和疲劳分析等各种方法,并且在具体的疲劳检测系统实现中提出了自己的改进算法,在此基
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 聊城2024年健身服务合同
- 统编人教版六年级语文上册《语文园地七》精美课件
- 土地承包权协议书范本版
- 皮下注射技术操作流程课件
- 农村私人土地买卖合同范本
- 二零二四年度商务考察与招商合同2篇
- 益生菌奶粉课件
- 2024年度离岗创业人员培训服务合同
- 租房定金合同范本共
- 财务模拟述职报告范文
- 2024年《论教育》全文课件
- 青年你为什么要入团-团员教育主题班会-热点主题班会课件
- QCSG1204009-2015电力监控系统安全防护技术规范
- SQE培训教材(完整版)
- 医院流产证明书怎么写-条据书信
- 高边坡支护脚手架搭设专项方案
- 高中英语教师个人专业发展计划精选3篇
- 论烟草专卖人员执法中存在的问题及对策
- 财务管理专业-燕塘乳业存货管理问题探析
- 焊接成本计算
- 关于国家自然科学基金项目变更依托单位的申请
评论
0/150
提交评论