Étude de cas
- Client
- LDED (Développement interne)
- Secteur
- IA et Vision par ordinateur
- Technologies
- PyTorch
- ONNX Runtime Web
- MobileNetV3-Small
- WebGPU
- WASM
- Coins à l'intérieur de 5 % de la diagonale de l'image
- 93,0 %
- Recouvrement avec la surface du document
- 97,4 %
- Taille du modèle quantisé INT8
- < 5 MB
- Inférence par image via WebGPU
- ~ 60 ms
Quiconque capture un document avec un smartphone s’attend à ce que le cadre s’ajuste immédiatement et proprement. C’est précisément cette détection de bords qui reste aujourd’hui un vide dans le navigateur — et LDED (Lightweight Document Edge Detection) vient le combler.
Contexte
La vision par ordinateur classique détecte les contours des documents par le biais de contrastes et de lignes. Cela fonctionne en laboratoire, mais pas dans la réalité : l’éclairage changeant, les arrière-plans agités et les distorsions en perspective amènent rapidement ces méthodes à leurs limites.
iOS et Android intègrent depuis longtemps des modèles optimisés au niveau du système d’exploitation — mais ceux-ci ne sont généralement pas accessibles depuis une application Web. Et les modèles de Deep Learning disponibles sont trop volumineux ou trop gourmands en calcul pour fonctionner en temps réel dans un navigateur mobile. La solution habituelle : l’image est envoyée à un serveur. Ainsi, c’est précisément le document que l’on souhaite protéger — pièce d’identité, facture, contrat — qui quitte l’appareil.
Solution
LDED est un réseau neuronal suffisamment petit pour fonctionner entièrement côté client. Il ne fournit pas seulement un masque, mais directement les quatre points d’angle ainsi qu’une valeur de confiance :
| Architecture | MobileNetV3-Small comme Backbone, FPN-Lite comme Neck, Heatmap-Head avec Soft-Argmax pour les coordonnées — environ 2,5 M de paramètres |
| Entrée et sortie | 512 × 512 px en entrée, quatre points d’angle (x, y) plus la confiance en sortie |
| Déploiement | Entraîné dans PyTorch 2.x, exporté vers ONNX, exécuté dans le navigateur via ONNX Runtime Web (WebGPU ou WASM) |
| Taille | Environ 10 Mo en FP32, moins de 5 Mo quantisé INT8 |
| Protection des données | Inférence complète sur l’appareil — aucun téléversement d’image, aucun backend, aucune latence due aux allers-retours serveur |
L’entraînement a été effectué selon un curriculum en trois étapes — Backbone figé, Fine-Tuning, puis Quantization-Aware Training — sur environ 8’100 images brutes issues de DocCorner, MIDV-500/2020 et du jeu de données Mendeley-Corner, étendu à environ 24’300 exemples par augmentation.
Résultat
Sur le jeu de validation, LDED dépasse systématiquement les valeurs cibles fixées :
| Métrique | Valeur | Signification |
|---|---|---|
| PCK@5 | 93,0 % | Part des coins situés à au plus 5 % de la diagonale de l’image |
| PCK@10 | 98,2 % | idem avec une tolérance de 10 % |
| IoU | 97,4 % | Recouvrement entre la surface détectée et la surface réelle du document |
| NME | 0,39 % | distance normalisée moyenne des points d’angle |
En ce qui concerne la vitesse, le tableau est plus nuancé :
| Environnement d’exécution | Inférence par image |
|---|---|
| WebGPU, navigateur de bureau | ~ 60 ms |
| WebGPU, iPhone | ~ 237 ms |
| Repli WASM | ~ 500 ms |
Le projet est explicitement marqué comme « en développement », le chemin WASM restant le prochain chantier d’optimisation.
Scénarios d’utilisation typiques :
- scanners de documents basés sur le navigateur,
- saisie de justificatifs et factures sur l’appareil mobile,
- détection de pièces d’identité et de passeports,
- intégration dans des applications Web existantes sans backend supplémentaire.
Pourquoi nous le partageons
LDED est né au sein de notre équipe en tant que travail de projet CAS. Nous avons décidé de rendre le code, la description de l’architecture, le guide d’entraînement et une démo navigateur fonctionnelle accessibles au public — en tant que contribution à la recherche et à l’enseignement, et non comme un produit fini.
Les deux peuvent être essayés directement : la démo navigateur détecte les coins de documents en direct via la caméra ou une image téléversée — le traitement reste sur votre appareil. Le modèle, le code d’entraînement et la documentation sont disponibles dans le dépôt sur GitHub.
Sur le plan du contenu, ce projet s’inscrit dans une posture qui traverse notre travail : les données sensibles doivent être traitées là où elles sont générées. Avec ExeoAI, nous appliquons le même principe au niveau de l’entreprise — l’analyse souveraine et locale de documents sensibles plutôt que le traitement dans une infrastructure tierce. LDED démontre que cette approche fonctionne également à l’autre bout de la chaîne : dès la capture, dans le navigateur, sur l’appareil de l’utilisateur.
Vers le projet
À propos de l'auteur
Ingénierie


