Passer au contenu

YOLOv10 YOLOX : évolution de la détection d'objets sans ancrage et NMS

Le domaine de la vision par ordinateur est stimulé par les progrès rapides réalisés dans les architectures de détection d'objets en temps réel. Cette comparaison technique détaillée explore deux modèles influents qui ont repoussé les limites de l'efficacité et des paradigmes de conception : YOLOv10 et YOLOX. En examinant leurs différences architecturales, leurs mesures de performance et leurs méthodologies de formation, les développeurs et les chercheurs peuvent prendre des décisions éclairées pour déployer des systèmes de vision robustes.

Contexte et origines du modèle

Comprendre les origines de ces modèles d'apprentissage profond fournit un contexte précieux concernant leurs objectifs architecturaux et leurs cas d'utilisation ciblés.

YOLOv10: élimination NMS une détection véritablement de bout en bout

Développé pour résoudre les goulots d'étranglement liés à la latence qui existaient depuis longtemps, YOLOv10 une approche native de bout en bout dans la YOLO .

En savoir plus sur YOLOv10

YOLOX : combler le fossé entre la recherche et l'industrie

YOLOX est apparu comme une version sans ancre du YOLO traditionnel, offrant une méthodologie plus simple avec des performances compétitives, spécialement conçue pour faciliter le déploiement dans les communautés industrielles.

En savoir plus sur YOLOX

Points forts et innovations architecturaux

Ces deux cadres s'écartent des détecteurs traditionnels basés sur des ancres, mais ils résolvent différents problèmes dans le processus de détection d'objets.

Architecture YOLOX

YOLOX a apporté plusieurs mises à jour cruciales à l'écosystème en 2021. Sa principale contribution a été le passage à une conception de détecteur sans ancrage. En éliminant les boîtes d'ancrage prédéfinies, YOLOX a considérablement réduit le nombre de paramètres de conception et de réglages heuristiques nécessaires pour différents ensembles de données.

De plus, YOLOX utilise une tête découplée, séparant les tâches de classification et de régression. Cela a permis de résoudre le conflit entre les deux objectifs, accélérant considérablement la convergence pendant l'entraînement. Il utilise également SimOTA pour l'attribution avancée d'étiquettes, améliorant ainsi le traitement des scènes encombrées et des occlusions courantes dans COCO .

Avantage sans ancre

Les conceptions sans ancrage, telles que celle mise au point par YOLOX, réduisent considérablement la complexité du réglage des modèles. Les développeurs n'ont plus besoin d'effectuer un regroupement par k-means sur des ensembles de données personnalisés pour définir les tailles optimales des boîtes d'ancrage, ce qui leur permet de gagner un temps précieux lors de la préparation.

Architecture YOLOv10

Bien que YOLOX ait amélioré la tête de détection, il s'appuyait toujours sur la suppression non maximale (NMS) pendant l'inférence, ce qui entraîne une variabilité de la latence. YOLOv10 a spécifiquement ciblé cette faille en introduisant une stratégie d'attribution double cohérente pour un entraînement NMS. Pendant l'entraînement, il utilise à la fois des attributions d'étiquettes un-à-plusieurs et un-à-un, mais pendant l'inférence, il abandonne complètement la tête un-à-plusieurs, produisant des prédictions propres sans NMS .

YOLOv10 se caractérise YOLOv10 par une conception holistique axée sur l'efficacité et la précision. Il intègre des têtes de classification légères et un sous-échantillonnage découplé des canaux spatiaux, ce qui réduit considérablement le nombre de paramètres et les FLOP sans sacrifier la précision.

Comparaison des performances

L'évaluation de ces modèles sur du matériel tel que le GPU NVIDIA GPU des avantages distincts en fonction de l'échelle. Vous trouverez ci-dessous un tableau comparatif complet.

ModèleTaille
(pixels)
mAPval
50-95
Vitesse
CPU ONNX
(ms)
Vitesse
T4 TensorRT10
(ms)
paramètres
(M)
FLOPs
(B)
YOLOv10n64039.5-1.562.36.7
YOLOv10s64046.7-2.667.221.6
YOLOv10m64051.3-5.4815.459.1
YOLOv10b64052.7-6.5424.492.0
YOLOv10l64053.3-8.3329.5120.3
YOLOv10x64054.4-12.256.9160.4
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

Comme on peut le voir ci-dessus, YOLOv10 super bien. Le YOLOv10x La variante atteint la plus grande précision (54,4 mAP), tandis que le YOLOv10n La variante offre l'inférence la plus rapide à l'aide de TensorRT intégration. À l'inverse, le modèle nano YOLOX traditionnel présente l'encombrement global le plus réduit pour les environnements fortement contraints.

Méthodologies de formation et ressources nécessaires

Lors de la mise en œuvre de modèles pour la production, l'écosystème de formation et les besoins en ressources sont tout aussi importants que la vitesse d'inférence brute.

YOLOX s'appuie souvent sur des configurations d'environnement plus anciennes qui peuvent être difficiles à gérer. De plus, son code source hérité nécessite davantage de code standard pour permettre l'entraînementGPU ou l'optimisation à précision mixte.

En revanche, YOLOv10 parfaitement aux PyTorch modernes, mais c'est Ultralytics qui transforme véritablement l'expérience des développeurs. Ultralytics se caractérisent par une utilisation nettement moindre CUDA pendant l'entraînement par rapport aux architectures basées sur des transformateurs telles que RT-DETR.

Exemple de code : Formation simplifiée

Grâce à Ultralytics unifiée Ultralytics , vous pouvez facilement former des modèles de pointe en quelques lignes de Python. Cela évite la compilation manuelle d'opérateurs C++ ou de fichiers de configuration complexes.

from ultralytics import YOLO

# Initialize a pre-trained YOLOv10 model
model = YOLO("yolov10s.pt")

# Train the model on the COCO8 dataset
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)

# Validate the model's performance
metrics = model.val()

# Export the optimized model to ONNX format
model.export(format="onnx")

Cette syntaxe simple permet d'accéder immédiatement à la précision mixte automatique, à l'augmentation automatisée des données et à l'intégration avec des outils tels que Weights & Biases prêts à l'emploi.

Cas d'utilisation et recommandations

Le choix entre YOLOv10 YOLOX dépend des exigences spécifiques de votre projet, des contraintes de déploiement et des préférences de votre écosystème.

Quand choisir YOLOv10

YOLOv10 un choix judicieux pour :

  • Détection en temps réelNMS: applications bénéficiant d'une détection de bout en bout sans suppression non maximale, réduisant ainsi la complexité du déploiement.
  • Compromis équilibré entre vitesse et précision : projets nécessitant un équilibre solide entre la vitesse d'inférence et la précision de détection à différentes échelles de modèle.
  • Applications à latence constante : scénarios de déploiement où des temps d'inférence prévisibles sont essentiels, tels que la robotique ou les systèmes autonomes.

Quand choisir YOLOX

YOLOX est recommandé pour :

  • Recherche sur la détection sans ancrage : recherche universitaire utilisant l'architecture propre et sans ancrage de YOLOX comme base pour expérimenter de nouvelles têtes de détection ou fonctions de perte.
  • Dispositifs périphériques ultra-légers : déploiement sur des microcontrôleurs ou du matériel mobile existant où l'empreinte extrêmement réduite (0,91 M de paramètres) de la variante YOLOX-Nano est essentielle.
  • Études sur l'attribution des étiquettes SimOTA : projets de recherche visant à étudier les stratégies optimales d'attribution des étiquettes basées sur le transport et leur impact sur la convergence de l'apprentissage.

Quand choisir Ultralytics YOLO26)

Pour la plupart des nouveaux projets, Ultralytics offre la meilleure combinaison entre performances et expérience développeur :

  • DéploiementNMS suppressionNMS maximale (NMS: applications nécessitant une inférence cohérente et à faible latence sans la complexité du post-traitement par suppression non maximale.
  • EnvironnementsCPU: appareils sans GPU dédiée, où CPU jusqu'à 43 % plus rapide de YOLO26 offre un avantage décisif.
  • Détection de petits objets : scénarios complexes tels que l'imagerie aérienne par drone ou l'analyse par capteurs IoT, où ProgLoss et STAL améliorent considérablement la précision sur les objets minuscules.

L'avenir de l'IA visuelle : découvrez YOLO26

Si YOLOv10 YOLOX constituent des étapes importantes, le domaine de la vision par ordinateur ne cesse d'évoluer. Pour les développeurs qui se lancent aujourd'hui dans de nouveaux projets, Ultralytics est la solution incontournable.

Sorti en janvier 2026, Ultralytics s'appuie sur la percée fondamentale de la conception de bout en bout NMS lancée par YOLOv10, en l'affinant pour offrir encore plus de stabilité et de vitesse.

YOLO26 se distingue par plusieurs avancées majeures :

  • CPU jusqu'à 43 % plus rapide : en supprimant stratégiquement la perte focale de distribution (DFL), YOLO26 atteint des performances nettement supérieures sur les appareils périphériques sans GPU.
  • Optimiseur MuSGD : inspiré par la stabilité de l'entraînement LLM, ce nouvel hybride de SGD Muon garantit une convergence plus rapide et des cycles d'entraînement très stables.
  • ProgLoss + STAL : ces fonctions de perte avancées apportent des améliorations notables dans la reconnaissance des petits objets, un facteur essentiel pour l'imagerie aérienne et les capteurs IoT.
  • Une polyvalence inégalée : contrairement à YOLOX, qui est strictement un détecteur d'objets, YOLO26 prend en charge de manière native la segmentation d'instances, l'estimation de poses, la classification d'images et la détection OBB au sein d'une seule bibliothèque unifiée.

En savoir plus sur YOLO26

Tirez parti de la Ultralytics

Pour un passage à la production simplifié, les développeurs peuvent utiliser la Ultralytics pour annoter des ensembles de données, entraîner des modèles YOLO26 dans le cloud et les déployer sur n'importe quel appareil périphérique sans aucune configuration requise.

Applications concrètes

Le choix du bon modèle conditionne le succès des déploiements concrets dans divers secteurs.

Analyse vidéo haute vitesse

Pour le traitement de flux vidéo denses, tels que la gestion du trafic dans les villes intelligentes, YOLOv10 offre un avantage significatif grâce à son post-traitement NMS. L'élimination du NMS permet une latence faible et constante, ce qui le rend idéal pour être associé à des algorithmes de suivi tels que BoT-SORT.

Déploiement Legacy Edge

Pour les configurations académiques plus anciennes ou Android héritées fortement optimisées pour les paradigmes convolutifs purs, les modèles plus petits comme YOLOX-Tiny peuvent encore trouver des cas d'utilisation spécialisés où le maintien PyTorch plus anciens est un compromis acceptable.

Appareils modernes et appareils IoT

Pour les déploiements matériels de nouvelle génération, tels que la robotique, les drones et l'analyse des rayons dans les magasins, YOLO26 est la solution ultime. Sa CPU considérablement réduite et sa détection supérieure des petits objets le rendent particulièrement adapté à la navigation autonome et à la gestion granulaire des stocks.

Pour obtenir des comparaisons supplémentaires afin d'élargir votre boîte à outils d'apprentissage profond, vous pouvez également découvrir comment ces modèles se comparent à des alternatives telles que le modèle flexible YOLO11 ou le modèle RT-DETR.


Commentaires