Un affrontement technique : DAMO-YOLO vs RTDETRv2 pour la détection d'objets en temps réel.
Le paysage en rapide évolution de la vision par ordinateur a donné naissance à une gamme impressionnante d'architectures conçues pour équilibrer vitesse, précision et efficacité computationnelle. Deux modèles remarquables qui ont apporté des approches uniques pour relever ces défis sontYOLO RTDETRv2. Si les deux modèles visent à fournir des solutions de pointe pour l'inférence en temps réel, ils diffèrent fondamentalement dans leur philosophie architecturale.
Ce guide complet examine en détail les spécifications techniques, les innovations architecturales et les cas d'utilisation pratiques des deux modèles, tout en explorant comment des solutions modernes telles que la Ultralytics et le système de pointe YOLO26 ont redéfini les normes industrielles en matière de déploiement et de facilité d'utilisation.
Aperçus des modèles
ComprendreYOLO
Développé par des chercheurs du groupe Alibaba, DAMO-YOLO introduit une méthode de détection d'objets rapide et précise, fortement dépendante de la recherche d'architecture neuronale (NAS). Il remplace les backbones traditionnels conçus manuellement par des structures générées par NAS, conçues pour une faible latence. De plus, il intègre un RepGFPN (Réseau de Pyramide de Caractéristiques Généralisé Reparamétré) efficace et une conception ZeroHead pour rationaliser l'agrégation des caractéristiques et les prédictions de boîtes englobantes.
Détails clés du modèle :
- Auteurs : Xianzhe Xu, Yiqi Jiang, Weihua Chen, Yilun Huang, Yuan Zhang et Xiuyu Sun
- Organisation :Alibaba Group
- Date : 2022-11-23
- Arxiv :2211.15444v2
- GitHub :tinyvision/DAMO-YOLO
- Documentation :Documentation de DAMO-YOLO
Comprendre RTDETRv2
Le RTDETRv2 de Baidu représente un bond significatif pour les transformeurs de détection en temps réel. Contrairement aux réseaux neuronaux convolutifs (CNN) traditionnels qui reposent sur des boîtes d'ancrage et la suppression non maximale (NMS), RTDETRv2 utilise des mécanismes d'auto-attention pour visualiser l'image entière de manière contextuelle. Il produit directement des boîtes englobantes, contournant entièrement l'étape de post-traitement NMS. Ce modèle introduit une stratégie d'entraînement de type « bag of freebies » pour améliorer la précision de base sans augmenter la latence d'inférence.
Détails clés du modèle :
- Auteurs : Wenyu Lv, Yian Zhao, Qinyao Chang, Kui Huang, Guanzhong Wang et Yi Liu
- Organisation :Baidu
- Date : 2024-07-24
- Arxiv :2407.17140
- GitHub :Dépôt RT-DETR
- Docs :Documentation RTDETRv2
Adopter les transformateurs dans l'IA visuelle
Bien que les transformateurs nécessitent des ressources informatiques plus importantes, leur capacité à traiter le contexte global les rend incroyablement efficaces pour la compréhension de scènes complexes, ce qui constitue l'un des principaux atouts de RTDETRv2.
Comparaison des performances
Lors de l'évaluation de ces modèles en vue d'un déploiement dans le monde réel, des paramètres tels que la précision moyenne (mAP), la vitesse d'inférence et l'empreinte mémoire sont essentiels. Les modèles basés sur des transformateurs, tels que RTDETRv2, exigent généralement CUDA plus importante pendant l'entraînement et l'inférence que les CNN légers, tels queYOLO.
Ci-dessous se trouve une comparaison détaillée de leurs métriques de performance.
| Modèle | Taille (pixels) | mAPval 50-95 | Vitesse CPU ONNX (ms) | Vitesse T4 TensorRT10 (ms) | paramètres (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| DAMO-YOLOt | 640 | 42.0 | - | 2.32 | 8.5 | 18.1 |
| DAMO-YOLOs | 640 | 46.0 | - | 3.45 | 16.3 | 37.8 |
| DAMO-YOLOm | 640 | 49.2 | - | 5.09 | 28.2 | 61.8 |
| DAMO-YOLOl | 640 | 50.8 | - | 7.18 | 42.1 | 97.3 |
| 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 |
Cas d'utilisation idéaux
Où DAMO-YOLO excelle : Grâce à son backbone optimisé par NAS et à son nombre de paramètres exceptionnellement faible dans ses variantes plus petites (comme DAMO-YOLOt), il est très adapté au déploiement sur du matériel fortement contraint. Si vous développez des solutions pour des appareils embarqués utilisant des runtimes comme ONNX ou des moteurs TensorRT spécialisés pour le calcul en périphérie, DAMO-YOLO fournit un cadre très réactif.
Où RTDETRv2 excelle : RTDETRv2 brille dans les scénarios où des GPU de niveau serveur sont disponibles et où le contexte global de l'image est primordial. Son architecture de transformeur lui permet de résoudre naturellement les boîtes englobantes superposées sans NMS, ce qui en fait un choix robuste pour la gestion de foule dense ou le suivi d'objets complexe où les relations spatiales entre objets distants sont critiques.
Ultralytics : présentation de YOLO26
SiYOLO RTDETRv2 représentent des avancées académiques significatives, la transition de ces modèles vers des applications évolutives et prêtes à être mises en production peut s'avérer difficile. Les développeurs sont souvent confrontés à des bases de code fragmentées, à un manque de prise en charge de l'apprentissage multitâche et à des pipelines de déploiement complexes.
C'est là que Ultralytics se distingue véritablement. En privilégiant la facilité d'utilisation, une Python bien entretenue et une polyvalence inégalée, Ultralytics aux développeurs de passer moins de temps à déboguer et plus de temps à créer.
Le modèle Ultralytics récemment publié tire pleinement parti de ces avantages et offre des avancées qui surpassent celles deYOLO RTDETRv2 :
- Conception de bout en bout sans NMS : Pionnier à l'origine dans YOLOv10, YOLO26 est nativement de bout en bout. Cela élimine complètement le post-traitement NMS, rendant le déploiement plus rapide et drastiquement plus simple que les CNN traditionnels, tout en égalant les avantages de sortie directe de RTDETRv2.
- Jusqu'à 43 % plus rapide pour l'inférence CPU : Fortement optimisé pour les appareils d'IA en périphérie sans GPU discrets, ce qui en fait un choix largement supérieur pour les applications IoT par rapport aux transformeurs gourmands en mémoire.
- Optimiseur MuSGD : Inspiré par Kimi K2 de Moonshot AI, cet hybride de SGD et Muon intègre les innovations d'entraînement des grands modèles de langage (LLM) dans la vision par ordinateur, ce qui se traduit par un entraînement remarquablement stable et une convergence plus rapide.
- ProgLoss + STAL: Ces fonctions de perte avancées apportent des améliorations notables à la reconnaissance des petits objets, un domaine où les modèles rencontrent traditionnellement des difficultés. Ceci est essentiel pour l'imagerie aérienne et les applications de drones.
- Suppression de la DFL : La Distribution Focal Loss a été supprimée pour assurer des formats d'exportation simplifiés et une meilleure compatibilité avec les appareils périphériques à faible consommation.
- Polyvalence inégalée : Contrairement aux modèles concurrents strictement limités à la détection, YOLO26 intègre des améliorations spécifiques à chaque tâche sur toute la ligne, telles qu'une perte d'angle spécialisée pour les boîtes englobantes orientées (OBB), une perte de segmentation sémantique pour une précision au pixel près, et l'estimation du log-vraisemblance résiduel (RLE) pour l'estimation de pose.
L'efficacité de la mémoire est importante
L'entraînement de modèles basés sur des transformateurs tels que RTDETRv2 nécessite d'énormes allocations CUDA , ce qui nécessite souventGPU coûteuses.YOLO Ultralytics ont des besoins en mémoire nettement inférieurs, tant pendant l'entraînement que pendant l'inférence, ce qui démocratise le développement de l'IA pour les chercheurs et les amateurs.
Exemple de code : L'API Ultralytics unifiée
L'un des principaux avantages de Ultralytics réside dans son API unifiée. Vous pouvez charger, entraîner et valider en toute transparence divers modèles, notamment une PyTorch de RTDETR et YOLO de pointe, sans modifier votre flux de travail.
from ultralytics import RTDETR, YOLO
# Load an RTDETRv2 model
model_rtdetr = RTDETR("rtdetr-l.pt")
# Load the cutting-edge YOLO26 model
model_yolo = YOLO("yolo26n.pt")
# Run inference on an image with a simple, unified interface
results_rtdetr = model_rtdetr("https://ultralytics.com/images/bus.jpg")
results_yolo = model_yolo("https://ultralytics.com/images/bus.jpg")
# Display the detected objects
results_yolo[0].show()
Cette simplicité s'étend à la formation et à l'exportation de jeux de données personnalisés. Grâce au Python Ultralytics , les développeurs peuvent facilement transférer leurs poids formés vers des plateformes de déploiement telles que CoreML ou OpenVINO à l'aide d'une seule commande.
Conclusion et exploration approfondie
DAMO-YOLO et RTDETRv2 ont indéniablement repoussé les limites de ce qui est possible en matière de détection d'objets en temps réel. DAMO-YOLO fournit des structures de réseau hautement optimisées et auto-recherchées pour une efficacité brute, tandis que RTDETRv2 prouve que les transformeurs peuvent rivaliser dans l'espace temps réel en éliminant les goulots d'étranglement traditionnels comme NMS.
Cependant, pour les développeurs qui recherchent l'équilibre parfait entre performances, documentation complète et disponibilité pour la production, YOLO Ultralytics YOLO restent la référence absolue. Avec l'introduction de YOLO26, les utilisateurs ont accès à une détection de bout en bout de type transformateur, à une efficacité de formation inspirée du LLM et à CPU inégalées, le tout dans un écosystème intuitif et robuste.
Si vous évaluez des modèles pour votre prochain projet, vous trouverez peut-être également utile de lire nos comparaisons entre EfficientDet et RTDETR, et de découvrir la génération précédente YOLO11ou en examinant les références académiques telles que YOLOX. Commencez dès aujourd'hui en consultant le guideUltralytics .