Passer au contenu

YOLOv8 vs. YOLOX : une comparaison technique complète

Dans le paysage en évolution rapide de la vision par ordinateur, le choix du bon modèle de détection d'objets est essentiel pour la réussite d'un projet. Cette comparaison explore les nuances techniques entre Ultralytics YOLOv8 et YOLOX, deux importantes architectures sans ancrage. Nous analysons leurs différences structurelles, leurs performances et leur adéquation aux applications réelles afin d'aider les développeurs à prendre des décisions éclairées.

Ultralytics YOLOv8: Le standard de pointe

Présenté par Ultralytics en 2023, YOLOv8 représente une avancée significative dans la série YOLO . Il a été conçu pour allier de hautes performances à une expérience utilisateur accessible, en prenant en charge un large éventail de tâches de vision par ordinateur, au-delà de la simple détection.

Architecture et caractéristiques principales

YOLOv8 utilise un mécanisme de détection sans ancrage, qui simplifie le processus de formation en éliminant la nécessité de calculer manuellement les boîtes d'ancrage. Son architecture comprend le module C2f, qui remplace le module C3 des versions précédentes, afin d'améliorer le flux de gradient et l'extraction des caractéristiques.

L'une des principales caractéristiques de YOLOv8 est sa polyvalence. Contrairement à de nombreux concurrents qui se limitent aux boîtes de délimitation, YOLOv8 prend en charge nativement :

Utilisation et écosystème

L'un des principaux avantages de YOLOv8 est son intégration dans l'écosystème Ultralytics . Les développeurs peuvent accéder au modèle via une APIPython simplifiée ou une puissante interface de ligne de commande (CLI).

from ultralytics import YOLO

# Load a pretrained YOLOv8 model
model = YOLO("yolov8n.pt")

# Run inference on an image
results = model("path/to/image.jpg")

# View results
for result in results:
    result.show()

Flux de travail intégrés

YOLOv8 s'intègre parfaitement à Ultralytics HUB, ce qui permet aux équipes de visualiser des ensembles de données, d'entraîner des modèles dans le nuage et de les déployer sur des appareils périphériques sans avoir à écrire un code de base complexe.

En savoir plus sur YOLOv8

YOLOX : un pionnier sans ancrage

Lancé en 2021 par Megvii, YOLOX a été l'un des premiers détecteurs à haute performance à réussir à découpler la tête de prédiction et à supprimer les ancres, influençant ainsi les conceptions ultérieures dans ce domaine.

Architecture et caractéristiques principales

YOLOX a introduit une structure de tête découplée, séparant les tâches de classification et de régression en différentes branches. Cette approche permet au modèle de converger plus rapidement et d'améliorer sa précision. En outre, YOLOX utilise SimOTA (Simplified Optimal Transport Assignment) pour l'attribution des étiquettes, une stratégie dynamique qui traite le processus de formation comme un problème de transport optimal.

Bien qu'innovant au moment de son lancement, YOLOX se concentre principalement sur la détection d'objets standard et ne prend pas en charge de manière native des tâches complexes telles que la segmentation ou l'estimation de la pose sans une personnalisation importante.

En savoir plus sur YOLOX

Analyse comparative des performances

Lors de l'évaluation de ces modèles pour la production, le compromis entre vitesse et précision est primordial. Le tableau ci-dessous montre que YOLOv8 est toujours plus performant que YOLOX pour des modèles de taille comparable sur l'ensemble de donnéesCOCO .

Mesures de la précision et de la vitesse

YOLOv8 fait preuve d'une précision moyenne supérieure (mAP), en particulier pour les variantes les plus importantes. A titre d'exemple, YOLOv8x atteint une mAP de 53,9, dépassant YOLOX-x à 51,1. En outre, Ultralytics fournit des repères transparents d'inférence CPU en utilisant ONNXmettant en évidence l'optimisation de YOLOv8 pour les environnements GPU GPU.

ModèleTaille
(pixels)
mAPval
50-95
Vitesse
CPU ONNX
(ms)
Vitesse
T4 TensorRT10
(ms)
paramètres
(M)
FLOPs
(B)
YOLOv8n64037.380.41.473.28.7
YOLOv8s64044.9128.42.6611.228.6
YOLOv8m64050.2234.75.8625.978.9
YOLOv8l64052.9375.29.0643.7165.2
YOLOv8x64053.9479.114.3768.2257.8
YOLOXnano41625.8--0.911.08
YOLOXtiny41632.8--5.066.45
YOLOXs64040.5-2.569.026.8
YOLOXm64046.9-5.4325.373.8
YOLOXl64049.7-9.0454.2155.6
YOLOXx64051.1-16.199.1281.9

Architecture et efficacité

Bien que les modèles YOLOX (S/M/L) aient un peu moins de paramètres dans certaines configurations, YOLOv8 offre un meilleur équilibre des performances. L'efficacité de YOLOv8 est évidente dans sa capacité à fournir une plus grande précision par paramètre. En outre, YOLOv8 est hautement optimisé pour l'efficacité de la formation, convergeant souvent plus rapidement et nécessitant moins de mémoire que les anciennes architectures. Il s'agit d'un facteur crucial lors de l'entraînement sur des ensembles de données personnalisés pour lesquels les ressources informatiques peuvent être limitées.

Pourquoi choisir Ultralytics YOLOv8?

Pour la grande majorité des développeurs et des chercheurs, YOLOv8 est le choix préféré en raison de son architecture moderne, de son support robuste et de sa facilité d'utilisation.

1. Facilité d'utilisation et documentation

Ultralytics donne la priorité à l'expérience des développeurs. La documentation complète couvre tout, de l'installation au réglage avancé des hyperparamètres. En revanche, les référentiels plus anciens comme YOLOX nécessitent souvent une configuration plus manuelle et ont des courbes d'apprentissage plus raides.

2. Un écosystème bien entretenu

YOLOv8 bénéficie d'une communauté active et de mises à jour fréquentes. Les problèmes sont traités rapidement sur GitHub, et le modèle s'intègre nativement avec des outils MLOps tels que MLflow, TensorBoard et Weights & Biases. Ce niveau de soutien garantit la viabilité à long terme des projets commerciaux.

3. Flexibilité du déploiement

Le déploiement de modèles en production est simplifié avec YOLOv8. Il prend en charge l'exportation en un clic vers des formats tels que TensorRT, OpenVINO, CoreML et TFLite. Il est donc idéal pour fonctionner sur différents matériels, des serveurs en nuage aux appareils Raspberry Pi.

Application dans le monde réel

Une usine de fabrication qui utilise la vision par ordinateur pour le contrôle de la qualité peut tirer parti des capacités multitâches de YOLOv8. Un seul modèle peut detect pièces défectueuses (détection) et identifier les limites exactes du défaut (segmentation), améliorant ainsi la précision des systèmes de tri automatisés.

Conclusion

Les deux architectures ont contribué de manière significative au domaine de la vision par ordinateur. YOLOX a contribué à populariser la détection sans ancrage et reste une référence respectée dans la recherche universitaire. Cependant, les deux architectures ont contribué de manière significative au domaine de la vision par ordinateur, Ultralytics YOLOv8 représente l'évolution de ces concepts dans un cadre prêt pour la production.

Avec des scoresmAP supérieurs, une prise en charge plus large des tâches et un écosystème inégalé, YOLOv8 est la solution définitive pour les applications d'IA modernes. Que vous construisiez des véhicules autonomes, des systèmes de sécurité intelligents ou des moniteurs agricoles, YOLOv8 fournit les outils et les performances nécessaires pour réussir.

Explorer d'autres modèles

Le domaine de la détection d'objets évolue rapidement. Pour vous assurer d'utiliser l'outil le mieux adapté à vos besoins spécifiques, pensez à explorer ces autres comparaisons et modèles plus récents :


Commentaires