智慧交通头盔佩戴监测数据集-[监控下非机动车头盔目标检测数据集Yolo格式数据集]
名称:监控下非机动车头盔目标检测数据集
数量:12001张数据集
“训练集:8401” “验证集:2400” “测试集:1200”
类别数量: 4个对象类别
类别类型:“Helmet(头盔)”、“PersonWithoutHelmet(不戴头盔的人)”、“PersonWithHelmet(戴头盔的人)”、“Motorbike(非机动车)”
图片格式:JPG
图片大小: 640x640
一、数据集信息表
| 项目 | 详细说明 |
|---|---|
| 数据集名称 | 监控下非机动车头盔目标检测数据集 |
| 总样本数量 | 12001 张 JPG 图片 |
| 划分比例 | 训练集:8401 张 验证集:2400 张 测试集:1200 张 |
| 标注格式 | YOLO 标准格式 |
| 图片规格 | 格式:JPG,分辨率:640×640 |
| 目标类别(共4类) | 0: Helmet(头盔) 1: PersonWithoutHelmet(未佩戴头盔人员) 2: PersonWithHelmet(佩戴头盔人员) 3: Motorbike(非机动车/摩托车) |
| 数据特点 | 基于道路监控场景采集,视角为高空监控视角,贴近真实交管抓拍环境 |
二、应用场景
- 交通违章智能识别:道路卡口、路口监控自动检测骑行人员是否佩戴头盔,自动抓拍违规行为。
- 智慧交管平台:城市交通智能化监管,减少人工巡检,提升非机动车出行安全管理效率。
- 园区/小区安防:厂区、社区出入口非机动车通行合规检测。
- 算法实训/毕设:YOLO 目标检测实战项目、计算机视觉课程实验、毕业设计课题。
- 边缘设备部署:摄像头、NVR、RK 系列开发板等端侧设备集成头盔检测算法。
三、关键标签
#YOLO#目标检测#头盔检测#非机动车检测#交通违章识别#智慧交通#监控图像数据集#YOLO格式数据集#计算机视觉#毕业设计
四、完整训练代码(YOLOv8/YOLOv11 通用,Ultralytics 框架)
1. 环境依赖
pipinstallultralytics opencv-python numpy torch torchvision2. 数据集目录结构(标准YOLO格式)
helmet_dataset/ ├── images/ │ ├── train/ # 8401 张图片 │ ├── val/ # 2400 张图片 │ └── test/ # 1200 张图片 ├── labels/ │ ├── train/ # 对应txt标注文件 │ ├── val/ │ └── test/ └── helmet.yaml # 数据集配置文件3. 数据集配置文件helmet.yaml
# 数据集路径path:./helmet_datasettrain:images/trainval:images/valtest:images/test# 类别数量 & 类别名称nc:4names:0:Helmet1:PersonWithoutHelmet2:PersonWithHelmet3:Motorbike4. 训练主代码train_helmet.py
fromultralyticsimportYOLOdefmain():# 1. 加载预训练模型,支持 yolov8n/s/m/l/x 、yolo11n/s/m/l/xmodel=YOLO("yolov8s.pt")# 2. 开始训练results=model.train(data="./helmet_dataset/helmet.yaml",# 数据集配置文件路径epochs=100,# 训练轮数imgsz=640,# 输入图像尺寸(匹配数据集640×640)batch=16,# 批次大小,根据显存调整device=0,# 使用GPU,无GPU改为 device="cpu"workers=4,# 数据加载线程数patience=15,# 早停轮数project="runs/train",# 训练结果保存根目录name="helmet_detect",# 本次训练任务名exist_ok=True,# 覆盖同名文件夹pretrained=True,# 启用预训练权重rect=False,mosaic=1.0# 数据增强开关)print("训练完成!结果保存在 runs/train/helmet_detect 目录")# 3. 模型评估(在测试集上验证指标)metrics=model.val(data="./helmet_dataset/helmet.yaml",split="test")print(f"mAP@50:{metrics.box.map50:.4f}")print(f"mAP@50-95:{metrics.box.map:.4f}")if__name__=="__main__":main()5. 推理测试代码predict_helmet.py
fromultralyticsimportYOLOimportcv2# 加载训练好的最优模型model=YOLO("runs/train/helmet_detect/weights/best.pt")# 单张图片推理img_path="test.jpg"results=model.predict(source=img_path,conf=0.25,# 置信度阈值iou=0.45,# NMS阈值save=True# 保存推理结果图)# 可视化结果res_img=results[0].plot()cv2.imshow("Helmet Detect Result",res_img)cv2.waitKey(0)cv2.destroyAllWindows()