Ultralytics YOLO27
Les modèles YOLO27 sont en phase finale de R&D, et leur lancement est prévu plus tard cette année. Les modèles ne sont pas encore disponibles et aucune date de lancement n’a été fixée. Cette page présente les modèles à venir ; leurs fonctionnalités et leurs résultats de référence peuvent changer avant leur sortie. Les exemples de code ci-dessous sont destinés à être utilisés après la publication des modèles et la prise en charge du package, et ne fonctionneront pas avec le package public actuel. Les poids des modèles, les configurations et le code d’implémentation ne sont pas publiés pour le moment. Inscris-toi sur la liste d’attente YOLO27 pour être informé en premier de son lancement.
Présentation#
Ultralytics YOLO27 est une famille de modèles de vision en temps réel dont les modèles de détection utilisent deux architectures complémentaires : une architecture CNN rationalisée pour les modèles compacts N et S, et une architecture sans NMS fondée sur des requêtes pour les modèles plus grands M et L. Les deux architectures se déploient via la même interface. Par défaut, les modèles de détection N et S utilisent une tête one-to-many avec NMS ; utilise nms=False pour sélectionner leur tête sans NMS.
YOLO27 est la prochaine famille de modèles de la série Ultralytics YOLO, après YOLO26. Elle existe en quatre tailles — N, S, M et L — et prend en charge la détection d’objets, la segmentation d’instances, la segmentation sémantique, l’estimation de profondeur, la classification, l’estimation de pose et la détection d’objets orientés. La conception à deux architectures concerne la détection, la segmentation d’instances et l’estimation de pose. La segmentation sémantique, l’estimation de profondeur, la classification et la détection d’objets orientés utilisent l’architecture CNN.
Sur ses quatre échelles de détection, YOLO27 atteint 42.6-60.5 mAP sur COCO avec une latence de 0.44-1.86 ms sur un NVIDIA RTX PRO 6000 — et jusqu'à 61.4 mAP avec YOLO27l à une résolution d'entrée supérieure de 800 pixels. YOLO27l est le premier modèle Ultralytics à dépasser 60 mAP sur COCO, tandis que les modèles compacts YOLO27n/s améliorent la précision de YOLO26n/s à une vitesse pratiquement identique.
from ultralytics import YOLO
model = YOLO("yolo27n.pt") # charger un modèle YOLO27n préentraîné
results = model("path/to/bus.jpg") # lancer l’inférenceFonctionnalités clés#
-
Détection à deux échelles Les détecteurs classiques prédisent les objets sur trois cartes de caractéristiques — fine, moyenne et grossière. YOLO27 N et S suppriment la carte moyenne et prédisent uniquement sur une carte fine (pour les petits objets) et une carte grossière (pour les grands objets), avec une mise à l’échelle fixe des caractéristiques fusionnées qui équilibre les deux échelles. Cela élimine une part importante des calculs de la tête de détection et accélère les modèles, tout en conservant une fiabilité d’entraînement comparable à celle de la conception complète à trois échelles.
-
Détection améliorée des petits objets La première étape de caractéristiques, à haute résolution, est élargie afin de capturer davantage de détails fins. Associée à la carte de prédiction fine conservée, cette modification améliore la localisation et la régression pour les petits objets — la catégorie la plus difficile pour les modèles compacts.
-
Supervision de l'alignement de l'avant-plan Pendant l'entraînement, une branche légère supplémentaire apprend à distinguer les « objets » de l'« arrière-plan » à chaque emplacement. Elle est conçue pour réduire l'écart entre la supervision plus dense many-to-one utilisée pendant l'entraînement et la tête one-to-one qui produit les prédictions finales — ramenant cet écart de précision de 0.9/0.8 mAP pour YOLO26n/s à seulement 0.4 mAP pour YOLO27n/s, afin que la tête one-to-one déployée conserve presque toute la précision obtenue pendant l'entraînement. Cette branche est utilisée uniquement pendant l'entraînement et est supprimée pour l'inférence et l'exportation : elle n'entraîne donc aucun coût au déploiement.
-
Détection par requêtes sans NMS Les modèles les plus grands remplacent la prédiction dense par un décodeur Transformer qui affine un ensemble fixe de requêtes d’objets et produit directement les détections finales — aucun post-traitement par suppression des non-maxima n’est nécessaire. YOLO27m et YOLO27l associent ce décodeur à un backbone UltraViT qui utilise l’auto-attention dans son étage le plus profond pour capturer le contexte global, suivi d’un neck FPN/PAN.
-
Une interface simple Les deux architectures s'utilisent avec la même interface Python
YOLO. Le pipeline d'entraînement, de validation, de prédiction et d'exportation approprié est sélectionné automatiquement en fonction du modèle, de sorte que le code écrit pour une échelle YOLO27 fonctionne sans modification avec les autres.
Quel YOLO27 choisir ?#
Les recommandations suivantes t'aideront à choisir un modèle une fois YOLO27 sorti. Pour tes projets actuels, utilise YOLO26.
- YOLO27n / YOLO27s — appareils Edge, drones et vidéo en temps réel : les modèles les plus rapides de la famille, avec une détection améliorée des petits objets grâce à l'architecture à double échelle. Consulte NVIDIA Jetson et Raspberry Pi pour le déploiement adapté à chaque appareil.
- YOLO27m — le meilleur compromis précision-vitesse sur GPU : sa précision dépasse celle de YOLO26m pour une latence comparable, ce qui en fait le choix par défaut pour le déploiement sur GPU en production.
- YOLO27l — applications où la précision est essentielle : le premier modèle Ultralytics à dépasser 60 mAP sur COCO, atteignant 61.4 mAP avec une résolution d'entrée supérieure tout en restant en temps réel sur GPU.
Pour comparer avec d'autres familles, consulte tous les modèles Ultralytics. Pour mesurer le compromis précision-vitesse sur ton matériel plutôt que sur le nôtre, consulte le mode Benchmark.
Tâches et modes pris en charge#
Le tableau suivant présente la prise en charge prévue des tâches et des modes pour les quatre échelles de modèles YOLO27. Les coches indiquent la prise en charge prévue à la sortie, et non la disponibilité publique actuelle ; tous les fichiers de modèles répertoriés ne sont pas encore publiés.
| Modèle | Noms de fichiers | Tâche | Entraînement | Validation | Inférence | Export |
|---|---|---|---|---|---|---|
| YOLO27 | yolo27n.pt yolo27s.pt yolo27m.pt yolo27l.pt | Détection | ✅ | ✅ | ✅ | ✅ |
| YOLO27-seg | yolo27n-seg.pt yolo27s-seg.pt yolo27m-seg.pt yolo27l-seg.pt | Segmentation d'instances | ✅ | ✅ | ✅ | ✅ |
| YOLO27-sem | yolo27n-sem.pt yolo27s-sem.pt yolo27m-sem.pt yolo27l-sem.pt | Segmentation sémantique | ✅ | ✅ | ✅ | ✅ |
| YOLO27-depth | yolo27n-depth.pt yolo27s-depth.pt yolo27m-depth.pt yolo27l-depth.pt | Estimation de profondeur | ✅ | ✅ | ✅ | ✅ |
| YOLO27-cls | yolo27n-cls.pt yolo27s-cls.pt yolo27m-cls.pt yolo27l-cls.pt | Classification | ✅ | ✅ | ✅ | ✅ |
| YOLO27-pose | yolo27n-pose.pt yolo27s-pose.pt yolo27m-pose.pt yolo27l-pose.pt | Pose/points clés | ✅ | ✅ | ✅ | ✅ |
| YOLO27-obb | yolo27n-obb.pt yolo27s-obb.pt yolo27m-obb.pt yolo27l-obb.pt | Détection orientée | ✅ | ✅ | ✅ | ✅ |
Les modèles YOLO27 Detect, Segment, Pose et OBB fonctionnent également avec le mode Track, qui s’exécute par-dessus predict pour le suivi multi-objets d’une image vidéo à l’autre.
La détection, la segmentation d’instances et l’estimation de pose de YOLO27 reposent sur deux architectures sous une même interface : les versions N et S utilisent l’architecture CNN, tandis que les versions M et L utilisent l’architecture sans NMS basée sur des requêtes. La segmentation sémantique, l’estimation de profondeur, la classification et la détection d’objets orientés utilisent l’architecture CNN.
Indicateurs de performance#
La précision de détection est indiquée sur l’ensemble de validation COCO. Consulte Métriques de performance YOLO pour en savoir plus sur mAP, la précision et le rappel. Pour mesurer la précision au-delà de COCO, consulte Ultralytics Benchmark, qui mesure le mAP50-95 macro sur 37 jeux de données de détection en conditions réelles couvrant l’imagerie médicale, la télédétection, l’industrie, le commerce de détail et d’autres domaines. La vitesse d’inférence est mesurée sur un NVIDIA RTX PRO 6000 (TensorRT 11, FP16) pour le GPU et un AMD EPYC 9655 (ONNX Runtime, FP32) pour le CPU. Après la sortie, tu peux reproduire les valeurs de précision avec yolo val model=yolo27n.pt data=coco.yaml imgsz=640 nms=False save_json=True. Les tableaux de détection, de segmentation d’instances et de pose utilisent la tête sans NMS et l’évaluation COCO. La validation de pose N/S utilise des lots rectangulaires (rect=True).
Ces résultats de recherche peuvent changer au cours de la R&D finale. Les poids publics et les instructions de reproduction seront disponibles à la sortie.
Consulte la documentation sur la détection pour des exemples d'utilisation de ces modèles entraînés sur COCO, qui comprennent 80 classes préentraînées. Le tableau utilise une entrée de 640 pixels ; la présentation donne aussi les résultats de YOLO27l à 800 pixels.
| Modèle | taille (pixels) | mAPval50-95 | Vitesse CPU ONNX (ms) | Vitesse RTX PRO 6000 TensorRT11 (ms) | paramètres (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLO27n | 640 | 42.6 | 16.1 ± 1.6 | 0.44 ± 0.00 | 3.0 | 7.2 |
| YOLO27s | 640 | 50.1 | 33.2 ± 0.1 | 0.64 ± 0.00 | 11.8 | 28.2 |
| YOLO27m | 640 | 56.4 | 74.8 ± 0.5 | 1.01 ± 0.00 | 24.6 | 64.6 |
| YOLO27l | 640 | 60.5 | 149.6 ± 1.4 | 1.86 ± 0.00 | 72.3 | 166.7 |
Les valeurs de Params et FLOPs correspondent au modèle fusionné, après le repliement Conv/BatchNorm et la suppression de la branche de détection inutilisée. Les mesures de détection, de segmentation d’instances et de pose sélectionnent la tête sans NMS avec nms=False ; la précision de N/S dépend de la tête sélectionnée. Les FLOPs incluent les multiplications de matrices d’attention du décodeur. Les points de contrôle préentraînés conservent l’architecture d’entraînement complète et peuvent afficher des nombres plus élevés.
Exemples d'utilisation#
Cette section présente des exemples simples d’entraînement et d’inférence avec YOLO27. Pour les jeux de données personnalisés, consulte les conseils pour obtenir les meilleurs résultats d’entraînement et le guide de réglage des hyperparamètres.
L’exemple ci-dessous concerne les modèles YOLO27 Detect pour la détection d’objets.
Les modèles *.pt préentraînés avec PyTorch, ainsi que les fichiers de configuration *.yaml, peuvent être transmis à la classe YOLO() pour créer une instance de modèle en Python :
from ultralytics import YOLO
# Charger un modèle YOLO27n préentraîné sur COCO
model = YOLO("yolo27n.pt")
# Effectuer une inférence avec le modèle YOLO27n sur l'image 'bus.jpg'
results = model("path/to/bus.jpg")
# Entraîner le modèle sur le jeu de données d'exemple COCO8 pendant 100 époques
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)FAQ#
- Détection à deux échelles (N/S) : supprime la carte de prédiction moyenne pour accélérer la tête tout en conservant une précision compétitive
- Meilleure détection des petits objets (N/S) : une première étape d'extraction de caractéristiques élargie améliore la localisation des petits objets
- Supervision de l'alignement de l'avant-plan (N/S) : réduit l'écart de précision entre one-to-many et one-to-one, de 0,9/0,8 mAP avec YOLO26n/s à 0,4 mAP avec YOLO27n/s, sans aucun coût à l'inférence
- Détection sans NMS basée sur des requêtes (M/L) : un décodeur Transformer produit directement les détections finales
- Une interface simple : les deux architectures utilisent la même classe
YOLO
Pas encore — YOLO27 n'est pas sorti. Continue d'utiliser YOLO26 pour tes projets en cours. Les résultats préliminaires indiquent une meilleure précision pour toutes les tailles de modèles, YOLO27l dépassant 60 mAP sur COCO. Évalue les modèles finaux une fois sortis en fonction de ta charge de travail avant de migrer.
Après sa sortie, YOLO27 devrait utiliser la même classe
YOLOet la même API train/val/predict/export que YOLO26 — le bon pipeline (CNN ou basé sur des requêtes) est sélectionné automatiquement à partir du modèle. Remplaceryolo26n.ptparyolo27n.ptcorrespond au changement de modèle prévu, dès que la prise en charge de YOLO27 et ses poids seront disponibles.La plupart des détecteurs prédisent sur trois cartes de caractéristiques à différentes résolutions. YOLO27 N et S conservent la carte fine dont dépendent les petits objets et la carte grossière nécessaire aux grands objets, et ignorent celle du milieu. Cela réduit considérablement les calculs de la tête de détection, et les améliorations de l'entraînement décrites plus haut maintiennent un compromis précision-latence compétitif.
YOLO27l est le premier modèle Ultralytics à dépasser 60 mAP sur COCO, atteignant 60.5 mAP avec une résolution d'entrée de 640 pixels (1.9 ms sur un NVIDIA RTX PRO 6000) et 61.4 mAP avec une résolution d'entrée de 800 pixels (2.4 ms). Il combine le backbone UltraViT, la fusion de caractéristiques multi-échelles et un détecteur à requêtes qui produit directement les détections finales, sans NMS.
YOLO27 est en phase finale de R&D, et son lancement est prévu plus tard cette année. Aucune date de lancement n'a été fixée. Les poids du modèle et le code d'implémentation ne sont pas encore accessibles au public.
Une fois YOLO27 sorti, consulte le Guide de démarrage rapide pour installer ou mettre à jour le paquet
ultralytics, puis charge un modèle comme indiqué ci-dessous. Cet exemple s'utilise après la sortie :from ultralytics import YOLO # Charger un modèle YOLO27 nano préentraîné model = YOLO("yolo27n.pt") # Effectuer une inférence sur une image results = model("image.jpg")Consulte les Exemples d'utilisation pour des exemples d'entraînement et d'inférence, ou les guides Val et Export pour ces modes.
Commentaires9
Pose une question, partage tes résultats ou aide quelqu’un d’autre.
sergshadrap
Guys! You are doing incredible job , The thing I'd asked for is the total size for running model. When we speak about small devices embedded solutions that the -n model is intended to the size is very limited by the SoC properties and that is though to predict if it fits to the board or not. I think pointing the size is also important along the performance metrics for tiny models. Thanks again!
Paula DerrengerUltralyticsThanks from the Ultralytics team and YOLO community—good suggestion. The preview lists
YOLO27nat 3.0M parameters, but actual storage and runtime memory depend on the export format, precision, input size, and backend; exact measurements cannot be published until the models are released. We’ll consider adding artifact-size and memory benchmarks to the YOLO27 documentation, and please keep sharing embedded-device requirements here for team visibility.sergshadrap
Thanks for you! Definitely nobody will ask about exact sizes of the models. What I meant is that most of the camera's SoCs ( for instance) we can split for three major segments, where the middle one is about Arm 1Ggz , 16m flash, and 128m Ram, the high is everything that has more advanced scu with multicores ,spaced flash and Ram and definitely folds more expensive and the low that everything below that. Trying to fit yolo26 to the gk7205v300 that exactly the middle one was a challenge even quantitized to 8. So ... what about the v27? Does it belong to the high-end only or I can try it for the middle one?
Paula DerrengerUltralyticsYOLO27nis intended for edge devices, so it is not high-end-only; its preliminary 3.0M parameters suggest INT8 weights around 3 MB, but 128 MB RAM may still be the limiting factor because activations and backend buffers depend on input size and runtime. For the GK7205V300, consider it a plausible target—not a confirmed fit—until the released model can be exported, profiled at reducedimgsz, and benchmarked on-device;YOLO27m/lare unlikely choices for those constraints. Please keep sharing your embedded results in this discussion so the Ultralytics team can track them alongside the YOLO27 documentation.
Mohammed YasinUltralytics@sergshadrap How's the performance of YOLO26 on such SoCs? Because if it's too big to fit the SoC, then isn't it also too heavy to run? You can always reduce the size of the YOLO models by modifying the YAML file and removing some layers or reducing channels.
sergshadrap
Yeah , that is quite heavy stuff for 1 core 0.9 Ghz SoC , but I have it run . The most stable and sensible (for object recognition) configuration turns to be fp16 288x384 nano , that goes about 0.8 fps in continues run . That's pretty slow , but enough for my current cascade version, where IVE hardware detector is catching "something" and yolo refine the output. Would be glad to get a hint - how to reduce size and reduce layers/ channels. Now I'm on ncnn export tools , so it seems there is no fp8 variant for that tool? Forth to mention I'm on OpenIpc firmware and the majestic additionally quite a leaky guy , so with 128M of memory for all we're on the floor..
Mohammed YasinUltralytics(modifié)You can create a copy of this YAML and reduce the float values. Lowering width (the second float value) brings the biggest drop in model file size. Of course, all of these also reduces accuracy. The modified YAML can be loaded and used with
model = YOLO("path/to/yaml")The ending suffix letter like
ndetermines which of the scale values are used from this YAML.sergshadrap
If only I change the model , do I need to re-train the model completely or I could move the weights from existing with some algorithm?
Mohammed YasinUltralyticsYou have to retrain since model structure changes when you do this