YOLOv7 vs. YOLOX : Une comparaison technique détaillée
Choisir le modèle de détection d'objets optimal est une décision essentielle pour les projets de vision par ordinateur. Comprendre les forces et les faiblesses spécifiques des différentes architectures est essentiel pour obtenir des performances optimales. Cette page fournit une comparaison technique de deux modèles influents, YOLOv7 et YOLOX, détaillant leurs nuances architecturales, leurs benchmarks de performance et leurs scénarios de déploiement idéaux.
YOLOv7 : Détection haute précision et efficace
YOLOv7, introduit en juillet 2022, a rapidement établi de nouvelles normes pour les détecteurs d'objets en temps réel en optimisant à la fois l'efficacité de l'entraînement et la vitesse d'inférence. Il représente une avancée significative dans l'équilibre entre vitesse et précision pour les applications exigeantes.
Auteurs : Chien-Yao Wang, Alexey Bochkovskiy et Hong-Yuan Mark Liao
Organisation : Institut des sciences de l'information, Academia Sinica, Taïwan
Date : 2022-07-06
Arxiv : https://arxiv.org/abs/2207.02696
GitHub : https://github.com/WongKinYiu/yolov7
Docs : https://docs.ultralytics.com/models/yolov7/
Architecture et principales fonctionnalités
YOLOv7 a introduit plusieurs innovations architecturales détaillées dans son article. Un élément clé est l'Extended Efficient Layer Aggregation Network (E-ELAN), qui améliore la capacité du réseau à apprendre sans perturber le chemin de gradient, améliorant ainsi l'extraction de caractéristiques. Le modèle utilise également des techniques de scaling avancées adaptées aux modèles basés sur la concaténation et utilise un "trainable bag-of-freebies". Il s'agit d'améliorations de l'entraînement, telles que la convolution de re-paramétrisation planifiée et la perte auxiliaire grossière à fine, qui améliorent la précision sans augmenter le coût de l'inférence. Ces caractéristiques permettent à YOLOv7 d'obtenir des résultats de pointe en matière de détection d'objets avec des tailles de modèle compétitives.
Performance et cas d'utilisation
YOLOv7 excelle dans les scénarios exigeant à la fois une inférence rapide et une grande précision. Son mAP impressionnant et ses mesures de vitesse en font un choix judicieux pour des applications telles que l'analyse vidéo en temps réel, les systèmes de conduite autonome et le traitement d'images à haute résolution. Dans les déploiements de villes intelligentes, YOLOv7 peut être utilisé pour la gestion du trafic ou l'amélioration des systèmes de sécurité pour la détection immédiate des menaces.
Points forts et faiblesses
- Points forts : Fournit un bon équilibre entre la précision de la détection et la vitesse d'inférence. Il utilise des techniques d'apprentissage avancées (« bag-of-freebies ») pour de meilleures performances sans augmenter de manière significative les exigences de calcul pendant l'inférence. L'architecture intègre des modules de pointe comme E-ELAN.
- Points faibles : L'architecture et le processus d'entraînement peuvent être plus complexes par rapport aux modèles plus simples comme YOLOv5. L'entraînement de modèles YOLOv7 plus volumineux exige également des ressources de calcul importantes, bien que l'inférence reste rapide.
YOLOX : L'excellence sans ancrage
YOLOX, introduit par Megvii en 2021, se distingue par sa conception sans ancrage, qui simplifie le processus d'entraînement et vise à améliorer la généralisation. En s'éloignant des boîtes d'ancrage prédéfinies, YOLOX prédit directement les emplacements des objets, offrant une approche différente de la détection d'objets.
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
Docs : https://yolox.readthedocs.io/en/latest/
Architecture et principales fonctionnalités
YOLOX adopte plusieurs innovations architecturales clés. Son approche sans ancres élimine le besoin de boîtes d'ancrage, réduisant ainsi la complexité de la conception et le coût de calcul. Cela le rend plus adaptable à diverses tailles d'objets et rapports d'aspect, améliorant potentiellement les performances sur divers ensembles de données comme COCO. Il utilise également une tête découplée pour la classification et la localisation, ce qui contribue à une convergence plus rapide et à une précision améliorée. YOLOX utilise des techniques fortes d'augmentation de données comme MixUp et Mosaic et une stratégie avancée d'attribution d'étiquettes appelée SimOTA (Simplified Optimal Transport Assignment) pour améliorer davantage l'efficacité de l'entraînement.
Performance et cas d'utilisation
YOLOX offre un bon équilibre entre vitesse et précision. Son absence d'ancres le rend particulièrement adapté aux applications où les échelles d'objets varient considérablement. C'est un concurrent sérieux pour les tâches nécessitant une détection efficace et précise, comme dans la robotique et les déploiements d'IA en périphérie. Par exemple, dans le secteur de la fabrication, YOLO peut être utilisé pour le contrôle qualité, en tirant parti de sa robustesse face à diverses formes d'objets pour la détection des défauts.
Points forts et faiblesses
- Points forts : La conception sans ancres simplifie l'implémentation et les pipelines de formation. Une forte augmentation des données et l'approche sans ancres améliorent la généralisation à de nouveaux ensembles de données. La tête découplée et la nature sans ancres contribuent à une inférence efficace.
- Points faibles : Bien qu'il soit efficace, il peut ne pas être le plus rapide parmi tous les modèles YOLO, en particulier par rapport aux versions optimisées de YOLOv7 ou aux modèles Ultralytics plus récents comme YOLOv8. De plus, il ne fait pas partie de l'écosystème intégré Ultralytics, ce qui peut entraîner un manque d'intégration transparente avec des outils comme Ultralytics HUB.
Performances et analyses comparatives : YOLOv7 vs. YOLOX
Lorsqu'on compare les deux, YOLOv7 atteint généralement une plus grande précision (mAP) pour ses modèles plus grands, repoussant les limites de la technologie pour les détecteurs en temps réel au moment de sa sortie. YOLOX, d'autre part, offre une gamme plus large de modèles évolutifs, du très petit YOLOX-Nano au grand YOLOX-X. La conception sans ancrage de YOLOX peut offrir des avantages en termes de simplicité et de généralisation, tandis que l'approche « sac de cadeaux » de YOLOv7 maximise la précision sans ajouter de surcharge d'inférence.
Modèle | Taille (pixels) |
mAPval 50-95 |
Vitesse CPU ONNX (ms) |
Vitesse T4 TensorRT10 (ms) |
paramètres (M) |
FLOPs (B) |
---|---|---|---|---|---|---|
YOLOv7l | 640 | 51.4 | - | 6.84 | 36.9 | 104.7 |
YOLOv7x | 640 | 53.1 | - | 11.57 | 71.3 | 189.9 |
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 |
Conclusion et recommandation
YOLOv7 et YOLOX sont tous deux de puissants modèles de détection d'objets qui ont apporté des contributions significatives au domaine. YOLOv7 est un excellent choix pour les applications où l'obtention de la plus grande précision possible à des vitesses en temps réel est l'objectif principal. YOLOX offre une alternative sans ancrage intéressante qui excelle dans la généralisation et fournit une famille de modèles hautement évolutive adaptée à divers budgets de calcul.
Cependant, pour les développeurs et les chercheurs à la recherche du framework le plus moderne, le plus polyvalent et le plus convivial, les nouveaux modèles Ultralytics YOLO tels que YOLOv8 et Ultralytics YOLO11 présentent souvent un choix plus intéressant. Ces modèles offrent plusieurs avantages clés :
- Facilité d'utilisation : Une expérience utilisateur simplifiée avec une API Python simple, une documentation exhaustive et des commandes CLI directes.
- Écosystème bien maintenu : Développement actif, forte communauté open source, mises à jour fréquentes et intégration transparente avec des outils tels que Ultralytics HUB pour un MLOps de bout en bout.
- Polyvalence : Prise en charge de plusieurs tâches de vision au-delà de la détection d'objets, y compris la segmentation, la classification, l'estimation de pose et la détection d'objets orientés (OBB).
- Équilibre des performances : Un excellent compromis entre la vitesse et la précision, adapté à divers scénarios du monde réel, des appareils périphériques aux serveurs cloud.
- Efficacité de l'entraînement : Processus d'entraînement efficaces, poids pré-entraînés facilement disponibles et temps de convergence plus rapides.
Explorer d'autres modèles
Pour une exploration plus approfondie, consultez ces comparaisons impliquant YOLOv7, YOLOX et d'autres modèles pertinents :
- YOLOv7 vs. YOLOv8
- YOLOv5 vs YOLOX
- RT-DETR vs. YOLOv7
- Explorez les derniers modèles comme YOLOv10 et YOLO11.