news 2026/4/15 18:51:53

YOLOV8模型如何训练 智慧工地安全检测数据集 检测手推车 建筑工人 安全帽 钢筋 建筑木板堆积 切割机 砖块堆积检测 13372张 15类

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
YOLOV8模型如何训练 智慧工地安全检测数据集 检测手推车 建筑工人 安全帽 钢筋 建筑木板堆积 切割机 砖块堆积检测 13372张 15类

智慧工地安全检测数据集 检测手推车 建筑工人 安全帽 钢筋 建筑木板堆积 切割机 砖块堆积检测 13372张 15类



1



1

1


智慧工地安全检测数据集的完整说明,包括类别表格、数据划分建议及YOLOv8 完整训练代码,适用于智能工地监控、AI 安全巡检等场景。


✅ 一、数据集概览表

项目内容
数据集名称智慧工地安全检测数据集(Construction Site Safety Dataset)
总图像数量13,372 张(高分辨率工地实景图像)
目标类别数15 类
标注格式YOLO 格式.txt文件,归一化坐标)
数据划分建议- 训练集(train):9,360 张(70%)- 验证集(val):2,674 张(20%)- 测试集(test):1,338 张(10%)
应用场景- 工人安全行为识别- 危险区域物品堆放检测- PPE(个人防护装备)合规检查- 设备与材料管理

✅ 二、15 个检测类别详细说明表

类别编号类别名称(英文)中文含义说明
0person建筑工人所有工地人员(需配合安全帽判断是否合规)
1hard_hat安全帽工人佩戴的安全头盔(黄色/红色/蓝色等)
2wheelbarrow手推车运输砂浆、砖块的小型推车
3rebar钢筋裸露或堆放的钢筋束
4wood_pile建筑木板堆积木模板、支撑板的堆叠区域
5brick_pile砖块堆积红砖、空心砖等堆垛
6cutting_machine切割机金属/石材切割设备(含火花风险)
7excavator挖掘机大型工程机械
8crane塔吊高空吊装设备
9scaffold脚手架金属或竹制高空作业平台
10ladder梯子移动式或固定梯
11warning_sign警示标志“高压危险”“禁止通行”等标牌
12fire_extinguisher灭火器消防设备(合规性检查)
13cement_bag水泥袋成包水泥堆放
14steel_beam钢梁H 型钢、工字钢等结构件

💡关键检测逻辑

  • person存在但无hard_hat违规未戴安全帽
  • cutting_machine附近有person且无防护 →高危操作
  • wood_pile/brick_pile堆放过高 →坍塌风险

✅ 三、推荐目录结构(YOLO 格式)

construction_safety_dataset/ ├── images/ │ ├── train/ # ~9,360 张 │ ├── val/ # ~2,674 张 │ └── test/ # ~1,338 张 ├── labels/ │ ├── train/ │ ├── val/ │ └── test/ └── data.yaml # 配置文件

✅ 四、data.yaml配置文件

# construction_safety_dataset/data.yamltrain:./images/trainval:./images/valtest:./images/testnc:15names:['person','hard_hat','wheelbarrow','rebar','wood_pile','brick_pile','cutting_machine','excavator','crane','scaffold','ladder','warning_sign','fire_extinguisher','cement_bag','steel_beam']

✅ 五、YOLOv8 完整训练代码(Python)

# -*- coding: utf-8 -*-""" 智慧工地安全检测 - YOLOv8 训练脚本 15 类目标:工人、安全帽、手推车、钢筋、木板堆积、切割机等 作者:AI助手 """importosfromultralyticsimportYOLOimporttorch# -----------------------------# 1. 配置路径与设备# -----------------------------DATASET_PATH="construction_safety_dataset"ifnotos.path.exists(DATASET_PATH):raiseFileNotFoundError(f"❌ 数据集路径 '{DATASET_PATH}' 不存在!")device='cuda'iftorch.cuda.is_available()else'cpu'print(f"🚀 使用设备:{device}")# -----------------------------# 2. 加载预训练模型(推荐 yolov8m)# -----------------------------# • yolov8s:平衡速度与精度(推荐)# • yolov8m:更高精度(适合复杂工地场景)model=YOLO('yolov8m.pt')# -----------------------------# 3. 启动训练(针对工地场景优化)# -----------------------------results=model.train(data=os.path.join(DATASET_PATH,'data.yaml'),# ⏱️ 训练参数epochs=120,imgsz=1280,# 提升小目标(如安全帽)检出率batch=12,# 根据 GPU 显存调整(RTX 3090 可设 24)name='construction_yolov8m_1280',device=device,# 🎨 数据增强(工地定制)hsv_h=0.015,hsv_s=0.7,hsv_v=0.5,degrees=15.0,# 工地视角多变translate=0.2,scale=0.5,mosaic=1.0,# ✅ 必开!提升小目标召回mixup=0.1,flipud=0.0,fliplr=0.5,# 🧠 训练策略patience=30,save_period=10,workers=8,cache=False)print("✅ 训练完成!")print(f"📌 最佳模型路径: runs/detect/construction_yolov8m_1280/weights/best.pt")

✅ 六、命令行快速训练(可选)

yolo detect train\data=construction_safety_dataset/data.yaml\model=yolov8m.pt\epochs=120\imgsz=1280\batch=12\name=construction_yolov8m_1280\device=0

✅ 七、安全合规推理示例(检测未戴安全帽)

# safety_check.pyfromultralyticsimportYOLOimportcv2 model=YOLO('best.pt')defcheck_hard_hat(image_path):results=model(image_path)img=cv2.imread(image_path)persons=[]hats=[]forrinresults:boxes=r.boxesforboxinboxes:cls_id=int(box.cls[0])x1,y1,x2,y2=map(int,box.xyxy[0])ifcls_id==0:# personpersons.append((x1,y1,x2,y2))elifcls_id==1:# hard_hathats.append((x1,y1,x2,y2))# 简单判断:若有人无对应安全帽 → 违规violations=len(persons)-len(hats)ifviolations>0:print(f"⚠️ 发现{violations}名工人未佩戴安全帽!")# 可在此处画红框、报警等returnviolations# 示例check_hard_hat("site_image.jpg")

✅ 八、部署建议

场景方案
工地边缘盒子Jetson AGX Orin + TensorRT(yolov8s
视频流分析OpenCV + YOLOv8 实时处理 RTSP 流
Web 平台FastAPI 提供/safety-check接口
移动端 App导出 ONNX,集成到 Android/iOS

💡性能预期(基于 13k+ 图像):

  • mAP@0.5 > 0.90
  • 安全帽检出率 > 95%
  • 切割机/钢筋等小目标 Recall > 85%

如需以下扩展功能,请告知:

  • 自动生成安全日报(含违规截图)
  • 与门禁系统联动(未戴安全帽禁止入场)
  • 多摄像头协同跟踪(跨镜头工人 ID)
  • 3D 堆积高度估算(木板/砖块)

祝您打造高可靠智慧工地 AI 安全系统!🏗️👷‍♂️🛡️

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/12 5:01:02

基于Python的智能房价分析与预测系统(源码+lw+部署文档+讲解等)

课题介绍 本课题旨在设计实现基于Python的智能房价分析与预测系统,聚焦购房者、房产从业者、科研人员对房价走势研判、影响因素分析、精准预测及数据可视化核心需求,破解传统房价分析依赖经验、数据维度单一、预测精度不足等痛点,构建智能化、…

作者头像 李华
网站建设 2026/4/10 11:56:16

【爆肝】传统RAG已凉?图数据库让大模型准确率飙升95%,小白也能秒变AI大神!

今天我们不谈基础的图数据库概念与应用场景,而是聚焦于一个更前沿的融合领域——基于图的 RAG 平台。 在大型语言模型席卷全球的当下,企业面临的核心挑战已从如何搭建一个大模型转变为如何安全、高效、低成本地使用大模型处理私有知识。 一、当前大模型…

作者头像 李华
网站建设 2026/4/13 19:09:06

Day02-12.开发接口功能-分析登录用户传递流程13:16

套路,脚手架,看一眼就行了,没啥技术含量 package com.tianji.gateway.filter;import com.tianji.authsdk.gateway.util.AuthUtil; import com.tianji.common.domain.R; import com.tianji.common.domain.dto.LoginUserDTO; import com.tianji…

作者头像 李华
网站建设 2026/4/13 19:45:46

信号处理仿真:图像信号处理_(18).图像处理仿真实验设计

图像处理仿真实验设计 在上一节中,我们已经了解了图像信号处理的基本概念和常用技术。本节将详细介绍如何设计图像处理仿真实验,包括实验的目标、步骤、工具选择以及具体的代码示例。通过本节的学习,读者将能够独立设计并实现图像处理仿真实…

作者头像 李华
网站建设 2026/4/3 6:39:22

信号处理仿真:信号处理基础_(3).模拟信号与数字信号转换

模拟信号与数字信号转换 在信号处理中,模拟信号与数字信号的转换是一个非常重要的步骤。模拟信号是连续变化的信号,而数字信号是由离散的数字值组成的信号。模拟信号与数字信号之间的转换主要涉及两个过程:模数转换(Analog-to-Di…

作者头像 李华
网站建设 2026/4/15 0:47:29

(新卷,100分)- 提取字符串中的最长数学表达式(Java JS Python C)

(新卷,100分)- 提取字符串中的最长数学表达式(Java & JS & Python & C) 题目描述 提取字符串中的最长合法简单数学表达式,字符串长度最长的,并计算表达式的值。如果没有,则返回 0 。 简单数学表达式只能…

作者头像 李华