Passer au contenu

RTDETRv2 vs YOLOv8 : Une comparaison technique

Choisir le bon modèle de détection d'objets est une décision cruciale qui équilibre la précision, la vitesse et le coût de calcul. Cette page fournit une comparaison technique détaillée entre deux architectures puissantes : RTDETRv2, un modèle basé sur un transformateur de Baidu, et Ultralytics YOLOv8, un modèle de réseau neuronal convolutif (CNN) de pointe. Nous allons approfondir leurs différences architecturales, leurs mesures de performance et leurs cas d'utilisation idéaux pour vous aider à sélectionner le meilleur modèle pour votre projet.

RTDETRv2 : Transformer v2 de détection en temps réel

RTDETRv2 (Real-Time Detection Transformer v2) est un détecteur d'objets de pointe qui exploite la puissance des Vision Transformers pour atteindre une haute précision tout en maintenant des performances en temps réel. Il représente une évolution de l'architecture DETR (DEtection TRansformer) originale, optimisée pour la vitesse.

Auteurs : Wenyu Lv, Yian Zhao, Qinyao Chang, Kui Huang, Guanzhong Wang et Yi Liu
Organisation : Baidu
Date : 2023-04-17 (RT-DETR initial), 2024-07-24 (améliorations de RT-DETRv2)
Arxiv : https://arxiv.org/abs/2304.08069, https://arxiv.org/abs/2407.17140
GitHub : https://github.com/lyuwenyu/RT-DETR/tree/main/rtdetrv2_pytorch
Docs : https://github.com/lyuwenyu/RT-DETR/tree/main/rtdetrv2_pytorch#readme

Architecture

RTDETRv2 utilise une architecture hybride qui combine un backbone CNN conventionnel avec un encodeur-décodeur basé sur un Transformer. Le backbone CNN extrait les cartes de caractéristiques initiales, qui sont ensuite introduites dans le transformer. Le mécanisme d'auto-attention du transformer permet au modèle de capturer les relations globales entre les différentes parties d'une image. Cette compréhension du contexte global est un élément clé de différenciation par rapport aux modèles purement basés sur les CNN et permet à RTDETRv2 d'exceller dans la détection d'objets dans des scènes complexes et encombrées.

Points forts

  • Haute précision : L'architecture de transformateur permet à RTDETRv2 d'atteindre d'excellents scores mAP, en particulier sur les jeux de données avec des objets denses ou petits où le contexte global est bénéfique.
  • Extraction de caractéristiques robuste : En traitant le contexte de l'image entière en une seule fois, il peut mieux gérer les occlusions et les relations complexes entre les objets.
  • Temps réel sur GPU : Lorsqu'il est accéléré avec des outils tels que NVIDIA TensorRT, RTDETRv2 peut atteindre des vitesses d'inférence en temps réel sur les GPU haut de gamme.

Faiblesses

  • Coût de calcul élevé : Les modèles basés sur des transformateurs sont notoirement gourmands en ressources. RTDETRv2 a un nombre de paramètres et de FLOPs plus élevé que YOLOv8, ce qui exige un matériel plus puissant.
  • Formation lente et utilisation élevée de la mémoire : La formation des transformateurs est coûteuse en calcul et lente. Ils nécessitent souvent beaucoup plus de mémoire CUDA que les modèles basés sur CNN comme YOLOv8, ce qui les rend inaccessibles aux utilisateurs disposant de ressources matérielles limitées.
  • Inférence CPU plus lente : Bien que rapide sur les GPU, ses performances sur les CPU sont considérablement inférieures à celles des CNN hautement optimisés comme YOLOv8.
  • Écosystème limité : RTDETRv2 manque l’écosystème étendu et unifié fourni par Ultralytics. Cela comprend moins d’intégrations, une documentation moins complète et une plus petite communauté pour le support.

En savoir plus sur RT-DETR

Ultralytics YOLOv8 : vitesse, polyvalence et facilité d’utilisation

Ultralytics YOLOv8 est la dernière itération de la famille YOLO (You Only Look Once) très performante. Développé par Ultralytics, il établit une nouvelle norme en matière de vitesse, de précision et de facilité d'utilisation, ce qui en fait un choix de premier ordre pour un large éventail de tâches de vision par ordinateur.

Auteurs : Glenn Jocher, Ayush Chaurasia et Jing Qiu
Organisation : Ultralytics
Date : 2023-01-10
GitHub : https://github.com/ultralytics/ultralytics
Docs : https://docs.ultralytics.com/models/yolov8/

Architecture

YOLOv8 présente une architecture à une seule étape, sans ancres et à la pointe de la technologie. Il utilise un nouveau backbone CSP (Cross Stage Partial) et une tête découplée, qui sépare les tâches de classification et de régression pour une précision améliorée. L’ensemble de l’architecture est hautement optimisé pour un équilibre exceptionnel entre performance et efficacité, ce qui lui permet de fonctionner sur un large éventail de matériel, des puissants GPU cloud aux appareils edge aux ressources limitées.

Points forts

  • Équilibre des performances : YOLOv8 offre un compromis exceptionnel entre vitesse et précision, ce qui le rend adapté à diverses applications réelles où les deux mesures sont essentielles.
  • Polyvalence : Contrairement à RTDETRv2, qui est principalement un détecteur d'objets, YOLOv8 est un framework multitâche qui prend en charge nativement la détection d'objets, la segmentation d'instance, la classification d'images, l'estimation de pose et la détection d'objets orientés (OBB).
  • Facilité d'utilisation : YOLOv8 est conçu pour une expérience utilisateur simplifiée avec une API Python simple et une CLI puissante. La documentation exhaustive et la communauté active facilitent la prise en main pour les développeurs.
  • Efficacité de l'entraînement et faible mémoire : YOLOv8 s'entraîne beaucoup plus rapidement et nécessite beaucoup moins de mémoire CUDA que RTDETRv2. Cela le rend plus accessible et rentable pour l'entraînement personnalisé.
  • Écosystème bien maintenu : Ultralytics fournit un écosystème robuste avec des mises à jour fréquentes, de nombreuses intégrations et des outils tels que Ultralytics HUB pour une gestion et un entraînement des ensembles de données en toute transparence.

Faiblesses

  • Contexte global : Bien que très efficace, son architecture basée sur les CNN peut ne pas capturer le contexte global aussi complètement qu'un transformateur dans certains scénarios de niche avec des relations d'objets extrêmement complexes. Cependant, pour la plupart des applications, ses performances sont plus que suffisantes.

En savoir plus sur YOLOv8

Comparaison directe des performances : RTDETRv2 contre YOLOv8

La comparaison des performances met en évidence les différentes philosophies de conception des deux modèles. RTDETRv2 vise une précision maximale, tandis que YOLOv8 est conçu pour un équilibre supérieur entre la vitesse, la précision et l'efficacité sur une gamme de matériels.

Modèle Taille
(pixels)
mAPval
50-95
Vitesse
CPU ONNX
(ms)
Vitesse
T4 TensorRT10
(ms)
paramètres
(M)
FLOPs
(B)
RTDETRv2-s 640 48.1 - 5.03 20 60
RTDETRv2-m 640 51.9 - 7.51 36 100
RTDETRv2-l 640 53.4 - 9.76 42 136
RTDETRv2-x 640 54.3 - 15.03 76 259
YOLOv8n 640 37.3 80.4 1.47 3.2 8.7
YOLOv8s 640 44.9 128.4 2.66 11.2 28.6
YOLOv8m 640 50.2 234.7 5.86 25.9 78.9
YOLOv8l 640 52.9 375.2 9.06 43.7 165.2
YOLOv8x 640 53.9 479.1 14.37 68.2 257.8

D'après le tableau, nous pouvons tirer plusieurs conclusions :

  • Précision : Le plus grand modèle RTDETRv2-x surpasse légèrement YOLOv8x en mAP. Cependant, dans l'ensemble, les modèles YOLOv8 offrent une précision très compétitive pour leur taille. Par exemple, YOLOv8l correspond presque à RTDETRv2-l en précision avec moins de FLOPs.
  • Vitesse GPU : YOLOv8 est considérablement plus rapide, en particulier ses variantes plus petites. YOLOv8n est plus de 3 fois plus rapide que le plus petit modèle RTDETRv2, ce qui le rend idéal pour les applications à fréquence d’images élevée. Même le plus grand modèle YOLOv8x est plus rapide que son homologue RTDETRv2-x.
  • Vitesse du CPU : YOLOv8 démontre un avantage considérable en matière d'inférence CPU, un facteur essentiel pour le déploiement sur de nombreux appareils périphériques et serveurs standard sans GPU dédiés.
  • Efficacité : Les modèles YOLOv8 sont beaucoup plus efficaces en termes de paramètres et de FLOPs. YOLOv8x atteint presque la même précision que RTDETRv2-x avec moins de paramètres et de FLOPs, ce qui témoigne d'une efficacité architecturale supérieure.

Formation et déploiement

En matière d'entraînement, la différence est frappante. L'entraînement de RTDETRv2 est un processus gourmand en ressources qui exige des GPU haut de gamme avec de grandes quantités de VRAM et peut prendre un temps considérable.

En revanche, le framework Ultralytics YOLOv8 est conçu pour l'efficacité de l'entraînement. Il permet un entraînement personnalisé rapide avec des besoins de mémoire réduits, ce qui le rend accessible à un plus large éventail de développeurs. Le flux de travail simplifié, de la préparation des données à l'entraînement et à la validation du modèle, est un avantage significatif.

Pour le déploiement, la polyvalence de YOLOv8 brille. Il peut être facilement exporté vers de nombreux formats tels que ONNX, TensorRT, CoreML et OpenVINO, assurant des performances optimisées sur pratiquement n'importe quelle plateforme, des serveurs cloud aux téléphones mobiles et aux systèmes embarqués comme Raspberry Pi.

Conclusion : Quel modèle devriez-vous choisir ?

RTDETRv2 est un modèle puissant pour les chercheurs et les équipes disposant d'importantes ressources de calcul qui ont besoin d'extraire la dernière fraction de pourcentage de précision pour des tâches complexes de détection d'objets, comme dans la conduite autonome ou l'analyse d'images satellite.

Cependant, pour la grande majorité des développeurs, des chercheurs et des entreprises, Ultralytics YOLOv8 est clairement le meilleur choix. Il offre une solution bien plus pratique et efficace en offrant un équilibre exceptionnel entre vitesse et précision. Ses principaux avantages—la polyvalence dans de nombreuses tâches, la facilité d'utilisation, l'efficacité supérieure de la formation, les besoins réduits en ressources et un écosystème complet et bien pris en charge—en font le choix idéal pour créer rapidement et efficacement des applications de vision par ordinateur robustes et réelles. Que vous déployiez sur un serveur haut de gamme ou sur un appareil périphérique à faible consommation d'énergie, YOLOv8 fournit une solution évolutive, performante et conviviale.

Explorer d'autres modèles

Si vous souhaitez explorer d'autres modèles, consultez ces comparaisons supplémentaires dans notre série de comparaison de modèles :



📅 Créé il y a 1 an ✏️ Mis à jour il y a 1 mois

Commentaires