YOLOv7 vs RTDETRv2 : Une comparaison technique des détecteurs d'objets modernes
La sélection de l'architecture optimale de détection d'objets est une étape cruciale dans le développement de solutions robustes de vision par ordinateur. Cette décision implique souvent de trouver des compromis complexes entre la vitesse d'inférence, la précision de la détection et les besoins en ressources informatiques. Ce guide fournit une comparaison technique approfondie entre YOLOv7un détecteur hautement optimisé basé sur le CNN et connu pour sa rapidité, et RTDETRv2, un modèle de pointe basé sur un transformateur et conçu pour apporter une compréhension globale du contexte aux applications en temps réel.
YOLOv7: Le summum de l'efficacité de CNN
YOLOv7 représente une évolution majeure dans la famille You Only Look OnceYOLO), lancée pour repousser les limites de ce que les réseaux neuronaux convolutifs (CNN) peuvent réaliser dans des scénarios en temps réel. En se concentrant sur les raffinements architecturaux et les stratégies d'entraînement avancées, il offre une vitesse impressionnante sur le matériel GPU .
- Auteurs : Chien-Yao Wang, Alexey Bochkovskiy et Hong-Yuan Mark Liao
- Organisation : Institut des sciences de l'information, Academia Sinica, Taïwan
- Date : 2022-07-06
- Arxiv :https://arxiv.org/abs/2207.02696
- GitHub :https://github.com/WongKinYiu/yolov7
- Docs :https://docs.ultralytics.com/models/yolov7/
Innovations architecturales
YOLOv7 introduit le réseau d'agrégation de couches efficace étendu (E-ELAN), une nouvelle conception de l'épine dorsale qui améliore la capacité d'apprentissage du réseau sans détruire le chemin du gradient. Cela permet d'obtenir des réseaux plus profonds qui restent efficaces à former. L'une des caractéristiques de YOLOv7 est le "trainable bag-of-freebies", un ensemble de méthodes d'optimisation - telles que le re-paramétrage du modèle et l'attribution d'étiquettes guidée de grossier à fin - qui améliorent la précision sans augmenter le temps de latence de l'inférence.
Points forts et faiblesses
YOLOv7 excelle dans les environnements où l'inférence en temps réel sur des GPU standard est la priorité. Son architecture est hautement optimisée pour CUDA, ce qui lui permet d'atteindre des taux d'images par seconde élevés pour les flux vidéo. Cependant, en tant que CNN pur, il peut avoir du mal à gérer les dépendances à longue portée par rapport aux transformateurs. En outre, la personnalisation de son architecture complexe peut s'avérer difficile pour les débutants.
RTDETRv2 : Transformateurs pour la détection en temps réel
RTDETRv2 s'appuie sur le succès du transformateur de détection en temps réelRT-DETR, en exploitant la puissance des transformateurs de vision (ViT) pour capturer des informations globales sur une image. Contrairement aux CNN, qui traitent des voisinages locaux de pixels, les transformateurs utilisent des mécanismes d'auto-attention pour comprendre les relations entre des objets distants.
- Auteurs : Wenyu Lv, Yian Zhao, Qinyao Chang, Kui Huang, Guanzhong Wang et Yi Liu
- Organisation : Baidu
- Date : 2023-04-17 ( RT-DETR original), 2024-07 (RTDETRv2)
- Arxiv :https://arxiv.org/abs/2304.08069
- GitHub :https://github.com/lyuwenyu/RT-DETR/tree/main/rtdetrv2_pytorch
Innovations architecturales
RTDETRv2 utilise une architecture hybride. Il utilise une épine dorsale CNN pour une extraction efficace des caractéristiques et un transformateur encodeur-décodeur pour la tête de détection. Surtout, il ne comporte pas d'ancrage, ce qui élimine le besoin de boîtes d'ancrage réglées manuellement et le post-traitement de suppression non maximaleNMS dans certaines configurations. Les améliorations de la "v2" se concentrent sur une épine dorsale flexible et des stratégies d'entraînement améliorées pour réduire davantage la latence tout en maintenant une précision moyenne élevée (mAP).
Points forts et faiblesses
Le principal avantage de RTDETRv2 est sa précision dans les scènes complexes avec occlusions, grâce à sa connaissance du contexte global. Il surpasse souvent les CNN de taille similaire en mAP. Cependant, cela a un coût : les modèles transformateurs sont notoirement gourmands en mémoire pendant l'apprentissage et peuvent être plus lents à converger. Ils nécessitent généralement des GPU plus puissants pour s'entraîner efficacement par rapport à des CNN comme YOLOv7.
Comparaison des performances : Mesures et analyses
Le tableau suivant présente une comparaison côte à côte des principales mesures de performance. RTDETRv2-x obtient une précision supérieure, YOLOv7 offrent souvent un avantage concurrentiel en termes de vitesse d'inférence pure sur des configurations matérielles spécifiques en raison de leur conception native CNN.
| Modèle | Taille (pixels) | mAPval 50-95 | Vitesse CPU ONNX (ms) | Vitesse T4 TensorRT10 (ms) | paramètres (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv7l | 640 | 51.4 | - | 6.84 | 36.9 | 104.7 |
| YOLOv7x | 640 | 53.1 | - | 11.57 | 71.3 | 189.9 |
| 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 |
Comprendre les compromis
Lorsque vous choisissez entre ces architectures, tenez compte de votre matériel de déploiement. Les transformateurs comme RTDETRv2 nécessitent souvent des optimisations TensorRT spécifiques pour atteindre leur pleine vitesse potentielle sur les GPU NVIDIA , alors que les CNN comme YOLOv7 s'exécutent généralement efficacement sur une plus large gamme de matériel avec moins de réglages.
Méthodologie et ressources de formation
Les méthodologies de formation diffèrent considérablement entre les deux architectures. YOLOv7 utilise la descente stochastique du gradient (SGD) standard ou les optimiseurs d'Adam , en mettant l'accent sur les pipelines d'augmentation des données comme Mosaic. Il est relativement peu gourmand en mémoire, ce qui permet de l'entraîner sur des GPU de milieu de gamme.
En revanche, RTDETRv2 nécessite un régime d'entraînement plus gourmand en ressources. Les mécanismes d'auto-attention des transformateurs augmentent de façon quadratique avec la longueur de la séquence (taille de l'image), ce qui entraîne une utilisation plus importante de VRAM. Les utilisateurs ont souvent besoin de GPUNVIDIA haut de gamme dotés de grandes capacités de mémoire (par exemple, A100) pour entraîner efficacement les variantes RT-DETR les plus volumineuses. En outre, les transformateurs nécessitent généralement des programmes d'entraînement plus longs (plus d'époques) pour converger par rapport aux CNN.
Pourquoi les modèles Ultralytics sont-ils le choix recommandé ?
Si YOLOv7 et RTDETRv2 sont d'excellents modèles en soi, l'écosystèmeUltralytics , avec à sa têtele logiciel de pointe YOLO11-offre une solution plus complète pour le développement de l'IA moderne.
Facilité d'utilisation et écosystème supérieurs
Les modèles Ultralytics ont été conçus en privilégiant l'expérience des développeurs. Contrairement aux fichiers de configuration complexes et à l'installation manuelle souvent nécessaires pour YOLOv7 ou aux besoins d'environnement spécifiques de RTDETRv2, Ultralytics fournit une API Python unifiée et simple. Cela vous permet de charger, d'entraîner et de déployer des modèles en quelques lignes de code seulement.
from ultralytics import YOLO
# Load a pre-trained YOLO11 model
model = YOLO("yolo11n.pt")
# Train the model on your custom dataset
model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Run inference on an image
results = model("path/to/image.jpg")
Performances équilibrées et polyvalence
YOLO11 atteint un équilibre exceptionnel entre vitesse et précision, surpassant souvent YOLOv7 et RT-DETR en termes d'efficacité. Les modèles Ultralytics ne se limitent pas à la détection d'objets. Ils prennent nativement en charge un large éventail de tâches de vision par ordinateur dans le même cadre :
- Segmentation des instances : Tracé précis des contours d'un objet.
- Estimation de la pose : Détection de points clés pour la pose d'un être humain ou d'un animal.
- Classification : Catégorisation de l'image entière.
- Détection d'objets orientés (OBB) : Détection d'objets en rotation (par exemple, dans l'imagerie aérienne).
Efficacité et formation
Les modèles Ultralytics sont optimisés pour l'efficacité de la mémoire. Ils nécessitent généralement beaucoup moins de mémoire CUDA pendant l'entraînement que les alternatives basées sur les transformateurs comme RTDETRv2, démocratisant ainsi l'accès à l'IA haute performance. Grâce à des poids pré-entraînés largement disponibles et à des capacités d'apprentissage par transfert efficaces, vous pouvez obtenir des résultats prêts pour la production en une fraction du temps.
Conclusion
YOLOv7 reste un concurrent de taille pour les systèmes existants nécessitant une inférence CNN strictement optimisée, tandis que RTDETRv2 offre une précision de pointe pour les scènes complexes où les ressources informatiques sont abondantes. Cependant, pour la majorité des développeurs et des chercheurs à la recherche d'une solution moderne, polyvalente et conviviale, Ultralytics YOLO11 est le meilleur choix.
En choisissant Ultralytics, vous accédez à une communauté florissante, à des mises à jour fréquentes et à un ensemble d'outils robustes qui simplifient l'ensemble du cycle de vie MLOps, de la gestion des données au déploiement.
Explorer d’autres comparaisons de modèles
Pour mieux éclairer votre décision, examinez ces comparaisons techniques supplémentaires :