RTDETRv2 vs YOLOv10#
L’évolution de la vision par ordinateur a été largement portée par la recherche incessante d’un équilibre entre vitesse et précision. Traditionnellement, les pipelines de détection d’objets en temps réel s’appuient sur la suppression non maximale (NMS) comme étape de post-traitement pour filtrer les BBox qui se chevauchent. Cependant, la NMS introduit des goulets d’étranglement au niveau de la latence et nécessite un réglage complexe des hyperparamètres. Récemment, deux approches architecturales distinctes ont émergé pour résoudre nativement ce problème : les modèles basés sur des Transformers, comme RTDETRv2, et les modèles basés sur des CNN, comme YOLOv10.
Ce guide propose une comparaison technique approfondie de ces deux modèles, en analysant leurs architectures, leurs métriques de performance et leurs cas d’utilisation idéaux, tout en montrant comment les dernières innovations de l’écosystème Ultralytics offrent la solution ultime pour le déploiement moderne.
RTDETRv2 : Transformers pour la détection en temps réel#
RTDETRv2 s’appuie sur l’architecture originale RT-DETR et vise à combiner la compréhension du contexte global des Vision Transformers avec les exigences de vitesse en temps réel traditionnellement dominées par les modèles YOLO.
Caractéristiques principales :
- Auteurs : Wenyu Lv, Yian Zhao, Qinyao Chang, Kui Huang, Guanzhong Wang et Yi Liu
- Organisation : Baidu
- Date : 2024-07-24
- Arxiv : https://arxiv.org/abs/2407.17140
- GitHub : https://github.com/lyuwenyu/RT-DETR/tree/main/rtdetrv2_pytorch
Architectures et méthodologies d'entraînement#
RTDETRv2 utilise une architecture Transformer de bout en bout qui évite intrinsèquement la NMS. Il améliore son prédécesseur en introduisant une approche « Bag-of-Freebies », en optimisant la stratégie d’entraînement et en intégrant des capacités de détection multi-échelle. Le modèle utilise un backbone CNN pour extraire des cartes de caractéristiques (des détails visuels comme les contours et les textures), qui sont ensuite traitées par une structure encodeur-décodeur Transformer. Cela permet au modèle d’analyser simultanément le contexte de l’image entière, ce qui le rend particulièrement efficace pour comprendre les scènes complexes où les objets sont nombreux ou se chevauchent.
Forces et faiblesses#
Points forts :
- Contexte global : Le mécanisme d’attention permet au modèle d’exceller dans les environnements complexes et encombrés.
- Sans NMS : Prédit directement les coordonnées des objets, ce qui simplifie le pipeline de déploiement.
- Précision élevée : Atteint une excellente précision moyenne (mAP) sur le jeu de données COCO.
Points faibles :
- Exigeant en ressources : Les architectures Transformer nécessitent généralement beaucoup plus de mémoire CUDA pendant l’entraînement que les CNN, ce qui les rend coûteuses à affiner sur du matériel standard.
- Variabilité de la vitesse d’inférence : Bien qu’ils soient rapides, les calculs d’attention lourds peuvent entraîner un nombre de FPS inférieur en vision par ordinateur sur les appareils edge dépourvus d’accélérateurs IA dédiés.
YOLOv10 : détection d’objets de bout en bout en temps réel#
YOLOv10 représente un changement majeur dans la lignée de la détection d’objets avec YOLO en s’attaquant directement au goulet d’étranglement de la NMS au sein d’un framework CNN.
Caractéristiques principales :
- Auteurs : Ao Wang, Hui Chen, Lihao Liu, et al.
- Organisation : Tsinghua University
- Date : 2024-05-23
- Arxiv : https://arxiv.org/abs/2405.14458
- GitHub : https://github.com/THU-MIG/yolov10
Architectures et méthodologies d'entraînement#
L’innovation centrale de YOLOv10 réside dans ses assignations doubles cohérentes pour l’entraînement sans NMS. Il utilise deux têtes de détection pendant l’entraînement : l’une avec une assignation one-to-many (comme les YOLO traditionnels) pour fournir des signaux de supervision riches, et l’autre avec une assignation one-to-one pour éliminer le besoin de NMS. Lors de l’inférence, seule la tête one-to-one est utilisée, ce qui produit un processus de bout en bout. En outre, les auteurs ont appliqué une stratégie de conception globale des modèles, guidée par l’efficacité et la précision, en optimisant intégralement différents composants afin de réduire la redondance des calculs.
Forces et faiblesses#
Points forts :
- Vitesse extrême : En supprimant la NMS et en optimisant l’architecture, YOLOv10 atteint une latence d’inférence extrêmement faible.
- Efficacité : Nécessite moins de paramètres et de FLOPs pour atteindre une précision comparable à celle d’autres modèles, ce qui le rend particulièrement adapté aux environnements aux ressources limitées.
- Déploiements sans NMS : Simplifie l’intégration dans les applications edge comme la vidéosurveillance intelligente.
Points faibles :
- Concept de première génération : Premier YOLO à implémenter cette architecture spécifique sans NMS, il a posé les bases tout en laissant de la place à la polyvalence multi-tâches et aux optimisations observées dans des modèles ultérieurs comme YOLO11 et YOLO26.
En apprendre davantage sur YOLOv10
Comparaison des performances#
Lors de l’évaluation de modèles destinés à la production, il est essentiel de trouver un équilibre entre précision et coût de calcul. Le tableau ci-dessous met en évidence les compromis de performance entre différentes tailles de RTDETRv2 et de YOLOv10.
| Modèle | taille (pixels) | mAPval 50-95 | Vitesse CPU ONNX (ms) | Vitesse T4 TensorRT10 (ms) | paramètres (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| 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 |
| YOLOv10n | 640 | 39.5 | - | 1.56 | 2.3 | 6.7 |
| YOLOv10s | 640 | 46.7 | - | 2.66 | 7.2 | 21.6 |
| YOLOv10m | 640 | 51.3 | - | 5.48 | 15.4 | 59.1 |
| YOLOv10b | 640 | 52.7 | - | 6.54 | 24.4 | 92.0 |
| YOLOv10l | 640 | 53.3 | - | 8.33 | 29.5 | 120.3 |
| YOLOv10x | 640 | 54.4 | - | 12.2 | 56.9 | 160.4 |
Bien que RTDETRv2 offre une précision robuste, YOLOv10 présente un avantage remarquable en matière de latence et d’efficacité des paramètres, notamment dans ses variantes les plus petites (Nano et Small), ce qui le rend particulièrement intéressant pour les applications d’informatique edge et d’AIoT.
Si tu déploies sur des GPU de qualité serveur, où la taille des lots et la VRAM sont moins limitées, les modèles plus grands (comme -x ou -l) maximisent la précision. Pour les appareils edge comme Raspberry Pi ou les téléphones mobiles, privilégie les variantes nano (-n) ou small (-s) afin de maintenir des fréquences d’images en temps réel.
Cas d'utilisation et recommandations#
Le choix entre RT-DETR et YOLOv10 dépend de tes exigences spécifiques, de tes contraintes de déploiement et de tes préférences en matière d’écosystème.
Quand choisir RT-DETR#
RT-DETR est un choix pertinent pour :
- Recherche sur la détection basée sur Transformer : Projets qui explorent les mécanismes d'attention et les architectures Transformer pour la détection d'objets de bout en bout sans NMS.
- Scénarios de haute précision avec une latence flexible : Applications où la précision de détection est prioritaire et où une latence d'inférence légèrement supérieure est acceptable.
- Détection de grands objets : Scènes contenant principalement des objets moyens à grands, où le mécanisme d'attention globale des Transformers offre un avantage naturel.
Quand choisir YOLOv10#
YOLOv10 est recommandé pour :
- Détection en temps réel sans NMS : les applications qui bénéficient d’une détection de bout en bout sans suppression des non-maxima, réduisant ainsi la complexité du déploiement.
- Compromis équilibré entre vitesse et précision : les projets nécessitant un équilibre solide entre la vitesse d’inférence et la précision de détection pour différentes tailles de modèles.
- Applications à latence constante : les scénarios de déploiement où des temps d’inférence prévisibles sont essentiels, comme la robotique ou les systèmes autonomes.
Quand choisir Ultralytics (YOLO26)#
Pour la plupart des nouveaux projets, Ultralytics YOLO26 offre le meilleur compromis entre performance et expérience développeur :
- Déploiement edge sans NMS : les applications nécessitant une inférence cohérente à faible latence, sans la complexité du post-traitement par suppression non maximale.
- Environnements exclusivement CPU : les appareils dépourvus d'accélération GPU dédiée, où l'inférence CPU jusqu'à 43 % plus rapide de YOLO26 constitue un avantage décisif.
- Détection de petits objets : les scénarios difficiles comme les images aériennes prises par drone ou l'analyse de capteurs IoT, où ProgLoss et STAL améliorent considérablement la précision sur les objets minuscules.
L’avantage d’Ultralytics : présentation de YOLO26#
Bien que RTDETRv2 et YOLOv10 offrent tous deux des avancées académiques convaincantes, leur déploiement dans des scénarios réels nécessite un écosystème logiciel robuste et bien maintenu. La plateforme Ultralytics offre une expérience développeur inégalée, en combinant facilité d’utilisation, documentation étendue et outils puissants pour l’annotation des données et le déploiement.
Pour les développeurs à la recherche d’une solution à la pointe de la technologie en 2026, Ultralytics YOLO26 est la recommandation ultime. Il synthétise les meilleures idées des deux architectures tout en introduisant des améliorations révolutionnaires :
- Conception de bout en bout sans NMS : S’appuyant sur le concept lancé par YOLOv10, YOLO26 élimine nativement le post-traitement NMS, ce qui permet une logique de déploiement plus rapide et plus simple, ainsi qu’une variance de latence nulle.
- Suppression de la DFL : En supprimant la fonction de perte focale de distribution, YOLO26 simplifie l’exportation du modèle et améliore considérablement la compatibilité avec les appareils edge et basse consommation.
- Optimiseur MuSGD : Hybride de SGD et de Muon (inspiré des innovations de l’entraînement des LLM), ce nouvel optimiseur offre un entraînement plus stable et une convergence nettement plus rapide que les méthodes traditionnelles.
- Inférence CPU jusqu’à 43 % plus rapide : Soigneusement optimisé pour les environnements dépourvus de GPU dédiés, il démocratise l’IA de vision haute performance.
- ProgLoss + STAL : Ces fonctions de perte avancées améliorent sensiblement la reconnaissance des petits objets, ce qui est essentiel pour les applications utilisant des drones et les capteurs IoT.
- Polyvalence inégalée : Contrairement aux modèles limités aux BBox, YOLO26 prend en charge une suite complète de tâches, notamment la segmentation d’instances, l’estimation de pose, la classification d’images et la détection OBB, avec des améliorations spécifiques à chaque tâche comme l’estimation résiduelle de log-vraisemblance (RLE) pour la pose.
Implémentation fluide avec Python#
L’entraînement et le déploiement de ces modèles avec l’API Python d’Ultralytics sont conçus pour être simples. Les besoins en mémoire sont nettement inférieurs pendant l’entraînement à ceux des architectures fortement basées sur les Transformers, ce qui te permet d’entraîner des modèles puissants sur du matériel standard.
from ultralytics import YOLO
# Load the cutting-edge YOLO26 model (recommended)
# Alternatively, load a YOLOv10 model using YOLO('yolov10n.pt')
model = YOLO("yolo26n.pt")
# Train the model on your custom dataset
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Easily export to various formats for edge deployment
model.export(format="onnx", simplify=True)Que tu mettes en œuvre des systèmes d’alarme de sécurité ou que tu réalises de l’analyse d’images médicales, choisir un modèle soutenu par la communauté active Ultralytics te garantit de disposer des outils, des guides de réglage des hyperparamètres et des mises à jour continues nécessaires à ta réussite. Alors que YOLOv10 et RTDETRv2 ont ouvert la voie aux architectures sans NMS, YOLO26 perfectionne la formule en offrant le meilleur équilibre entre performance, polyvalence et préparation à la production.