IA & données
Reconnaissance de panneaux routiers
Un réseau convolutif qui reconnaît 43 classes de panneaux routiers allemands, avec 98,45 % d’exactitude sur le jeu de test officiel, proche du niveau humain.
- Terminé
- Projet individuel
- exactitude sur le test officiel
- 98,45 %
- référence humaine sur ce benchmark
- 98,84 %
- classes de panneaux
- 43
- grâce à l’augmentation
- +1,15 pt
01Le point de départ
Contexte & mission
Le problème
Une brique de perception pour l’aide à la conduite doit distinguer des panneaux qui se ressemblent beaucoup. Et un score n’a de valeur que s’il est mesuré sur des données vraiment inédites.
La mission
Entraîner un classifieur sur le German Traffic Sign Recognition Benchmark (GTSRB) et mesurer honnêtement ses performances.
Mon rôle
Projet mené seul, de la préparation des données à l’analyse des résultats.
02Réalisation
Ce que j’ai fait
Prétraitement
Égalisation d’histogramme sur le canal de luminosité HSV, images redimensionnées en 48×48.
Modèle
CNN de type VGG d’environ 1,36 M de paramètres, entraîné avec Keras et TensorFlow.
Augmentation adaptée au domaine
Rotations, décalages, zoom et cisaillement, mais aucun retournement horizontal : il inverserait les panneaux « gauche » et « droite ».
Évaluation honnête
La précision de validation (~99,8 %) surestime la réalité : les images GTSRB viennent de vidéos, donc un découpage aléatoire laisse passer des quasi-doublons. Le chiffre retenu est celui du test officiel.
03Conception
Architecture
Un pipeline en notebook : préparation des images, augmentation à la volée pendant l’entraînement, CNN de type VGG, puis évaluation sur les 12 630 images du test officiel, gardées à l’écart de tout le reste.
- GTSRB43 classes
- PrétraitementHSV · 48×48
- AugmentationSans retournement
- CNN type VGG~1,36 M paramètres
- Test officiel12 630 images
04Impact
Résultats
- 98,45 % sur les 12 630 images du test officiel, proche de la référence humaine (98,84 %).
- L’augmentation de données fait passer l’exactitude de 97,30 % à 98,45 %.
- La fuite de données du découpage aléatoire est identifiée et documentée.
05Bilan
Ce que j’en retiens
Ce que ce projet démontreQue je ne m’arrête pas au meilleur chiffre : je choisis des augmentations qui respectent le domaine et je repère la fuite de données qui gonflerait les résultats.
06Technologies
Stack complète
- Python
- TensorFlow
- Keras
- CNN
- scikit-image
- scikit-learn
- NumPy
- pandas
- Matplotlib
- Jupyter