Meet YOLO26: next-gen vision AI.

Link to this sectionDécouvre Ultralytics YOLOv8#

Link to this sectionPrésentation#

YOLOv8 a été publié par Ultralytics le 10 janvier 2023, offrant des performances de pointe en termes de précision et de vitesse. En s'appuyant sur les avancées des versions précédentes de YOLO, YOLOv8 a introduit de nouvelles fonctionnalités et optimisations qui en font un choix idéal pour diverses tâches de détection d'objets dans un large éventail d'applications.

Graphiques de comparaison des performances de YOLOv8



Watch: Ultralytics YOLOv8 Model Overview
Essaie sur la plateforme Ultralytics

Explore et exécute les modèles YOLOv8 directement sur la plateforme Ultralytics.

Link to this sectionFonctionnalités clés de YOLOv8#

  • Architectures de backbone et de neck avancées : YOLOv8 utilise des architectures de backbone et de neck à la pointe de la technologie, ce qui permet d'améliorer les performances d'extraction de caractéristiques et de détection d'objets.
  • Tête Ultralytics fractionnée sans ancres : YOLOv8 adopte une tête Ultralytics fractionnée sans ancres, ce qui contribue à une meilleure précision et à un processus de détection plus efficace par rapport aux approches basées sur des ancres.
  • Compromis précision-vitesse optimisé : En mettant l'accent sur le maintien d'un équilibre optimal entre précision et vitesse, YOLOv8 est adapté aux tâches de détection d'objets en temps réel dans divers domaines d'application.
  • Variété de modèles pré-entraînés : YOLOv8 propose une gamme de modèles pré-entraînés pour répondre à divers besoins et exigences de performance, facilitant ainsi la recherche du modèle adapté à ton cas d'utilisation spécifique.

Link to this sectionTâches et modes pris en charge#

La série YOLOv8 offre une gamme diversifiée de modèles, chacun spécialisé dans des tâches spécifiques en vision par ordinateur. Ces modèles sont conçus pour répondre à diverses exigences, allant de la détection d'objets à des tâches plus complexes comme la segmentation d'instances, la détection de poses/points clés, la détection d'objets orientés et la classification.

Chaque variante de la série YOLOv8 est optimisée pour sa tâche respective, garantissant des performances et une précision élevées. De plus, ces modèles sont compatibles avec divers modes opérationnels, notamment l'Inférence, la Validation, l'Entraînement et l'Exportation, facilitant leur utilisation à différentes étapes du déploiement et du développement.

ModèleNoms de fichiersTâcheInférenceValidationEntraînementExporter (Export)
YOLOv8yolov8n.pt yolov8s.pt yolov8m.pt yolov8l.pt yolov8x.ptDétection
YOLOv8-segyolov8n-seg.pt yolov8s-seg.pt yolov8m-seg.pt yolov8l-seg.pt yolov8x-seg.ptSegmentation d'instance
YOLOv8-poseyolov8n-pose.pt yolov8s-pose.pt yolov8m-pose.pt yolov8l-pose.pt yolov8x-pose.pt yolov8x-pose-p6.ptPose/Points clés
YOLOv8-obbyolov8n-obb.pt yolov8s-obb.pt yolov8m-obb.pt yolov8l-obb.pt yolov8x-obb.ptDétection orientée
YOLOv8-clsyolov8n-cls.pt yolov8s-cls.pt yolov8m-cls.pt yolov8l-cls.pt yolov8x-cls.ptClassification

Ce tableau donne un aperçu des variantes de modèles YOLOv8, soulignant leur applicabilité à des tâches spécifiques et leur compatibilité avec divers modes opérationnels tels que l'Inférence, la Validation, l'Entraînement et l'Exportation. Il démontre la polyvalence et la robustesse de la série YOLOv8, les rendant adaptés à une variété d'applications en vision par ordinateur.

Link to this sectionMétriques de performance#

Performance

Consulte les Docs de détection pour des exemples d'utilisation avec ces modèles entraînés sur COCO, qui incluent 80 classes pré-entraînées.

Modèletaille
(pixels)
mAPval
50-95
Vitesse
CPU ONNX
(ms)
Vitesse
A100 TensorRT
(ms)
params
(M)
FLOPs
(B)
YOLOv8n64037.380.40.993.28.7
YOLOv8s64044.9128.41.2011.228.6
YOLOv8m64050.2234.71.8325.978.9
YOLOv8l64052.9375.22,3943.7165.2
YOLOv8x64053.9479.13.5368,2257.8

Link to this sectionExemples d'utilisation de YOLOv8#

Cet exemple fournit des cas simples d'entraînement et d'inférence avec YOLOv8. Pour une documentation complète sur ces modes et d'autres modes, consulte les pages de documentation Predict, Train, Val et Export.

Note que l'exemple ci-dessous concerne les modèles YOLOv8 Detect pour la détection d'objets. Pour d'autres tâches prises en charge, consulte la documentation sur Segment, Classify, OBB et Pose.

Exemple

Tu peux passer des modèles pré-entraînés PyTorch au format *.pt ainsi que des fichiers de configuration *.yaml à la classe YOLO() pour créer une instance de modèle en Python :

from ultralytics import YOLO

# Load a COCO-pretrained YOLOv8n model
model = YOLO("yolov8n.pt")

# Display model information (optional)
model.info()

# Train the model on the COCO8 example dataset for 100 epochs
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)

# Run inference with the YOLOv8n model on the 'bus.jpg' image
results = model("path/to/bus.jpg")

Link to this sectionCitations et remerciements#

Publication Ultralytics YOLOv8

Ultralytics n'a pas publié d'article de recherche formel pour YOLOv8 en raison de la nature évolutive rapide des modèles. Nous nous concentrons sur le progrès technologique et la facilité d'utilisation plutôt que sur la production d'une documentation statique. Pour les informations les plus récentes sur l'architecture, les fonctionnalités et l'utilisation de YOLO, veuillez consulter notre dépôt GitHub et notre documentation.

Si tu utilises le modèle YOLOv8 ou tout autre logiciel de ce dépôt dans ton travail, merci de le citer en utilisant le format suivant :

Citation
@software{yolov8_ultralytics,
  author = {Glenn Jocher and Ayush Chaurasia and Jing Qiu},
  title = {Ultralytics YOLOv8},
  version = {8.0.0},
  year = {2023},
  url = {https://github.com/ultralytics/ultralytics},
  orcid = {0000-0001-5950-6979, 0000-0002-7603-6750, 0000-0003-3783-7069},
  license = {AGPL-3.0}
}

Veuillez noter que le DOI est en attente et sera ajouté à la citation dès qu'il sera disponible. Les modèles YOLOv8 sont fournis sous les licences AGPL-3.0 et Enterprise.

Link to this sectionFAQ#

Link to this sectionQu'est-ce que YOLOv8 et en quoi diffère-t-il des versions précédentes de YOLO ?#

YOLOv8 est conçu pour améliorer les performances de détection d'objets en temps réel avec des fonctionnalités avancées. Contrairement aux versions précédentes, YOLOv8 intègre une tête Ultralytics sans ancres (anchor-free), des architectures de backbone et de neck à la pointe de la technologie, et offre un compromis optimisé entre précision et vitesse, le rendant idéal pour diverses applications. Pour plus de détails, consulte les sections Vue d'ensemble et Fonctionnalités clés.

Link to this sectionComment puis-je utiliser YOLOv8 pour différentes tâches de vision par ordinateur ?#

YOLOv8 prend en charge une large gamme de tâches de vision par ordinateur, notamment la détection d'objets, la segmentation d'instances, la détection de pose/points clés, la détection d'objets orientés et la classification. Chaque variante de modèle est optimisée pour sa tâche spécifique et compatible avec divers modes opérationnels tels que Inference, Validation, Training et Export. Reporte-toi à la section Tâches et modes pris en charge pour plus d'informations.

Link to this sectionQuelles sont les métriques de performance pour les modèles YOLOv8 ?#

Les modèles YOLOv8 atteignent des performances de pointe sur divers jeux de données de référence. Par exemple, le modèle YOLOv8n atteint un mAP (précision moyenne) de 37,3 sur le jeu de données COCO et une vitesse de 0,99 ms sur A100 TensorRT. Les métriques de performance détaillées pour chaque variante de modèle sur différentes tâches et jeux de données sont disponibles dans la section Métriques de performance.

Link to this sectionComment entraîner un modèle YOLOv8 ?#

L'entraînement d'un modèle YOLOv8 peut être effectué en utilisant Python ou la CLI. Tu trouveras ci-dessous des exemples pour entraîner un modèle en utilisant un modèle YOLOv8 pré-entraîné sur COCO avec le jeu de données COCO8 pour 100 époques :

Exemple
from ultralytics import YOLO

# Load a COCO-pretrained YOLOv8n model
model = YOLO("yolov8n.pt")

# Train the model on the COCO8 example dataset for 100 epochs
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)

Pour plus de détails, visite la documentation sur l'Entraînement.

Link to this sectionPuis-je évaluer les performances des modèles YOLOv8 ?#

Oui, les modèles YOLOv8 peuvent être évalués en termes de vitesse et de précision sur divers formats d'exportation. Tu peux utiliser PyTorch, ONNX, TensorRT, et plus encore pour le benchmarking. Tu trouveras ci-dessous des exemples de commandes pour le benchmarking en utilisant Python et la CLI :

Exemple
from ultralytics.utils.benchmarks import benchmark

# Benchmark on GPU
benchmark(model="yolov8n.pt", data="coco8.yaml", imgsz=640, device=0)

Pour plus d'informations, consulte la section Métriques de performance.

Commentaires