Skip to content
JNP
All projects

Case study · Group project · 2026

INTELSY PPE Detection

YOLOv8 Personal Protective Equipment Detection System

A group final project for INTELSY by the MIGHT Team. A YOLOv8 object-detection model fine-tuned on a labelled worksite dataset finds hardhats, safety vests, masks, gloves and goggles in images and webcam video, as well as the people and missing equipment, and turns each result into a short plain-language summary.

Six worksite photos with the model's detections drawn on them: hardhats boxed and labelled with confidence scores, and one person flagged NO-Safety Vest.

The problem

Checking that everyone on a construction site or factory floor is wearing their protective equipment is usually done by eye, and it is easy to miss someone. The project explores automating that check with object detection, as decision support for a safety officer rather than automatic enforcement.

What it does

  • Detects 14 classes, including Hardhat, Safety Vest, Mask, Gloves and Goggles and their NO- counterparts, plus Person, Ladder, Safety Cone and falls.
  • Runs on single images, folders of images and live webcam video, drawing bounding boxes with class labels and confidence.
  • Classes can be kept or hidden at inference time, with adjustable confidence and IoU thresholds.
  • Each run writes a plain-language summary of what was detected and whether required PPE is missing.
  • A ready checkpoint is included, so the webcam demo runs without training.
  • One-command reproducible training run, with a script that builds the ablation table.

Engineering decisions

Measured against a baseline, not just reported
A non-deep-learning baseline that predicts the most common class for every box scores 0.41 accuracy and 0.04 macro-F1, which gives the detector's numbers something to be compared against. Short ablation runs on image size and data fraction are tabulated alongside.
The final model was trained in Colab
Training continued from an earlier checkpoint for 30 epochs at 640px on Google Colab. The candidate checkpoint reached 0.79 mAP@0.5 and 0.52 mAP@0.5:0.95 on the test split, while short CPU runs stayed for quick reproducibility.
Decision support, not enforcement
The release notes are explicit that detections vary with occlusion, motion blur and small objects, so output is framed as an aid for a person checking compliance.

Technologies

  • Python
  • YOLOv8 (Ultralytics)
  • PyTorch
  • OpenCV
  • Roboflow
  • Jupyter
  • Google Colab
  • pandas & scikit-learn

Screens

  • A four-by-four grid of construction-site photos with the model's hardhat and safety-vest detections drawn as labelled boxes.
    Predictions on a validation batch from the final Colab run.