YOLOX vs. YOLOv10 : Une comparaison technique
Le choix du modèle de détection d'objets optimal est essentiel pour équilibrer la précision, la vitesse et les exigences de calcul dans les projets de vision par ordinateur. Cette page fournit une comparaison technique détaillée entre YOLOX et YOLOv10, deux modèles importants dans le paysage de la détection d'objets. Nous analyserons leurs architectures, leurs mesures de performance et leurs cas d'utilisation idéaux pour vous aider à choisir la solution la mieux adaptée à vos besoins.
YOLOX : Détecteur haute performance sans ancres
YOLOX est un modèle de détection d'objets sans ancrage développé par Megvii, visant à simplifier la conception de YOLO tout en atteignant des performances élevées. Introduit en 2021, il a cherché à combler le fossé entre la recherche et les applications industrielles en proposant une approche alternative au sein de la famille YOLO.
Détails techniques :
- Auteurs : Zheng Ge, Songtao Liu, Feng Wang, Zeming Li et Jian Sun
- Organisation : Megvii
- Date : 2021-07-18
- Arxiv : https://arxiv.org/abs/2107.08430
- GitHub : https://github.com/Megvii-BaseDetection/YOLOX
- Documentation : https://yolox.readthedocs.io/en/latest/
Architecture et principales fonctionnalités
YOLOX met en œuvre plusieurs changements architecturaux clés par rapport aux modèles YOLO antérieurs, en se concentrant sur la simplicité et les performances :
- Conception sans ancres : En éliminant les boîtes d'ancrage prédéfinies, YOLOX simplifie le pipeline de détection et réduit le nombre d'hyperparamètres qui nécessitent un réglage. Cela peut conduire à une meilleure généralisation sur différents ensembles de données et tailles d'objets.
- Tête découplée : Elle utilise des têtes séparées pour les tâches de classification et de localisation. Cette séparation peut améliorer la vitesse de convergence et résoudre le désalignement entre la confiance de la classification et la précision de la localisation, un problème courant dans les détecteurs à une seule étape.
- Stratégies d'entraînement avancées : Le modèle intègre des techniques avancées telles que SimOTA (Simplified Optimal Transport Assignment) pour l'attribution dynamique des étiquettes pendant l'entraînement. Il exploite également des méthodes fortes d'augmentation des données comme MixUp pour améliorer la robustesse du modèle.
Points forts et faiblesses
Points forts :
- Haute précision : YOLOX obtient d'excellents scores mAP, en particulier avec ses variantes plus grandes comme YOLOX-x, ce qui en fait un choix fiable pour les tâches où la précision est essentielle.
- Simplicité sans ancres : La conception réduit la complexité liée à la configuration des boîtes d’ancrage, ce qui peut être une partie fastidieuse de l’entraînement d’autres détecteurs.
- Modèle établi : Disponible depuis 2021, YOLOX dispose d’une base mature de ressources communautaires, de tutoriels et d’exemples de déploiement.
Faiblesses :
- Vitesse et efficacité de l'inférence : Bien qu'il ait été efficace pour son époque, il peut être plus lent et plus gourmand en calcul que les modèles récents hautement optimisés comme YOLOv10, surtout en comparant des modèles avec une précision similaire.
- Écosystème externe : YOLOX n'est pas intégré nativement à l'écosystème Ultralytics. Cela peut impliquer davantage d'efforts manuels pour le déploiement, l'optimisation avec des outils tels que TensorRT, et l'intégration avec des plateformes comme Ultralytics HUB.
- Polyvalence des tâches : Il se concentre principalement sur la détection d’objets et ne prend pas en charge nativement d’autres tâches de vision telles que la segmentation d’instance, l’estimation de pose ou la détection de boîtes englobantes orientées, contrairement aux frameworks plus récents et plus polyvalents tels que Ultralytics YOLOv8.
Cas d'utilisation
YOLOX est bien adapté pour :
- Détection d'objets générale : Applications qui nécessitent un bon équilibre entre la précision et la vitesse, telles que les systèmes de sécurité et l'analyse de vente au détail.
- Base de référence pour la recherche : Sa conception sans ancres en fait une base de référence précieuse pour les chercheurs qui explorent de nouvelles méthodes de détection d’objets.
- Applications industrielles : Tâches telles que le contrôle qualité automatisé où une haute précision de détection est une exigence primordiale.
YOLOv10 : Détecteur de pointe en temps réel et de bout en bout
Ultralytics YOLOv10, développé par des chercheurs de l'université de Tsinghua, représente une avancée significative dans la détection d'objets en temps réel en se concentrant sur l'efficacité de bout en bout. Il s'attaque aux goulots d'étranglement du post-traitement et optimise l'architecture pour des performances supérieures sur le plan de la vitesse et de la précision.
Détails techniques :
- Auteurs : Ao Wang, Hui Chen, Lihao Liu, et al.
- Organisation : Université de Tsinghua
- Date : 2024-05-23
- Arxiv: https://arxiv.org/abs/2405.14458
- GitHub : https://github.com/THU-MIG/yolov10
- Documentation : https://docs.ultralytics.com/models/yolov10/
Architecture et principales fonctionnalités
YOLOv10 introduit plusieurs innovations pour atteindre une efficacité de pointe :
- Formation sans NMS : Elle utilise des affectations doubles cohérentes pendant la formation pour éliminer le besoin de suppression non maximale (NMS) pendant l’inférence. Cette innovation réduit la latence d’inférence et simplifie le pipeline de déploiement, permettant un véritable détecteur de bout en bout.
- Conception holistique axée sur l’efficacité et la précision : L’architecture du modèle a été conçue selon une approche globale visant à optimiser divers composants. Cela comprend une tête de classification légère et un sous-échantillonnage spatial-canal découplé, qui réduisent la redondance de calcul et améliorent la capacité du modèle sans sacrifier la précision.
- Léger et évolutif : YOLOv10 se concentre sur la réduction des paramètres et des FLOPs, ce qui permet d’obtenir des vitesses d’inférence plus rapides convenant à divers matériels, des GPU haut de gamme aux appareils périphériques aux ressources limitées.
Points forts et faiblesses
Points forts :
- Vitesse et efficacité exceptionnelles : YOLOv10 est optimisé pour l'inférence en temps réel et à faible latence, surpassant de nombreux autres modèles en termes de vitesse tout en conservant une haute précision.
- Inférence sans NMS : La suppression de NMS simplifie le déploiement et accélère le post-traitement, ce qui est un avantage essentiel dans les applications sensibles au facteur temps.
- Performances de pointe : Il établit une nouvelle norme pour le compromis entre précision et efficacité, comme le montre le tableau des performances.
- Intégration à l'écosystème Ultralytics : YOLOv10 est intégré de manière transparente dans l'écosystème Ultralytics, bénéficiant d'une API Python conviviale, d'une documentation complète et d'une maintenance active.
- Facilité d'utilisation : Le modèle suit l'expérience utilisateur simplifiée typique des modèles Ultralytics, ce qui facilite la formation, la validation et le déploiement.
- Efficacité de l'entraînement : Il offre un processus d'entraînement efficace avec des poids pré-entraînés facilement disponibles et a généralement des besoins en mémoire inférieurs à ceux des architectures plus complexes.
Faiblesses :
- Relativement récent : En tant que modèle plus récent, l'étendue des exemples proposés par la communauté et des intégrations tierces pourrait encore être en croissance par rapport aux modèles établis de longue date comme YOLOX.
Cas d'utilisation
YOLOv10 est idéal pour les applications exigeantes en temps réel où la vitesse et la précision sont essentielles :
- IA en périphérie (Edge AI) : Parfait pour le déploiement sur des appareils aux ressources limitées tels que Raspberry Pi et NVIDIA Jetson.
- Systèmes en temps réel : Applications dans les véhicules autonomes, la robotique, l'analyse vidéo à haute vitesse et la surveillance.
- Traitement à haut débit : Inspection industrielle, logistique et autres applications nécessitant une analyse rapide d'un grand volume d'images ou de flux vidéo.
Analyse des performances : YOLOX vs. YOLOv10
Le tableau suivant fournit une comparaison détaillée des mesures de performance pour différentes tailles de modèles de YOLOX et YOLOv10, évaluées sur le jeu de données COCO.
Modèle | Taille (pixels) |
mAPval 50-95 |
Vitesse CPU ONNX (ms) |
Vitesse T4 TensorRT10 (ms) |
paramètres (M) |
FLOPs (B) |
---|---|---|---|---|---|---|
YOLOXnano | 416 | 25.8 | - | - | 0.91 | 1.08 |
YOLOXtiny | 416 | 32.8 | - | - | 5.06 | 6.45 |
YOLOXs | 640 | 40.5 | - | 2.56 | 9.0 | 26.8 |
YOLOXm | 640 | 46.9 | - | 5.43 | 25.3 | 73.8 |
YOLOXl | 640 | 49.7 | - | 9.04 | 54.2 | 155.6 |
YOLOXx | 640 | 51.1 | - | 16.1 | 99.1 | 281.9 |
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 |
Les données montrent clairement que YOLOv10 offre systématiquement un compromis supérieur entre la précision et l'efficacité.
- YOLOv10-s atteint presque le même mAP que YOLOX-m (46,7 % contre 46,9 %) mais avec 72 % de paramètres en moins (7,2M contre 25,3M) et 70 % de FLOPs en moins (21,6B contre 73,8B).
- YOLOv10-m surpasse la précision de YOLOX-l (51,3 % contre 49,7 %) tout en étant significativement plus efficace en termes de paramètres et de calcul.
- Dans le haut de gamme, YOLOv10-x offre un mAP beaucoup plus élevé que YOLOX-x (54,4 % contre 51,1 %) avec 43 % de paramètres en moins et 43 % de FLOPs en moins.
Conclusion
YOLOX et YOLOv10 sont tous deux de puissants modèles de détection d'objets, mais ils répondent à des priorités différentes. YOLOX est un détecteur sans ancrage solide et établi qui offre une grande précision, ce qui en fait une option viable pour les projets où son écosystème est déjà en place.
Cependant, pour les développeurs et les chercheurs à la recherche du meilleur équilibre entre vitesse, précision et facilité d'utilisation, YOLOv10 est le grand gagnant. Son architecture innovante sans NMS fournit un véritable pipeline de détection de bout en bout, ce qui se traduit par une latence plus faible et une efficacité accrue. L'intégration transparente dans l'écosystème Ultralytics renforce encore son attrait, offrant des flux de travail rationalisés, une documentation complète et un support communautaire robuste.
Pour ceux qui souhaitent explorer d'autres modèles de pointe, Ultralytics propose une gamme d'options, y compris le très polyvalent YOLOv8 et le dernier YOLO11, qui offrent des capacités multitâches telles que la segmentation, la classification et l'estimation de la pose. Vous pouvez explorer d'autres comparaisons, telles que YOLOv10 vs. YOLOv8, pour trouver le modèle parfait pour vos besoins spécifiques.