IA

Photo → IA : comment IA détecte 17 risques dans une photo de 3 Mo

Vision multimodale, prompt structuré, ancrage INRS, retour structuré JSON. Démontage technique d'un pipeline d'IA QSE qui a analysé 847 photos terrain en production avec 91 % de précision sur la classification du risque principal — et ce qu'il a fallu éviter pour ne pas tomber dans le piège du « tout détecter ».

Équipe NOTEX
Méthodes & terrain
28 mars 2026 · 6 min de lecture

Quand on dit à un préventeur que l'IA va analyser les photos de signalement, il pense aussitôt à deux choses : (1) ChatGPT qui invente, (2) une appli qui détecte « il y a un humain dans la photo » et appelle ça de l'analyse de risque. Les deux peurs sont légitimes. Voici comment on les a contournées.

Le problème qu'on essayait de résoudre

Un opérateur prend une photo. Il la balance dans l'appli. Idéalement, on voudrait :

Tout ça en moins de 3 secondes, sur une connexion 4G en zone industrielle, avec une photo de 3 Mo prise par un téléphone d'opérateur (qualité variable, cadrage approximatif, parfois floue).

Le pipeline en 4 étapes

1. Compression intelligente côté client

Une photo iPhone 14 fait ~3 Mo en JPG. Pour l'IA, on n'a pas besoin de cette résolution. On compresse en local sur le téléphone à 1024×1024 max, qualité 0.7, ce qui ramène la photo à ~280 Ko. Upload 4G : 0,8 s.

L'astuce technique : conserver les métadonnées EXIF (date, heure, GPS si autorisé, orientation). Ces infos sont utiles pour l'analyse contextuelle (« photo prise à 22h en zone extérieure → éclairage probablement insuffisant »).

2. Pré-traitement serveur

Sur le serveur, on fait 2 choses avant d'appeler l'IA :

3. Appel à l'IA (vision multimodale)

On utilise le modèle IA pour ses capacités de raisonnement structuré. Le prompt est la pièce maîtresse — voici l'architecture (simplifiée) :

Tu es analyste QSE expérimenté en milieu industriel français.
Référentiels : Code du Travail, INRS ED 840, normes EN.

CONTEXTE :
- Site : {nom_site}
- UT : {unité_de_travail}
- OCR détecté : "{ocr_text}"
- Métadonnées EXIF : {date, heure, géoloc}

PHOTO : [image attachée]

ANALYSE EN 5 ÉTAPES :
1. Décris ce que tu vois (factuel, sans interpréter)
2. Liste les éléments dangereux observables
3. Classifie : RISQUE / ANOMALIE / NON-CONFORMITÉ / SITUATION NORMALE
4. Cote gravité (1-4) et probabilité (1-4) selon grille INRS
5. Référence INRS la plus pertinente (ex : ED 840, ED 6204…)

RÈGLES :
- Si tu hésites, indique-le explicitement (confidence < 70%)
- Ne JAMAIS halluciner de référence INRS — vérifie ton stock
- Si la photo est trop floue ou hors-sujet, dis-le clairement

La sortie est forcée en JSON via le mode structured output, ce qui élimine 100 % des bugs de parsing.

4. Validation et garde-fous

L'IA n'a jamais le dernier mot. Trois garde-fous :

Les chiffres en production

Sur 847 photos analysées entre janvier et mars 2026 (4 sites pilotes) :

Les 3 erreurs qu'on a évitées

Erreur 1 : croire que l'IA peut TOUT détecter

On a longtemps voulu détecter les 17 catégories de risques en parallèle (chute hauteur, électrique, chimique, etc.). Résultat : précision médiocre partout. La meilleure approche, c'est de laisser l'IA décider et de la laisser dire « je ne sais pas ». Une analyse incomplète mais correcte vaut mieux qu'une analyse complète mais inventée.

Erreur 2 : sur-prompter

Notre premier prompt faisait 4 000 tokens de règles et exemples. La précision plafonnait à 78 %. On a réduit à 800 tokens en gardant les règles structurelles + 3 exemples bien choisis. La précision est montée à 91 %. Le sur-promptage tue la performance.

Erreur 3 : ignorer le coût

Le contexte INRS commun à toutes les requêtes est mis en cache via le prompt caching de l'API IA, ce qui réduit fortement le volume de tokens facturés par rapport à un usage naïf.

Pourquoi cette IA et pas un autre modèle

On a testé GPT-4o, Gemini 2 Flash et le modèle IA sur le même benchmark interne (200 photos labelisées par 3 IPRP). Les chiffres :

IA gagne sur la fiabilité du raisonnement structuré, en particulier sur la cotation gravité × probabilité où les autres modèles ont tendance à sur-coter (ils voient un EPI manquant, ils mettent gravité 4). IA prend en compte le contexte (« opérateur en zone EPI, machine arrêtée, environnement sec ») et cote plus justement.

Ce que ça change pour le préventeur

Concrètement, sur un site de 80 personnes qui génère 100 photos signalements par mois :

Soit 26 heures de gain mensuel, qu'il peut consacrer à ce que l'IA ne fait pas : aller sur le terrain, animer les CSE, construire le PAPRIPACT, accompagner les opérateurs.

L'IA n'est pas là pour remplacer le QSE. Elle est là pour qu'il puisse faire son vrai métier.