Passer au contenu

YOLOv9 vs. RTDETRv2 : une comparaison technique pour la détection d’objets

Le choix de l'architecture de détection d'objets appropriée est une décision essentielle dans le développement de la vision par ordinateur, qui oblige souvent les développeurs à peser les compromis entre la précision, la latence d'inférence et la surcharge de calcul. Cette analyse fournit une comparaison technique complète entre YOLOv9, une architecture basée sur CNN optimisée pour l'efficacité, et RTDETRv2, un modèle basé sur un transformateur conçu pour une détection haute fidélité.

YOLOv9 : Redéfinir l’efficacité des CNN

YOLOv9 représente une évolution significative dans la série You Only Look Once (YOLO), en se concentrant sur la résolution du problème de goulot d'étranglement de l'information inhérent aux réseaux neuronaux profonds. En introduisant de nouveaux concepts architecturaux, il atteint des performances de pointe tout en conservant l'empreinte légère caractéristique de la famille YOLO.

Architecture centrale

YOLOv9 introduit deux innovations principales : l'Information de Gradient Programmable (PGI) et le Réseau d'Agrégation de Couches Efficace Généralisé (GELAN). Le PGI résout le problème de la perte d'informations de données lors de la propagation à travers les couches profondes, garantissant ainsi que les informations de gradient fiables sont préservées pour les mises à jour du modèle. GELAN optimise l'utilisation des paramètres, permettant au modèle d'atteindre une plus grande précision avec moins d'opérations en virgule flottante (FLOPs) par rapport aux architectures convolutionnelles traditionnelles.

Intégration de l'écosystème Ultralytics

YOLOv9 est entièrement intégré à l'écosystème Ultralytics, offrant aux développeurs un accès transparent aux outils de formation, de validation et de déploiement. Cette intégration garantit que les utilisateurs peuvent exploiter la même API simple utilisée pour YOLO11 et YOLOv8, réduisant considérablement la barrière à l'entrée pour les tâches avancées de vision par ordinateur.

En savoir plus sur YOLOv9

RTDETRv2 : Le Challenger Transformer

RTDETRv2 s'appuie sur le succès du Real-Time Detection Transformer (RT-DETR), en affinant la base de référence pour améliorer la gestion dynamique de l'échelle et la stabilité de l'entraînement. En tant que modèle basé sur un transformateur, il exploite les mécanismes d'auto-attention pour capturer le contexte global, ce qui peut être avantageux pour distinguer les objets dans des scènes complexes.

Architecture centrale

Contrairement aux CNN qui traitent les images en patchs locaux, RTDETRv2 utilise un backbone de transformateur pour traiter les caractéristiques de l’image. Cette approche permet au modèle de comprendre les relations entre les parties éloignées d’une image, ce qui pourrait améliorer la précision dans les environnements encombrés. Cependant, ce mécanisme d’attention globale entraîne généralement des coûts de mémoire et de calcul plus élevés, en particulier pendant la formation.

En savoir plus sur RT-DETR

Comparaison des performances

Les données suivantes mettent en évidence les métriques de performance des différentes tailles de modèles sur le COCO dataset. La comparaison se concentre sur la précision moyenne (mAP), la vitesse d'inférence et la complexité de calcul.

ModèleTaille
(pixels)
mAPval
50-95
Vitesse
CPU ONNX
(ms)
Vitesse
T4 TensorRT10
(ms)
paramètres
(M)
FLOPs
(B)
YOLOv9t64038.3-2.32.07.7
YOLOv9s64046.8-3.547.126.4
YOLOv9m64051.4-6.4320.076.3
YOLOv9c64053.0-7.1625.3102.1
YOLOv9e64055.6-16.7757.3189.0
RTDETRv2-s64048.1-5.032060
RTDETRv2-m64051.9-7.5136100
RTDETRv2-l64053.4-9.7642136
RTDETRv2-x64054.3-15.0376259

Analyse des métriques

  • Précision maximale : Le modèle YOLOv9e atteint une mAP remarquable de 55,6 %, dépassant le plus grand modèle RTDETRv2-x (54,3 % mAP. Cela démontre que les innovations architecturales de YOLOv9 comblent efficacement l'écart entre les CNN et les Transformers, et les surpassent même en termes de précision de haut niveau.
  • Efficacité : YOLOv9 offre systématiquement des performances plus élevées par paramètre. Par exemple, YOLOv9c atteint 53,0 % de mAP avec seulement 25,3 millions de paramètres et 102,1 milliards de FLOPs, tandis que le RTDETRv2-l comparable nécessite 42 millions de paramètres et 136 milliards de FLOPs pour atteindre 53,4 % de mAP. Cette efficacité rend YOLOv9 considérablement plus léger à stocker et plus rapide à exécuter.
  • Vitesse d’inférence : Dans les applications en temps réel, la vitesse est essentielle. Les variantes YOLOv9 plus petites, telles que YOLOv9t, offrent une latence extrêmement faible (2,3 ms sur TensorRT), ce qui les rend idéales pour les déploiements Edge AI où les modèles RTDETRv2 peuvent être trop lourds.

Efficacité de l'entraînement et écosystème

L'un des facteurs les plus critiques pour les développeurs est la facilité d'entraînement et les ressources nécessaires pour affiner les modèles sur des ensembles de données personnalisés.

Besoins en mémoire

Les modèles basés sur des Transformers comme RT-DETRv2 sont réputés pour leur forte consommation de mémoire pendant l'entraînement en raison de la complexité quadratique des mécanismes d'auto-attention. Cela nécessite souvent des GPU d'entreprise haut de gamme avec une VRAM massive. En revanche, YOLOv9 conserve l'efficacité de la mémoire des CNN, ce qui permet de s'entraîner sur du matériel grand public. Cette barrière à l'entrée plus basse démocratise l'accès à la détection d'objets de pointe.

L'avantage Ultralytics

Choisir un modèle au sein de l'écosystème Ultralytics offre des avantages distincts qui vont au-delà des simples mesures de performance brute :

  1. Facilité d'utilisation : L'API Python Ultralytics résume les boucles d'entraînement complexes en quelques lignes de code.
  2. Écosystème bien maintenu : Des mises à jour fréquentes assurent la compatibilité avec les dernières versions de PyTorch, les formats d'exportation (ONNX, TensorRT, CoreML) et les pilotes matériels.
  3. Polyvalence : Bien que RTDETRv2 soit principalement un détecteur d’objets, le framework Ultralytics prend en charge un large éventail de tâches, notamment la segmentation d’instance, l’estimation de pose et la détection de boîtes englobantes orientées (obb) dans ses familles de modèles.

Exemple de code

L'entraînement de YOLOv9 est simple grâce au package Ultralytics. L'extrait de code suivant montre comment charger un modèle pré-entraîné et l'entraîner sur un ensemble de données personnalisé :

from ultralytics import YOLO

# Load a pre-trained YOLOv9 model
model = YOLO("yolov9c.pt")

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

# Run inference on an image
results = model("path/to/image.jpg")

Capacité d'exportation

Les modèles Ultralytics peuvent être facilement exportés dans différents formats pour être déployés. Par exemple, l'exportation vers ONNX pour une plus grande compatibilité :

model.export(format="onnx")

Cas d'utilisation idéaux

Quand choisir YOLOv9

YOLOv9 est le choix recommandé pour la majorité des applications de vision par ordinateur, en particulier lorsqu'un équilibre entre vitesse, précision et efficacité des ressources est requis.

  • Déploiement en périphérie : Les appareils tels que NVIDIA Jetson ou Raspberry Pi bénéficient du nombre inférieur de FLOPs et de paramètres de YOLOv9.
  • Analyse vidéo en temps réel : Les flux de sécurité et les systèmes de surveillance du trafic nécessitent les fréquences d’images élevées que YOLOv9 fournit.
  • Entraînement aux ressources limitées : Les équipes n'ayant pas accès à des clusters GPU massifs peuvent toujours affiner les modèles de pointe.

Quand envisager RTDETRv2

RTDETRv2 est adapté aux scénarios de niche où :

  • Le contexte global est crucial : Scènes avec une forte occlusion ou dans lesquelles le contexte provenant de pixels distants est strictement nécessaire pour la classification.
  • Matériel Illimité : Déploiements sur des GPU de qualité serveur où les contraintes de mémoire et de calcul sont négligeables.
  • Préférence sans ancres : Chercheurs cherchant spécifiquement à expérimenter des architectures pures basées sur des transformateurs et sans ancres.

Conclusion

Bien que RTDETRv2 démontre le potentiel des transformateurs dans la détection d'objets, YOLOv9 apparaît comme le choix pratique supérieur pour la plupart des développeurs et des chercheurs. Il offre une précision de pointe plus élevée (55,6 % mAP) avec une efficacité significativement meilleure, une utilisation de la mémoire plus faible et des vitesses d'inférence plus rapides. Lorsqu'il est combiné avec le support robuste, la documentation exhaustive et la facilité d'utilisation fournis par l'écosystème Ultralytics, YOLOv9 offre un chemin plus rationalisé du prototype à la production.

Pour ceux qui cherchent à explorer les toutes dernières technologies en matière de vision par ordinateur, nous recommandons également de consulter YOLO11, qui repousse encore davantage les limites de la vitesse et de la précision.

Explorer d'autres modèles

  • YOLO11 : La dernière évolution de la série YOLO, optimisée pour diverses tâches, notamment la segmentation et l'estimation de pose.
  • YOLOv8 : Un modèle très populaire et polyvalent, connu pour sa fiabilité et le soutien important de la communauté.
  • RT-DETR : Explorez l'implémentation originale de Real-Time Detection Transformer au sein du framework Ultralytics.

Commentaires