Vigilante.AI — PPE Detection (YOLOv8s)

Detector YOLOv8s treinado especificamente para o Vigilante.AI, plataforma de monitoramento em tempo real de uso de Equipamentos de Proteção Individual (EPI) em canteiros de obra e ambientes industriais.

Identifica duas classes em streams RTSP, webcams e imagens: capacete (helmet) e colete refletivo (vest). Roda em produção como parte do stack do Vigilante.AI alimentando um painel multi-tenant de compliance + active learning.

Architecture: YOLOv8s (Ultralytics) fine-tuned from COCO weights.

Por que este modelo existe

Modelos PPE públicos generalistas falham em cenários reais de CCTV brasileiro: ângulos altos, baixa resolução, motion blur, e desbalanceamento severo entre helmet e vest. Este modelo foi construído pelo Vigilante.AI para resolver exatamente isso:

  • 6 datasets Roboflow consolidados em uma taxonomia de 2 classes limpa
  • Oversampling de vest-only datasets para corrigir desbalanceamento ~5:1 helmet:vest
  • Augmentations Albumentations offline (perspective, motion blur, downscale, coarse dropout) além das built-ins do YOLO, simulando condições reais de câmera de obra
  • Validation pipeline próprio com métricas por classe e confusion matrix

Resultado: mAP@0.5 = 0.944 em test set holdout, com performance estável sob ângulos de CCTV.

Classes

id name description
0 helmet Hard hat / safety helmet
1 vest High-visibility safety vest

Validation metrics (final epoch)

Metric Value
Precision 0.9253
Recall 0.8924
mAP@0.5 0.9441
mAP@0.5:0.95 0.6596
Epochs trained 50

Training setup

Param Value
Base model yolov8s.pt
Image size 640
Batch size 16
Optimizer auto (SGD)
Initial LR 0.01
Epochs 50

Dataset

Merged from public PPE datasets on Roboflow Universe, filtered to the two target classes:

  • Personal Protective Equipment Combined Model
  • Hard Hats
  • Hard Hat Universe
  • Safety Vests
  • vest-qf3av
  • vest-pbrbu

To address class imbalance, vest-only datasets were oversampled (final ratio ≈ 5:1 helmet:vest).

Augmentation

YOLO built-ins (mosaic, HSV jitter, perspective, scale, horizontal flip) plus offline Albumentations (perspective, brightness/contrast, motion blur, downscale, coarse dropout) to improve robustness to CCTV camera angles, low light, and motion blur.

Quick start

Download

Drop into the Vigilante.AI backend

Intended use

Construído para monitoramento de compliance de EPI em tempo real no Vigilante.AI — canteiros de obra, fábricas, galpões e ambientes industriais. Otimizado para streams RTSP / IP-cam, mas funciona em qualquer fonte de imagem suportada pelo Ultralytics (vídeo, webcam, imagem).

Use cases cobertos pelo Vigilante.AI usando este modelo:

  • Detecção em tempo real de trabalhadores sem capacete ou colete
  • Geração de alertas com snapshot do frame para revisão por supervisor
  • Active learning loop: feedback (correto / falso positivo) gera amostras YOLO para retreino
  • Reporting multi-tenant de compliance por câmera / site / período

Limitations

  • Trained on 2 classes only (helmet, vest). Does not detect gloves, boots, glasses, masks, etc.
  • Performance degrades under extreme occlusion, very low resolution (< 320 px), or unusual viewpoints not represented in training data.
  • May confuse high-vis clothing that is not a vest (e.g., jackets) with the vest class.
  • No bias evaluation across demographics has been performed.

Citation / créditos

Modelo treinado para o projeto Vigilante.AI — sistema completo de monitoramento de EPI com backend FastAPI multi-tenant, frontend Next.js, simulador RTSP via mediamtx, observabilidade com Prometheus + structlog, e pipeline de active learning integrado.

Repositório: https://github.com/badmuriss/vigilante-ai

License

AGPL-3.0 (inherited from Ultralytics YOLOv8).

Downloads last month
205
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support