Passer au contenu

YOLOX vs. PP-YOLOE+ : Une plongée en profondeur dans la détection d'objets sans ancrage

Le choix de la bonne architecture de vision par ordinateur est essentiel pour la réussite d'un projet, car il permet d'équilibrer l'efficacité du calcul et la précision de la détection. Cette comparaison technique explore YOLOX et PP-YOLOE+, deux modèles de détection d'objets sans ancrage qui ont influencé le paysage de la vision artificielle en temps réel. Nous analysons leurs innovations architecturales, leurs performances de référence et les considérations relatives au déploiement afin de vous aider à déterminer le modèle le mieux adapté à votre application.

YOLOX : la simplicité au service de la performance

YOLOX, introduit par Megvii en 2021, a revitalisé la série YOLO en passant à un mécanisme sans ancrage et en incorporant des techniques de détection avancées. Il vise à combler le fossé entre la recherche universitaire et l'application industrielle en simplifiant le pipeline de détection tout en maintenant des performances élevées.

Détails techniques :

Architecture et innovations clés

YOLOX s'écarte des itérations précédentes de YOLO en supprimant les contraintes de la boîte d'ancrage, qui nécessitaient souvent un réglage heuristique. Au lieu de cela, il traite la détection d'objets comme un problème de régression sur une grille, en prédisant directement les coordonnées de la boîte d'ancrage.

  • Tête découplée : YOLOX utilise une structure de tête découplée, séparant les tâches de classification et de localisation dans des branches différentes. Cette séparation résout le conflit entre la confiance dans la classification et la précision de la localisation, ce qui permet une convergence plus rapide lors de l'apprentissage du modèle.
  • Attribution d'étiquettes SimOTA : SimOTA (Simplified Optimal Transport Assignment) est un élément central de YOLOX. Cette stratégie dynamique d'attribution d'étiquettes calcule le coût de la mise en correspondance des objets de la vérité de terrain avec les prédictions sur la base des pertes de classification et de régression, en veillant à ce que les prédictions de haute qualité soient privilégiées.
  • Conception sans ancrage : En éliminant les boîtes d'ancrage, YOLOX réduit le nombre de paramètres de conception et simplifie la complexité du réseau, ce qui le rend plus généralisable à des objets de formes variées.

Comprendre SimOTA

SimOTA traite le problème de l'attribution des étiquettes comme une tâche de transport optimale. Il assigne dynamiquement des échantillons positifs à la vérité terrain qui minimise le coût global de l'appariement. Cela permet au modèle de sélectionner de manière adaptative les meilleurs échantillons d'entraînement sans réglage manuel des seuils, ce qui améliore considérablement la précision dans les scènes encombrées.

Points forts et faiblesses

Points forts : YOLOX offre un bon équilibre entre vitesse et précision, ce qui en fait un choix fiable pour les tâches de détection générales. Son absence d'ancrage simplifie le déploiement, car il n'est pas nécessaire de regrouper les ancres pour des ensembles de données spécifiques. L'utilisation de techniques d'augmentation des données solides, telles que Mosaic et MixUp , renforce encore sa robustesse.

Points faibles : Bien qu'innovante à sa sortie, la vitesse d'inférence de YOLOX sur les CPU peut être inférieure à celle d'architectures plus récentes et plus optimisées. De plus, la mise en place de l'environnement et du pipeline d'entraînement peut être complexe par rapport à des frameworks modernes plus intégrés.

En savoir plus sur YOLOX

PP-YOLOE+ : La puissance industrielle de Baidu

PP-YOLOE+ est une évolution de l'architecture PP-YOLOE, développée par l'équipe de Baidu pour l'écosystème PaddlePaddle . Lancée en 2022, elle est conçue spécifiquement pour les applications industrielles où la haute précision et l'efficacité de l'inférence sont primordiales.

Détails techniques :

Architecture et principales fonctionnalités

PP-YOLOE+ s'appuie sur le paradigme de l'absence d'ancrage mais introduit plusieurs optimisations pour repousser les limites de la précision et de la vitesse, en particulier sur le matériel GPU .

  • Dorsale et cou : Il utilise l'épine dorsale du CSPRepResNet avec de grands champs réceptifs effectifs et un réseau d'agrégation de chemins (PAN). Cette combinaison garantit une extraction robuste des caractéristiques à plusieurs échelles.
  • Apprentissage de l'alignement des tâches (TAL) : pour résoudre le problème du décalage entre la confiance dans la classification et la qualité de la localisation, PP-YOLOE+ utilise le TAL. Cet apprentissage aligne explicitement les deux tâches au cours de la formation, garantissant que les scores de confiance les plus élevés correspondent aux boîtes de délimitation les plus précises.
  • Tête efficace alignée sur les tâches (ET-Head) : La tête ET est conçue pour être efficace en termes de calcul tout en conservant les avantages d'une tête découplée, optimisant le modèle pour une inférence rapide en temps réel.

Points forts et faiblesses

Points forts : PP-YOLOE+ démontre des performances exceptionnelles sur l'ensemble de donnéesCOCO , dépassant souvent YOLOX en termes de précision moyenne (mAP) pour des tailles de modèles similaires. Il est très efficace pour la détection des défauts industriels et les scénarios nécessitant une localisation précise.

Faiblesses : La principale limitation est sa dépendance à l'égard du cadrePaddlePaddle . Pour les développeurs utilisant principalement PyTorchl'adoption de PP-YOLOE+ implique une courbe d'apprentissage plus raide et des frictions potentielles lors de l'intégration avec les pipelines MLOps existants ou de la conversion des modèles vers des formats tels que ONNX.

En savoir plus sur PP-YOLOE+

Comparaison technique : Mesures et analyses

Lorsque l'on compare YOLOX et PP-YOLOE+, les différences de philosophie de conception apparaissent clairement dans les mesures de performance. Le tableau suivant donne un aperçu côte à côte de leurs capacités à différentes échelles de modèles.

ModèleTaille
(pixels)
mAPval
50-95
Vitesse
CPU ONNX
(ms)
Vitesse
T4 TensorRT10
(ms)
paramètres
(M)
FLOPs
(B)
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
PP-YOLOE+t64039.9-2.844.8519.15
PP-YOLOE+s64043.7-2.627.9317.36
PP-YOLOE+m64049.8-5.5623.4349.91
PP-YOLOE+l64052.9-8.3652.2110.07
PP-YOLOE+x64054.7-14.398.42206.59

Analyse des performances

  • Précision : PP-YOLOE+ obtient systématiquement des scores mAP supérieurs à ceux de YOLOX pour des tailles de modèles comparables. En particulier, le modèle PP-YOLOE+x atteint un score mAP de 54,7 %, surpassant la variante YOLOX-x. Cela met en évidence l'efficacité de l'apprentissage par alignement des tâches et de l'épine dorsale CSPRepResNet dans la capture de détails fins.
  • Efficacité : En termes de coût de calcul, les modèles PP-YOLOE+ utilisent généralement moins de paramètres et de FLOP pour atteindre une précision supérieure. Cette efficacité est essentielle pour déployer des modèles de haute précision sur du matériel dont les budgets thermiques ou énergétiques sont limités.
  • Vitesse : les vitesses d'inférence sont compétitives. Bien que YOLOX-s ait un léger avantage en termes de vitesse sur son homologue, les modèles PP-YOLOE+ de plus grande taille affichent des temps d'inférence plus rapides sur le matériel TensorRT, ce qui suggère une meilleure évolutivité pour les déploiements côté serveur.

Cas d'utilisation concrets

Le choix entre ces modèles dépend souvent de l'environnement opérationnel spécifique et des exigences de la tâche.

Cas d'utilisation de YOLOX

  • Bases de recherche : En raison de son architecture propre et sans ancrage, YOLOX est fréquemment utilisé comme base de référence pour le développement de nouvelles méthodologies de détection.
  • Navigation robotique : Son bon compromis entre vitesse et précision en fait un outil adapté aux modules de perception robotique où il est nécessaire d'éviter les obstacles en temps réel.
  • Systèmes autonomes : La tête découplée de YOLOX facilite les tâches nécessitant une régression stable de la boîte englobante, utile pour le suivi d'objets dans les scénarios de conduite autonome.

Cas d'utilisation de PP-YOLOE

  • Contrôle de la qualité industrielle : La haute précision du modèle est idéale pour identifier les moindres défauts dans les chaînes de fabrication, ce qui est l'un des principaux objectifs de l'IA dans le secteur manufacturier.
  • L'IA de pointe dans la fabrication : Avec une prise en charge optimisée des exportations pour le matériel souvent utilisé dans les milieux industriels, PP-YOLOE+ s'intègre bien dans les caméras intelligentes et les appareils périphériques.
  • Commerce de détail intelligent : La haute précision est utile dans les environnements de vente au détail encombrés pour des applications telles que la gestion des stocks et la surveillance des rayons.

Ultralytics YOLO11: l'alternative supérieure

YOLOX et PP-YOLOE+ sont des modèles performants, Ultralytics YOLO11 représente l'avant-garde de la vision par ordinateur, offrant une solution complète qui répond aux limites de ses prédécesseurs. YOLO11 n'est pas seulement un modèle de détection, c'est un cadre unifié conçu pour le développeur moderne.

Pourquoi choisir YOLO11?

  • Une polyvalence inégalée : Contrairement à YOLOX et PP-YOLOE+ qui se concentrent principalement sur la détection, YOLO11 prend en charge de manière native un large éventail de tâches, notamment la segmentation d'instances, l'estimation de la pose, l'OBB (Oriented Bounding Box) et la classification. Cela vous permet d'aborder des problèmes à multiples facettes avec une seule base de code.
  • Facilité d'utilisation : Ultralytics donne la priorité à l'expérience des développeurs. Avec une API Python simple et une interface en ligne de commande, vous pouvez passer de l'installation à la formation en quelques minutes. La documentation complète garantit que vous ne serez jamais perdu.
  • Équilibre des performances : YOLO11 est conçu pour offrir un compromis optimal entre vitesse et précision. Il fournit des résultats de pointe tout en nécessitant moins de mémoire pendant la formation que les modèles basés sur les transformateurs, ce qui le rend accessible à un plus grand nombre d'équipements.
  • Un écosystème bien entretenu : Soutenu par une communauté active et des mises à jour fréquentes, l'écosystème Ultralytics garantit que vos outils restent à jour. L'intégration avec les plateformes de gestion des ensembles de données et de MLOps rationalise l'ensemble du cycle de vie du projet.
  • Efficacité de l'entraînement : Grâce à des routines d'entraînement optimisées et à des poids pré-entraînés de haute qualité, YOLO11 converge plus rapidement, ce qui permet d'économiser du temps de calcul et de l'énergie.

Démarrer avec YOLO11

L'exécution de prédictions avec YOLO11 est incroyablement simple. Quelques lignes de code suffisent pour detect objets dans une image :

from ultralytics import YOLO

# Load a pre-trained YOLO11 model
model = YOLO("yolo11n.pt")

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

# Display results
results[0].show()

Pour ceux qui souhaitent faire d'autres comparaisons architecturales, nous vous invitons à lire notre analyse sur YOLO11 vs. YOLOX ou YOLO11 vs. PP-YOLOE+ pour voir exactement comment la dernière génération surpasse la concurrence.


Commentaires