Passer au contenu

YOLOv5 vs RTDETRv2 : Une comparaison de modèle détaillée

Choisir le modèle de détection d'objets optimal est une décision essentielle pour tout projet de vision par ordinateur. Cette page fournit une comparaison technique détaillée entre deux modèles puissants : Ultralytics YOLOv5, une norme industrielle établie connue pour son équilibre entre la vitesse et l'efficacité, et RTDETRv2, un modèle basé sur un transformateur conçu pour une grande précision. Nous allons examiner leurs différences architecturales, leurs benchmarks de performance et leurs cas d'utilisation idéaux afin de vous aider à sélectionner le meilleur modèle pour vos besoins.

Ultralytics YOLOv5 : la norme industrielle établie

Auteur : Glenn Jocher
Organisation : Ultralytics
Date : 2020-06-26
GitHub : https://github.com/ultralytics/yolov5
Docs : https://docs.ultralytics.com/models/yolov5/

Ultralytics YOLOv5 a établi une nouvelle référence pour la détection d'objets en temps réel dès sa sortie, devenant rapidement un favori parmi les développeurs et les chercheurs pour son mélange exceptionnel de vitesse, de précision et de convivialité. Construit entièrement en PyTorch, il est hautement optimisé et facile à entraîner, valider et déployer.

Architecture

YOLOv5 utilise une architecture classique basée sur CNN qui est à la fois efficace et performante.

  • Backbone : Il utilise un backbone CSPDarknet53, qui est une variante de Darknet optimisée avec des connexions Cross Stage Partial (CSP) pour améliorer le flux de gradient et réduire le coût de calcul.
  • Cou : Un réseau d’agrégation de chemins (PANet) est utilisé pour l’agrégation de caractéristiques, combinant efficacement les caractéristiques de différentes échelles pour améliorer la détection d’objets de différentes tailles.
  • Head : Le modèle utilise une tête de détection basée sur des ancres pour prédire les boîtes englobantes, les probabilités de classe et les scores d’objectivité.

Points forts

  • Vitesse et efficacité exceptionnelles : YOLOv5 est hautement optimisé pour des vitesses d'inférence rapides, ce qui en fait un choix de premier ordre pour les applications en temps réel sur une large gamme de matériels, des CPU aux appareils périphériques.
  • Facilité d'utilisation : Reconnu pour son expérience utilisateur simplifiée, YOLOv5 offre une API Python et une CLI simples, soutenues par une documentation exhaustive.
  • Écosystème bien maintenu : En tant que modèle Ultralytics, il bénéficie d'un écosystème robuste et activement développé. Cela comprend une large communauté, des mises à jour fréquentes et une intégration transparente avec des outils tels que Ultralytics HUB pour l'entraînement et le déploiement sans code.
  • Équilibre des performances : YOLOv5 offre un excellent compromis entre vitesse et précision, ce qui le rend très pratique pour divers scénarios réels.
  • Efficacité de la mémoire : Comparés aux modèles basés sur des transformateurs, les modèles YOLOv5 nécessitent généralement beaucoup moins de mémoire CUDA pendant l’entraînement et sont plus efficaces en termes de mémoire pendant l’inférence.
  • Polyvalence : Il prend en charge plusieurs tâches, notamment la détection d’objets, la segmentation d’instance et la classification d’images, le tout dans un framework unifié.
  • Efficacité de l'entraînement : Le processus d'entraînement est rapide et efficace, avec des poids pré-entraînés facilement disponibles sur des ensembles de données comme COCO pour accélérer le développement.

Faiblesses

  • Précision sur les scènes complexes : Bien que très précis, il peut être surpassé par des architectures plus récentes et plus complexes comme RTDETRv2 sur des ensembles de données avec de nombreux objets petits ou occlus.
  • Conception basée sur les ancres : Son recours à des boîtes d'ancrage prédéfinies peut parfois nécessiter un réglage manuel pour obtenir des performances optimales sur les ensembles de données avec des rapports d'aspect d'objet non conventionnels.

Cas d'utilisation idéaux

YOLOv5 excelle dans les applications où la vitesse, l’efficacité des ressources et le développement rapide sont essentiels.

  • Vidéosurveillance en temps réel : Idéal pour les systèmes d'alarme de sécurité et la surveillance des flux vidéo en direct.
  • Edge Computing : Ses modèles légers sont parfaits pour un déploiement sur des appareils aux ressources limitées comme Raspberry Pi et NVIDIA Jetson.
  • Applications mobiles : Convient pour l’inférence sur l’appareil dans les applications mobiles.
  • Automatisation industrielle : Optimise le contrôle qualité et l'IA dans la gestion du trafic.

En savoir plus sur YOLOv5

RTDETRv2 : Transformateur de détection en temps réel de haute précision

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

RTDETRv2 (Real-Time Detection Transformer v2) est un détecteur d'objets de pointe qui exploite la puissance des Vision Transformers (ViT) pour atteindre une haute précision tout en maintenant des performances en temps réel sur du matériel performant.

Architecture

RTDETRv2 utilise une approche hybride qui combine les forces des CNN et des transformateurs.

  • Backbone : Il utilise généralement un CNN (comme les variantes de ResNet) pour une extraction initiale efficace des caractéristiques.
  • Encodeur-Décodeur : Une structure d'encodeur-décodeur basée sur Transformer traite les caractéristiques de l'image. Elle utilise des mécanismes d'auto-attention pour capturer le contexte global, ce qui permet au modèle de mieux comprendre les relations entre les objets distants et les scènes complexes.

Points forts

  • Haute précision : L’architecture Transformer permet à RTDETRv2 d’obtenir d’excellents scores mAP, en particulier sur des ensembles de données complexes avec des objets denses ou de petite taille, tels que ceux de l’analyse d’images satellite.
  • Capacité en temps réel : il est optimisé pour fournir des vitesses d’inférence compétitives, en particulier lorsqu’il est accéléré sur des GPU puissants à l’aide d’outils comme NVIDIA TensorRT.
  • Extraction de caractéristiques robuste : En capturant le contexte global, il fonctionne bien dans des scénarios difficiles comme l'occlusion, ce qui est bénéfique pour des applications comme la conduite autonome.

Faiblesses

  • Coût de calcul élevé : RTDETRv2 a généralement un nombre de paramètres et de FLOPs plus élevé que YOLOv5, ce qui exige des ressources de calcul plus importantes comme la mémoire GPU et la puissance de traitement.
  • Complexité de l'entraînement : L'entraînement de modèles basés sur des transformateurs est souvent plus gourmand en ressources et plus lent que l'entraînement de CNN. Ils nécessitent généralement beaucoup plus de mémoire CUDA, ce qui les rend moins accessibles aux utilisateurs disposant de matériel limité.
  • Vitesse d'inférence sur CPU/Edge : Bien qu'il fonctionne en temps réel sur des GPU puissants, ses performances peuvent être considérablement plus lentes que YOLOv5 sur les CPU ou les appareils périphériques moins puissants.
  • Écosystème et facilité d'utilisation : Il lui manque l'écosystème étendu et unifié, l'outillage et le large soutien communautaire qu'Ultralytics fournit pour ses modèles YOLO.

En savoir plus sur RTDETRv2

Analyse des performances : Vitesse vs. Précision

La principale différence entre YOLOv5 et RTDETRv2 réside dans leur philosophie de conception. YOLOv5 est conçu pour un équilibre optimal entre vitesse et précision sur une large gamme de matériel, ce qui le rend incroyablement polyvalent. En revanche, RTDETRv2 privilégie l'obtention d'une précision maximale, en tirant parti d'une architecture de transformateur plus gourmande en calculs qui fonctionne mieux sur les GPU haut de gamme.

Le tableau ci-dessous met en évidence ces différences. Alors que les modèles RTDETRv2 atteignent des scores mAP plus élevés, les modèles YOLOv5, en particulier les variantes plus petites, offrent des temps d'inférence significativement plus rapides, en particulier sur CPU. Cela fait de YOLOv5 un choix plus pratique pour les applications où une faible latence et un déploiement sur divers matériels sont essentiels.

Modèle Taille
(pixels)
mAPval
50-95
Vitesse
CPU ONNX
(ms)
Vitesse
T4 TensorRT10
(ms)
paramètres
(M)
FLOPs
(B)
YOLOv5n 640 28.0 73.6 1.12 2.6 7.7
YOLOv5s 640 37.4 120.7 1.92 9.1 24.0
YOLOv5m 640 45.4 233.9 4.03 25.1 64.2
YOLOv5l 640 49.0 408.4 6.61 53.2 135.0
YOLOv5x 640 50.7 763.2 11.89 97.2 246.4
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

Conclusion et recommandations

YOLOv5 et RTDETRv2 sont tous deux des modèles de détection d'objets redoutables, mais ils répondent à des besoins différents.

RTDETRv2 est un excellent choix pour les applications où l'obtention de la plus haute précision possible est l'objectif principal, et où des ressources de calcul substantielles (c'est-à-dire des GPU haut de gamme) sont facilement disponibles pour l'entraînement et le déploiement. Son architecture basée sur les transformateurs lui donne un avantage dans les scènes complexes.

Cependant, pour la grande majorité des applications du monde réel, Ultralytics YOLOv5 présente une solution plus intéressante et plus pratique. Son équilibre exceptionnel entre vitesse et précision, combiné à ses faibles besoins en ressources, le rend adapté à un plus large éventail de scénarios de déploiement. Les principaux avantages de l'écosystème Ultralytics bien entretenu—y compris la facilité d'utilisation, la documentation complète, le soutien communautaire actif et les outils tels que Ultralytics HUB—réduisent considérablement la barrière à l'entrée et accélèrent le temps de développement.

Pour les développeurs à la recherche d'un framework moderne, polyvalent et très efficace, les nouveaux modèles Ultralytics tels que YOLOv8 et YOLO11 s'appuient sur les forces de YOLOv5, offrant des performances encore meilleures et plus de fonctionnalités. Ces modèles représentent l'état de l'art en matière de vision par ordinateur conviviale et performante.

Autres comparaisons de modèles

Si vous souhaitez explorer d'autres modèles, consultez ces comparaisons :



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

Commentaires