Passer au contenu

Ultralytics YOLO26

Aperçu

Ultralytics YOLO26 est la dernière évolution de la série YOLO de détecteurs d'objets en temps réel, conçue dès le départ pour les appareils périphériques et à faible consommation d'énergie. Il introduit une conception simplifiée qui supprime la complexité inutile tout en intégrant des innovations ciblées pour offrir un déploiement plus rapide, plus léger et plus accessible.

Graphiques de comparaison d'Ultralytics YOLO26

Essayer Ultralytics

Explorez et exécutez les modèles YOLO26 directement sur Ultralytics .

L'architecture de YOLO26 est guidée par trois principes fondamentaux :

  • Simplicité : YOLO26 est un modèle natif de bout en bout, produisant des prédictions directement sans avoir besoin de suppression non maximale (NMS). En éliminant cette étape de post-traitement, l'inférence devient plus rapide, plus légère et plus facile à déployer dans les systèmes du monde réel. Cette approche révolutionnaire a été lancée pour la première fois dans YOLOv10 par Ao Wang à l'université de Tsinghua et a été perfectionnée dans YOLO26.
  • Efficacité du déploiement : La conception de bout en bout supprime une étape entière du pipeline, simplifiant considérablement l'intégration, réduisant la latence et rendant le déploiement plus robuste dans divers environnements.
  • Innovation en matière d'entraînement : YOLO26 introduit l'optimiseur MuSGD, un hybride de SGD et de Muon — inspiré des percées de Kimi K2 de Moonshot AI dans l'entraînement LLM. Cet optimiseur apporte une stabilité accrue et une convergence plus rapide, transférant les avancées de l'optimisation des modèles linguistiques à la vision par ordinateur.
  • Optimisations spécifiques aux tâches : YOLO26 introduit des améliorations ciblées pour des tâches spécialisées, y compris la perte de segmentation sémantique et les modules proto multi-échelle pour la Segmentation, l'estimation du maximum de vraisemblance résiduelle (RLE) pour l'estimation de Pose de haute précision, et un décodage optimisé avec perte angulaire pour résoudre les problèmes de limites dans l'OBB.

Ensemble, ces innovations offrent une famille de modèles qui atteint une plus grande précision sur les petits objets, offre un déploiement transparent et s'exécute jusqu'à 43 % plus rapidement sur les CPU — faisant de YOLO26 l'un des modèles YOLO les plus pratiques et les plus déployables à ce jour pour les environnements aux ressources limitées.

Principales caractéristiques

  • Suppression de DFL
    Le module Distribution Focal Loss (DFL), bien qu’efficace, compliquait souvent l’exportation et limitait la compatibilité matérielle. YOLO26 supprime complètement DFL, simplifiant l’inférence et élargissant la prise en charge des appareils périphériques et à faible consommation d’énergie.

  • Inférence sans NMS de bout en bout
    Contrairement aux détecteurs traditionnels qui s'appuient sur la NMS comme étape de post-traitement distincte, YOLO26 est nativement de bout en bout. Les prédictions sont générées directement, ce qui réduit la latence et rend l'intégration dans les systèmes de production plus rapide, plus légère et plus fiable.

  • ProgLoss + STAL
    L'amélioration des fonctions de perte augmente la précision de la détection, avec des améliorations notables dans la reconnaissance des petits objets, une exigence essentielle pour l'IoT, la robotique, l'imagerie aérienne et d'autres applications périphériques.

  • Optimiseur MuSGD
    Un nouvel optimiseur hybride qui combine SGD avec Muon. Inspiré par Kimi K2 de Moonshot AI, MuSGD introduit des méthodes d'optimisation avancées de l'entraînement LLM dans la vision par ordinateur, permettant un entraînement plus stable et une convergence plus rapide.

  • Inférence CPU jusqu’à 43 % plus rapide
    Spécifiquement optimisé pour l’informatique en périphérie, YOLO26 offre une inférence CPU considérablement plus rapide, garantissant des performances en temps réel sur les appareils sans GPU.

  • Améliorations de la segmentation d'instance
    Introduit une perte de segmentation sémantique pour améliorer la convergence du modèle et un module proto amélioré qui exploite les informations multi-échelle pour une qualité de masque supérieure.

  • Estimation de pose de précision
    Intègre l'estimation de la log-vraisemblance résiduelle (RLE) pour une localisation plus précise des points clés et optimise le processus de décodage pour une vitesse d'inférence accrue.

  • Décodage OBB raffiné
    Introduit une perte angulaire spécialisée pour améliorer la précision de détection des objets de forme carrée et optimise le décodage OBB pour résoudre les problèmes de discontinuité des limites.

Graphiques de comparaison de bout en bout Ultralytics YOLO26


Tâches et modes pris en charge

YOLO26 s'appuie sur la gamme de modèles polyvalents établie par les versions précédentes d'Ultralytics YOLO, offrant un support amélioré pour diverses tâches de vision par ordinateur :

ModèleNoms de fichiersTâcheInférenceValidationEntraînementExporter
YOLO26yolo26n.pt yolo26s.pt yolo26m.pt yolo26l.pt yolo26x.ptDétection
YOLO26-segyolo26n-seg.pt yolo26s-seg.pt yolo26m-seg.pt yolo26l-seg.pt yolo26x-seg.ptSegmentation d'instance
YOLO26-poseyolo26n-pose.pt yolo26s-pose.pt yolo26m-pose.pt yolo26l-pose.pt yolo26x-pose.ptPose/Points clés
YOLO26-obbyolo26n-obb.pt yolo26s-obb.pt yolo26m-obb.pt yolo26l-obb.pt yolo26x-obb.ptDétection orientée
YOLO26-clsyolo26n-cls.pt yolo26s-cls.pt yolo26m-cls.pt yolo26l-cls.pt yolo26x-cls.ptClassification

Ce cadre unifié garantit que YOLO26 est applicable à la détection en temps réel, à la segmentation, à la classification, à l'estimation de pose et à la détection d'objets orientés — le tout avec prise en charge de l'entraînement, de la validation, de l'inférence et de l'exportation.


Mesures de performance

Performance

Consultez 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
mAPval
50-95(e2e)
Vitesse
CPU ONNX
(ms)
Vitesse
T4 TensorRT10
(ms)
paramètres
(M)
FLOPs
(B)
YOLO26n64040.940.138.9 ± 0.71.7 ± 0.02.45.4
YOLO26s64048.647.887.2 ± 0.92.5 ± 0.09.520.7
YOLO26m64053.152.5220.0 ± 1.44.7 ± 0.120.468.2
YOLO26l64055.054.4286.2 ± 2.06.2 ± 0.224.886.4
YOLO26x64057.556.9525.8 ± 4.011.8 ± 0.255.7193.9

Consultez les Docs de segmentation 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)
mAPbox
50-95(e2e)
mAPmasque
50-95(e2e)
Vitesse
CPU ONNX
(ms)
Vitesse
T4 TensorRT10
(ms)
paramètres
(M)
FLOPs
(B)
YOLO26n-seg64039.633.953.3 ± 0.52.1 ± 0.02.79.1
YOLO26s-seg64047.340.0118.4 ± 0.93.3 ± 0.010.434.2
YOLO26m-seg64052.544.1328.2 ± 2.46.7 ± 0.123.6121.5
YOLO26l-seg64054.445.5387.0 ± 3.78.0 ± 0.128.0139.8
YOLO26x-seg64056.547.0787.0 ± 6.816.4 ± 0.162.8313.5

Consultez les Docs de classification pour des exemples d'utilisation avec ces modèles entraînés sur ImageNet, qui incluent 1000 classes pré-entraînées.

ModèleTaille
(pixels)
acc
top1
acc
top5
Vitesse
CPU ONNX
(ms)
Vitesse
T4 TensorRT10
(ms)
paramètres
(M)
FLOPs
(B) à 224
YOLO26n-cls22471.490.15.0 ± 0.31.1 ± 0.02.80.5
YOLO26s-cls22476.092.97.9 ± 0.21.3 ± 0.06.71.6
YOLO26m-cls22478.194.217.2 ± 0.42.0 ± 0.011.64.9
YOLO26l-cls22479.094.623.2 ± 0.32.8 ± 0.014.16.2
YOLO26x-cls22479.995.041.4 ± 0.93.8 ± 0.029.613.6

Consultez les Docs d'estimation de pose pour des exemples d'utilisation avec ces modèles entraînés sur COCO, qui incluent 1 classe pré-entraînée, 'personne'.

ModèleTaille
(pixels)
mAPpose
50-95(e2e)
mAPpose
50(e2e)
Vitesse
CPU ONNX
(ms)
Vitesse
T4 TensorRT10
(ms)
paramètres
(M)
FLOPs
(B)
YOLO26n-pose64057.283.340.3 ± 0.51.8 ± 0.02.97.5
YOLO26s-pose64063.086.685.3 ± 0.92.7 ± 0.010.423.9
YOLO26m-pose64068.889.6218.0 ± 1.55.0 ± 0.121.573.1
YOLO26l-pose64070.490.5275.4 ± 2.46.5 ± 0.125.991.3
YOLO26x-pose64071.691.6565.4 ± 3.012.2 ± 0.257.6201.7

Consultez les Docs de détection orientée pour des exemples d'utilisation avec ces modèles entraînés sur DOTAv1, qui incluent 15 classes pré-entraînées.

ModèleTaille
(pixels)
mAPtest
50-95(e2e)
mAPtest
50(e2e)
Vitesse
CPU ONNX
(ms)
Vitesse
T4 TensorRT10
(ms)
paramètres
(M)
FLOPs
(B)
YOLO26n-obb102452.478.997.7 ± 0.92.8 ± 0.02.514.0
YOLO26s-obb102454.880.9218.0 ± 1.44.9 ± 0.19.855.1
YOLO26m-obb102455.381.0579.2 ± 3.810.2 ± 0.321.2183.3
YOLO26l-obb102456.281.6735.6 ± 3.113.0 ± 0.225.6230.0
YOLO26x-obb102456.781.71485.7 ± 11.530.5 ± 0.957.6516.5

Exemples d'utilisation

Cette section fournit des exemples simples d'entraînement et d'inférence YOLO26. Pour une documentation complète sur ces modes et d'autres, consultez les pages de documentation Predict, Train, Val et Export.

Notez que l'exemple ci-dessous concerne les modèles YOLO26 Detect pour la détection d'objets. Pour les tâches supplémentaires prises en charge, consultez la documentation Segment, Classify, OBB et Pose.

Exemple

PyTorch pré-entraînés *.pt ainsi que la configuration des modèles *.yaml fichiers peuvent être passés aux YOLO() class pour créer une instance de modèle en python :

from ultralytics import YOLO

# Load a COCO-pretrained YOLO26n model
model = YOLO("yolo26n.pt")

# 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 YOLO26n model on the 'bus.jpg' image
results = model("path/to/bus.jpg")

Des commandes CLI sont disponibles pour exécuter directement les modèles :

# Load a COCO-pretrained YOLO26n model and train it on the COCO8 example dataset for 100 epochs
yolo train model=yolo26n.pt data=coco8.yaml epochs=100 imgsz=640

# Load a COCO-pretrained YOLO26n model and run inference on the 'bus.jpg' image
yolo predict model=yolo26n.pt source=path/to/bus.jpg

Architecture à double tête

YOLO26 dispose d'une architecture à double tête qui offre une grande flexibilité pour différents scénarios de déploiement :

  • Tête individuelle (par défaut): Produit des prédictions de bout en bout sans NMS, en générant (N, 300, 6) avec un maximum de 300 détections par image. Cette tête est optimisée pour une inférence rapide et un déploiement simplifié.
  • Tête un-à-plusieurs: Génère YOLO traditionnelles nécessitant NMS , en produisant (N, nc + 4, 8400)nc est le nombre de classes. Cette tête atteint généralement une précision légèrement supérieure au prix d'un traitement supplémentaire.

Vous pouvez changer de tête pendant l'exportation, la prédiction ou la validation :

from ultralytics import YOLO

model = YOLO("yolo26n.pt")

# Use one-to-one head (default, no NMS required)
results = model.predict("image.jpg")  # inference
metrics = model.val(data="coco.yaml")  # validation
model.export(format="onnx")  # export

# Use one-to-many head (requires NMS)
results = model.predict("image.jpg", end2end=False)  # inference
metrics = model.val(data="coco.yaml", end2end=False)  # validation
model.export(format="onnx", end2end=False)  # export
# Use one-to-one head (default, no NMS required)
yolo predict model=yolo26n.pt source=image.jpg
yolo val model=yolo26n.pt data=coco.yaml
yolo export model=yolo26n.pt format=onnx

# Use one-to-many head (requires NMS)
yolo predict model=yolo26n.pt source=image.jpg end2end=False
yolo val model=yolo26n.pt data=coco.yaml end2end=False
yolo export model=yolo26n.pt format=onnx end2end=False

Le choix dépend de vos besoins de déploiement : utilisez la tête un-à-un pour une vitesse et une simplicité maximales, ou la tête un-à-plusieurs lorsque la précision est la priorité absolue.

YOLOE-26 : Segmentation d'instance à vocabulaire ouvert

YOLOE-26 intègre l'architecture haute performance de YOLO26 avec les capacités de vocabulaire ouvert de la série YOLOE. Il permet la détection et la segmentation en temps réel de toute classe d'objets en utilisant des invites textuelles, des invites visuelles, ou un mode sans invite pour l'inférence zero-shot, éliminant efficacement les contraintes de l'entraînement à catégories fixes.

En tirant parti de la conception de bout en bout sans NMS de YOLO26, YOLOE-26 offre une inférence rapide dans un monde ouvert. Cela en fait une solution puissante pour les applications embarquées dans des environnements dynamiques où les objets d'intérêt représentent un vocabulaire large et évolutif.

Performance

Consultez la documentation YOLOE pour des exemples d'utilisation avec ces modèles entraînés sur les jeux de données Objects365v1, GQA et Flickr30k.

ModèleTaille
(pixels)
Type de promptmAPminival
50-95(e2e)
mAPminival
50-95
mAPrmAPcmAPfparamètres
(M)
FLOPs
(B)
YOLOE-26n-seg640Textuel/Visuel23.7 / 20.924.7 / 21.920.5 / 17.624.1 / 22.326.1 / 22.44.86.0
YOLOE-26s-seg640Textuel/Visuel29.9 / 27.130.8 / 28.623.9 / 25.129.6 / 27.833.0 / 29.913.121.7
YOLOE-26m-seg640Textuel/Visuel35.4 / 31.335.4 / 33.931.1 / 33.434.7 / 34.036.9 / 33.827.970.1
YOLOE-26l-seg640Textuel/Visuel36.8 / 33.737.8 / 36.335.1 / 37.637.6 / 36.238.5 / 36.132.388.3
YOLOE-26x-seg640Textuel/Visuel39.5 / 36.240.6 / 38.537.4 / 35.340.9 / 38.841.0 / 38.869.9196.7

Consultez la documentation YOLOE pour des exemples d'utilisation avec ces modèles entraînés sur les jeux de données Objects365v1, GQA et Flickr30k.

ModèleTaille
(pixels)
mAPminival
50-95(e2e)
mAPminival
50(e2e)
paramètres
(M)
FLOPs
(B)
YOLOE-26n-seg-pf64016.622.76.515.8
YOLOE-26s-seg-pf64021.428.616.235.5
YOLOE-26m-seg-pf64025.733.636.2122.1
YOLOE-26l-seg-pf64027.235.440.6140.4
YOLOE-26x-seg-pf64029.938.786.3314.4

Exemple d'utilisation

YOLOE-26 prend en charge les prompts textuels et visuels. L'utilisation des prompts est simple : il suffit de les passer via le predict méthode comme indiqué ci-dessous :

Exemple

Les prompts textuels vous permettent de spécifier les classes que vous souhaitez detecter au moyen de descriptions textuelles. Le code suivant montre comment utiliser YOLOE-26 pour detecter des personnes et des bus dans une image :

from ultralytics import YOLO

# Initialize model
model = YOLO("yoloe-26l-seg.pt")  # or select yoloe-26s/m-seg.pt for different sizes

# Set text prompt to detect person and bus. You only need to do this once after you load the model.
names = ["person", "bus"]
model.set_classes(names, model.get_text_pe(names))

# Run detection on the given image
results = model.predict("path/to/image.jpg")

# Show results
results[0].show()

Les invites visuelles vous permettent de guider le modèle en lui montrant des exemples visuels des classes cibles, plutôt qu'en les décrivant par du texte.

import numpy as np

from ultralytics import YOLO
from ultralytics.models.yolo.yoloe import YOLOEVPSegPredictor

# Initialize model
model = YOLO("yoloe-26l-seg.pt")

# Define visual prompts using bounding boxes and their corresponding class IDs.
# Each box highlights an example of the object you want the model to detect.
visual_prompts = dict(
    bboxes=np.array(
        [
            [221.52, 405.8, 344.98, 857.54],  # Box enclosing person
            [120, 425, 160, 445],  # Box enclosing glasses
        ],
    ),
    cls=np.array(
        [
            0,  # ID to be assigned for person
            1,  # ID to be assigned for glasses
        ]
    ),
)

# Run inference on an image, using the provided visual prompts as guidance
results = model.predict(
    "ultralytics/assets/bus.jpg",
    visual_prompts=visual_prompts,
    predictor=YOLOEVPSegPredictor,
)

# Show results
results[0].show()

YOLOE-26 inclut des variantes sans prompt qui sont livrées avec un vocabulaire intégré. Ces modèles ne nécessitent aucun prompt et fonctionnent comme les modèles YOLO traditionnels. Au lieu de s'appuyer sur des étiquettes fournies par l'utilisateur ou des exemples visuels, ils detectent des objets à partir d'une liste prédéfinie de 4 585 classes basée sur l'ensemble de tags utilisé par le Recognize Anything Model Plus (RAM++).

from ultralytics import YOLO

# Initialize model
model = YOLO("yoloe-26l-seg-pf.pt")

# Run prediction. No prompts required.
results = model.predict("path/to/image.jpg")

# Show results
results[0].show()

Pour une exploration approfondie des techniques de prompting, de l'entraînement à partir de zéro et des exemples d'utilisation complets, consultez la documentation YOLOE.

Citations et remerciements

Publication Ultralytics YOLO26

Ultralytics n'a pas publié d'article de recherche formel pour YOLO26 en raison de la nature rapidement évolutive des modèles. Au lieu de cela, nous nous concentrons sur la fourniture de modèles de pointe et sur leur facilité d'utilisation. Pour les dernières mises à jour sur les fonctionnalités, les architectures et l'utilisation de YOLO, consultez notre dépôt GitHub et notre documentation.

Si vous utilisez YOLO26 ou d'autres logiciels Ultralytics dans votre travail, veuillez le citer comme suit:

@software{yolo26_ultralytics,
  author = {Glenn Jocher and Jing Qiu},
  title = {Ultralytics YOLO26},
  version = {26.0.0},
  year = {2026},
  url = {https://github.com/ultralytics/ultralytics},
  orcid = {0000-0001-5950-6979, 0000-0003-3783-7069},
  license = {AGPL-3.0}
}

DOI en attente. YOLO26 est disponible sous les licences AGPL-3.0 et Entreprise.


FAQ

Quelles sont les principales améliorations de YOLO26 par rapport à YOLO11 ?

  • Suppression de DFL : Simplifie l'exportation et élargit la compatibilité Edge
  • Inférence sans NMS de bout en bout : Élimine la NMS pour un déploiement plus rapide et plus simple
  • ProgLoss + STAL : Améliore la précision, en particulier sur les petits objets
  • Optimiseur MuSGD : Combine SGD et Muon (inspiré du Kimi K2 de Moonshot) pour un entraînement plus stable et efficace
  • Inférence CPU jusqu'à 43 % plus rapide : Gains de performance majeurs pour les appareils utilisant uniquement le CPU

Quelles tâches YOLO26 prend-il en charge ?

YOLO26 est une famille de modèles unifiée, offrant un support de bout en bout pour de multiples tâches de vision par ordinateur :

Chaque variante de taille (n, s, m, l, x) prend en charge toutes les tâches, ainsi que des versions à vocabulaire ouvert via YOLOE-26.

Pourquoi YOLO26 est-il optimisé pour le déploiement en périphérie ?

YOLO26 offre des performances de pointe en périphérie avec :

  • Inférence CPU jusqu'à 43 % plus rapide
  • Taille du modèle et encombrement mémoire réduits
  • Architecture simplifiée pour la compatibilité (pas de DFL, pas de NMS)
  • Formats d'exportation flexibles, y compris TensorRT, ONNX, CoreML, TFLite et OpenVINO

Comment démarrer avec YOLO26 ?

Les modèles YOLO26 ont été publiés le 14 janvier 2026 et sont disponibles au téléchargement. Installez ou mettez à jour le ultralytics package et chargez un modèle :

from ultralytics import YOLO

# Load a pretrained YOLO26 nano model
model = YOLO("yolo26n.pt")

# Run inference on an image
results = model("image.jpg")

Consultez la section Exemples d'utilisation pour les instructions de formation, de validation et d'exportation.



📅 Créé il y a 3 mois ✏️ Mis à jour il y a 0 jours
glenn-jocherY-T-GLaughing-qraimbekovmfcakyonlmycrosspderrenger

Commentaires