Passer au contenu

RTDETRv2 vs. YOLOv6-3.0 : Des Transformers de haute précision à la vitesse industrielle

Le choix de l'architecture de détection d'objets optimale implique souvent de naviguer dans le compromis entre la précision absolue et la latence d'inférence. Cette comparaison technique explore RTDETRv2, un modèle basé sur Vision Transformer conçu pour les tâches de haute précision, et YOLOv6-3.0, un détecteur basé sur CNN conçu spécifiquement pour la vitesse et l'efficacité industrielles. En analysant leurs architectures, leurs métriques de performance et leurs caractéristiques de déploiement, nous vous aidons à identifier la meilleure solution pour vos applications de vision par ordinateur.

RTDETRv2 : Repousser les limites avec les Vision Transformers

RTDETRv2 (Real-Time Detection Transformer v2) représente une évolution importante dans la détection d’objets, tirant parti de la puissance des transformateurs pour saisir le contexte global dans les images. Contrairement aux CNN traditionnels qui traitent les caractéristiques locales, RTDETRv2 utilise des mécanismes d’auto-attention pour comprendre les relations entre les objets distants, ce qui le rend très efficace pour les scènes complexes.

Auteurs : Wenyu Lv, Yian Zhao, Qinyao Chang, Kui Huang, Guanzhong Wang et Yi Liu
Organisation :Baidu
Date : 2023-04-17 (initiale), 2024-07-24 (v2)
Arxiv :RT-DETR : Les DETR surpassent les YOLO en matière de détection d’objets en temps réel
GitHub :Dépôt RT-DETR
Docs :Documentation RTDETRv2

En savoir plus sur RTDETRv2

Innovations architecturales

L'architecture de RTDETRv2 est une conception hybride. Elle utilise un backbone CNN standard (généralement ResNet ou HGNet) pour l'extraction initiale des caractéristiques, suivi d'un encodeur-décodeur de transformateur. Cette structure permet au modèle de traiter efficacement les caractéristiques multi-échelles tout en éliminant le besoin de composants fabriqués à la main comme les boîtes d'ancrage et la suppression non maximale (NMS).

Avantage des Transformers

Les composants Vision Transformer (ViT) dans RTDETRv2 excellent dans la résolution des ambiguïtés dans les scènes encombrées. En analysant simultanément le contexte de l'image entière, le modèle réduit les faux positifs causés par l'occlusion ou l'encombrement de l'arrière-plan.

Points forts et faiblesses

Points forts :

  • Précision supérieure : Obtient généralement une précision moyenne (mAP) plus élevée sur des ensembles de données comme COCO par rapport aux CNN de taille similaire.
  • Conception sans ancres : Simplifie le pipeline de détection en supprimant les boîtes d'ancrage, réduisant ainsi le réglage des hyperparamètres.
  • Contexte global : Excellent pour detecter des objets dans des environnements denses ou confus où les caractéristiques locales sont insuffisantes.

Faiblesses :

  • Coût de calcul : Nécessite beaucoup plus de FLOPs et de mémoire GPU, en particulier pendant l’entraînement.
  • Latence : Bien qu'elle soit « en temps réel », elle traîne généralement derrière les CNN optimisés comme YOLOv6 en termes de vitesse d'inférence brute sur du matériel équivalent.
  • Faim de données : Les modèles Transformer nécessitent souvent des ensembles de données d'entraînement plus volumineux et des calendriers d'entraînement plus longs pour converger.

YOLOv6-3.0 : Le bolide industriel

YOLOv6-3.0, développé par Meituan, se concentre directement sur les besoins des applications industrielles : faible latence et débit élevé. Il affine le paradigme classique de détecteur d'objet à une étape afin de maximiser l'efficacité sur le matériel, des périphériques edge aux GPU.

Auteurs : Chuyi Li, Lulu Li, Yifei Geng, Hongliang Jiang, Meng Cheng, Bo Zhang, Zaidan Ke, Xiaoming Xu et Xiangxiang Chu
Organisation :Meituan
Date : 2023-01-13
Arxiv :YOLOv6 v3.0 : Un rechargement à grande échelle
GitHub :Dépôt YOLOv6
Docs :Documentation Ultralytics YOLOv6

En savoir plus sur YOLOv6-3.0

Optimisé pour l'efficacité

YOLOv6-3.0 intègre une philosophie de conception "consciente du matériel". Il utilise un Backbone de reparamétrisation efficace (de type RepVGG) qui rationalise le réseau en une simple pile de convolutions 3x3 pendant l'inférence, éliminant ainsi la complexité multi-branches. De plus, il utilise des techniques d'auto-distillation pendant l'entraînement pour améliorer la précision sans augmenter le coût de l'inférence.

Points forts et faiblesses

Points forts :

  • Vitesse exceptionnelle : Offre une très faible latence, ce qui la rend idéale pour les chaînes de fabrication à haute vitesse et la robotique.
  • Facilité de déploiement : La structure reparamétrée est facile à exporter vers des formats tels que ONNX et TensorRT pour des performances maximales.
  • Efficacité Matérielle : Optimisé pour utiliser pleinement les unités de calcul du GPU, minimisant ainsi les temps d'inactivité.

Faiblesses :

  • Seuil de précision : Bien que compétitif, il peut avoir du mal à égaler la précision maximale des modèles basés sur des transformateurs dans des scénarios visuels très complexes.
  • Polyvalence limitée : Principalement axé sur la détection, manquant de support natif pour les tâches telles que la segmentation d'instance ou l'estimation de pose que l'on trouve dans les frameworks plus récents.

Analyse des performances : rapidité vs. précision

Le choix entre RTDETRv2 et YOLOv6-3.0 se résume souvent aux contraintes spécifiques de l'environnement de déploiement. RTDETRv2 domine dans les scénarios nécessitant la plus grande précision possible, tandis que YOLOv6-3.0 l'emporte en termes de vitesse brute et d'efficacité.

Le tableau suivant compare les métriques clés. Notez comment YOLOv6-3.0 atteint une latence plus faible (vitesse plus rapide) à des échelles de modèle similaires, tandis que RTDETRv2 vise des scores mAP plus élevés au prix d'une intensité de calcul plus importante (FLOPs).

ModèleTaille
(pixels)
mAPval
50-95
Vitesse
CPU ONNX
(ms)
Vitesse
T4 TensorRT10
(ms)
paramètres
(M)
FLOPs
(B)
RTDETRv2-s64048.1-5.032060
RTDETRv2-m64051.9-7.5136100
RTDETRv2-l64053.4-9.7642136
RTDETRv2-x64054.3-15.0376259
YOLOv6-3.0n64037.5-1.174.711.4
YOLOv6-3.0s64045.0-2.6618.545.3
YOLOv6-3.0m64050.0-5.2834.985.8
YOLOv6-3.0l64052.8-8.9559.6150.7

Entraînement et besoins en ressources

Lors du développement de modèles personnalisés, l'expérience d'entraînement diffère considérablement.

  • Utilisation de la mémoire : RTDETRv2 nécessite une VRAM GPU substantielle en raison de la complexité quadratique des mécanismes d’attention. L’entraînement des variantes « Large » ou « X-Large » exige souvent des GPU d’entreprise haut de gamme. En revanche, les modèles Ultralytics YOLO et YOLOv6 sont généralement plus économes en mémoire, ce qui permet de s’entraîner sur du matériel grand public ou des instances cloud plus petites.
  • Convergence : Les modèles basés sur Transformer ont généralement besoin de plus de epochs pour apprendre les hiérarchies spatiales que les CNN capturent intuitivement, ce qui peut augmenter les coûts de calcul en nuage.

Parfaitement équilibré : L'avantage Ultralytics

Bien que RTDETRv2 et YOLOv6-3.0 excellent dans leurs niches respectives, Ultralytics YOLO11 offre une solution unifiée qui répond aux limitations des deux. Il combine la facilité d'utilisation et la vitesse des CNN avec des raffinements d'architecture qui rivalisent avec la précision des transformers.

En savoir plus sur YOLO11

Pourquoi les développeurs et les chercheurs préfèrent de plus en plus les modèles Ultralytics :

  1. Polyvalence : Contrairement à YOLOv6, qui est strictement réservé à la détection, Ultralytics prend en charge la classification d’images, la segmentation, l’estimation de pose et la détection de boîtes englobantes orientées (obb) au sein d’une seule API.
  2. Écosystème bien maintenu : La plateforme Ultralytics offre des mises à jour fréquentes, un large soutien de la communauté et des intégrations transparentes avec des outils comme MLflow, TensorBoard et Ultralytics HUB.
  3. Facilité d'utilisation : Avec une philosophie « low-code », vous pouvez entraîner, valider et déployer des modèles de pointe avec seulement quelques lignes de commandes Python ou CLI.
  4. Équilibre des performances : YOLO11 offre un compromis idéal entre vitesse d'inférence en temps réel et haute précision, surpassant souvent les anciennes versions de YOLO et égalant les transformateurs complexes dans des scénarios pratiques.

Exemple de code

Découvrez la simplicité de l'API Ultralytics. L'exemple suivant montre comment charger un modèle pré-entraîné et exécuter l'inférence sur une image :

from ultralytics import YOLO

# Load a pre-trained YOLO11 model (n=nano, s=small, m=medium, l=large, x=xlarge)
model = YOLO("yolo11n.pt")

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

# Process results
for result in results:
    result.show()  # Display results on screen
    result.save(filename="result.jpg")  # Save results to disk

Conclusion

RTDETRv2 et YOLOv6-3.0 sont tous deux des étapes impressionnantes dans l'histoire de la vision par ordinateur. RTDETRv2 est un excellent choix pour la recherche et les scénarios où la précision est la priorité absolue, quel que soit le coût de calcul. YOLOv6-3.0 est très utile dans le secteur industriel, offrant une vitesse extrême pour les environnements contrôlés.

Cependant, pour la plupart des applications du monde réel nécessitant une solution robuste, polyvalente et facile à déployer, Ultralytics YOLO11 se distingue comme le choix supérieur. Sa combinaison de performances de pointe, de faible encombrement mémoire et d'un écosystème florissant permet aux développeurs de passer du prototype à la production avec confiance et rapidité.

Explorer d'autres modèles

Découvrez comment différentes architectures se comparent pour trouver la solution idéale pour votre projet :


Commentaires