Projet · Computer vision · YOLO11
Un système de vision par ordinateur qui vérifie le port du casque et du gilet sur images et flux vidéo, et déclenche une alerte de non-conformité en temps réel. Entraîné sur le dataset SH17, du nettoyage des données jusqu'au tableau de bord de supervision.
Le problème
Sur un grand chantier, le contrôle du port des équipements de protection individuelle reste un contrôle humain ponctuel : visuel, le matin, jamais exhaustif. Or l'EPI le plus critique (le casque) protège du risque le plus grave, le traumatisme crânien.
Ce projet transforme les caméras déjà présentes sur site en supervision continue : détection des équipements sur chaque image, décision de conformité, et alerte immédiate quand une tête nue est repérée.
La règle de conformité. Une tête détectée qui n'est pas coiffée d'un casque déclenche l'alerte. L'association casque/tête est géométrique (recouvrement spatial des boîtes, fonction helmet_covers_head) : la décision n'est pas une sortie brute du modèle, ce qui la rend explicable. Le gilet est affiché comme indice mais ne déclenche pas d'alerte ferme tant que son rappel reste insuffisant. En sécurité, on n'automatise pas une décision qu'on ne peut pas tenir.
La méthode
Chaque étape est justifiée et rejouable (graines fixées, notebook de bout en bout).
Réorganisation du dataset SH17 en train/val/test, statistiques par classe, analyse des biais : les classes EPI critiques sont rares (652 casques en entraînement) et les petits objets dominent.
Détection des images floues (variance du Laplacien) et des annotations invalides (boîtes hors image, doublons, dimensions nulles), puis pré-traitement et augmentation justifiés par l'exploration.
YOLO11 retenu pour le compromis vitesse/précision, comparé à RT-DETR. Le fine-tuning de yolo11l l'emporte pour son rappel supérieur sur les classes EPI rares, le critère qui compte en sécurité.
Recherche d'hyperparamètres concentrée sur ce qui rapporte : un taux d'apprentissage abaissé préserve le transfer learning et améliore le rappel du casque.
Métriques par classe sur jeu de test, mesure de l'empreinte énergétique (GFLOPs, puissance GPU) et de la robustesse en conditions dégradées : faible luminosité, occlusions.
Image annotée avec bandeau de conformité, vidéo traitée image par image, journalisation de chaque analyse pour alimenter le tableau de bord.
Résultats
Modèle retenu : yolo11l fine-tuné. mAP@50-95 global de 0.441 sur le jeu de test. La performance par classe dicte directement la logique d'alerte.
| Classe | mAP@50-95 | Rôle dans l'alerte | |
|---|---|---|---|
| head | 0.730 | Base de la décision | |
| helmet | 0.499 | Alerte ferme (seuil bas) | |
| safety-vest | 0.307 | Indicatif seulement |
Axe A · Architectures
yolo11l domine RT-DETR en mAP tout en restant plus léger et plus rapide. L'extension mesure aussi l'empreinte énergétique réelle (nvidia-smi) et la robustesse : −0.133 de mAP en conditions dégradées, une limite documentée plutôt que cachée.
Axe B · Résultat contre-intuitif
Restreindre l'entraînement aux 3 classes de conformité dégrade leurs performances (−0.037 en moyenne, −0.087 sur le casque) : les 17 classes partagent des représentations utiles. La spécialisation naïve n'est pas un raccourci.
Parti pris · Sécurité d'abord
Une alerte manquée coûte plus cher qu'une fausse alerte : seuil de confiance bas sur le casque, rappel priorisé sur les classes rares, et aucune décision automatique fondée sur une classe dont le rappel est insuffisant.
Démonstrateur
L'application Streamlit charge une image ou une vidéo, affiche les détections et l'indicateur global de conformité, et laisse l'utilisateur régler le seuil de confiance. Chaque traitement est journalisé et alimente un tableau de bord de conformité qui objective la tendance dans le temps.
Pas de géolocalisation ni d'identification individuelle : la zone est déclarée par l'utilisateur et l'alerte porte sur une situation, pas sur une personne.
Au-delà du modèle
Un modèle ne sert à rien sans plan de déploiement : cas d'usage priorisés, freins d'adoption identifiés (acceptabilité, RGPD, infrastructure chantier) et feuille de route jalonnée d'indicateurs de succès.
Une seule zone couverte, alerte casque uniquement, validation manuelle systématique des alertes par le responsable sécurité pour mesurer les faux positifs en conditions réelles.
Extension à toutes les zones à risque puis à un second chantier de profil différent, réintégration du gilet en indice affiché, mise en service du tableau de bord de suivi.
Ré-entraînement avec les données terrain collectées, étude du tracking multi-frame pour une alerte par individu plutôt que par image, et piste d'un modèle allégé pour le déploiement edge.
Stack
Pipeline complet dans un notebook reproductible (seed fixée), script d'entraînement autonome, rapport technique et stratégie d'intégration documentée. Tout est sur le dépôt.