基于计算机视觉的驾驶员状态分析

**计算机系统的介绍

一 概要

  本文提出了基于计算机视觉来对驾驶员驾驶状态进行检测,其主要思路是:首先通过图像处理完成对图像的灰度化以及边缘化等处理,其次进行脸部的检测和定位,接着是眼部的定位以及眼部张闭程度的判断,最后在通过眼部状态,再结合PERCLOS准则对驾驶员驾驶状态做出判断。本文的驾驶员驾驶状态检测系统组成部分如下:图像采集部分、图像处理部分、脸部和脸部特征点检测部分和眼部状态部分。
  本文通过笔记本电脑摄像头采集模拟驾驶的视频像,通过以笔记本为硬件平台来运行本文设计的程序来判断驾驶员处于何种驾驶状态,由于条件有限只能在模拟驾驶工况下进行试验。
关键词:驾驶员状态;脸部识别;计算机视觉;眼部定位

二、系统分析

在正常驾驶时工况下,主观因素对驾驶员驾驶状态的判断标准影响很大。驾驶员驾驶状态检测方法仍有很大的研究价值,在现有基于计算机视觉的驾驶员驾驶状态检测方法的基础上,本文利用笔记本电脑的摄像头采集模拟驾驶的驾驶员头部视频图像,设计了一套基于计算机视觉的驾驶员驾驶状态检测系统。具体的研究内容包括以下方面:
  (1)驾驶图像中脸部区域的定位:首先提取人脸库中脸部的Haar矩形特征,用提取到脸部特征训练基于Boosting的级联驾驶员脸部分类器。使用用训练好的驾驶员脸部分类器遍历驾驶员驾驶图像,从而得到驾驶员脸部区域图像。
  (2)脸部区域图像中眼部区域图像的获得:首先利用BioID人脸库以及该人脸库标记好的脸部特征点训练几何特征算法。使用训练好的几何特征算法在驾驶员脸部区域图像中定位特征点,通过几何特征算法定位的特征点来输出驾驶员眼部区域的图像。
  (3)驾驶中眼部状态检测:对于已获得的驾驶员眼部图像进行灰度化处理和Gamma校正,从而降低对比度和图片噪音对特征点提取的影响。利用Gamma校正图像提取HOG的特征,然后利用KNN分类器对提取的眼部区域进行HOG特征训练。训练后的KNN分类器用于识别驾驶员的眼部状态,确定其眼部的张闭程度。

三、基于几何特征算法的眼部检测

3.1 几何特征算法介绍

几何特征在已获得的驾驶员脸部图像区域中定位特征点,进而利用特征点准确定位驾驶员脸部图像中眼部位置,输出驾驶员的眼部区域图像。几何特征算法通过计算由训练样本的特征点组成的拓扑图的统计参数来消除不合理的变形。
  在特征点定位过程中,利用全局形状模型消除了局部纹理模型在特征点定位时造成的不合理畸变,生成最终的拓扑图。同时使用局部纹理模型和全局形状模型来逐步收敛输出图像。

3.2 BioID 人脸库介绍

本文使用BioID人脸库对几何特征算法进行训练。BioID人脸库大概包含4000张脸部图像。这4000张脸部图像全部是同一个人不同表情和戴、未戴眼镜的灰度图片。
  其中每张图像都标记有68个特征点,并可以直接用于训练算法。如图3.1所示,这4000张图像对脸部表情改变具有较好的表现力,在实际驾的驶过程中,与驾驶员脸部表情变化比较契合,适合训练本文提出的几何特征算法。
  在这里插入图片描述

图3.1 在人脸图像上标记的特征点

3.3 训练图像的配准

但在实际数据采集中,驾驶员和摄像头的距离随时都在发生变化,所以位置和角度也在不断变化,这就使被采集到的视频中,脸部的位置、大小和角度都发生了改变,如图3.2所示。

因此,在形成整体形状模型之前,所有的训练图像都必须进行标准化配准,这是为了每个样本选择合理的平移、缩放和旋转,在标准化配准过程中,通过相应的几何变换,从而降低标准配准后拓扑形状与平均形状之间的差距。

四、基于PERCLOS的驾驶状态判别

5.1 PERCLOS疲劳标准介绍

PERCLOS(percentage of eyelid closure over the pupil overtime)是指眼睛在闭合状态下的时间占某一时间段的比例。PERCLOS法将P70,P80和EM(EYEMEAS)这三类数据最为判断标准。
  “多种视觉检测技术效果的评价”通过检测PVT值的方法,将PERCLOS疲劳判别标准与驾驶员状态的相关程性的三种方法相比较。在进行PTV值测试时,需要求试验者保持注意力集中,根据在测试屏幕上显示的信息做出相应的操作。研究结果如图5.1所示,纵坐标为PERCLOS标准与试验者疲劳程度相关性,横坐标为试验者的编号。
  在这里插入图片描述

图 5.1 三种PERCLOS标准对比

5.2 模拟驾驶工况下驾驶员驾驶状态检测

为了验证本文所提出的驾驶员驾驶状态检测系统的有效性,由于条件有限,本文采用模拟驾驶方法,录制模拟驾驶员驾驶状态视频。本文模拟驾驶视频录制从下午4点开始,每隔1小时进行一次样本采集,每次录制10分钟,共采集5组样本,在两次样本间隔时间内驾驶员不进行长时间休息。录制设备为笔记本USB2.0 HD UVC Webcam摄像头,采集到的彩色图像尺寸为640×480。
  由于采集开始时,驾驶员刚刚进行完其他活动,精神状态较好,处于清醒状态。随着模拟驾驶视频采集的进行,驾驶员精神状态趋于平稳,此时采集到的样本更能真实的反应驾驶员在进行视频采集时的驾驶状态。所以本文截取采样得到的视频的后5分钟作为测试样本进行驾驶员驾驶状态检测系统有效性测试。首先使用主观评价法,评价驾驶员模拟进行驾驶时的精神状态。评价结果如表5.2所示。
表5.2 模拟驾驶驾驶员疲劳评价结果
在这里插入图片描述

表5.3 实际闭眼帧数与算法得到的闭眼帧数
  在这里插入图片描述

由表5.3可以得出,本文所提出的眼部状态检测方法在模拟驾驶测试中的检测正确率可以达到96.53%。
  利用本文所提出的方法检测上述5组测试样本,统计从系统开始运行到第一次提醒驾驶员处于疲劳状态所经历的帧数,如表5.4所示:
表5.4 系统提示疲劳所经历的帧数
在这里插入图片描述

由表5.4可以看出。本文所提出的系统在驾驶员处于重度疲劳状态时具有较好的检测灵敏度。但在驾驶员处于轻度疲劳的驾驶状态时,该系统灵敏度较差。部分程序检测过程截图如图5.3所示。当将清醒状态下的驾驶员驾驶视频输入程序时,程序不输出任何字符,如图5.3(a)所示,表示驾驶员处于清醒的驾驶状态。当将疲劳的驾驶状态下的驾驶员驾驶视频输入程序时,如图5.3(b)所示,当程序检测至视频第40秒(算法共检测1090帧驾驶员脸部图像),程序输出字符“疲劳驾驶”,如图5.2(b)所示,表示驾驶员已经处于疲劳驾驶状态。
在这里插入图片描述

(a)驾驶员处于清醒状态时驾驶状态检测系统不进行预警
在这里插入图片描述

(b) 驾驶员处于疲劳状态时系统发出预警

五、 结论

  为了实现眼部区域的精准定位,本文在基于脸部区域的定位,通过特征点来进行眼部区域的定位。通过机器学习,在眼部区域训练眼部状态分类器来完成眼部状态的识别。本文在Microsoft Visual Studio 2017软件中调用了Open CV库中相应函数来实现。本文主要讨论了以下几点问题:
(1)使用层叠分类器精确定位驾驶员脸部区域。
  (2)在脸部区域图像中,利用几何特征算法定位脸部区域的特征点,然后在脸部区域图像中准确地找到眼部位置,最终得到眼部区域图像。
  (3)利用眼部区域图像获取眼部的HOG特征,利用KNN算法对HOG特征进行分类,实现对眼部张闭状态的判断,HOG特征与KNN训练与分类均使用Open CV库的库函数获取的。
(4)PERCOLS参数用于计算一定时间段内眼部闭合状态的比例,以判断驾驶员驾驶状态。
(5)本文使用模拟驾驶员驾驶过程,采集视频数据,用于算法的训练和方法验证。

六、 目录

目 录
摘 要- 1 -
Abstract- 2 -
1.1 课题研究背景与意义- 4 -
1.2 国内外研究现状- 5 -
1.3 本文的研究内容- 6 -
2 基于Haar矩形特征和Boosting算法的脸部检测- 8 -
2.1 Haar矩形特征- 8 -
2.1.1 Haar矩形特征介绍- 8 -
2.1.2 Haar 矩形特征值的计算- 9 -
2.1.3 基于Haar矩形特征表示脸部- 9 -
2.1.4 利用积分图计算特征值- 10 -
2.2 基于Boosting算法的层叠分类器- 10 -
2.2.1 Boosting算法介绍- 11 -
2.2.2 层叠分类器的训练- 12 -
2.2.3 使用层叠分类器检测脸部- 13 -
3 基于几何特征算法的眼部检测- 15 -
3.1 几何特征算法介绍- 15 -
3.2 BioID 人脸库介绍- 15 -
3.3 训练图像的配准- 16 -
3.4 全局形状模型的训练- 18 -
3.5 局部纹理模型的训练- 19 -
3.6 使用几何特征算法进行特征点检测- 20 -
3.7 利用特征点得到眼部区域图像- 22 -
4 基于HOG特征和KNN算法的眼部状态识别- 23 -
4.1 HOG特征的提取- 23 -
4.2 基于KNN的眼部状态分类器- 24 -
4.3 使用HOG和KNN眼部状态分类器对眼部状态进行识别- 26 -
5 基于PERCLOS的驾驶状态判别- 28 -
5.1 PERCLOS疲劳标准介绍- 28 -
5.2 PERCLOS疲劳标准原理- 29 -
5.3 PERCOLS阈值的选择- 29 -
5.4 模拟驾驶工况下驾驶员驾驶状态检测- 30 -
总结- 33 -
致谢- 34 -

  • 6
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值