YOLOv10 vs. YOLOX : 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 YOLOv10 et YOLOX, 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, en soulignant les avantages de YOLOv10 au sein de l'écosystème Ultralytics.
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. Introduit en mai 2024, il s'attaque aux goulots d'étranglement du post-traitement et optimise l'architecture pour une vitesse et des performances supérieures, ce qui en fait un choix de pointe pour les développeurs.
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 clés pour une efficacité et des performances améliorées :
- Formation sans NMS : Une innovation essentielle est l’utilisation d’affectations doubles cohérentes pour éliminer le besoin de suppression non maximale (NMS) pendant l’inférence. Cela réduit considérablement la latence d’inférence et simplifie le pipeline de déploiement, permettant une véritable détection d’objets de bout en bout.
- Conception holistique axée sur l’efficacité et la précision : L’architecture du modèle a été optimisée de manière exhaustive afin de réduire la redondance de calcul et d’améliorer les capacités. Cela comprend une tête de classification légère et un sous-échantillonnage spatial-canal découplé, qui préserve l’information plus efficacement tout en réduisant les coûts de calcul.
- Équilibre supérieur des performances : YOLOv10 atteint un excellent compromis entre la vitesse et la précision. Il offre des scores mAP élevés tout en maintenant une latence extrêmement faible, ce qui le rend adapté à un large éventail de scénarios de déploiement réels.
- Intégration à l'écosystème Ultralytics : En tant que partie intégrante de l'écosystème Ultralytics, YOLOv10 bénéficie d'une expérience utilisateur rationalisée. Cela inclut une simple API Python, une documentation complète, des processus d'entraînement efficaces avec des poids pré-entraînés facilement disponibles et des besoins en mémoire réduits par rapport à de nombreuses alternatives.
Points forts et faiblesses
Points forts :
- Vitesse et efficacité exceptionnelles : Optimisé pour l'inférence en temps réel et à faible latence, ce qui en fait l'un des détecteurs les plus rapides disponibles.
- Inférence sans NMS : Simplifie le déploiement et accélère le post-traitement, un avantage essentiel pour les systèmes de production.
- Performance à la pointe de la technologie : Atteint d'excellents scores mAP sur différentes échelles de modèles (n, s, m, b, l, x), surpassant souvent d'autres modèles avec moins de paramètres.
- Facilité d'utilisation : Intégré de manière transparente dans le framework Ultralytics, offrant une expérience conviviale de l'entraînement au déploiement.
- Efficacité de l'entraînement : Le processus d'entraînement est très efficace, soutenu par un code bien maintenu, des poids pré-entraînés et un support communautaire actif.
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 est encore en croissance par rapport aux modèles plus anciens et plus établis.
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 : Parfaitement adapté aux véhicules autonomes, à la robotique, à l'analyse vidéo à haute vitesse et à la surveillance.
- Traitement à haut débit : Idéal pour l'inspection industrielle et d'autres applications nécessitant une analyse rapide de grands flux de données.
YOLOX : Détecteur haute performance sans ancres
YOLOX est un modèle de détection d'objets sans ancrage développé par Megvii en 2021. Il a été introduit comme une approche alternative au sein de la famille YOLO, visant à simplifier le pipeline de détection tout en atteignant des performances élevées et en comblant le fossé entre la recherche et les applications industrielles.
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 modifications architecturales importantes par rapport aux modèles YOLO précédents :
- 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, ce qui peut améliorer la généralisation.
- 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 la précision par rapport aux têtes couplées utilisées dans certains modèles antérieurs.
- Stratégies d'entraînement avancées : YOLOX intègre des techniques avancées telles que SimOTA (Simplified Optimal Transport Assignment) pour l'attribution dynamique des étiquettes et des méthodes fortes d'augmentation des données comme MixUp.
Points forts et faiblesses
Points forts :
- Haute précision : Obtient de solides scores mAP, en particulier avec ses variantes plus grandes comme YOLOX-x.
- Simplicité sans ancres : Réduit la complexité associée à la configuration et au réglage des boîtes d’ancrage.
- Modèle établi : Disponible depuis 2021, il dispose d’une base solide de ressources communautaires et d’exemples de déploiement.
Faiblesses :
- Inférence plus lente : Bien qu'il ait été efficace pour son époque, il peut être plus lent et plus gourmand en calcul que les modèles modernes hautement optimisés comme YOLOv10, en particulier lors de la comparaison de modèles de précision similaire.
- Écosystème externe : Il n’est pas intégré nativement à l’écosystème Ultralytics, ce qui peut nécessiter plus d’efforts pour le déploiement, la formation et l’intégration avec des outils tels que Ultralytics HUB.
- Polyvalence des tâches : YOLOX 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 ou l’estimation de pose, contrairement aux modèles plus récents et plus polyvalents d’Ultralytics.
Cas d'utilisation
YOLOX est un choix judicieux pour :
- Détection d'objets générale : Applications qui nécessitent un bon équilibre entre la précision et la vitesse, comme les systèmes de sécurité.
- Recherche : Il sert de base solide pour explorer et développer de nouvelles méthodes de détection sans ancres.
- Applications industrielles : Tâches telles que le contrôle qualité où une haute précision est une exigence primordiale.
Analyse des performances : YOLOv10 vs. YOLOX
Le tableau suivant fournit une comparaison détaillée des mesures de performance pour différentes tailles de modèles de YOLOv10 et YOLOX, é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) |
---|---|---|---|---|---|---|
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 |
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 |
D'après les données, il est clair que YOLOv10 surpasse systématiquement YOLOX dans presque toutes les métriques.
- Précision et efficacité : Les modèles YOLOv10 atteignent des scores mAP plus élevés avec beaucoup moins de paramètres et de FLOPs. Par exemple, YOLOv10-m atteint 51,3 mAP avec seulement 15,4 millions de paramètres, dépassant YOLOX-l (49,7 mAP avec 54,2 millions de paramètres) et égalant même YOLOX-x (51,1 mAP avec 99,1 millions de paramètres) tout en étant beaucoup plus efficace.
- Vitesse d'inférence : YOLOv10 démontre une vitesse supérieure. YOLOv10-x est 32 % plus rapide que YOLOX-x sur un GPU NVIDIA T4 tout en étant plus précis. Cet avantage en termes d'efficacité est crucial pour les applications en temps réel.
- Taille du modèle : L'efficacité des paramètres de YOLOv10 est remarquable. Le plus grand modèle YOLOv10x possède près de la moitié des paramètres de YOLOX-x, ce qui facilite son déploiement sur des systèmes avec des contraintes de mémoire.
Conclusion et recommandations
Bien que YOLOX soit un détecteur sans ancrage performant et historiquement significatif, YOLOv10 est le grand gagnant pour les nouveaux projets, en particulier ceux qui nécessitent des performances et une efficacité élevées. Sa conception innovante sans NMS et ses optimisations architecturales holistiques offrent un équilibre de pointe entre vitesse et précision que YOLOX ne peut égaler.
Pour les développeurs et les chercheurs, YOLOv10 offre des avantages indéniables :
- Performance supérieure : Une meilleure précision avec des vitesses plus rapides et un coût de calcul inférieur.
- Déploiement simplifié : L’approche sans NMS supprime un goulot d’étranglement courant du post-traitement.
- Écosystème robuste : L'intégration avec l'écosystème Ultralytics donne accès à une documentation complète, une maintenance active et un flux de travail rationalisé de la formation à la production.
Pour les utilisateurs intéressés par l'exploration d'autres modèles de pointe, Ultralytics propose une gamme d'options, notamment le très polyvalent YOLOv8, l'efficace YOLOv9 et le dernier YOLO11. Vous pouvez trouver d'autres comparaisons, telles que YOLOv10 vs. YOLOv8, pour vous aider à sélectionner le meilleur modèle pour vos besoins spécifiques.