Passer au contenu

YOLOv8 vs RTDETRv2 : Une comparaison technique complète

Dans le paysage en évolution rapide de la vision par ordinateur, le choix du bon modèle de détection d'objets est essentiel pour la réussite du projet. Cette comparaison se penche sur les distinctions techniques entre YOLOv8la centrale polyvalente basée sur le CNN d'Ultralytics, et RTDETRv2, un modèle sophistiqué basé sur les transformateurs de Baidu. En analysant leurs architectures, leurs performances et leurs besoins en ressources, nous visons à guider les développeurs et les chercheurs vers la solution optimale pour leurs besoins spécifiques.

Visualisation des différences de performance

Le graphique ci-dessous illustre les compromis entre la vitesse et la précision pour différentes tailles de modèles, en mettant en évidence la supériorité de YOLOv8 en termes d'efficacité sur tous les plans.

Analyse des performances : Vitesse vs. Précision

Le tableau suivant présente une comparaison directe des paramètres clés. Alors que RTDETRv2 atteint une grande précision avec ses plus grands modèles, YOLOv8 démontre un avantage significatif en termes de vitesse d'inférence et d'efficacité des paramètres, en particulier sur le matériel CPU où les modèles de transformateurs sont souvent confrontés à des goulots d'étranglement en termes de latence.

ModèleTaille
(pixels)
mAPval
50-95
Vitesse
CPU ONNX
(ms)
Vitesse
T4 TensorRT10
(ms)
paramètres
(M)
FLOPs
(B)
YOLOv8n64037.380.41.473.28.7
YOLOv8s64044.9128.42.6611.228.6
YOLOv8m64050.2234.75.8625.978.9
YOLOv8l64052.9375.29.0643.7165.2
YOLOv8x64053.9479.114.3768.2257.8
RTDETRv2-s64048.1-5.032060
RTDETRv2-m64051.9-7.5136100
RTDETRv2-l64053.4-9.7642136
RTDETRv2-x64054.3-15.0376259

Ultralytics YOLOv8: la norme en matière de polyvalence et de rapidité

Lancement au début de l'année 2023, YOLOv8 représente une avancée significative dans la famille YOLO , en introduisant un cadre unifié pour de multiples tâches de vision par ordinateur. Il a été conçu pour offrir le meilleur compromis possible entre vitesse et précision, ce qui le rend très adapté aux applications en temps réel allant de l'automatisation industrielle à l'infrastructure des villes intelligentes.

Principales caractéristiques architecturales

YOLOv8 utilise une tête de détection sans ancrage, ce qui simplifie le processus d'apprentissage et améliore la généralisation pour différentes formes d'objets. Son architecture comprend un réseau Darknet à étapes croisées (CSP) pour une extraction efficace des caractéristiques et un réseau d'agrégation de chemins (PAN)-FPN pour une fusion multi-échelle robuste. Contrairement à de nombreux concurrents, YOLOv8 prend en charge de manière native la classification d'images, la segmentation d'instances, l'estimation de la pose et la détection d'objets orientés (OBB) au sein d'une API unique et conviviale.

Points forts

  • Efficacité exceptionnelle : Optimise l'utilisation de la mémoire et la charge de calcul, ce qui permet un déploiement sur des appareils périphériques tels que NVIDIA Jetson et Raspberry Pi.
  • Vitesse d'apprentissage : Nécessite beaucoup moins de mémoire CUDA et de temps d'apprentissage par rapport aux architectures basées sur les transformateurs.
  • Un écosystème riche : Soutenu par une documentation complète, un support communautaire actif et des intégrations transparentes avec des outils tels que TensorRT et OpenVINO.
  • Facilité d'utilisation : l'expérience "pip install ultralytics" permet aux développeurs de commencer à se former et à prédire en quelques minutes.

En savoir plus sur YOLOv8

RTDETRv2 : Précision du transformateur de poussée

RTDETRv2 est une évolution du transformateur de détection en temps réelRT-DETR, développé pour exploiter les capacités de contexte global des transformateurs de vision (ViT) tout en essayant d'atténuer leurs problèmes de latence inhérents. Il vise à battre les modèles YOLO sur les critères de précision en tirant parti des mécanismes d'auto-attention.

  • Auteurs : Wenyu Lv, Yian Zhao, Qinyao Chang, Kui Huang, Guanzhong Wang et Yi Liu
  • Organisation :Baidu
  • Date : 2024-07-24 (version v2)
  • Arxiv :DocumentRT-DETRv2
  • GitHub :RT-DETR

Aperçu de l'architecture

RTDETRv2 emploie une approche hybride, en utilisant une épine dorsale CNN (typiquement ResNet) pour extraire des caractéristiques qui sont ensuite traitées par un transformateur encodeur-décodeur. Le mécanisme d'auto-attention permet au modèle de comprendre les relations entre des parties éloignées d'une image, ce qui est utile dans les scènes complexes avec occlusion. La version 2 introduit un opérateur d'échantillonnage discret et améliore la stabilité de l'apprentissage dynamique.

Points forts et faiblesses

  • Points forts :
    • Contexte global : Excellent pour gérer les relations complexes entre les objets et les occlusions grâce à sa nature de transformateur.
    • Précision élevée : Les plus grands modèles obtiennent des scoresmAP légèrement plus élevés sur l'ensemble de données COCO que YOLOv8x.
    • Sans ancrage : Comme YOLOv8, il élimine la nécessité d'un réglage manuel de la boîte à mouillage.
  • Faiblesses :
    • Intensif en ressources : le nombre élevé de FLOPs et de paramètres rend l'apprentissage plus lent sur les CPU et nécessite des GPUs coûteux pour l'apprentissage.
    • Prise en charge limitée des tâches : Principalement axé sur la détection d'objets, il ne dispose pas de la polyvalence multitâche native (segmentation, pose, etc.) du cadre Ultralytics .
    • Déploiement complexe : L'architecture du transformateur peut être plus difficile à optimiser pour les cibles mobiles et embarquées que les CNN purs.

En savoir plus sur RTDETRv2

Comparaison détaillée : Architecture et facilité d'utilisation

Efficacité de l'entraînement et mémoire

L'une des différences les plus marquées réside dans le processus de formation. Les modèles basés sur les transformateurs comme RTDETRv2 sont notoirement gourmands en données et en mémoire. Ils nécessitent souvent beaucoup plus de mémoireCUDA et des époques d'apprentissage plus longues pour converger par rapport aux CNN comme YOLOv8. Pour les chercheurs ou les startups disposant de ressources GPU limitées, Ultralytics YOLOv8 offre une barrière à l'entrée beaucoup plus accessible, permettant un entraînement personnalisé efficace sur du matériel grand public.

Polyvalence et écosystème

Alors que RTDETRv2 est un concurrent académique solide pour les tâches de détection pure, il lui manque l'écosystème holistique qui entoure les modèles Ultralytics . YOLOv8 n'est pas seulement un modèle ; il fait partie d'une plateforme qui le supporte :

  • Gestion des données : Manipulation aisée d'ensembles de données tels que COCO et Objects365.
  • MLOps : Intégration avec Weights & Biases, Cometet Ultralytics HUB.
  • Déploiement : Exportation en un clic vers des formats tels que ONNXCoreML et TFLite pour un support matériel diversifié.

Considérations sur le matériel

Si votre cible de déploiement implique une inférence deCPU (par exemple, des serveurs standard, des ordinateurs portables) ou des périphériques de faible puissance, YOLOv8 est de loin le meilleur choix en raison de son architecture CNN optimisée. RTDETRv2 est plutôt réservé aux scénarios avec une accélération GPU haut de gamme dédiée.

Cas d'utilisation idéaux

Quand choisir YOLOv8

YOLOv8 est le choix privilégié pour la grande majorité des déploiements dans le monde réel. Son équilibre entre vitesse, précision et facilité d'utilisation le rend idéal pour :

  • Analyse en temps réel : Surveillance du trafic, analyse de la vente au détail et analyse des sports pour lesquels un taux de rafraîchissement élevé est essentiel.
  • Informatique périphérique : Exécution de l'IA sur des drones, des robots ou des applications mobiles où la puissance et le calcul sont limités.
  • Applications multitâches : Projets nécessitant le suivi, la segmentation et la classification simultanés d 'objets.

Quand choisir RTDETRv2

RTDETRv2 brille dans des niches spécifiques où le coût de calcul est secondaire par rapport aux gains de précision marginaux :

  • Recherche universitaire : Étude des propriétés des transformateurs de vision.
  • Traitement en nuage : Traitement par lots d'images sur de puissantes fermes de serveurs où la latence est moins importante que la détection d'objets difficiles ou occultés.

Exemple de code : Démarrer avec YOLOv8

L'API Ultralytics est conçue pour être simple. Vous pouvez charger un modèle pré-entraîné, exécuter des prédictions ou commencer l'entraînement avec seulement quelques lignes de code Python .

from ultralytics import YOLO

# Load a pretrained YOLOv8 model
model = YOLO("yolov8n.pt")

# Run inference on an image
results = model("https://ultralytics.com/images/bus.jpg")

# Display the results
results[0].show()

# Train on a custom dataset
# model.train(data="coco8.yaml", epochs=100, imgsz=640)

Conclusion

RTDETRv2 démontre le potentiel des architectures de transformateurs pour atteindre une haute précision, Ultralytics YOLOv8 d'Ultralytics reste le meilleur choix pour la vision par ordinateur pratique et de qualité. L'efficacité architecturale de YOLOv8 se traduit par une inférence plus rapide, des coûts de formation plus faibles et une compatibilité matérielle plus large. En outre, l'écosystème robuste d'Ultralytics garantit que les développeurs disposent des outils, de la documentation et du soutien de la communauté nécessaires pour donner vie à leurs solutions d'IA de manière efficace.

Pour ceux qui recherchent le nec plus ultra en matière de performance et d'efficacité, nous recommandons également d'explorer YOLO11qui affine encore l'héritage de YOLO avec des compromis précision-vitesse encore meilleurs.

Explorer d'autres modèles

Si vous souhaitez explorer d'autres options au sein de l'écosystème Ultralytics ou comparer d'autres modèles SOTA, consultez ces ressources :

  • YOLO11: Le dernier modèle de YOLO à la pointe de la technologie.
  • YOLOv10: un détecteur d'objets en temps réel de bout en bout.
  • RT-DETR: Le transformateur de détection en temps réel original.
  • YOLOv9: se concentre sur les informations de gradient programmables.

Commentaires