Downloads · 30 days
832
57% of all-time downloads
killuminati1/construction-ppe-yolov8
construction-ppe-yolov8 is a object detection model from killuminati1. Use it when you need objects located in an image. It is set up for ultralytics. The card lists the license as apache-2.0.
A YOLOv8 model fine-tuned to detect personal protective equipment (PPE) and safety violations on construction sites. Built as part of SafeSight, an AI-powered construction safety monitoring system.
Downloads · 30 days
832
57% of all-time downloads
All-time downloads
1.5K
Public
Repo size
28.1 MB
Likes
3
Public
Click a slice to open those files.
.pt22.5 MB · 80%
From the Hugging Face model README
A YOLOv8 model fine-tuned to detect personal protective equipment (PPE) and safety violations on construction sites. Built as part of SafeSight, an AI-powered construction safety monitoring system.
Most public PPE datasets only cover a handful of classes (hard hat, vest, person). They don't cover the full range of equipment and violations that real construction safety monitoring needs. No single existing dataset covered everything required for this project, so multiple datasets were combined and the model was fine-tuned on the merged set.
| ID | Class | ID | Class |
|---|---|---|---|
| 0 | Boots | 10 | No-Helmet |
| 1 | Ear-Protection | 11 | No-Mask |
| 2 | Glass | 12 | No-Vest |
| 3 | Glove | 13 | Worker |
| 4 | Hard_hat | 14 | Vest |
| 5 | Mask | 15 | Circular_Saw |
| 6 | No-Boots | 16 | Fire_Extinguisher |
| 7 | No-Ear-Protection | 17 | Fire_prevention_Net |
| 8 | No-Glass | 18 | Welding_Equipment |
| 9 | No-Glove |
The model detects both presence of PPE (e.g. Hard_hat) and absence/violations (e.g. No-Helmet) as distinct classes, plus site equipment relevant to hazard context (fire extinguishers, welding equipment, saws).
args.yaml| Metric | Value |
|---|---|
| mAP50 | ~0.76 |
| mAP50-95 | ~0.43 |
| Precision | ~0.81 |
| Recall | ~0.72 |
See results.png for full training curves and confusion_matrix.png / confusion_matrix_normalized.png for per-class performance.

from ultralytics import YOLO
model = YOLO("best.pt")
results = model.predict("path/to/image.jpg")
for r in results:
r.show() # display detections
print(r.boxes) # class ids, confidence, bounding boxes
Apache 2.0. Base YOLOv8 architecture by Ultralytics (AGPL-3.0 for their own codebase — check Ultralytics licensing if using their training pipeline commercially). Training data combined from multiple public sources; individual dataset licenses may apply to the underlying data, not to these fine-tuned weights.