安全帽佩戴检测系统-YOLOv11

项目描述 安全帽佩戴检测系统
本项目是安全帽佩戴检测系统,基于 YOLOv11 目标检测模型,对图片、视频或摄像头实时流进行安全帽佩戴状态识别,自动框出”hat(已戴安全帽)”与”person(未戴帽人员)”两类目标,输出带标注的结果与计数统计,用于施工/现场人员安全装备监管。

## 项目功能
– 图片检测:上传单张图片,模型输出每目标的边界框、标签与置信度,生成带标注的结果图。
– 视频检测:上传视频文件,逐帧推理并写入带标注的结果视频,统计峰值 hat/person 数量与累计帧计数。
– 摄像头实时检测:调用本地摄像头实时取流,每帧检测并显示带框画面,适用于现场监管。
– Web 上传式 Demo:浏览器拖拽上传图片或视频,自动返回带标注结果文件并支持在线播放,提供历史记录、缩略图、统计汇总、单条删除与一键清空。
– 树莓派现场版(原版):CSI 摄像头实时取流,GPIO 联动 LED/蜂鸣器/舵机告警,前端展示实时视频流、统计柱状图、检测日志与时间轴。
## 运行环境
– 桌面端(Windows 演示):Python 3.13,依赖 ultralytics、opencv-python、flask、imageio-ffmpeg,CPU 即可推理,无需任何外部硬件。
– 现场端(树莓派 5):Raspberry Pi 5 + OV5647 CSI 摄像头 + GPIO 外设(LED、蜂鸣器、舵机),依赖 picamera2、gpiozero、lgpio,通过 start.sh 启动。
– 模型权重自带:best.pt 已训练完成并包含在项目内,无需下载任何额外数据集或模型即可启动。
## 项目技术
– 检测模型:YOLOv11(hat / person 二类目标检测),基于 ultralytics 框架,权重 best.pt。
– 视频转码:OpenCV 输出 mp4v 后用 ffmpeg(imageio-ffmpeg 自带静态二进制)转 H.264 + yuv420p + faststart,保证浏览器 video 标签可直接流式播放。
– Web 后端:Flask,提供上传、历史、删除、清空、文件服务等 REST 接口,历史记录以 JSON 持久化。
– Web 前端:原生 HTML/CSS/JS(靛蓝主色、卡片化布局),支持拖拽上传、结果展示、历史卡片列表与统计汇总。
– 边缘端硬件联动:picamera2 取流、gpiozero/lgpio 控制 LED、蜂鸣器、舵机,实现未戴帽告警联动。
– 推理脚本:predict_image.py、predict_video.py、predict_webcam.py 分别覆盖图片、视频、摄像头三种输入方式,均基于 ultralytics 原生 API。

以上系统源码经过技术整理与调试,确保能正常运行

提供最优质的资源集合

立即查看 了解详情