Passer au contenu

YOLOv6-3.0 vs RTDETRv2 : Une comparaison technique

Choisir le bon modèle de détection d'objets est une décision cruciale qui équilibre la précision, la vitesse et le coût de calcul. Cette comparaison se penche sur deux modèles puissants mais architecturalement distincts : YOLOv6-3.0, un détecteur basé sur un CNN hautement optimisé, et RTDETRv2, un modèle de pointe en temps réel basé sur un transformateur. Alors que YOLOv6-3.0 est conçu pour les applications industrielles à haute vitesse, RTDETRv2 exploite un Vision Transformer (ViT) pour atteindre une précision exceptionnelle.

Cette page fournit une analyse approfondie de leurs architectures, de leurs mesures de performance et de leurs cas d'utilisation idéaux afin de vous aider à déterminer la meilleure solution pour votre projet.

YOLOv6-3.0

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 : https://arxiv.org/abs/2301.05586
GitHub : https://github.com/meituan/YOLOv6
Docs : https://docs.ultralytics.com/models/yolov6/

YOLOv6-3.0 est un framework de détection d'objets à une seule étape développé par Meituan, spécialement conçu pour les applications industrielles où la vitesse d'inférence est une priorité absolue. Il s'appuie sur l'architecture YOLO classique avec plusieurs optimisations clés.

Architecture et principales fonctionnalités

YOLOv6-3.0 introduit une conception de réseau neuronal tenant compte du matériel afin de maximiser l'efficacité. Son architecture comprend un backbone de reparamétrisation efficace et un neck redessiné pour équilibrer la précision et la vitesse. Le modèle intègre également une stratégie d'entraînement optimisée, y compris l'auto-distillation, afin d'améliorer les performances sans augmenter la surcharge d'inférence. Il s'agit d'un détecteur d'objets à une étape classique, ce qui le rend intrinsèquement rapide et simple à déployer.

Points forts

  • Vitesse d'inférence élevée : Optimisé pour des performances rapides, ce qui le rend particulièrement adapté à l'inférence en temps réel dans les environnements industriels.
  • Bon compromis précision-vitesse : Offre une précision compétitive, en particulier avec ses variantes plus grandes, tout en maintenant un débit élevé.
  • Quantification et prise en charge mobile : Fournit une prise en charge solide de la quantification de modèle et comprend des variantes YOLOv6Lite adaptées au déploiement mobile ou basé sur le CPU.

Faiblesses

  • Polyvalence limitée : Principalement axé sur la détection d'objets, il ne prend pas en charge nativement d'autres tâches telles que la segmentation, la classification et l'estimation de pose que l'on retrouve dans des frameworks plus complets comme Ultralytics YOLO.
  • Écosystème et maintenance : Bien qu'il soit open source, son écosystème n'est ni aussi étendu ni aussi activement maintenu que la plateforme Ultralytics, ce qui pourrait signifier moins de mises à jour et un soutien communautaire moindre.

Cas d'utilisation idéaux

YOLOv6-3.0 excelle dans les scénarios où la vitesse est primordiale :

  • Automatisation industrielle : Parfaite pour le contrôle qualité et la surveillance des processus dans le secteur de la fabrication.
  • Systèmes en temps réel : Idéal pour les applications avec des exigences de latence strictes, telles que la robotique et la vidéosurveillance.
  • Edge Computing : Sa conception efficace et ses variantes mobiles en font un choix judicieux pour un déploiement sur des appareils aux ressources limitées comme le NVIDIA Jetson.

En savoir plus sur YOLOv6-3.0

RTDETRv2

Auteurs : Wenyu Lv, Yian Zhao, Qinyao Chang, Kui Huang, Guanzhong Wang et Yi Liu
Organisation : Baidu
Date : 2023-04-17
Arxiv : https://arxiv.org/abs/2304.08069
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 adapte l'architecture de transformateur pour des performances en temps réel. Il s'appuie sur le framework DETR original pour fournir une haute précision en capturant efficacement le contexte global de l'image.

Architecture et principales fonctionnalités

RTDETRv2 utilise une structure d'encodeur-décodeur de transformateur, ce qui lui permet de modéliser les dépendances à longue portée entre les objets d'une scène. Cette conscience du contexte global conduit souvent à une précision supérieure, en particulier dans les images complexes avec de nombreux objets qui se chevauchent. En tant que détecteur sans ancrage, il simplifie le pipeline de détection en éliminant le besoin de conception de boîtes d'ancrage et de suppression non maximale (NMS) dans le décodeur.

Points forts

  • Haute précision : L'architecture de transformateur permet une compréhension approfondie du contexte de l'image, ce qui se traduit par une précision de détection à la pointe de la technologie.
  • Extraction de caractéristiques robuste : Excelle dans la capture à la fois du contexte global et des détails précis, ce qui le rend robuste dans les scènes encombrées.
  • Compatible temps réel : optimisé pour une inférence rapide, en particulier lorsqu’il est accéléré avec des outils comme TensorRT, ce qui le rend viable pour les applications en temps réel.

Faiblesses

  • Coût de calcul élevé : Les transformateurs sont notoirement gourmands en ressources. Les modèles RTDETRv2 ont généralement plus de paramètres et de FLOPs que leurs homologues CNN.
  • Exigences d'entraînement importantes : L'entraînement des modèles basés sur les transformateurs nécessite généralement beaucoup plus de données, des temps d'entraînement plus longs et une mémoire CUDA beaucoup plus élevée, ce qui le rend moins accessible aux utilisateurs disposant de matériel limité. En revanche, les modèles Ultralytics YOLO sont conçus pour un entraînement efficace sur les GPU standard.

Cas d'utilisation idéaux

RTDETRv2 est particulièrement adapté aux applications où la précision maximale est l'objectif principal :

  • Conduite autonome : Une perception de haute précision est essentielle pour la sécurité des voitures autonomes.
  • Robotique avancée : Permet aux robots de naviguer et d’interagir avec des environnements complexes et dynamiques.
  • Surveillance de haute précision : utile dans les systèmes de sécurité où une détection précise des objets petits ou occlus est nécessaire.

En savoir plus sur RTDETRv2

Comparaison des performances : YOLOv6-3.0 vs RTDETRv2

Le tableau ci-dessous fournit une comparaison des performances sur le jeu de données COCO.

Modèle Taille
(pixels)
mAPval
50-95
Vitesse
CPU ONNX
(ms)
Vitesse
T4 TensorRT10
(ms)
paramètres
(M)
FLOPs
(B)
YOLOv6-3.0n 640 37.5 - 1.17 4.7 11.4
YOLOv6-3.0s 640 45.0 - 2.66 18.5 45.3
YOLOv6-3.0m 640 50.0 - 5.28 34.9 85.8
YOLOv6-3.0l 640 52.8 - 8.95 59.6 150.7
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

D'après les métriques, RTDETRv2-x atteint le mAP le plus élevé, ce qui démontre les avantages de précision de son architecture de transformateur. Cependant, cela se fait au détriment de la vitesse et de la taille du modèle. En revanche, les modèles YOLOv6-3.0 offrent des temps d'inférence nettement plus rapides avec moins de paramètres. Par exemple, YOLOv6-3.0s est près de deux fois plus rapide que RTDETRv2-s tout en offrant un mAP compétitif de 45,0. Le choix dépend clairement de la priorité du projet : précision maximale (RTDETRv2) ou vitesse et efficacité optimales (YOLOv6-3.0).

Méthodologies d'entraînement

YOLOv6-3.0 est entraîné à l'aide de pratiques standard de deep learning courantes pour les CNN, y compris des techniques telles que l'auto-distillation pour améliorer les performances. Son processus d'entraînement est généralement efficace et moins gourmand en ressources.

RTDETRv2, étant un modèle basé sur un transformateur, a un régime d'entraînement plus exigeant. Ces modèles nécessitent souvent des ensembles de données plus importants, des calendriers d'entraînement plus longs et beaucoup plus de mémoire GPU pour converger efficacement. Cette barrière à l'entrée plus élevée peut les rendre moins pratiques pour les équipes sans accès à des ressources informatiques de haute performance.

Conclusion

YOLOv6-3.0 et RTDETRv2 sont tous deux très performants dans leurs niches respectives. YOLOv6-3.0 est un excellent choix pour les applications industrielles où la vitesse et l'efficacité sont essentielles. RTDETRv2 repousse les limites de la précision, ce qui le rend idéal pour les tâches à enjeux élevés où la précision est primordiale.

Cependant, pour la plupart des développeurs et des chercheurs, les modèles Ultralytics YOLO tels que YOLOv8, YOLOv10 et le dernier YOLO11 offrent un ensemble global plus convaincant. Les modèles Ultralytics offrent un équilibre exceptionnel entre vitesse et précision, sont très efficaces à entraîner et prennent en charge un large éventail de tâches au-delà de la détection d'objets, y compris la segmentation, l'estimation de pose et la classification.

De plus, ils sont soutenus par un écosystème robuste et activement maintenu, comprenant une documentation complète, une API python simple et une intégration avec Ultralytics HUB pour une formation et un déploiement simplifiés. Cette combinaison de performances, de polyvalence et de facilité d'utilisation fait des modèles Ultralytics YOLO le choix recommandé pour un large éventail de projets de vision par ordinateur.

Explorer d'autres modèles

Si vous souhaitez d'autres comparaisons, vous pouvez explorer d'autres modèles dans la documentation Ultralytics :



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

Commentaires