基于面部特征识别的疲劳检测系统设计实现

目录

•研究背景与意义

-系统软件设计及实现

•总结及展望

•致谢

1.研究背景与意义

-疲劳检测在现实生活中具有很大的意义和实用价值,也是一个值 得进一步完善研究的课题。

研究目标

本设计目标在于利用Matlab强大的图像 处理能力和实用便捷的编程方法,通过处理包含 人脸的视频图像,识别分析面部特征,从而得到 比较准确的疲劳状况。

2.系统软件设计框架

基于肤色的人疲劳检检测人眼的闭合状态脸检测夫变换的人眼定位

图2-1为待处理的原图

图2-2为在HSV色彩空间中提取到的肤色范围。

2.1基于肤色的人脸检测与提取算法流程

把图2-2中的肤色范围设置为白色,非肤色范围取黑,并且进 行内部填充,可以得到如图2-3所示的人脸范围的黑白模版。

把图2-3与原图2-1乘操作就可以得到整个人脸范 围

把得到的人脸图像转换为灰度图像,如图2-5

人脸灰度图

图2-5

使用Prewitt算子进行边缘检测,得到人眼的边缘曲线如图2-6所示。

边缘检测

由边缘图像进行霍夫变换检测圆,得到人眼的边缘曲线如图2-7所示。

眼睛检测

得到的人眼边缘曲线不是很完整,因此做一下膨胀处理,得到人眼范 围,便于统计大小信息,如图2-8所示。

眼睛检测2

2.2基于霍夫变换的人眼定位与统计

不同闭合度人眼检测结果对比如图2-9

Figure 8

Figure 9

Figure 10

File Edit View Insert Tools Desktop Window Help 小

□ he 惇及&勞?勾疙» File Edit View Insert Tools Desktop Window Help 号 □ Q B 以敏氏轡® 疙》 File Edit View Insert Tools Desktop Window Help 胃 □岸口匱鼠A閱⑥

边缘检测

眼睛检测

File Edit View Insert Tools Desktop Window Help』

□券口暑風0博您疙

Figure 6

File Edit View Insert Tools Desktop Window Help』

□ Q昌時風纹即®着》

Figure 1

File Edit View Insert Tools Desktop Window Help 小
□渗口昌惇毆0門® M »

人脸灰度图

边緣检测

眼睛检测

画出人眼
变化曲线

对徂到的紹验謳如

□ 5 10 15 20 25 30 35 40 45 50

图像帧&时间

10所示。+ 一徂到人眼詩1杏的帏新与总数

人眼大.小变化曲统

图 2-10

-本设计简单易行,但是运 行速度比较慢,主要是霍 夫变换运算量比较大。为 了减少运算量,可以进一 步减少人眼搜索范围。

•对于人脸,可以确定,人 眼一般位于头部中间偏上 的位置,加上是下方的脖 子等区域,可以认为人眼 在头部上半部分,如此就 可以把搜索范围减少一半, 运算速度也可以加快一倍。

•减小人脸范围后实验结果:

人脸灰度图

边缘检测

眼睛检测2

眼睛检测

=」」.一

HSV色彩空间

-色彩空问,即色彩模型,是指颜色在三维空问中的排列方式。肤色由于其 特殊性,在不同的色彩空间表现形式也不同,对肤色的辨识能力和处理效 果也不同。

-HSV色彩属性模式是三原色光模式的一种非线性变换,根据色彩的三个基 本属性:色相、饱和度和明度来确定颜色。色相(H)是色彩的基本属性, 取0-36。度的数值。饱和度(S)是指色彩的纯度,明度(V )也叫“亮 度”,取 0T00%

-在对色彩信息的利用中,HSV模型的优点在于它将亮度和反映色彩本质特 性的两个参数分开。在提取一类物体(如人脸)在色彩方面的特性时,可 以获得比较好的效果。

-边缘检测算子

- 几种边缘算子处理实验待测图片的效果对比:

SCiM算子

prewitt 算子

£an質算子

I 口 g算子

-膨胀

-膨胀是将与目标区域接触的背景点合并到该目标中,是目标边界向外部 扩张的处理。膨胀可以用来填补目标区域中存在的某些空洞,以及消除 包含在目标区域中的小颗粒噪声。

-由于得到的人眼边缘不是很完整,难以统计大小信息,需要做膨胀处理。

The term watershed refers to a ndge that …

眨眼与疲劳

-眨眼,是一种快速的闭眼动作,称为瞬目反射。

•据统计,正常人平均每分钟要眨眼十几次,通常2〜6秒就要 眨眼一次,每次眨眼要用0.2〜0.4秒钟时间。20-40岁之间 的正常人每分钟眨眼约20次,而在睁眼凝视变动快速的电脑 屏幕时,或者人的注意力相对十分集中时,眨眼次数可能会减 少到每分钟4-5次。

•而人出现疲劳后,眨眼频率往往会加快,每次眨眼经历时间也 会相应的变长,因此可以依据人的眨眼频率判断人是否疲劳。

肤色在HSV色彩空间的子空间

S > 10

V > 40

式2-1

<S < 110 - H - 0.1W

H < 75 - 0.4V

0.08(100 - V)H + 0.5V (H > 0)

0.5H + 35 (H < 0)

研究背景与意义

比如说疲劳驾驶,就是诱发严重交 通事故的重要原因之一。据公安交管部门统计, 60%以上的交通事故与疲劳驾驶有关,防范疲劳 驾驶刻不容缓。这不但需要驾驶员自己做到尽量 控制不疲劳驾驶,也需要一个实时的疲劳检测系 统监测驾驶员的疲劳状态,随时提醒驾驶员保持 清醒,才能最大限度的防止疲劳驾驶的出现,减 少交通事故的发生。

霍夫变换(Hough变换

-霍夫变换(Hough变换)是一种用于区域边界形状描述的方法, 常常被用于直线段、圆和椭圆的检测。其基本思想是将图像 的空间域变换到参数空间,用大多数边界点满足的某种参数 形式来描述图像中的曲线。Hough变换检测技术根据局部度 量来计算边界曲线参数,因而,对于区域边界噪声干扰或被 其它目标遮盖而引起边界发生间断的情况,具有比较好的容 错性和鲁棒性。

•设计中采用了霍夫变换检测圆的方法定位人眼的位置,得到 人眼的轮廓,进而确定人眼,

人眼大小归一化

在所有的帧中找到人眼区域面积最大的值ma x,以此为基准,其他值依次除以max得到 相对大小值n,n取值理论范围在0-1之间, 但是由于闭眼时仍然存在一些面积信息,故 得到的n一般都是大于0,实验中可以取n 小于0.3就可以判断为闭眼状态。

-人脸检测

•人脸检测是指在输入图像中确定所有人脸(如果存在)的位置、 大小和姿态的过程。人脸检测系统输入的是可能包含人脸的图像, 输出的是图像中是否存在人脸和人脸数目、位置、尺度等信息的 参数化描述。

  • 常见的人脸检测方法有:基于统计的方法,基于模版匹配的方法, 基于知识匹配的方法等。其中基于知识匹配方法又可以分为一下 三种规则:轮廓规则,器官分布规则,肤色纹理规则和对称性规 则。
  • 本次设计主要采用了基于肤色纹理规则的知识匹配方法进行人脸 检测与提取。

人眼定位

-人眼定位是在包含人脸的图像中,比较准确的找到人眼的位置, 并且提取相关的人眼信息。

•常见的人眼定位方法包括一下四种:

  • 1)模版匹配法
  • 2 )霍夫变换法
  • 3)灰度投影法
  • 4)对称变换法

基于MATLAB面部特征识别的疲劳检测系统相关推荐

  1. matlab车牌识别 复杂环境,基于MATLAB复杂背景车牌识别检测系统

    基于MATLAB复杂背景车牌识别检测系统 1.选题目的和意义 在复杂背景车牌识别检测系统中,由于拍摄时的光照条件.牌照的整洁程度的影响,和摄像机的焦距调整.镜头的光学畸变所产生的噪声都会不同程度地造成 ...

  2. 【点击百度快照】基于MATLAB的运动车辆跟踪检测系统(GUI,视频读取)

    一.课题介绍* 本设计为基于MATLAB的运动车辆跟踪检测系统.带有一个GUI界面,可以读取高速路车流视频,读取视频信息,并且统计每辆车经过左车道还是右车道,车速和平均速度检测,以及某一帧下的车流密度 ...

  3. 基于MATLAB机器视觉的水果分级检测系统的设计

    摘 要 计算机视觉应用于水果的品质检测,带来了许多方便.既可以提高检测的精度.准确度.又节省了大量的劳动力,让人们从繁重的人工检测工作中解脱出来.本文以苹果为研究对象,研究了计算机视觉技术应用于水果分 ...

  4. 基于MATLAB的疲劳检测系统

    基于MATLAB的疲劳检测系统 一.课题介绍 随着汽车工业的不断发展,随之而来的社会问题也愈加严重.交通事故给人们造成巨大伤害的同时,也给社会带来沉重的负担和影响.由于疲劳驾驶是引起交通事故的一个主要 ...

  5. 基于Dlib的疲劳检测系统

    需要源码的朋友可以私信我 基于Dlib的疲劳检测系统 1.设计背景及要求 2.系统分析 3.系统设计 3.1功能结构图 3.2基于EAR.MAR和HPE算法的疲劳检测 3.2.1基于EAR算法的眨眼检 ...

  6. 基于MATLAB人脸面部检测的口罩识别系统

    基于MATLAB人脸面部检测的口罩识别系统 课题意义 作为数字图像处理和计算机视觉领域的一个重要组成部分,利用摄像机对图像进行采集,从图像中检测人脸并进行口罩穿戴的识别的有着非常重要的研究意义和应用价 ...

  7. ip iq 谐波检测matlab仿真,基于Matlab的低压电力系统谐波检测方法仿真研究

    基于Matlab的低压电力系统谐波检测方法仿真研究 1 前言 随着科学技术的发展,随着工业生产水平和人民生活水平的提高,非线性用电设备在电网中大量投运,造成了电网的谐波分量占的比重越来越大.它不仅增加 ...

  8. 基于MATLAB图像处理的硬币个数识别系统

    基于MATLAB图像处理的硬币个数识别系统 1.课题介绍 本设计为基于MATLAB的硬币图像识别统计装置,通过数码相机获取平铺无重叠堆积的硬币的图像,并通过Matlab工具处理后统计硬币的数目.通过控 ...

  9. 基于智能和视觉的火灾检测系统:调查 (论文翻译)

    英文版论文原文:英文版论文链接地址 基于智能和视觉的火灾检测系统:调查 Intelligent and Vision-based Fire Detection Systems: a Survey Fe ...

最新文章

  1. HDU 3584 Cube (三维树状数组)
  2. Java学习笔记:内部类/匿名内部类的全面介绍
  3. Howto: 如何将ArcGIS Server缓存移动到新服务器
  4. Oracle Enterprise Linux
  5. Oracle调用接口(OCI)源码剖析(2):执行SQL语句并获取结果
  6. 常见的反爬手段和解决思路
  7. 【转载】#323 - A Generic Class is a Template for a Class
  8. JavaScript 转载
  9. accept和select的区别
  10. BCGControlBar入门使用手册
  11. Jeewx-Boot 1.0.3 版本发布,基于SpringBoot的免费微信管家平台
  12. DAO层、ENTITY层、SERVICE层、CONTROLLER层
  13. 阿里云发布ECS企业级产品家族 19款实例族涵盖173个应用场景
  14. 两年前端历程回顾的思考与总结
  15. 项目合作需求、数据集合作需求
  16. 会计计算机学什么软件有哪些,会计一般要学什么软件
  17. 飞客蠕虫病毒的介绍与处理办法
  18. 杨玲 徐思 《面向对象程序设计(java)》第十一周学习总结
  19. 继电器控制实验程序c语言,继电器原理及实验程序
  20. Rk3399 Android 7.1 使用 git 管理代码之后编译不通过

热门文章

  1. 从摩拜单车的云技术看物联网与云计算的关系
  2. c 语言大整数阶乘,c++大数阶乘的实现方法
  3. 1.1 编写程序练习scanf的使用:用scanf输入圆的半径,圆柱的高,计算圆的周长和面积,圆球的表面积,圆柱体的体积和表面积,输出时取小数点后两位数。
  4. C#NPoi,将多个表数据导出到同一个ECXCL
  5. 最新版Intel HD4000 桌面右键菜单去除方法
  6. 2021年美容师(中级)多少分及格及美容师(中级)考试技巧
  7. 分类——逻辑回归Python实现
  8. AutoCAD2023软件安装教程+安装包下载
  9. 太极拳与精、气、神——孙瑜
  10. 图片c sa vsacas