/ Модель

Характеристики

Лицензия
AGPL 3.0
Библиотека
ultralytics
Опубликована
9 мая 2026

ppe-detection-yolov8s

Поиск объектовИзображение → bounding_boxes3 профессии

YOLOv8s-P2 для обнаружения касок, сигнальных жилетов и видимых нарушений требований к СИЗ на строительных и промышленных объектах.

96скачиваний за 30 дней0лайковвеса обновлены28 июл 2026

Бенчмарки

Как модель справилась с задачами пользователей ailist и что о ней публикуют открытые лидерборды

Публичные оценки

Из открытых лидербордов. Сравнивайте результаты одного теста при одинаковых условиях — отсутствие оценки не значит, что модель хуже.

В подключённых источниках результатов для этой модели пока нет.

Что умеет модель

Описание составлено по карточке модели и метаданным Hugging Face

Модель badmuriss/ppe-detection-yolov8s — детектор средств индивидуальной защиты для платформы Vigilante.AI, разработанный для мониторинга строительных площадок и промышленных объектов. Это дообученная на данных COCO модель Ultralytics YOLOv8s-P2 с дополнительной головой для обнаружения мелких объектов; размер входного изображения при обучении — 960 пикселей. Она принимает изображения и видеопотоки, включая RTSP и веб-камеры, и находит защитные каски, сигнальные жилеты, непокрытые каской головы и отсутствие жилета.

Модель предназначена для мониторинга соблюдения требований СИЗ, формирования предупреждений для проверки руководителем и отчётности о соблюдении требований по камерам и объектам. В README приведены метрики на тестовом разделении и данные проверки при уменьшении изображений, однако автор предупреждает, что тестовые данные происходят из тех же источников, что и обучающие, а полнота обнаружения реальных нарушений на видеозаписях с камер наблюдения не измерялась. Модель не обнаруживает перчатки, обувь, очки и другие виды СИЗ; качество может снижаться при сильном перекрытии, низком разрешении и необычных ракурсах, а сигнальную одежду можно спутать с жилетом. Лицензия — AGPL-3.0.

Сценарии применения

  • обнаружение работников без каски на видеопотоке с камеры
  • обнаружение отсутствия сигнального жилета
  • мониторинг соблюдения требований к СИЗ на стройплощадке
  • анализ кадров RTSP и IP-камер для проверки защитных касок
  • создание предупреждений с кадром для проверки руководителем
  • подготовка отчётов о соблюдении требований по камерам и объектам

Ограничения

Полнота обнаружения реальных нарушений на CCTV-видео не измерялась, а тестовое разделение сформировано из источников, близких к обучающим данным. Модель не обнаруживает большинство других видов СИЗ и может хуже работать при сильном перекрытии, низком разрешении или необычных ракурсах.

Для каких профессий подходит3

Разделы каталога профессий, в задачах которых используется эта модель

Все профессии

Карточка модели

README от автора на Hugging Face, как он его опубликовал

Открыть на Hugging Face

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.

Detecta o EPI e a violação em streams RTSP, webcams e imagens. Roda em produção como parte do stack do Vigilante.AI alimentando um painel multi-tenant de compliance.

Architecture: YOLOv8s-P2 (Ultralytics) fine-tuned from COCO weights. A cabeça extra de stride 4 existe porque um capacete em câmera de obra ocupa 10-25 px: em stride 8 uma caixa de 12 px cobre ~1.5x1.5 células e quase não recebe âncoras.

Por que a violação é uma classe, e não uma inferência

A versão anterior deste modelo tinha 2 classes e derivava a violação da ausência de detecção: nenhuma caixa de capacete sobre a cabeça implicava "capacete ausente". Medido em 2.808 frames de 10 obras reais onde todos os trabalhadores usavam EPI (portanto toda acusação é erro por construção), esse esquema errava de 26% a 96% conforme o portão de detecção abria. Cada falha de detecção virava acusação contra alguém em conformidade.

As classes 2 e 3 substituem esse palpite por evidência: uma cabeça descoberta precisa ser vista. Na mesma footage, com os pesos deste card, a acusação por detecção direta errou 0 de 641.

Classes

idnamedescription
0helmetCapacete de segurança
1vestColete de alta visibilidade
2headCabeça SEM capacete, ou seja a violação
3no_vestTorso SEM colete, ou seja a violação

Validation metrics (final epoch)

MetricValue
Precision0.8097
Recall0.7706
mAP@0.50.8064
mAP@0.5:0.950.5555
Epochs trained117

Per-class, held-out test split (1.828 imagens, 6.021 caixas)

classgtPRmAP@0.5mAP@0.5:0.95
helmet43900.9230.9450.9750.650
vest2920.8450.8460.9010.631
head13190.8820.9130.9390.645
no_vest200.8070.6500.6500.377

tem apenas 20 caixas de ground truth no teste. Trate esse número como indicativo, não como medida.

Recall vs escala do objeto

Métrica in-domain é medida em imagens onde a cabeça ocupa ~1% da área. Numa câmera de obra real ela ocupa 0,01% a 0,09%, duas ordens de grandeza a menos. O teste abaixo mantém os rótulos e encolhe os pixels, colocando cada imagem de teste reduzida num canvas 960x720:

escalahelmetvestheadno_vest
1.00.8960.8220.8410.550
0.50.9280.7810.8790.400
0.30.8980.7530.8450.250
0.20.8180.6680.7570.090

sobrevive à redução de 5x. desmorona e por isso não deve dirigir alertas sozinho.

Limitações

  • Recall em domínio real não foi medido. As tabelas acima usam imagens do dataset, encolhidas ou não. Footage pública de obra é 100% em conformidade, então serve para medir alarme falso mas não recall de violação. Fechar isso exige footage rotulada com violações reais em ângulo de CCTV.
  • O split de validação sai das mesmas fontes do treino, então mAP alto aqui não prova desempenho em campo. A versão anterior marcou mAP@0.5 = 0.944 e falhava quase por completo em câmera real.
  • é fraco. Em produção o Vigilante.AI o mantém fora das classes de violação confiáveis e continua inferindo colete por ausência.

Training setup

ParamValue
Base modelyolov8s-p2.yaml
Pretrainedyolov8s.pt (COCO)
Image size960
Batch size12
OptimizerSGD
Initial LR0.01, cosine
Epochs117
scale0.9
mosaic1.0, close_mosaic 20

é a escolha que mais importa. sorteia em uniform(1-s, 1+s), então 0.9 espalha um capacete frontal de 60 px entre 6 e 114 px e cobre a faixa de deploy. O valor anterior, 0.5, parava em 30 px, o dobro do que a câmera entrega.

Dataset

Merged from public PPE datasets on Roboflow Universe, mapped onto the 4-class schema:

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

68.141 pares imagem+rótulo coletados, dos quais a deduplicação por average-hash removeu 31.567 (46%), sobrando 36.574 imagens: train 29.260, val 5.486, test 1.828.

Essas fontes já traziam as classes de violação (, , ) e o merge anterior as descartava. Recuperá-las adicionou ~42.700 caixas de cabeça descoberta sem baixar um único dataset novo.

Distribuição no train: helmet 68.149, head 20.480, vest 4.631, no_vest 282. O desbalanceamento não foi corrigido por oversampling: na versão anterior a classe minoritária teve desempenho melhor que a majoritária, o que indica que o gargalo é resolução, não frequência.

Augmentation

YOLO built-ins apenas: mosaic, HSV jitter, perspective, scale, translate, horizontal flip. Sem Albumentations offline. , e ficaram em zero de propósito: os dois últimos são no-ops silenciosos em rótulos que só têm caixa.

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 4 classes only (helmet, vest, head, no_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).

Как запустить

На своей GPU в ailist. Цена — по текущим предложениям провайдеров

GPU в ailist

Универсальный рантайм · ultralytics

Нельзя запустить

Модели Ultralytics YOLO требуют отдельного рантайма.

Ревизия весов
b97ca19

0 моделей