# OpenCV竞赛 -赛博松鼠-人脸疲劳检测 **Repository Path**: dubhe0/Face-fatigue-detection ## Basic Information - **Project Name**: OpenCV竞赛 -赛博松鼠-人脸疲劳检测 - **Description**: 对于汽车夜间行驶,汽车司机常常因为疲劳驾驶而导致的车祸事件频频发生,以及近期 疫情原因,学生上网课打瞌睡问题,本技术能够实时检测目标是否处于疲劳状态,从而进行 提醒或者发出警报。而 opencv 正好可以解决此类问题,通过大量数据进行深度学习,在运 行过程中可以检测人脸是否处于疲劳的状态。此外,在此基础上安装夜视摄像头,在夜间也 可准确的识别人脸疲劳状态,实现 24 小时全天候运作。 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 20 - **Forks**: 3 - **Created**: 2022-12-19 - **Last Updated**: 2025-04-03 ## Categories & Tags **Categories**: Uncategorized **Tags**: 疲劳检测, OpenCV ## README **OpenCV竞赛 -赛博松鼠-人脸疲劳检测** #### 介绍 在诸多实际应用场景中,我们需要人员坚持在岗并保持清醒的状态,比如驾驶员驾驶车辆长途行驶、学生在线上课堂的听讲、关键岗位人员值守监控等实际情景。当工作者处于脱岗或疲劳状态时,通过疲劳检测系统进行“疲劳警告”,可以提醒在岗人员及时调整工作状态。此措施能够有效减少疲劳驾驶而导致的交通事故,减少危险器械操作员疲劳时产生的安全事故,以及其他一些人员值守岗位的事故隐患。 根据上述现实需求,我们开发了一个基于 OpenCV 的疲劳检测系统,能够实时检测视频流中用户的人脸疲劳程度,当用户出现连续打哈欠、瞌睡时,系统进行疲劳警告提醒。此外,当用户持续脱离摄像头拍摄范围时,系统进行脱岗提醒。为适应尽可能广泛的应用场景,该系统实现疲劳检测的准确性和快捷性的同时,还降低了检测系统的硬件资源要求,以便在低性能设备上做适配并稳定运作。本系统可以在不同平台上使用,比如常用的手机、电脑,微系统(如树莓派)等,尤其能够工作在低成本的嵌入式系统中。我们希望所提出的低成本疲劳检测解决方案应用在多个现实问题中,推进智能视觉技术辅助我们的生活和工作。 ### 项目技术 系统使用示例 启动程序后,界面如图所示,通过”视频源“分组框里的第一个下拉列表框选择“摄像头ID0~ID2“,选择要打开的摄像头,ID0为本地摄像头,ID1和ID2为外接USB摄像头,然后点击”开始检测“即可开始检测人脸疲劳。画面将展示在右侧黑框内。 图1.图形界面 1.可以修改”疲劳检测“分组框里的内容修改检测功能。 闭眼检测(帧): ![输入图片说明](fatigue_detecting-master/images/1.png) 图2.闭眼检测 当闭眼的帧数达到该数值,则判断为睡觉 哈欠次数&间隔时间: ![输入图片说明](fatigue_detecting-master/images/2.png) 图3.哈欠检测 当打哈欠次数在“间隔时间(秒)”内达到“哈欠次数”则判断为疲劳。 ![输入图片说明](fatigue_detecting-master/images/3.png) 图4.功能复选框 勾选相应复选框来启用功能:哈欠检测、显示监测数据、闭眼检测 脱离范围检测: ![输入图片说明](fatigue_detecting-master/images/4.png) 图5.脱离检测 勾选后若摄像头识别到没有人脸的帧数达到”脱离时间(帧)“则判断为脱离检测范围 2.状态输出。 ![输入图片说明](fatigue_detecting-master/images/5.png) 图6.状态输出框 如检测到睡觉,疲劳,修改参数等信息将会通过状态输出文本浏览框展示。并播放提示语音 #### 参与者 1. 苏溢彬 2. 何俊健 3. 谢达森 4. 陈嘉煌