YOLO26 vs YOLOv9#
Le domaine de la vision par ordinateur évolue rapidement, avec de nouvelles architectures qui repoussent sans cesse les limites de la vitesse et de la précision. Dans cette comparaison technique, nous examinons les différences entre YOLO26 et YOLOv9, deux modèles très influents dans le domaine de la détection d’objets en temps réel. Bien que les deux modèles présentent des innovations architecturales distinctes, comprendre leurs compromis en matière de performances, leurs capacités de déploiement et leurs besoins matériels est essentiel pour choisir l’outil adapté à ton prochain projet de vision.
YOLO26 : la puissance optimisée pour la périphérie#
Sorti au début de 2026, Ultralytics YOLO26 marque un saut générationnel en matière d’efficacité de déploiement et de stabilité d’entraînement des modèles. Conçu comme un framework nativement de bout en bout, il s’attaque directement aux goulots d’étranglement du déploiement qui ont longtemps pénalisé les applications d’IA en périphérie.
Détails du modèle :
- Auteurs : Glenn Jocher et Jing Qiu
- Organisation : Ultralytics
- Date : 2026-01-14
- GitHub : Dépôt Ultralytics
- Documentation : Documentation YOLO26
Architecture et innovations#
YOLO26 repense en profondeur le pipeline de post-traitement en introduisant une architecture de bout en bout sans NMS. Lorsqu’il est exécuté avec sa tête un-à-un optionnelle (nms=False), le modèle ignore la suppression non maximale (NMS) et réduit considérablement la variabilité de la latence. Le déploiement sur les plateformes mobiles et de périphérie s’en trouve nettement simplifié, notamment lors de l’exportation vers des frameworks comme ONNX et Apple CoreML.
De plus, la suppression de la fonction de perte Distribution Focal Loss (DFL) simplifie le processus d’exportation et améliore la compatibilité avec les microcontrôleurs à faible consommation. Pour améliorer la stabilité de l’entraînement, YOLO26 intègre le nouvel optimiseur MuSGD, une approche hybride combinant la descente de gradient stochastique (SGD) et Muon, inspirée des innovations dans l’entraînement des grands modèles de langage. Il en résulte une convergence plus rapide et une extraction des caractéristiques plus robuste sur les jeux de données difficiles.
Grâce aux simplifications architecturales et à la suppression de DFL, YOLO26 offre une inférence CPU jusqu’à 43 % plus rapide, ce qui en fait le choix idéal pour les appareils de périphérie aux ressources limitées, comme le Raspberry Pi ou le NVIDIA Jetson Nano.
Pour détecter des objets particulièrement difficiles à repérer dans des scènes comme l’imagerie aérienne par drone, YOLO26 utilise les fonctions de perte ProgLoss + STAL mises à jour. Celles-ci améliorent sensiblement le rappel pour la reconnaissance des petits objets. Le modèle propose en outre des améliorations propres à chaque tâche, dont des prototypes multi-échelles pour la segmentation d’instances, l’estimation résiduelle de log-vraisemblance (RLE) pour l’estimation de pose et une fonction de perte angulaire spécialisée pour détecter les boîtes englobantes orientées (OBB).
YOLOv9 : informations de gradient programmables#
Présenté au début de 2024, YOLOv9 a introduit des avancées théoriques sur la gestion du flux de gradients par les réseaux neuronaux pendant l’entraînement, en mettant l’accent sur l’efficacité des paramètres et la préservation des caractéristiques profondes.
Détails du modèle :
- Auteurs : Chien-Yao Wang et Hong-Yuan Mark Liao
- Organisation : Institute of Information Science, Academia Sinica, Taïwan
- Date : 2024-02-21
- ArXiv : Article YOLOv9
- GitHub : Dépôt YOLOv9
- Documentation : Documentation YOLOv9
Architecture et points forts#
YOLOv9 repose sur le concept d’informations de gradient programmables (PGI) et sur le réseau généralisé d’agrégation efficace des couches (GELAN). Ces concepts s’attaquent au problème de goulot d’étranglement de l’information, souvent observé dans les réseaux neuronaux profonds. En préservant les informations essentielles tout au long de la propagation avant, GELAN garantit la fiabilité des gradients utilisés pour mettre à jour les poids. Cette architecture offre une grande précision et fait de YOLOv9 un excellent candidat pour la recherche universitaire sur la théorie des réseaux neuronaux et l’optimisation des chemins de gradient avec le framework PyTorch.
Limites#
Malgré son excellente efficacité en nombre de paramètres, YOLOv9 dépend fortement de la suppression non maximale traditionnelle (NMS) pour le post-traitement des boîtes englobantes, ce qui peut créer des goulots d’étranglement de calcul lors de l’inférence sur des appareils de périphérie. De plus, le dépôt officiel porte principalement sur la détection d’objets ; son adaptation à des tâches spécialisées comme le suivi ou l’estimation de pose nécessite donc beaucoup de travail d’ingénierie personnalisé.
Comparaison des performances#
Pour évaluer ces modèles en vue d’un déploiement en conditions réelles, il est essentiel de trouver un équilibre entre la précision (mAP), la vitesse d’inférence et l’utilisation de la mémoire. Les modèles Ultralytics sont réputés pour leurs faibles besoins en mémoire, pendant l’entraînement comme pendant l’inférence, et nécessitent bien moins de mémoire CUDA que les solutions basées sur des Transformer, comme RT-DETR.
Voici une comparaison directe des performances de YOLO26 et YOLOv9 sur le jeu de données COCO. Les meilleures valeurs de chaque colonne sont indiquées en gras.
| Modèle | taille (pixels) | mAPval 50-95 | Vitesse CPU ONNX (ms) | Vitesse T4 TensorRT10 (ms) | paramètres (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLO26n | 640 | 40.9 | 38.9 | 1.7 | 2.4 | 5.5 |
| YOLO26s | 640 | 48.6 | 87.2 | 2.5 | 9.5 | 20.9 |
| YOLO26m | 640 | 53.1 | 220.0 | 4.7 | 20.4 | 68.4 |
| YOLO26l | 640 | 55.0 | 286.2 | 6.2 | 24.8 | 86.8 |
| YOLO26x | 640 | 57.5 | 525.8 | 11.8 | 55.7 | 194.4 |
| YOLOv9t | 640 | 38.3 | - | 2.3 | 2.0 | 7.7 |
| YOLOv9s | 640 | 46.8 | - | 3.54 | 7.2 | 26.7 |
| YOLOv9m | 640 | 51.4 | - | 6.43 | 20.1 | 76.8 |
| YOLOv9c | 640 | 53.0 | - | 7.16 | 25.5 | 102.8 |
| YOLOv9e | 640 | 55.6 | - | 16.77 | 58.1 | 192.5 |
Remarque : les vitesses CPU de YOLOv9 ne sont pas indiquées, car elles varient considérablement selon la configuration de NMS et sont généralement inférieures à celles de l’implémentation native de YOLO26 sans NMS.
Cas d’utilisation et recommandations#
Le choix entre YOLO26 et YOLOv9 dépend des besoins spécifiques de ton projet, des contraintes de déploiement et de tes préférences en matière d’écosystème.
Quand choisir YOLO26#
YOLO26 est un excellent choix pour :
- Déploiement en périphérie sans NMS : les applications qui exigent des inférences à faible latence et constantes, sans la complexité du post-traitement par suppression non maximale.
- Environnements exclusivement CPU : les appareils dépourvus d’accélération GPU dédiée, où l’inférence CPU jusqu’à 43 % plus rapide de YOLO26 constitue un avantage décisif.
- Détection de petits objets : les situations difficiles, comme l’imagerie aérienne par drone ou l’analyse de capteurs IoT, où ProgLoss et STAL améliorent considérablement la précision pour les objets minuscules.
Quand choisir YOLOv9#
YOLOv9 est recommandé pour :
- Recherche sur les goulots d’étranglement de l’information : les projets universitaires qui étudient les architectures à informations de gradient programmables (PGI) et à réseau généralisé d’agrégation efficace des couches (GELAN).
- Études sur l’optimisation du flux de gradients : les recherches axées sur la compréhension et l’atténuation des pertes d’information dans les couches profondes des réseaux pendant l’entraînement.
- Évaluation comparative de la détection de haute précision : les scénarios où les solides performances de YOLOv9 sur COCO servent de référence pour comparer les architectures.
L’avantage Ultralytics#
Choisir un modèle ne consiste pas seulement à lire un résultat d’évaluation de précision ; c’est l’écosystème logiciel qui l’entoure qui détermine la rapidité avec laquelle tu peux passer de la collecte des données à la production.
Facilité d’utilisation et écosystème#
L’API Python d’Ultralytics offre une expérience fluide, de débutant à expert. Au lieu de cloner des dépôts complexes ou de configurer manuellement des scripts d’entraînement distribué, les développeurs peuvent installer le package avec pip et commencer immédiatement l’entraînement. L’écosystème Ultralytics, activement maintenu, garantit des mises à jour fréquentes, des intégrations automatisées avec des plateformes d’apprentissage automatique comme Weights & Biases et une documentation complète.
Polyvalence pour les tâches de vision#
Alors que YOLOv9 est principalement un moteur de détection, YOLO26 est un outil de vision polyvalent. Grâce à une syntaxe unifiée, tu peux facilement passer de la détection d’objets à la segmentation d’image au pixel près ou à la classification d’images entières. Cette polyvalence réduit la dette technique liée à la maintenance de bases de code distinctes pour différentes fonctionnalités de vision par ordinateur.
Entraînement et déploiement efficaces#
L’efficacité de l’entraînement est au cœur de la philosophie Ultralytics. YOLO26 utilise des poids préentraînés facilement accessibles et consomme nettement moins de mémoire que les lourds Transformer de vision. Une fois l’entraînement terminé, les pipelines d’exportation intégrés permettent de convertir en un clic les modèles vers des formats optimisés comme TensorRT ou LiteRT, facilitant ainsi le passage en production.
Exemple de code : démarrer avec YOLO26#
La mise en œuvre de YOLO26 est remarquablement simple. L’extrait Python suivant montre comment charger un modèle préentraîné, l’entraîner sur des données personnalisées et effectuer des inférences avec l’API Ultralytics.
from ultralytics import YOLO
# Charger le modèle nano YOLO26 le plus récent, à la pointe de la technologie
model = YOLO("yolo26n.pt")
# Entraîner le modèle sur le jeu de données COCO8 (optimizer='auto' sélectionne MuSGD pour les entraînements plus longs)
results = model.train(
data="coco8.yaml",
epochs=100,
imgsz=640,
device=0, # Utilise le GPU 0, ou 'cpu' pour l’entraînement sur CPU
)
# Effectuer une inférence sans NMS sur une image d’exemple
predictions = model("https://ultralytics.com/images/bus.jpg", nms=False)
# Afficher les boîtes englobantes et les niveaux de confiance
predictions[0].show()En tirant parti de la vitesse, de l’architecture simplifiée et de l’écosystème robuste de YOLO26, les équipes peuvent commercialiser des applications avancées d’IA pour la vision plus rapidement et avec moins d’obstacles techniques que jamais.