YOLOv5 YOLOv10: comparaison technique complète
Le domaine de la vision par ordinateur en temps réel a connu une croissance exponentielle au cours des dernières années, diverses architectures repoussant les limites de ce qui est possible sur le matériel moderne. Lors de l'évaluation des architectures de pointe, la comparaison entre YOLOv5 et YOLOv10 met en évidence une avancée significative dans le domaine de la détection d'objets. Cette analyse technique approfondie explore leurs paradigmes architecturaux, leurs compromis en termes de performances et la manière dont les développeurs peuvent tirer parti de ces outils dans des environnements de production.
Plongée architecturale en profondeur
Il est essentiel de comprendre les différences structurelles entre ces modèles pour les déployer efficacement dans le monde réel.
Ultralytics YOLOv5 : La norme de l’industrie
Présenté par Ultralytics, YOLOv5 depuis longtemps reconnu pour son équilibre inégalé entre vitesse, précision et accessibilité.
- Auteur : Glenn Jocher
- Organisation : Ultralytics
- Date : 26 juin 2020
- GitHub : YOLOv5
- Documentation : YOLOv5
YOLOv5 sur un mécanisme de détection basé sur des ancres combiné à une infrastructure CSPDarknet profondément optimisée. Cette architecture repose largement sur des opérations standard prises en charge par pratiquement tous les moteurs d'inférence, ce qui la rend incroyablement polyvalente. Son principal atout réside dans le Python Ultralytics , qui offre une expérience utilisateur simplifiée, une API simple et une documentation complète. De plus, les exigences en mémoire YOLOv5 sont inférieures à celles des modèles basés sur des transformateurs, ce qui lui permet de s'entraîner rapidement sur des GPU grand public sans surcharge VRAM importante.
YOLOv10: faire évoluer le paradigme
Développé par des chercheurs de l'université Tsinghua, YOLOv10 à résoudre les problèmes spécifiques de latence rencontrés dans les architectures précédentes.
- Auteurs : Ao Wang, Hui Chen, Lihao Liu, et al.
- Organisation : Université Tsinghua
- Date : 2024-05-23
- ArXiv : 2405.14458
- GitHub : YOLOv10
- Documentation : YOLOv10
La caractéristique distinctive de YOLOv10 sa conception native NMS(Non-Maximum Suppression). En utilisant des attributions doubles cohérentes pendant l'entraînement, le modèle élimine le besoin d'NMS pendant l'inférence. Cette réduction théorique de la latence est très avantageuse pour les déploiements fonctionnant sur du matériel haut de gamme avec de puissants NVIDIA TensorRT , mais elle peut introduire des complexités structurelles pour les appareils périphériques.
Avantage de l'écosystème
Alors que YOLOv10 des nouveautés architecturales intéressantes, Ultralytics tels que YOLOv5 le plus récent YOLO26 sont pris en charge de manière native dans la Ultralytics , offrant une efficacité de formation supérieure, une évolution automatique des hyperparamètres et de nombreuses options d'exportation prêtes à l'emploi.
Analyse des performances
Lorsque l'on compare ces modèles, l'équilibre entre la précision (mAP) et le coût de calcul (latence et paramètres) détermine le meilleur cas d'utilisation. Vous trouverez ci-dessous la comparaison des performances techniques sur l'ensemble COCO .
| Modèle | Taille (pixels) | mAPval 50-95 | Vitesse CPU ONNX (ms) | Vitesse T4 TensorRT10 (ms) | paramètres (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv5n | 640 | 28.0 | 73.6 | 1.12 | 2.6 | 7.7 |
| YOLOv5s | 640 | 37.4 | 120.7 | 1.92 | 9.1 | 24.0 |
| YOLOv5m | 640 | 45.4 | 233.9 | 4.03 | 25.1 | 64.2 |
| YOLOv5l | 640 | 49.0 | 408.4 | 6.61 | 53.2 | 135.0 |
| YOLOv5x | 640 | 50.7 | 763.2 | 11.89 | 97.2 | 246.4 |
| 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 |
YOLOv10 atteint YOLOv10 un niveau supérieur mAP50-95 à des échelles de taille équivalentes, en tirant parti de sa conception de modèle modernisée axée sur l'efficacité et la précision. Cependant, YOLOv5 une latence incroyablement compétitive, en particulier aux niveaux Nano et Small, ce qui le rend très fiable pour les environnements embarqués contraints tels que le NVIDIA Jetson processeurs en ligne ou standard via OpenVINO.
Méthodologies de formation et écosystème
La valeur d'un modèle est étroitement liée à l'écosystème qui l'entoure. Ultralytics un écosystème exceptionnellement bien entretenu qui prend en charge un éventail incroyablement large de tâches. Alors que YOLOv10 strictement sur la détection d'objets en 2D, Ultralytics prend en charge Ultralytics la segmentation d'instances, la classification d'images, l'estimation de pose et les boîtes englobantes orientées (OBB).
De plus, l'entraînement d'un Ultralytics nécessite beaucoup moins de mémoire que les méthodes concurrentes basées sur les transformateurs, ce qui permet de maintenir un cycle de développement rapide et rentable.
Exécution transparente du code
La formation, la validation et l'exportation des modèles sont regroupées sous une seule API. Vous pouvez passer d'un modèle à l'autre en modifiant simplement une chaîne de caractères.
from ultralytics import YOLO
# Load a pre-trained YOLOv5 model for baseline testing
model_v5 = YOLO("yolov5s.pt")
# Load a YOLOv10 model for comparison
model_v10 = YOLO("yolov10s.pt")
# Train the model on the COCO8 dataset efficiently
results = model_v5.train(
data="coco8.yaml",
epochs=100,
imgsz=640,
device="0", # Automatically utilizes PyTorch CUDA acceleration
batch=16,
)
# Export to ONNX for CPU inference deployment
model_v5.export(format="onnx", simplify=True)
Cas d'utilisation et recommandations
Le choix entre YOLOv5 YOLOv10 des exigences spécifiques de votre projet, des contraintes de déploiement et des préférences de votre écosystème.
Quand choisir YOLOv5
YOLOv5 un excellent choix pour :
- Systèmes de production éprouvés : déploiements existants où track longue track YOLOv5 en matière de stabilité, sa documentation exhaustive et le soutien massif de la communauté sont appréciés.
- Formation avec ressources limitées : environnements avec GPU limitées où le pipeline de formation efficace et les faibles exigences en mémoire YOLOv5 sont avantageux.
- Prise en charge étendue des formats d'exportation : projets nécessitant un déploiement dans de nombreux formats, notamment ONNX, TensorRT, CoreMLet TFLite.
Quand choisir YOLOv10
YOLOv10 recommandé pour :
- Détection en temps réelNMS: applications bénéficiant d'une détection de bout en bout sans suppression non maximale, réduisant ainsi la complexité du déploiement.
- Compromis équilibré entre vitesse et précision : projets nécessitant un équilibre solide entre la vitesse d'inférence et la précision de détection à différentes échelles de modèle.
- Applications à latence constante : scénarios de déploiement où des temps d'inférence prévisibles sont essentiels, tels que la robotique ou les systèmes autonomes.
Quand choisir Ultralytics YOLO26)
Pour la plupart des nouveaux projets, Ultralytics offre la meilleure combinaison entre performances et expérience développeur :
- DéploiementNMS suppressionNMS maximale (NMS: applications nécessitant une inférence cohérente et à faible latence sans la complexité du post-traitement par suppression non maximale.
- EnvironnementsCPU: appareils sans GPU dédiée, où CPU jusqu'à 43 % plus rapide de YOLO26 offre un avantage décisif.
- Détection de petits objets : scénarios complexes tels que l'imagerie aérienne par drone ou l'analyse par capteurs IoT, où ProgLoss et STAL améliorent considérablement la précision sur les objets minuscules.
L'avenir : Ultralytics
Alors que YOLOv5 l'accessibilité et que YOLOv10 les limites de l'architecture NMS, l'état de l'art continue d'évoluer. Pour les nouveaux projets, nous recommandons vivement l'ultra-moderne Ultralytics , sorti en janvier 2026.
YOLO26 combine la fiabilité de Ultralytics avec des avancées révolutionnaires :
- Conception NMS de bout en bout : en intégrant directement le paradigme NMS dans le Ultralytics , YOLO26 simplifie le déploiement et garantit une latence réduite.
- CPU jusqu'à 43 % plus rapide : grâce à la suppression de la perte focale de distribution (DFL), YOLO26 est nettement plus rapide sur les appareils périphériques sans GPU.
- Optimiseur MuSGD : inspiré des innovations en matière de formation LLM de Moonshot AI, l'optimiseur MuSGD offre une stabilité et une convergence rapide sans précédent.
- ProgLoss + STAL : ces nouvelles fonctions de perte améliorent considérablement la reconnaissance des petits objets, essentielle dans des domaines tels que l'imagerie par drone et la robotique.
Vous pouvez gérer, former et déployer YOLO26 directement via la Ultralytics .
Conclusion
Le choix entre YOLOv5 YOLOv10 dépend YOLOv10 des contraintes spécifiques du projet. YOLOv10 mAP excellent mAP les chercheurs et les applications tirant parti GPU brut GPU . À l'inverse, YOLOv5 un outil fiable et hautement compatible pour les déploiements standard.
Cependant, le domaine de la vision par ordinateur est dynamique. Pour bénéficier du meilleur équilibre possible entre performances, polyvalence et facilité d'utilisation, les développeurs devraient se tourner vers Ultralytics . Cette solution combine la rapidité de l'inférence NMS avec Ultralytics robuste et bien documenté, garantissant ainsi la pérennité de vos solutions d'IA visuelle. Pour les cas d'utilisation spécialisés, les développeurs peuvent également explorer YOLO11 pour une robustesse générale, ou RT-DETR pour une précision basée sur les transformateurs.