疲劳驾驶检测系统的设计与实现∗

2016-09-14 07:30茆佳能王维锋张立
公路与汽运 2016年4期
关键词:人眼人脸车道

茆佳能,王维锋,张立

(中设设计集团股份有限公司,江苏南京 210014)

疲劳驾驶检测系统的设计与实现∗

茆佳能,王维锋,张立

(中设设计集团股份有限公司,江苏南京 210014)

疲劳驾驶是导致交通事故的重要因素。为了克服单一数据源检测系统的局限性,文中设计了一种基于数据融合的疲劳驾驶检测系统并采用双微控制单元架构进行技术实现,该系统选取人眼PERCLOS值和车道偏离情况作为融合参数提取有效特征,采用粗糙集理论进行数据融合,综合判断驾驶员疲劳状态。实车测试结果表明,该系统在快速路工况下的识别准确率达93. 9%,具有较高的鲁棒性和可用性。

交通安全;疲劳驾驶;PERCLOSE;车道偏离;数据融合

随着中国汽车保有量的迅速增加,道路交通事故越来越严重,其中因疲劳驾驶导致的事故和人员伤亡占有相当大的比例。疲劳驾驶隐蔽性较强,虽然管理部门制定了相应的交通法规,但因执法困难,效果并不理想。因此,开发一种驾驶员疲劳驾驶实时检测系统具有十分重要的社会和经济价值。

疲劳驾驶检测方法主要分为基于生理信息、基于操控行为、基于行车状态和基于机器视觉四类。其中:基于生理信息的方法的识别准确性最高,但对驾驶员干扰很大,适用于实验室环境;基于操控行为的方法对驾驶员较友好,数据处理简单,但理论研究较少,识别算法阈值难以确定,且在低速驾驶情况下准确性较低;基于行车状态的方法的识别准确性受路面状况、操控习惯、气象条件等影响较大;基于机器视觉的方法是目前国内外进行疲劳驾驶识别的主要选择,但该方法识别准确性受环境光线、驾驶员坐姿等的影响较大。目前,基于单一特征的疲劳驾驶识别方法尚无法解决实际运用中的准确性和鲁棒性问题。为此,该文综合利用人眼PERCLOS特征和车道偏移特征,采用数据融合方法开发驾驶人疲劳驾驶检测系统。

1 总体结构

疲劳驾驶检测系统研究驾驶人状态、车辆行驶状态信息,其整体框架如图1所示,包括信息采集单元、状态判别单元和疲劳预警单元三部分。信息采集单元通过摄像头获取驾驶员眼睛状态、车辆行驶轨迹等原始数据;状态判别单元完成单一数据源特征向量提取、归一化并进行特征识别后,通过数据融合实现对驾驶人疲劳驾驶状态的可靠识别;疲劳预警单元根据判别结果的严重程度,选取视觉、听觉等提醒手段对驾驶员进行及时预警。

图1 疲劳驾驶检测系统的整体框架

2 硬件设计

疲劳驾驶检测系统兼顾实用性与先进性,以JT/T794-2013《道路运输车辆卫星定位系统北斗兼容车载终端技术规范》为基础,增加视频采集和分析的功能。整体采用“主机+外设”的结构组成形式,主机通过各种接口与众多功能外设连接。终端主机的物理构成包括主板(Board_Main)和视频板(Board-Video)两部分,采用双MCU架构。分工如下:HI3520A处理器主要进行音频和视频采集、存储、分析及3G模块的数据传输;STM32F207VET6实现除音、视频处理外的所有功能。两个MCU分工明确、协同工作。其整体硬件架构如图2所示。

2.1主板

主板主要具有MCU、GPS/北斗信息的采集、振动检测、车辆OBD通信等功能;同时核心板的外部接口设计在主板上,包括音频和视频输入端子、3G通信模块、SIM卡等。

图2 疲劳驾驶检测系统的硬件整体框架

(1)MCU。主板MCU主要完成车辆信号采集、外设通信、无线传感网络、位置采集和T808报文等对任务实时性要求较高、处理器要求不高的相关功能,该系统设计采用ARMCortexM3内核的STM32F207VET6芯片来完成。

(2)GPS/BD。采用GPS和北斗双模定位模块,根据JT/T794-2013的要求,实时采集车辆位置、速度信息,并通过位置数据实现车辆的路线管理、区域管理等位置功能,通过速度数据实现超速报警等功能。该模块与MCU通信的物理接口为UART,输出数据为NMEA0183标准语句,数据采样速率最大能达1Hz。

(3)MEMS。MEMS设计采用加速度传感器,通过对X、Y、Z三轴加速度值的采集,判断车辆的动静、侧翻等状态,实现自动唤醒或侧倾告警功能。MEMS传感器输出加速度信号,与MCU通信的物理接口为SPI方式。为减少MCU资源开销,采用设定阈值、中断输出的方法采集加速度数据。

(4)GPIO、OBD、CAN。GPIO端口实现车辆信号的开关量、脉冲量和信号量采集及继电器控制输出功能。OBD单元的数据来自于汽车ECU,而获取ECU的数据必须通过CAN和K/L总线及ISO15031和J1939协议,系统采用EL327芯片采集,与MCU通信的物理接口为UART。为减少终端作为采集单元并接到总线上对总线造成的数据负荷,采集数据采样周期定为500ms。

(5)3G通信模块。系统3G传输分为上行和下行。上行数据分别来自HI3520A的视频流数据和STM32F207VET6的T808报文数据;在传输T808报文时,HI3520A仅起透传通路,通过在Linux系统应用层建立的转发功能,不作任何数据处理,逻辑上变成STM32F207VET6处理器直接与平台进行通信,只是中间经过了HI3520A、3G模块的连接与转换。下行数据多为参数设置、终端控制等命令数据,故平台数据也是直接透传给STM32F207VET6处理器。

2.2视频板

视频板是系统视频采集与处理的核心部件,功能独立且高度集成,以一个物理电路板而存在。疲劳驾驶识别的关键是通过视频传感器获取驾驶员眼睛和车辆前方车道线信息、识别特征并进行融合判断,考虑到所涉及的视频采集、处理、传输和存储等任务功能相对集中,而这部分任务在应用技术上相对较成熟,选用华为海思芯片作为整体解决方案。

视频板采用Linux操作系统,主处理器采用工业级嵌入式微控制器HI3520A,A/D芯片为Nextchip1914,搭配128Mb(16MB)Flash容量及2048 Mb(256MB)内存容量。视频核心板高度集成,采用标准化接口,支持多模式输入,提供完善的网络服务。“核心板+主板”的功能组合完全满足该系统开发的需求。

3 软件设计

疲劳驾驶识别技术经过几十年的发展,取得了丰硕成果,但由于道路环境、驾驶员个体等差异,至今仍未出现一种基于单一特征属性、高可靠性、高准确性的识别方法。综合考虑不同方法的优缺点及适用范围,同时兼顾特征检测和算法匹配上的互补性,该系统将基于视频图像识别的人眼和车道线偏离识别方法进行数据融合,建立综合判别模型,提高识别结果的准确性。

3.1基于人眼的疲劳识别

采用PERCLOSE方法的核心是精准判断驾驶员眼睛的闭合状态。考虑到人脸信息量较人眼更丰富,能较为方便地从图像中检测出来,一般先定位人脸位置,然后在图像中定位眼睛区域位置。总体而言,基于人眼的疲劳识别是一个定位对象不断减小、精度不断提升的过程。

3.1.1人脸检测定位算法

该系统根据肤色信息快速检测,缩小人脸可能区域,完成粗定位;再运用类Harr特征的AdaBoost分类器算法完成精准定位,大大提升算法计算速度。

首先进行人脸分类器训练。定义样本集中元素M(xn,yn),按式(1)进行权重归一化,根据每个人脸特征训练弱分类器hj,其构造函数见式(2)。

计算每个元素M(xn,yn)与相对应的弱分类器hj之间的误差,公式如下:

式中:pj为控制不等式方向的校验器,pj=±1;fj为人脸特征;x是图像中一个24×24像素大小的harr-like子窗口;θj为相应阈值。

选出容错率最小的ht,更新其权值,令ωt+1,i= ωt,iβ1-ei,其中βt=εt/(1-εt) 。通过上述一系列步骤形成基于人脸某一特征的分类器,即:

式中:αt=log(1/βt)。

训练出一系列基于人脸不同特征的分类器后,通过级联方式最终形成一个人脸分类器。把所有分割好的人脸区域通过最终人脸分类器筛选出人脸区域的精确定位。

3.1.2人眼定位与状态识别算法

脸部器官区域在灰度分布上比周围更暗,对人脸进行积分投影后,上述器官位置会出现较小值,以较小值之间的位置关系建立判断规则,得到器官间的水平和垂直位置,分割出眼部区域。在所有器官中,人眼结构最复杂,复杂度也最大。将上一步确定的区域等分为8×4小块,按下式计算其复杂度:

式中:C(A)为A区域的复杂度;SA()为A区域的面积;Edge为边缘检测算子。

得到复杂度最大的10个小块,将相邻小块合并后剔除孤立小块,根据人眼分布的对称性,最终得到人眼的精确位置。

为减少噪声和曲线间断对识别结果的影响,将图像空间转换为参数空间,以参数的形式描述图像中的区域边界。通过Hough变换将参数空间分割为累加器单元Ai,j,k()并进行置零。以图像平面内圆周上某一点x,y()的参数坐标a,b,r()的方程x-a()2+y-b()2=r2为根据对参数进行循环计算,如果值am()得到了对应的bp()、rq(),则Am,p,q()的值加1。取值最大累加器所对应参数a,b,r()就是图像平面内所要求的圆心坐标和半径值。人眼睁开状态下,眼珠呈圆形,用Hough变换检测眼珠是否露出,即可判断眼睛的开闭状态。

3.1.3人眼疲劳识别

该系统计算单位时间(30s)内PERCLOS值,当PERCLOS>40%时,判断驾驶员处于疲劳状态;当PERCLOS≤40%且每分钟眨眼次数小于5时,同样判断驾驶员处于疲劳状态。

3.2基于车道偏离的疲劳识别

利用视频传感器采集车辆前方车道线图像,通过检测车道偏离情况间接反映驾驶员的驾驶状态。

3.2.1车道线模型描述

为了提高检测系统的鲁棒性和实时性,对道路作理想状态假设,使之抽象为数学模型。用回旋曲线描述道路的形状,对直线与弯道连接部分进行平滑处理。模型表达式为:

式中:CL()为距离初始点距离为L时的曲率;C0为曲线初始点曲率;C1为曲率变化率。

同时假设道路的宽度基本保持不变且路面较平坦,把对车道线的检测转换为对图像中平行区域的检测,利用车道线特征将图像从二维空间映射到三维空间。

3.2.2车道线检测与识别

在(x,y)直角坐标系中的2点经过关系映射后在参数空间中成为2条相交的直线,k为直线的斜率,b为直线的截距(见图3)。采用“投票机制”遍历(b,k)空间中各个点并得到票数,得票数高的胜出。当(x,y)空间中的直线与x轴趋近于垂直时,采用(β,θ)空间变换描述直线:β=xcosθ+ysinθ。将特征点带入处理好的θ∈ [0,π)范围内计算β值,对(β,θ)空间中对应值加1,将所有特征点进行变换,最后得到直线的参数。

图3 点线对偶关系图

选择数据结构中x,y()对应累加器较大的点作为目标直线,将其进行Hough逆变换得到相应的直线方程中k、b的值与β、θ的关系,其公式为:

3.2.3车道偏离识别

车道偏离识别中,首先采用二阶TLC算法对车辆的单次跨越车道线情况进行判别,根据单位时间内的跨越次数判断驾驶员的疲劳状态。判别过程中需设定2个阈值,即车辆将要触碰车道线边缘的时间阈值T、一段时间内车辆跨越车道线的次数阈值N。

二阶TLC算法判断是否产生一次车道线跨越的公式为:式中:tc为计算所得前轮边缘触碰车道线的时间;v1为车辆的侧向速度;a1为车辆的侧向加速度;d为前轮边缘与车道线的距离。

根据上述方法判断车辆在一段时间内跨越车道线的次数,若超过阈值N,则认为驾驶员处于疲劳驾驶状态。

3.3基于数据融合的疲劳识别

基于视频图像的驾驶员疲劳识别过程中计算量较大,该系统采用分布式融合结构,对各摄像头的原始数据作处理分析后,在本地作出判断,将结论信息在决策级按粗糙集理论进行融合,得到最终的判断结果。

粗糙集的条件属性参数为{a=P80,b=n},由于参数为连续性数值数据,需对其进行离散化处理。离散归一过程中应保证信息丢失较少,同时各属性值的种类应尽量少。根据数据分割法对属性值进行离散,将属性离散为3个等级{0,1,2}:“0”表示在正常范围内;“1”表示稍微超出正常范围;“2”表示严重超出正常范围。离散规则见表1。

表1 属性离散化规则

决策属性O=0,1,2{}中,“0”表示驾驶员处于清醒状态,能胜任驾驶任务;“1”表示驾驶员处于轻度疲劳状态,可继续驾驶,但要休息;“2”表示驾驶员处于疲劳状态,继续驾驶存在风险。考虑到人体的疲劳是缓慢增长的,为增加检测的准确性,选取当前时刻前60s内的条件属性进行分析,数据融合过程见图4。离散化后的数据见表2。

图4 数据融合过程

表2 决策表

考虑到任何一个条件属性都是必须的,不作约简,根据最小决策算法判断驾驶员是否疲劳及其疲劳程度。

4 测试分析

选择南京绕城高速公路作为试验线路,对该系统进行实车测试。以副驾驶位测试工作人员对驾驶人员疲劳程度的评测作为实际疲劳程度基准值,共得到样本数据280组,其中清醒样本142个、轻度疲劳样本97个、深度疲劳41个。

表3为基于单一特征与数据融合算法的测试结果比较。从表3可知:融合算法对驾驶员疲劳状态的检测准确率为93.9%,相较于单一特征算法,判别准确率显著提升,可作为疲劳驾驶判定的有效依据。

表3 基于单一特征和信息融合的疲劳驾驶判定结果

5 结语

疲劳驾驶检测系统是车辆主动安全的重要组成部分。该文以道路运输车辆动态监管终端技术标准为基础,增加视频采集和分析功能,通过“主板+视频板+外设”的形式对疲劳驾驶检测系统的硬件架构进行设计;结合人眼PERCLOSE和车道偏离两种不同原理,引入数据融合技术,提出了疲劳驾驶识别算法。实际道路测试结果表明,该系统实现了不同特征数据间的互补,相对于以往基于单一数据源的识别技术,在准确性方面有很大提高,具有广阔的应用前景。

[1] 李都厚,刘群.疲劳驾驶与交通事故关系[J].交通运输工程学报,2010,10(2).

[2] 毛科俊,刘小明,赵晓华,等.基于脑电信号的驾驶疲劳预报关键参数选取[J].北京工业大学学报,2010,36 (7).

[3] MPatel,SKLLai.Applyingneuralnetworkanalysis onheartratevariabilitydatatoassessdriverfatigue [J].ExpertSystemswithApplications,2011,38(6).

[4] EskandarianA,MortazaviA.Evaluationofasmartalgorithmforcommercialvehicledriverdrowsinessdetection[A].Proceedingsofthe2007IEEEIntelligent VehiclesSymposium[C].2007.

[5] 毛喆,初秀民,严新平,等.汽车驾驶员驾驶疲劳监测技术研究进展[J].中国安全科学学报,2005,15(3).

[6] ForsmanPM,VilaBJ,ShortRA,etal.Efficientdriverdrowsinessdetectionatmoderatelevelsofdrowsiness[J].AccidentAnalysisandPrevention,2013,50.

[7] 张希波,成波,冯睿嘉.基于方向盘操作的驾驶人疲劳状态实时检测方法[J].清华大学学报:自然科学版,2010,50(7).

[8] TD’Orazio,MLeo,CGuaragnella,etal.Avisualapproachfordriverinattentiondetection[J].PatternRecognition,2007,40(8).

[9] BatistaJ.Adrowsinessandpointofattentionmonitoringsystemfordrivervigilance[A].IntelligentTransportationSystemsConference[C].2007.

[10] LeeD,OhS,HeoS,etal.Drowsydrivingdetectionbasedonthedriver’sheadmovementusinginfrared sensors[A].Proceedingsofthe2ndInternational SymposiumonUniversalCommunication[C].2008.

[11] 袁翔,黄博学,夏晶晶.疲劳驾驶检测方法研究现状[J].公路与汽运,2007(3).

[12] 方志辉.基于嵌入式平台的疲劳驾驶状态参数信息融合研究[D].太原:太原理工大学,2011.

[13] 秦洪懋,刘志强,汪澎.基于多通道信息融合的疲劳驾驶行为分析研究[J].中国安全科学学报,2011,21 (2).

[14] 韩相军,关永,王雪立.基于DSP的疲劳驾驶实时监测系统研究[J].微机发展,2006(2).

[15] 高永萍,秦华标.驾驶员疲劳检测系统[J].仪表技术与传感器,2007(1).

U471.1

A

1671-2668(2016)04-0055-05

∗江苏省交通运输科技项目(2013Y03)

2016-01-26

猜你喜欢
人眼人脸车道
北斗+手机实现车道级导航应用
有特点的人脸
一起学画人脸
避免跟车闯红灯的地面车道线
浅谈MTC车道改造
人眼X光
人眼为什么能看到虚像
三国漫——人脸解锁
闪瞎人眼的,还有唇
看人,星光璀璨缭人眼