YOLOv5 vs RTDETRv2 : Évaluation des architectures CNN et Transformer pour la détection d'objets
Le paysage de la vision par ordinateur s'est considérablement élargi au cours des dernières années, offrant aux développeurs un large éventail d'architectures pour aborder des tâches visuelles complexes. Parmi les paradigmes les plus populaires figurent les réseaux de neurones convolutifs (CNN) et les transformateurs de détection (DETR).
Ce guide propose une comparaison technique approfondie entre deux modèles pivots dans ces catégories : Ultralytics YOLOv5, un modèle basé sur les CNN hautement efficace et largement adopté, et RTDETRv2, un détecteur d'objets en temps réel basé sur les transformateurs à la pointe de la technologie.
Ultralytics YOLOv5 : La référence industrielle pour l'efficacité
Depuis sa sortie, Ultralytics YOLOv5 est devenu une pierre angulaire de la communauté IA, propulsant des milliers d'applications commerciales et de projets de recherche à travers le monde. Construit entièrement sur le framework PyTorch, il privilégie une expérience développeur intuitive sans compromis sur les performances en temps réel.
Caractéristiques principales :
- Auteur : Glenn Jocher
- Organisation : Ultralytics
- Date : 26-06-2020
- Liens : Dépôt GitHub
Architecture et points forts
YOLOv5 utilise une architecture CNN rationalisée conçue pour maximiser l'efficacité de l'extraction de caractéristiques tout en conservant une empreinte mémoire extrêmement faible. Il emploie une dorsale CSPDarknet et un cou PANet, créant une combinaison puissante pour la fusion de caractéristiques multi-échelles.
L'un des avantages principaux de YOLOv5 est son équilibre des performances. Il offre un compromis exceptionnel entre vitesse et précision, ce qui en fait un choix idéal pour le déploiement de modèles sur du matériel aux ressources limitées comme les appareils NVIDIA Jetson et les smartphones.
En outre, YOLOv5 affiche une polyvalence inégalée. Contrairement aux modèles strictement limités aux prédictions de boîtes englobantes, YOLOv5 prend nativement en charge la classification d'images et la segmentation d'instances, fournissant un framework unifié pour des tâches visuelles variées. Son efficacité d'entraînement est également remarquable, nécessitant beaucoup moins de mémoire CUDA durant l'entraînement comparé aux architectures basées sur les transformateurs.
Faiblesses
Parce qu'il repose sur un framework CNN plus ancien, YOLOv5 dépend intrinsèquement de la Non-Maximum Suppression (NMS) durant le post-traitement pour éliminer les boîtes englobantes en double. Bien qu'elle soit hautement optimisée au sein du framework Ultralytics, la NMS peut occasionnellement introduire des goulots d'étranglement de latence sur les NPU de périphérie spécialisés.
RTDETRv2 : Les Transformers temps réel par Baidu
RTDETRv2 (Real-Time Detection Transformer v2) représente un bond en avant substantiel dans l'application des architectures transformatrices à la détection d'objets en temps réel, corrigeant les inefficacités computationnelles qui ont historiquement entravé les DETR standards.
Caractéristiques principales :
- Auteurs : Wenyu Lv, Yian Zhao, Qinyao Chang, Kui Huang, Guanzhong Wang et Yi Liu
- Organisation : Baidu
- Date : 2024-07-24
- Liens : Article Arxiv, Dépôt GitHub
Architecture et points forts
RTDETRv2 s'appuie sur son prédécesseur en utilisant un encodeur hybride et une conception de décodeur flexible pour traiter les images. Le mécanisme d'auto-attention du transformateur donne au modèle une compréhension globale du contexte de l'image, lui permettant d'être exceptionnellement performant dans des scènes complexes avec une forte occlusion d'objets.
A defining feature of RTDETRv2 is its end-to-end, NMS-free design. By predicting object queries directly without requiring anchor boxes or NMS post-processing, it simplifies the inference pipeline. This architecture achieves an impressive mAP (mean Average Precision) on benchmark datasets like COCO.
Faiblesses
Malgré ses capacités en temps réel, RTDETRv2 présente des exigences de mémoire nettement plus élevées que les modèles YOLO. Les mécanismes d'attention dans les transformateurs évoluent de façon quadratique avec la longueur de la séquence, ce qui peut mener à des erreurs de mémoire insuffisante (out-of-memory) lors de l'entraînement haute résolution si tu n'utilises pas des clusters GPU massifs. De plus, il manque de la polyvalence prête à l'emploi de l'écosystème Ultralytics, se concentrant principalement uniquement sur la détection d'objets 2D sans prise en charge native de la segmentation ou de l'estimation de pose.
Tableau de comparaison des performances
Pour évaluer objectivement ces architectures, nous avons compilé leurs mesures de performance. Les valeurs mises en gras représentent les métriques les plus efficaces ou les plus performantes à travers les échelles testées.
| Modèle | taille (pixels) | mAPval 50-95 | Vitesse CPU ONNX (ms) | Vitesse T4 TensorRT10 (ms) | params (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 |
Alors que RTDETRv2-x atteint le mAP absolu le plus élevé, il nécessite près de 30 fois plus de paramètres que YOLOv5n. Pour les applications à haute vitesse tournant sur du matériel limité, les modèles Ultralytics offrent systématiquement la meilleure efficacité computationnelle.
L'avantage de l'écosystème Ultralytics
Lorsque tu fais passer un modèle d'un notebook de recherche à un environnement de production, le logiciel entourant le modèle est tout aussi important que l'architecture du réseau de neurones. L'écosystème bien entretenu fourni par Ultralytics accélère considérablement le cycle de vie du développement.
Facilité d'utilisation inégalée
Les modèles Ultralytics privilégient une expérience utilisateur incroyablement simplifiée. Que tu veuilles entraîner un modèle personnalisé, exécuter une validation ou exporter vers des formats spécifiques au matériel comme TensorRT ou ONNX, l'API Python Ultralytics le rend réalisable en seulement quelques lignes de code.
Voici un exemple de code pratique démontrant à quel point il est simple d'entraîner et d'exécuter l'inférence avec un modèle Ultralytics :
from ultralytics import YOLO
# Initialize the model (automatically downloads the weights)
model = YOLO("yolov5s.pt")
# Train the model on the COCO8 dataset
results = model.train(data="coco8.yaml", epochs=50, imgsz=640, device="cpu")
# Perform inference on an online image
inference_results = model.predict("https://ultralytics.com/images/bus.jpg")
# Display the resulting image with bounding boxes
inference_results[0].show()Cette API simple et unifiée prend en charge nativement les intégrations de suivi d'expériences avec des outils comme Weights & Biases et Comet, permettant aux développeurs de journaliser les métriques de manière transparente sans écrire de code répétitif complexe.
Cas d'utilisation et recommandations
Choisir entre YOLOv5 et RT-DETR dépend des exigences spécifiques de ton projet, des contraintes de déploiement et de tes préférences en matière d'écosystème.
Quand choisir YOLOv5
YOLOv5 est un choix solide pour :
- Systèmes de production éprouvés : Déploiements existants où l'historique de stabilité de YOLOv5, sa documentation étendue et son immense soutien communautaire sont valorisés.
- Entraînement avec ressources limitées : Environnements dotés de ressources GPU limitées où le pipeline d'entraînement efficace et les exigences en mémoire plus faibles de YOLOv5 sont avantageux.
- Support étendu des formats d'exportation : Projets nécessitant un déploiement sur de nombreux formats, notamment ONNX, TensorRT, CoreML et TFLite.
Quand choisir RT-DETR
RT-DETR est recommandé pour :
- Recherche sur la détection basée sur les Transformer : Projets explorant les mécanismes d'attention et les architectures Transformer pour la détection d'objets de bout en bout sans NMS.
- Scénarios de haute précision avec latence flexible : Applications où la précision de détection est la priorité absolue et où une latence d'inférence légèrement plus élevée est acceptable.
- Détection de grands objets : Scènes avec principalement des objets de taille moyenne à grande, où le mécanisme d'attention globale des Transformer offre un avantage naturel.
Quand choisir Ultralytics (YOLO26)
Pour la plupart des nouveaux projets, Ultralytics YOLO26 offre la meilleure combinaison de performance et d'expérience développeur :
- Déploiement Edge sans NMS : Applications nécessitant une inférence cohérente et à faible latence sans la complexité du post-traitement par suppression des non-maximums.
- Environnements 100 % CPU : Appareils sans accélération GPU dédiée, où l'inférence CPU jusqu'à 43 % plus rapide de YOLO26 offre un avantage décisif.
- Détection de petits objets : Scénarios difficiles comme l'imagerie par drone aérien ou l'analyse de capteurs IoT, où ProgLoss et STAL améliorent considérablement la précision sur les objets minuscules.
Regarder vers l'avenir : YOLO11 et YOLO26
Si tu démarres un nouveau projet de vision aujourd'hui, il est fortement recommandé d'explorer les dernières générations de modèles Ultralytics.
Alors que YOLOv5 reste incroyablement fiable, YOLO11 offre une précision améliorée et un ensemble élargi de tâches, y compris la détection de boîtes englobantes orientées (OBB).
Plus significativement encore, le YOLO26 de pointe fusionne le meilleur des deux mondes. Il implémente une conception de bout en bout sans NMS (introduite pour la première fois dans YOLOv10), éliminant la surcharge de post-traitement tout en maintenant l'efficacité d'un CNN. YOLO26 introduit également l'optimiseur MuSGD, inspiré par les innovations en matière d'entraînement LLM, pour une convergence plus rapide. Avec la suppression DFL (Distribution Focal Loss supprimée pour une exportation simplifiée et une meilleure compatibilité avec les appareils de bord/basse consommation), YOLO26 offre une inférence CPU jusqu'à 43 % plus rapide, ce qui en fait le choix absolu pour l'IA embarquée. De plus, ProgLoss + STAL fournit des fonctions de perte améliorées avec des avancées notables dans la reconnaissance des petits objets, critiques pour l'IoT, la robotique et l'imagerie aérienne.
Conclusion
Le choix entre YOLOv5 et RTDETRv2 dépend fortement de tes contraintes de déploiement. RTDETRv2 repousse les limites du mAP en utilisant de puissants mécanismes d'attention de transformateur, mais cela s'accompagne d'un coût élevé en termes de mémoire et de surcharge computationnelle.
À l'inverse, Ultralytics YOLOv5 offre une solution éprouvée, hautement optimisée et polyvalente qui fonctionne sans problème partout—des serveurs cloud aux microcontrôleurs. Pour les équipes à la recherche de la plus haute précision possible accompagnée d'outils de déploiement transparents, une mise à niveau au sein de l'écosystème Ultralytics vers YOLO26 fournit la solution de pointe définitive pour les applications modernes d'IA de vision.