Passer au contenu

YOLOv5 YOLOv10: comparaison technique des détecteurs d'objets en temps réel

L'évolution de l'architecture You Only Look Once (YOLO) a marqué l'histoire de la vision par ordinateur. Deux étapes importantes de cette évolution sont YOLOv5, la norme industrielle en matière de fiabilité et de facilité d'utilisation, et YOLOv10, une avancée académique visant à éliminer les goulots d'étranglement liés au post-traitement. Ce guide fournit une comparaison technique détaillée afin d'aider les développeurs à choisir l'outil le mieux adapté à leurs applications, tout en explorant la manière dont la dernière version YOLO26 combine les atouts des deux.

Origines et spécifications du modèle

Avant de se plonger dans les mesures de performance, il est essentiel de comprendre le contexte de chaque modèle.

YOLOv5
Auteur : Glenn Jocher
Organisation : Ultralytics
Date : 26/06/2020
GitHub : yolov5
Documentation : YOLOv5

YOLOv10
Auteurs : Ao Wang, Hui Chen, Lihao Liu, et al.
Organisation : Université Tsinghua
Date : 23 mai 2024
Arxiv : arXiv:2405.14458
GitHub : THU-MIG/yolov10
Documentation : YOLOv10

En savoir plus sur YOLOv5

Analyse des performances

Le tableau suivant compare les modèles sur l'ensemble COCO , une référence standard pour la détection d'objets.

ModèleTaille
(pixels)
mAPval
50-95
Vitesse
CPU ONNX
(ms)
Vitesse
T4 TensorRT10
(ms)
paramètres
(M)
FLOPs
(B)
YOLOv5n64028.073.61.122.67.7
YOLOv5s64037.4120.71.929.124.0
YOLOv5m64045.4233.94.0325.164.2
YOLOv5l64049.0408.46.6153.2135.0
YOLOv5x64050.7763.211.8997.2246.4
YOLOv10n64039.5-1.562.36.7
YOLOv10s64046.7-2.667.221.6
YOLOv10m64051.3-5.4815.459.1
YOLOv10b64052.7-6.5424.492.0
YOLOv10l64053.3-8.3329.5120.3
YOLOv10x64054.4-12.256.9160.4

YOLOv10 atteint YOLOv10 une précision moyenne (mAP) plus élevée avec moins de paramètres, ce qui souligne les gains d'efficacité de sa nouvelle architecture. Cependant, YOLOv5 compétitif en termes de vitesse GPU , en particulier sur les matériels hérités, grâce à ses CUDA hautement optimisées.

En savoir plus sur YOLOv10

Architecture et conception

YOLOv5: la norme fiable

YOLOv5 sur une structure CSPNet modifiée et un cou PANet. Il utilise des têtes de détection standard basées sur des ancrages, qui nécessitent une suppression non maximale (NMS) pendant le post-traitement afin de filtrer les boîtes englobantes en double.

  • Points forts : base de code extrêmement mature, largement prise en charge par des outils tiers et déploiement stable sur des appareils périphériques tels que Raspberry Pi.
  • Faiblesses : dépend du NMS, qui peut introduire une variabilité de latence en fonction du nombre d'objets dans la scène.

YOLOv10: le pionnier NMS

YOLOv10 un changement de paradigme en utilisant des attributions doubles cohérentes pour un entraînement NMS. Cela permet au modèle de prédire exactement une boîte par objet, éliminant ainsi le besoin d'étapes NMS .

  • Points forts : latence d'inférence réduite dans les scènes à haute densité grâce à NMS ; conception efficace des blocs guidée par le classement qui réduit la redondance computationnelle.
  • Faiblesses : l'architecture plus récente peut nécessiter des paramètres d'exportation spécifiques pour certains compilateurs ; soutien communautaire moins important par rapport à la version 5.

NMS du NMS

La suppression non maximale (NMS) est une étape de post-traitement qui filtre les cadres de sélection qui se chevauchent. Bien qu'efficace, elle est séquentielle et coûteuse en termes de calcul pour les processeurs. La supprimer, comme dans YOLOv10 YOLO26, est crucial pour les applications en temps réel sur du matériel périphérique.

Écosystème et facilité d'utilisation

L'un des facteurs les plus importants pour les développeurs est l'écosystème qui entoure un modèle. C'est là que la distinction entre un référentiel de recherche et une plateforme de production devient claire.

L'avantage Ultralytics

Les deux modèles peuvent être exécutés via le ultralytics Python , leur donnant accès à une suite d'outils robustes.

  • Ultralytics : les utilisateurs peuvent gérer des ensembles de données, effectuer des formations dans le cloud et déployer des modèles de manière transparente à l'aide de la Ultralytics .
  • Efficacité de l'entraînement : Ultralytics sont optimisés pour l'efficacité de la mémoire pendant l'entraînement, nécessitant souvent beaucoup moins de VRAM que les alternatives basées sur des transformateurs.
  • Polyvalence : alors que YOLOv10 principalement un modèle de détection, Ultralytics prend en charge la segmentation d'images, l'estimation de pose et la détection d'objets orientés (OBB) dans tous ses modèles principaux.

Exemple de code

Pour passer d'un modèle à l'autre, il suffit de changer la chaîne de caractères correspondant au nom du modèle.

from ultralytics import YOLO

# Load a pre-trained YOLOv5 model
model_v5 = YOLO("yolov5s.pt")
model_v5.train(data="coco8.yaml", epochs=100)

# Load a pre-trained YOLOv10 model
model_v10 = YOLO("yolov10n.pt")
model_v10.predict("path/to/image.jpg")

Cas d'utilisation idéaux

Quand choisir YOLOv5

  • Systèmes hérités : si vous disposez déjà d'un pipeline basé sur les formats YOLOv5 .
  • Compatibilité maximale : pour une utilisation sur des systèmes embarqués plus anciens qui ne prennent pas encore en charge les nouveaux opérateurs.
  • Ressources communautaires : lorsque vous avez besoin d'accéder à des milliers de tutoriels et d'intégrations tierces créés au cours des cinq dernières années.

Quand choisir YOLOv10

  • Détection haute densité : scénarios tels que le comptage de foules ou l'analyse du trafic où NMS le traitement.
  • Contraintes strictes en matière de latence : robotique en temps réel ou conduite autonome où chaque milliseconde de latence d'inférence compte.
  • Recherche : expérimentation des dernières avancées en matière de stratégies d'affectation et d'élagage architectural.

La recommandation ultime : YOLO26

Alors que YOLOv5 une grande stabilité et YOLOv10 une inférence NMS, le tout nouveau Ultralytics combine ces avantages dans un cadre unique et performant.

Pourquoi passer à YOLO26 ? YOLO26 est nativement de bout en bout, adoptant la conceptionNMS lancée par YOLOv10 l'améliorant grâce au pipeline Ultralytics robuste Ultralytics .

  1. Optimiseur MuSGD : inspiré de la formation LLM (en particulier Kimi K2 de Moonshot AI), cet optimiseur garantit une convergence stable et une formation plus rapide.
  2. Performances : optimisé pour l'edge computing, offrant CPU jusqu'à 43 % plus rapide par rapport aux générations précédentes.
  3. Précision : intègre les fonctionnalités ProgLoss et STAL (Semantic-Token Alignment Loss), améliorant considérablement la détection des petits objets, qui constituait souvent une faiblesse dans les modèles précédents.
  4. Polyvalence totale : contrairement à YOLOv10 se concentre sur la détection, YOLO26 propose des modèles de pointe pour la segmentation, la pose, la classification et l'OBB.

Pour tout nouveau projet démarrant en 2026, YOLO26 est le choix recommandé, car il offre le chemin le plus simple entre l'annotation des ensembles de données et l'exportation des modèles.

En savoir plus sur YOLO26

Conclusion

YOLOv5 YOLOv10 tous deux des moments charnières dans le domaine de la vision par ordinateur. YOLOv5 a démocratisé l'IA en la rendant accessible et fiable, tandis que YOLOv10 a repoussé les limites techniques du traitement de bout en bout. Cependant, ce domaine évolue rapidement. Avec la sortie de YOLO26, les développeurs n'ont plus à choisir entre la fiabilité de Ultralytics et la vitesse des architectures NMS: YOLO26 offre les deux.

Pour d'autres alternatives modernes, vous pouvez également envisager d'explorer YOLO11 pour les tâches de vision générales ou Real-Time DETR (RT-DETR) pour la détection basée sur un transformateur.


Commentaires