Comparaison de modèles : YOLOv8 vs YOLOv9 pour la détection d’objets
Choisir le bon modèle de détection d'objets est essentiel pour équilibrer la précision, la vitesse et les ressources de calcul. Cette page offre une comparaison technique détaillée entre Ultralytics YOLOv8 et YOLOv9, deux modèles de pointe de la série YOLO. Nous analyserons leurs architectures, leurs performances et leurs cas d'utilisation pour vous aider à déterminer la meilleure solution pour vos besoins, en soulignant pourquoi la polyvalence et l'écosystème mature de YOLOv8 en font le choix préféré pour la majorité des applications.
Ultralytics YOLOv8 : rationalisé et polyvalent
Ultralytics YOLOv8 est un modèle très performant développé par Glenn Jocher, Ayush Chaurasia et Jing Qiu chez Ultralytics et publié le 10 janvier 2023. Il est réputé pour son excellent équilibre entre vitesse et précision, conçu pour être convivial et exceptionnellement polyvalent. Un avantage clé de YOLOv8 est sa prise en charge d’un large éventail de tâches de vision au-delà de la détection d’objets, notamment la segmentation d’instances, l’estimation de pose, la classification d’images et les boîtes englobantes orientées (OBB), le tout dans un framework unique et unifié.
Auteurs : Glenn Jocher, Ayush Chaurasia et Jing Qiu
Organisation : Ultralytics
Date : 2023-01-10
GitHub : https://github.com/ultralytics/ultralytics
Documentation : https://docs.ultralytics.com/models/yolov8/
Architecture et principales fonctionnalités
YOLOv8 s’appuie sur les versions précédentes de YOLO avec d’importantes améliorations architecturales, telles qu’une tête de détection sans ancres et un backbone CSPDarknet modifié doté du module C2f. Ce choix de conception améliore la flexibilité et l’efficacité. Cependant, ses plus grandes forces résident dans sa convivialité et l’écosystème robuste dans lequel il évolue.
- Facilité d'utilisation : YOLOv8 offre une expérience utilisateur simplifiée grâce à une API Python et une CLI simples, soutenues par une documentation exhaustive. Cela le rend accessible aux débutants comme aux experts.
- Écosystème bien maintenu : Il bénéficie d'un développement continu, d'une forte communauté open source, de mises à jour fréquentes et d'une intégration profonde avec Ultralytics HUB pour l'entraînement sans code et les flux de travail MLOps.
- Équilibre des performances : La famille de modèles offre un bon compromis entre la vitesse et la précision, ce qui la rend adaptée à divers scénarios de déploiement réels, des appareils périphériques aux serveurs cloud.
- Efficacité de la mémoire : Il nécessite généralement moins de mémoire CUDA pour l’entraînement et l’inférence par rapport aux architectures plus grandes comme les transformateurs, ce qui permet le développement sur une plus large gamme de matériel.
- Polyvalence : Il s'agit d'une caractéristique remarquable. YOLOv8 excelle dans la gestion de plusieurs tâches de vision (détection, segmentation, classification, pose, OBB) au sein d'un même framework, une capacité souvent absente des modèles plus spécialisés comme YOLOv9.
- Efficacité de l'entraînement : Il propose des processus d'entraînement efficaces et des poids pré-entraînés facilement disponibles sur des ensembles de données tels que COCO, ce qui accélère les cycles de développement.
Points forts et faiblesses
Points forts :
- Prise en charge polyvalente des tâches : Une architecture de modèle unique peut être entraînée pour la détection, la segmentation, la pose et plus encore, simplifiant ainsi les exigences complexes des projets.
- Convivial : Une documentation complète et une API simple réduisent les obstacles à l’entrée pour le développement de solutions avancées de vision artificielle.
- Forte communauté et écosystème : Activement maintenu avec des ressources et des intégrations étendues comme TensorRT et OpenVINO pour un déploiement optimisé.
Faiblesses :
- Précision maximale : Bien que très précis, les plus grands modèles YOLOv9 peuvent atteindre des scores mAP légèrement plus élevés sur les benchmarks COCO pour la détection d’objets pure.
- Gourmand en ressources (grands modèles) : Les modèles YOLOv8 plus grands (L, X) nécessitent des ressources de calcul importantes, bien qu'ils restent efficaces pour leur classe de performance.
YOLOv9 : Amélioration de la précision avec de nouvelles techniques
YOLOv9 a été introduit le 21 février 2024 par Chien-Yao Wang et Hong-Yuan Mark Liao de l’Institute of Information Science, Academia Sinica, Taïwan. Il introduit d’importantes innovations architecturales visant à repousser les limites de la précision dans la détection d’objets en temps réel en s’attaquant à la perte d’informations dans les réseaux neuronaux profonds.
Auteurs : Chien-Yao Wang, Hong-Yuan Mark Liao
Organisation : Institut des sciences de l'information, Academia Sinica, Taïwan
Date : 2024-02-21
Arxiv : https://arxiv.org/abs/2402.13616
GitHub : https://github.com/WongKinYiu/yolov9
Docs : https://docs.ultralytics.com/models/yolov9/
Architecture et innovations clés
Les principales contributions de YOLOv9 sont Programmable Gradient Information (PGI) et Generalized Efficient Layer Aggregation Network (GELAN).
- Informations de gradient programmables (PGI) : Ce concept est conçu pour atténuer le problème du goulot d'étranglement de l'information, où des données importantes sont perdues lorsqu'elles se propagent à travers les couches de réseaux profonds. PGI aide à générer des gradients fiables pour maintenir les informations clés pour des mises à jour précises du modèle.
- Generalized Efficient Layer Aggregation Network (GELAN) : GELAN est une nouvelle architecture qui optimise l'utilisation des paramètres et l'efficacité computationnelle. Il permet à YOLOv9 d'atteindre une plus grande précision avec moins de paramètres par rapport à certains modèles précédents.
Points forts et faiblesses
Points forts :
- Précision améliorée : Établit de nouveaux résultats de pointe sur l’ensemble de données COCO pour les détecteurs d’objets en temps réel, surpassant de nombreux autres modèles en mAP.
- Amélioration de l'efficacité : L'architecture GELAN offre un rapport performance/paramètre élevé.
Faiblesses :
- Polyvalence limitée : YOLOv9 est principalement axé sur la détection d’objets. Il ne prend pas en charge nativement les tâches multiples comme la segmentation, l’estimation de pose et la classification, ce qui fait de YOLOv8 une solution plus flexible et pratique pour les projets d’IA complets.
- Ressources d'entraînement : Comme indiqué dans sa documentation, l'entraînement des modèles YOLOv9 peut nécessiter plus de ressources et de temps que les modèles Ultralytics.
- Architecture plus récente : Étant un modèle plus récent provenant d'un groupe de recherche différent, son écosystème, le soutien de la communauté et les intégrations de tiers sont moins matures que l'Ultralytics YOLOv8 bien établi. Cela peut entraîner une courbe d'apprentissage plus abrupte et moins de solutions de déploiement prêtes à l'emploi.
Performances et analyses comparatives : YOLOv8 vs. YOLOv9
Lorsqu'on compare les performances, il est clair que les deux modèles sont très performants. YOLOv9 repousse les limites en matière de précision de détection pure, avec sa plus grande variante, YOLOv9e, atteignant le mAP le plus élevé. Cependant, Ultralytics YOLOv8 offre un ensemble global plus convaincant. Ses modèles offrent un excellent équilibre entre vitesse et précision, avec des vitesses d'inférence bien documentées sur CPU et GPU, ce qui est essentiel pour les décisions de déploiement dans le monde réel.
Modèle | Taille (pixels) |
mAPval 50-95 |
Vitesse CPU ONNX (ms) |
Vitesse T4 TensorRT10 (ms) |
paramètres (M) |
FLOPs (B) |
---|---|---|---|---|---|---|
YOLOv8n | 640 | 37.3 | 80.4 | 1.47 | 3.2 | 8.7 |
YOLOv8s | 640 | 44.9 | 128.4 | 2.66 | 11.2 | 28.6 |
YOLOv8m | 640 | 50.2 | 234.7 | 5.86 | 25.9 | 78.9 |
YOLOv8l | 640 | 52.9 | 375.2 | 9.06 | 43.7 | 165.2 |
YOLOv8x | 640 | 53.9 | 479.1 | 14.37 | 68.2 | 257.8 |
YOLOv9t | 640 | 38.3 | - | 2.3 | 2.0 | 7.7 |
YOLOv9s | 640 | 46.8 | - | 3.54 | 7.1 | 26.4 |
YOLOv9m | 640 | 51.4 | - | 6.43 | 20.0 | 76.3 |
YOLOv9c | 640 | 53.0 | - | 7.16 | 25.3 | 102.1 |
YOLOv9e | 640 | 55.6 | - | 16.77 | 57.3 | 189.0 |
Le tableau montre que, bien que les modèles YOLOv9 soient efficaces en termes de paramètres, YOLOv8 offre une image plus complète des performances, y compris des benchmarks CPU cruciaux qui démontrent sa préparation pour divers environnements matériels.
Cas d'utilisation idéaux
Le choix entre YOLOv8 et YOLOv9 dépend fortement des priorités du projet.
YOLOv8 est le choix idéal pour :
- Applications multi-tâches : Projets qui nécessitent une combinaison de détection, de segmentation et d'estimation de pose, comme dans la robotique, les soins de santé ou les systèmes de sécurité avancés.
- Développement et déploiement rapides : Les développeurs qui ont besoin de passer rapidement du prototype à la production bénéficieront énormément de la facilité d’utilisation, de la documentation complète et de l’écosystème intégré de YOLOv8.
- Balanced Performance Needs : Applications où un bon équilibre entre la vitesse et la précision est plus important que l’obtention du score mAP le plus élevé, comme dans l’analyse vidéo en temps réel pour le commerce de détail ou la fabrication.
YOLOv9 est mieux adapté pour :
- Recherche et détection spécialisée de haute précision : Scénarios où l’objectif principal est de maximiser la précision de la détection d’objets sur des bancs d’essai comme COCO.
- Inspection industrielle de haute précision : Applications où la détection des plus petits défauts avec la plus grande précision possible est la principale préoccupation.
- Analyse vidéo avancée : Utilisation dans l'infrastructure de ville intelligente où une détection de premier ordre est requise et où le système peut prendre en charge ses dépendances spécifiques.
Conclusion : Quel modèle devriez-vous choisir ?
Pour la grande majorité des développeurs et des applications, Ultralytics YOLOv8 est le choix supérieur. Sa polyvalence inégalée, sa facilité d'utilisation et son écosystème mature et bien entretenu offrent un avantage significatif par rapport à YOLOv9. La capacité de gérer plusieurs tâches dans un seul framework simplifie non seulement le développement, mais réduit également la complexité et les coûts de production. Bien que YOLOv9 offre des gains de précision impressionnants dans la détection d'objets, sa focalisation étroite et son écosystème moins développé en font un outil plus spécialisé.
YOLOv8 représente une solution holistique qui permet aux développeurs de construire des systèmes d'IA robustes et multifacettes de manière efficace. Pour ceux qui recherchent un modèle fiable, performant et flexible, YOLOv8 est le grand gagnant. Si vous recherchez un modèle encore plus établi, pensez à YOLOv5, ou pour la dernière technologie de pointe d'Ultralytics, consultez YOLO11.