微波EDA网,见证研发工程师的成长!
首页 > 应用设计 > 汽车电子 > 基于PERCLOS的汽车司机疲劳监控方法的研究

基于PERCLOS的汽车司机疲劳监控方法的研究

时间:04-11 来源:作者:杨彬 黄耀志 点击:

  四. 脸部区域的提取

  由于采集系统过滤了大量的背景,可以假设采集的图像满足以下两个先验条件:

1)脸部的面积在图像中所占的比例较大,如果用合理的阈值分割图像,将分割后的二值图像中值为1的区域按连通区域面积从大到小排序,脸部的面积可以排在前两位。

2)司机头部的运动量较其他地方大。

  因此本文采用的做法是:先用合适的阈值分割方法得到图像im2的二值图像binim,然后求它与前一帧图像im1的差分图像difim(difim为 im1和im2差值的绝对值取一定的阈值分割后的二值图像),计算binim中面积最大的两块连通区域s1,s2;在差分图像difim中计算两块区域的运动量,选取其中运动量较大的一个区域。计算该区域的上边界和左右边界,下边界的选取使得脸部的区域为正方形。

  由于脸部姿势变化时图像的光线变化较大,用固定的阈值分割不可行。本文用类别方差自动门限法对图像做二值化处理,该方法的原理如下:


  组合分析这些类别方差,可以衡量不同的门限导出的类别的分离性能。


  五. 圆频率变换和眼睛的定位及面积计算

  圆频率变换的滤波方法[4]是Shinjiro Kawato和 Jun Ohya提出的一种用于分析人脸姿势的方法。它的特点是不直接定位眼睛,而是通过定位两只眼睛的连线的中点即眉心的位置来分析人脸的姿势。该方法的特点是运算速度快,能够满足实时处理的要求。本文利用这种方法作为眼睛定位的一个步骤,以减少下一步眼睛定位的搜索范围。

  以点(x,y)为圆心,以一定的半径画圆,将圆周上的点依次存入数组,设数组为

  取圆频率滤波的半径r=len/4。

  定位出眉心后,本文用以下的方法步骤定位瞳孔中心并计算瞳孔的面积。

  1. 根据该点估计眼睛和眉毛所在的大致区域,选取距离眉心上下各20个象素,水平方向的距离在[7,40]的图像区域。

  2. 在选取的图像区域内作水平积分投影即G(y)= ,对G(y)作均值滤波,眼睛和眉毛处的积分比较小,而二者中间的眼睑亮度相对较大,因此我们计算G(y)中两个波谷之间的波峰作为眼睛区域的上边界,取上边界加15作为下边界。

  3. 在眼睛区域内做广义对称变换计算瞳孔中心,由于眼睛的区域较小,虽然广义对称变换的时间复杂度为( ),其中n为图像的象素总和,m为模型的大小,但是计算的区域较小,因此不会影响实时性。这里本文用椭圆模型定位瞳孔的中心,椭圆的长轴a=6,短轴b=3广义对称变换的原理参考文献[5]。

  4. 将瞳孔中心上下5个象素,左右10个象素区域的灰度变换到[0,1],取0.4为阈值分割图像。计算瞳孔的面积。

  为了进一步提高处理速度,本文并不对每一帧图像做上述步骤处理而是在定位出眼睛的中心位置后估计下一帧眼睛和眉毛的区域,用积分投影和广义对称的方法定位眼睛的中心,只有当连续两帧眼睛周围的亮度差值太大时才在整个图像范围内用上述的所有步骤定位眼睛。如图5显示了右眼的定位和瞳孔面积计算的过程。

  六. 实验结果及结论

  本文的实验在MATLAB7.0,C41.7GCPU,256MB内存的环境下进行。

  MATLAB7.0增加了与视频设备接口通讯的工具箱,,通过1394 卡可以与dv摄像机通讯,实时捕捉和检索图像序列。本文采用MATLAB直接读取视频中的图像并进行处理,图像处理的速度在每秒8~12帧,在脸部不是过于偏离镜头造成背光严重的情况下能够准确定位瞳孔中心。当然采用单一的检测手段有一定的局限性,例如有些人睡觉时眼睛不闭合,有些人喜欢带墨镜,此时 PERCLOS方法就会失效。,采用多种疲劳判别方式的综合可以提高判别的准确度,例如综合眼皮的眨动次数,头部姿势以及汽车在行驶时的横向速度的变化情况。为了提高系统疲劳检测的有效性,多种疲劳判别方式综合判定是我们对系统改进的研究方向。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top