Ultralytics YOLOv8 YOLOv10: l'évolution de la détection en temps réel
Le domaine de la vision par ordinateur évolue à un rythme effréné, avec de nouvelles architectures qui redéfinissent constamment l'état de l'art. Deux étapes importantes dans cette chronologie sont Ultralytics YOLOv8 et YOLOv10. Bien que ces deux modèles soient issus de la lignée légendaire YOLO You Only Look Once), ils représentent des philosophies de conception et des intégrations d'écosystèmes différentes.
Ce guide fournit une comparaison technique détaillée afin d'aider les chercheurs et les développeurs à choisir l'outil adapté à leurs besoins spécifiques, en tenant compte de facteurs tels que la maturité de l'écosystème, la polyvalence des tâches et l'innovation architecturale.
Résumé : Quel modèle choisir ?
Avant d'entrer dans les détails de l'architecture, voici une distinction générale :
- Ultralytics YOLOv8 est le « couteau suisse » robuste de la vision par ordinateur. Il est le choix privilégié pour les déploiements en entreprise en raison de son vaste écosystème, de sa prise en charge de multiples tâches (détection, segmentation, pose, OBB, classification) et de son intégration transparente avec la Ultralytics .
- YOLOv10 est un modèle de détection spécialisé qui a introduit l'entraînement NMS dans le monde. Il est excellent pour la recherche et les scénarios spécifiques de détection uniquement, où l'élimination du post-traitement est l'objectif principal.
La dernière norme : YOLO26
Bien que la comparaison entre YOLOv8 YOLOv10 utile, les utilisateurs à la recherche des meilleures performances absolues devraient se tourner vers YOLO26. Lancé en janvier 2026, YOLO26 combine la conception NMS mise au point par YOLOv10 l'écosystème robuste et la polyvalence multitâche Ultralytics. Il offre CPU jusqu'à 43 % plus rapide et une détection améliorée des petits objets.
Ultralytics YOLOv8 : La norme de l’écosystème
Sorti début 2023, YOLOv8 est YOLOv8 devenu la norme industrielle en matière de vision par ordinateur pratique. Son principal atout réside non seulement dans ses performances brutes, mais aussi dans sa facilité d'utilisation et sa polyvalence.
Principales caractéristiques
- Apprentissage multitâche : contrairement à de nombreux modèles spécialisés, YOLOv8 prend en charge YOLOv8 la détection d'objets, la segmentation d'instances, l'estimation de pose, les boîtes englobantes orientées (OBB) et la classification d'images.
- Détection sans ancrage : elle utilise une tête divisée sans ancrage, ce qui réduit le nombre de prédictions de boîtes et accélère la suppression non maximale (NMS).
- Ultralytics : entièrement intégré avec des outils pour l'annotation des données, l'entraînement des modèles et le déploiement.
Détails du modèle
- Auteurs : Glenn Jocher, Ayush Chaurasia et Jing Qiu
- Organisation :Ultralytics
- Date : 2023-01-10
- Docs :Documentation YOLOv8
YOLOv10: le pionnier NMS
Développé par des chercheurs de l'université Tsinghua, YOLOv10 fortement YOLOv10 sur l'efficacité architecturale et la suppression des goulots d'étranglement liés au post-traitement.
Innovations clés
- Formation de bout en bout : YOLOv10 des attributions doubles cohérentes pour éliminer le besoin de suppression non maximale (NMS) pendant l'inférence. Cela réduit la variabilité de la latence dans les scènes encombrées.
- Conception holistique efficace : l'architecture comprend des têtes de classification légères et un sous-échantillonnage découplé spatialement et par canal afin de réduire le coût de calcul (FLOP).
- Objectif : il est principalement conçu pour les tâches de détection d'objets.
Détails du modèle
- Auteurs : Ao Wang, Hui Chen, Lihao Liu, et al.
- Organisation : Université de Tsinghua
- Date : 2024-05-23
- Arxiv :2405.14458
- Docs :Documentation YOLOv10
Comparaison technique : indicateurs et performances
Le tableau suivant compare les performances des deux modèles sur l'ensemble COCO .
| 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 |
| YOLOv10n | 640 | 39.5 | - | 1.56 | 2.3 | 6.7 |
| YOLOv10s | 640 | 46.7 | - | 2.66 | 7.2 | 21.6 |
| YOLOv10m | 640 | 51.3 | - | 5.48 | 15.4 | 59.1 |
| YOLOv10b | 640 | 52.7 | - | 6.54 | 24.4 | 92.0 |
| YOLOv10l | 640 | 53.3 | - | 8.33 | 29.5 | 120.3 |
| YOLOv10x | 640 | 54.4 | - | 12.2 | 56.9 | 160.4 |
Analyse des données
- Précision vs efficacité : YOLOv10 atteint YOLOv10 un mAPval plus élevé avec moins de paramètres et de FLOP que YOLOv8. Cette efficacité est due à ses blocs architecturaux optimisés.
- Vitesse d'inférence : alors que YOLOv10 NMS, YOLOv8 (en particulier la variante Nano) restent incroyablement compétitifs en termes de débit brut sur du matériel standard.
- Mémoire d'entraînement : Ultralytics YOLOv8 hautement optimisé pour l'efficacité de l'entraînement, nécessitant souvent moins GPU que les implémentations académiques, ce qui permet des tailles de lots plus importantes sur le matériel grand public.
Architecture et philosophie de conception
La différence fondamentale réside dans la manière dont ces modèles traitent les prédictions finales.
Architecture YOLOv8
YOLOv8 un assignateur aligné sur les tâches. Il prédit séparément les boîtes englobantes et les scores de classe, mais les aligne pendant l'entraînement. Il s'appuie essentiellement sur NMS pour filtrer les boîtes en double. Cela rend le modèle robuste et polyvalent, ce qui lui permet de s'adapter facilement à la segmentation et à l'estimation de la pose.
Architecture YOLOv10
YOLOv10 les attributions de double étiquette. Pendant l'entraînement, il utilise une tête un-à-plusieurs (comme YOLOv8) pour des signaux de supervision riches et une tête un-à-un pour l'inférence finale. Cette structure permet au modèle d'apprendre à sélectionner la meilleure boîte pour un objet, rendant NMS .
Implications du déploiement
La suppression NMS considérablement le pipeline de déploiement. Lors de l'exportation de modèles vers des formats tels que TensorRT ou OpenVINO, les ingénieurs n'ont plus besoin de mettre en œuvre NMS complexes, ce qui réduit les frais généraux d'ingénierie.
Facilité d'utilisation et écosystème
C'est là que la distinction devient cruciale pour les développeurs.
Ultralytics YOLOv8 est soutenu par une communauté open source massive et active. Il bénéficie des avantages suivants :
- Mises à jour fréquentes : correctifs réguliers, nouvelles fonctionnalités et corrections de compatibilité.
- Ultralytics : formation cloud et gestion des ensembles de données en toute transparence.
- Documentation : guides complets couvrant tous les aspects, du réglage des hyperparamètres au déploiement sur des appareils périphériques.
YOLOv10, bien que disponible via le Ultralytics , est avant tout une contribution académique. Il peut ne pas bénéficier de la même fréquence de maintenance ou d'extensions de fonctionnalités (comme le suivi ou la prise en charge OBB) que Ultralytics de base.
Comparaison de code
Les deux modèles peuvent être exécutés à l'aide de Ultralytics unifiée, ce qui démontre la facilité d'utilisation offerte par l'écosystème.
from ultralytics import YOLO
# Load a pretrained YOLOv8 model (Official Ultralytics)
model_v8 = YOLO("yolov8n.pt")
# Load a pretrained YOLOv10 model (Community supported)
model_v10 = YOLO("yolov10n.pt")
# Train YOLOv8 on a custom dataset
model_v8.train(data="coco8.yaml", epochs=50, imgsz=640)
# Run inference with YOLOv10 on an image
results = model_v10("https://ultralytics.com/images/bus.jpg")
Applications concrètes
Quand utiliser YOLOv8
- Robotique complexe : si votre robot doit naviguer (détection) et manipuler des objets (pose/segmentation), les capacités multitâches YOLOv8 sont indispensables.
- Produits commerciaux : pour les produits nécessitant une maintenance à long terme, la stabilité de Ultralytics garantit que le déploiement de votre modèle reste viable pendant des années.
- Imagerie satellite : les modèles OBB spécialisés dans YOLOv8 idéaux pour détecter des objets pivotés tels que des navires ou des véhicules dans des vues aériennes.
Quand utiliser YOLOv10
- Négociation à haute fréquence de données visuelles : dans les scénarios où chaque microseconde de variance de latence compte, l'élimination de NMS permet d'obtenir un temps d'inférence déterministe.
- Appareils intégrés avec CPU limité : pour les appareils où NMS sur le CPU un goulot d'étranglement, la conception de bout en bout YOLOv10 soulage le processeur.
Conclusion
Les deux architectures sont d'excellents choix. YOLOv8 reste le champion polyvalent pour la plupart des développeurs, offrant une voie sûre, robuste et riche en fonctionnalités vers la production. YOLOv10 offre un aperçu fascinant de l'avenir de la détection NMS.
Cependant, le domaine a déjà évolué. Pour les développeurs qui lancent aujourd'hui de nouveaux projets, YOLO26 est le choix recommandé. Il adopte les avantages NMS de YOLOv10 les affine grâce à l'optimiseur MuSGD et à des fonctions de perte améliorées (ProgLoss), offrant ainsi le meilleur des deux mondes : l'architecture de pointe issue de la recherche universitaire, soutenue par l'assistance de niveau industriel Ultralytics.
Lectures complémentaires
- Documentation YOLO26
- Explication des métriques de performance YOLO
- Guide de la détection d’objets
- Démarrage rapide de la plateforme Ultralytics