【C111】Python编写的疲劳检测系统(实时摄像头检测)

2021-06-01 12:30:17      索炜达.猿创      1878     

文件编号:C111

文件大小:160M

代码行数:496行(主程序)

开发环境:Python3.8、OpenCV4.5

猿创承诺:该源码均通过亲自测试可正常运行

简要概述:经查阅相关文献,疲劳在人体面部表情中表现出大致三个类型:打哈欠(嘴巴张大且相对较长时间保持这一状态)、眨眼(或眼睛微闭,此时眨眼次数增多,且眨眼速度变慢)、点头(瞌睡点头)。本实验从人脸朝向、位置、瞳孔朝向、眼睛开合度、眨眼频率、瞳孔收缩率等数据入手,并通过这些数据,实时地计算出驾驶员的注意力集中程度,分析驾驶员是否疲劳驾驶和及时作出安全提示。

环境:Win10、Python3.7、anaconda3、JupyterNotebook 技术:

Opencv:图像处理

Dlib:一个很经典的用于图像处理的开源库,shape_predictor_68_face_landmarks.dat是一个用于人脸68个关键点检测的dat模型库,使用这个模型库可以很方便地进行人脸检测,并进行简单的应用。

Numpy:基于Python的n维数值计算扩展。

Imutils :一系列使得opencv 便利的功能,包括图像旋转、缩放、平移,骨架化、边缘检测、显示

matplotlib 图像(imutils.opencv2matplotlib(image)。

wx:python界面工具

标准参数说明

疲劳认定标准:

眨眼:连续3帧内,眼睛长宽比为 0.2

打哈欠:连续3帧内,嘴部长宽比为 0.5

瞌睡点头:连续3帧内,pitch(x)旋转角为 0.3

(真实运用中需要根据不同人的眼睛大小进行检测,人的眼睛大小,俯仰头习惯都不一样,这只是一个参考值)

【C111】Python编写的疲劳检测系统(实时摄像头检测)

运行结果

【C111】Python编写的疲劳检测系统(实时摄像头检测)

目录│文件列表:

 ├ 1.文档

 │  └ 设计报告.docx

 ├ 2.源码

 │  └ fatigue_detecting

 │     │ eye_detecting.py

 │     │ main.py

 │     │ main_UI.py

 │     │ mouth_detecting.py

 │     │ node_detecting.py

 │     │ Test.ipynb

 │     │ UIdemo.ipynb

 │     ├ images

 │     │  │ 123.ico

 │     │  │ camera.png

 │     │  └ test.mp4

 │     ├ model

 │     │  └ shape_predictor_68_face_landmarks.dat

 │     └ 安装包

 │        │ 111.fbp

 │        │ noname.py

 │        │ wxFormBuilder_v3.6.2.exe

 │        └ 运行效果.jpg

 └ 3.演示视频

    │ 摄像头演示视频.mp4

    └ 本地视频演示视频.mp4

TAG疲劳检测
  • 14 次
  • 1200 分