李 荣,刘 坤,高文鹏
( 1.黑龙江工程学院汽车与交通工程学院,哈尔滨150020; 2.河北工业大学控制科学与工程学院,天津300019; 3.哈尔滨工业大学生命科学与技术学院,哈尔滨150001)
基于视觉的目标姿态估计算法
李 荣1,刘 坤2,高文鹏3
( 1.黑龙江工程学院汽车与交通工程学院,哈尔滨150020; 2.河北工业大学控制科学与工程学院,天津300019; 3.哈尔滨工业大学生命科学与技术学院,哈尔滨150001)
驾驶员头部姿态在一定程度上反映驾驶员的意图。为了避免由驾驶员主观因素造成交通事故,基于计算机视觉的动态头部姿态估计算法,首先检测视频中的正面人脸,以此为基准,利用SIFT算法对视频序列中人脸特征进行匹配与跟踪,计算不同视角下的头部姿态角度,再通过记录不同姿态角度保持的时间来判别驾驶员的行为意识,从而给驾驶员警示,进而避免交通事故。实验表明,该系统可以精确估算驾驶员头部姿态,提高驾驶安全性。
驾驶员;疲劳检测;头部姿态评估
收稿日期: 2013-01-10
基金项目:黑龙江省教育厅科学技术研究项目( 12511454)
第一作者简介:李 荣( 1977-),女,内蒙古自治区呼和浩特人,讲师,博士,研究方向:机器人、智能驾驶等,E-mail: mizzle0929@126.com。
随着汽车制造业的飞速发展,汽车已经成为人类最主要的交通工具。汽车在带给人类舒适和便捷的同时也带来一些负面效应,其中最严重、危害最大的就是交通事故。据统计,2012年我国发生涉及人员伤亡的路口交通事故4. 6万起,造成1. 1万人死亡、5万人受伤。根据欧洲的一项研究表明,驾驶员只要在有碰撞危险0. 5 s前得到“预警”,就能避免50%的碰撞事故。若在1 s前得到“预警”,则可避免90%的事故发生。因此,开发研究能实时获取道路和车辆信息,及时提醒驾驶员,或自动采取措施以避免出现危险的汽车碰撞预警系统,成为一项极有研究价值的课题。
目前,常用的评价疲劳驾驶有两种方法。第一种方法,利用检测驾驶员的生理信号的方式,例如脑电图、心电图、呼吸气流等手段。驾驶员产生疲劳时,生理机能下降,会出现如头重、心跳加快、脉搏加速、气喘等。有些学者利用检测驾驶员的生理信号的方式来研究驾驶员的疲劳程度[1-3],这种方案的优点是在疲劳初期检测,具有一定的可靠性,缺点是使用不方便,且成本很高。另一种评价方法是通过检测驾驶员的驾驶行为,通过同正常驾驶状态比较,查找出差异如打哈欠、频繁点头、大角度偏离正常驾驶方向、表情变化少、眼睛呆滞等现象[4-6]。这类方法的优点是通过视觉和图像识别方法进行监控,不需要接触式传感检测,不干扰驾驶员正常操作,缺点是受天气、路况、光照、车型等因素影响。这样的检测系统需要有计算机进行数据的实时处理,因此成本也较高,且判别结果存在误差。随着网络技术的不断发展,针对上述问题,笔者研究利用廉价的网络摄像头对驾驶员的头部姿态进行不断获取且传给后台处理器,通过适当的算法对头部姿态进行估计,将结果反馈给报警装置,当驾驶员处于危险驾驶姿态时提供警报,会大幅度减少交通事故的发生。
研究主要是针对中低档价位的乘用车,通过利用价格低廉的网络摄像头和自身研发的智能图像识别软件,来代替智能驾驶系统等装置,在驾驶员行驶过程中辅助驾驶员进行危险情况的识别。该系统的硬件结构主要由网络摄像头、图像采集卡、计算机、定时电路等设备组成,对获取的图像信息,利用基于视频和静态图像的头部姿态估计,将处理完的信息即驾驶员头部角度的变化传给预警系统,系统根据结果发出相应的警告,为驾驶员进行道路交通安全提供保障。整体流程如图1所示。
图1 驾驶员疲劳识别系统流程Fig.1 Flow of detection system for fatigue driving
驾驶员在驾驶过程中,其头部姿态很大程度上暗示其注意力,因此可以通过捕捉驾驶员长时间低头、抬头、歪头以及频繁点头等这些反常的动作,来识别其驾驶过程是否走神或疲劳。我们可以假定,驾驶员朝正前方看,表明其注意力集中,正在注视前方的道路,若其头部长时间偏转一侧或偏移角度过大,则表明驾驶员此时走神或者疲劳,有必要给他发送提醒警示。
2. 1头部姿态的表示方法及正面基准图像
头部姿态的转动包括三个自由度,即分别为绕x、y、z轴的转动,相应的运动分别称为横转( Pitch)、倾斜( Yaw)和俯仰( Roll)。头部姿态估计都是相对驾驶员在正常驾驶过程中头部位姿而言的,把这一姿态叫做正面基准图像。为简化算法,采用主动设置方式,即驾驶员初次使用该系统时,保持驾车姿势,目视前方,将此时的图像作为正面基准图像,并把此时的坐标系作为标准坐标系,如图2所示。
图2 正面基准姿态Fig.2 Frontal head’s pose
2. 2 图像特征匹配
给定输入的视频序列,首先检测正面人脸的位置。以正面人脸为基准,标记正面人脸图像的姿态角度为0°。而网络摄像头获取的驾驶员在驾驶过程中视频序列同基准图像在不同角度、光线、遮挡等因素下有着很大的差异。图像特征匹配,检测到匹配点的数目直接影响匹配结果的准确性。对于满足传统隐含假设的特征点文中按已有算法进行匹配[4],对于不满足假设条件的区域,即难以直接匹配的区域通过优化的方法进行匹配,获取更多的匹配点,算法如图3所示。利用SIFT算法对相邻帧图像之间进行特征点检测和匹配[5],然后利用驾驶员肤色等先验知识,对特征匹配结果进行过滤和跟踪,得到不同图像之间的人脸区域。实验结果表明,70× 80像素的图像上,大概可以获得150个特征点。
图3 图像特征匹配算法框架Fig.3 Frame of image feature’s matching
2. 3 头部姿态估计
基于人脸区域内的特征匹配结果,利用对极几何的方法估计两幅图像之间的姿态角度。即三维空间中某一特征点X,被投影到两个不同的视角中,成像点位x1、x2,而成像点仅与摄像机的参数和相机间的相对姿态有关,文中驾驶员头部姿态,即考虑头部与摄像头之间的相对运动,则满足:
F为基本矩阵,是极限约束的代数表示。图4所示的e1、e2为对极点,即两摄像机的基线与成像平面的交点; C1、C2为两个相机的中心; l'表示第一副图像中的x1点,在第二副图像中的相应的对极线。即
图4 两幅图像间的极限几何关系Fig.4 Ultimate geometric relationship of two images
首先,根据归一化的线性8点算法获取基础矩阵。其次,在此基础上进行驾驶员头部姿态角度。设摄像机的内参数为K,则摄像机矩阵为
x = PX为图像上的一点,则存在K-1,使得
则空间一点X在摄像机归一化矩阵下的像为x^。与归一化摄像机矩阵对应的基础矩阵为摄像机本质矩阵与基本矩阵的关系:本质矩阵包含了旋转和平移矢量信息,即:
通过式( 6)可从本质矩阵中获取旋转矩阵R。旋转矩阵可转化为欧拉角,即分别绕z、y、x的旋转角度为α、β、γ,旋转矩阵可表达为
基于人脸区域内的特征匹配结果,利用动态姿态估计算法估计图像之间的基础矩阵和本质矩阵,进而估计任意两幅相邻图像帧之间绕旋转轴x、y、z三个方向的相对角度。利用RANSAC算法[6]过滤图像匹配中存在的错误匹配,获得正确的关于图像间基础矩阵的模型估计结果。
使用该系统进行头部姿态估计时,采用驾驶员上车后获取的基准图像为标准正面人脸坐标系,设驾驶员内眼角连线的中心为坐标原点。通过网络摄像头获取的每一帧图像,通过图像特征匹配算法获取足够多的特征点,利用RANSAC算法将错误的匹配点过滤,然后利用头部姿态估计算法,计算驾驶员人脸相对于标准坐标系的旋转矩阵,进而估计出该帧的驾驶员头部姿态相对于正面姿态的α、β、γ旋转角度。图5为利用网络摄像头拍摄的两端驾驶员模拟录像,其中5a表示的是正常驾驶状态下,利用该系统处理完的驾驶员头部横滚姿态,即此时驾驶员大部分时间目视前方,而且头部有小幅度的左右转动(即横滚)观察路况。图5b记录的驾驶员处于疲劳状态,驾驶过程中,每隔一段时间会出现头部大幅度低下(即俯视),接着会迅速抬起,而且大幅度点头的频率越来越高。图5c表示驾驶员头部长时间左偏(即偏航),持续时间长过120帧,表示可能驾驶员走神或瞌睡。如果出现图5b及5c情况,系统会发出警报,提醒驾驶员。
图5 驾驶员头部姿态估计Fig.5 Head pose estimation of driver
基于视觉的目标姿态估计算法,可以精确估算驾驶员的头部姿态,提高其驾驶安全性。该算法以正面人脸为基准,通过不同图像之间的特征匹配结果计算头部姿态的相对角度,进而获得每帧图像中头部姿态的绝对角度。实验表明,姿态估计算法可以给出精确的姿态估计结果,在驾驶员驾驶过程中起到一定的辅助驾驶作用,可以有效避免交通事故。
[1]HUANG K,TRIVEDI M M,GANDHI T.Driver’s view and vehicle surround estimation using omnidirectional video stream[C]/ / Proceedings of IEEE Intelligent Vehicles Symposium.Ohio: Columbus.2003: 444-449.
[2] 李 力,王飞跃,郑南宁,等.驾驶行为智能分析的研究与发展[J].自动化学报,2007,33( 10) : 1014-1022.
[3] VIOLA P,JONES M.Rapid objects detection using a boosted cascade of simple features[J].Computer Vision and Pattern Recognition,2001,31( 6) : 511-518.
[4] 武 勃,黄 畅,艾海舟.基于连续算法的多视角人脸检测.计算机研究与发展[J].2005,42( 9) : 1612-1621.
[5] DAVID G,LOWE.Distinctive image features from scale invariant key points[J].International Journal of Computer Vision,2004,60( 2) : 91-110.
[6] MATAS J,CHUM O.Randomized RANSAC with T-d test[J].Image and Vision Computing,2004,22( 10) : 837-842.
(编辑 徐 岩)
Research of detection system for fatigue driving based on head pose estimation
LI Rong1,LIU Kun2,GAO Wenpeng3
( 1.School of Automobile&Traffic Engineering,Heilongjiang Institute of Technology,Harbin 150001,China; 2.School of Control Science&Engineering,Hebei University of Technology,Tianjin 300019,China; 3.School of Life Science&Technology,Harbin Institute of Technology,Harbin 150001,China)
Aimed at preventing traffic accident due to the subjective factor of drivers,this paper is focused on identifying drivers’head gesture,a reflection of drivers’intention and proposes an algorithm for dynamic head pose estimation based on computer vision.The algorithm consists of firstly estimating the relative pose between adjacent views,using Scale-Invariant Feature Transform ( SIFT) descriptors to match the corresponding feature points between two adjacent views,estimating the different frames within different pose range,and using the time of the pose range to judge the drivers’behavior consciousness for preventing traffic accident.The experiment shows that the algorithm capable of accurate estimation of drivers’head gesture can aid an improvement in driving safety.
driver; fatigue detection;head pose estimation
10. 3969/j.issn.2095-7262. 2014. 01. 022
TP391
2095-7262( 2014) 01-0099-04
A