Ultralytics YOLO27
Die YOLO27-Modelle befinden sich in der abschließenden Forschungs- und Entwicklungsphase; die Markteinführung ist für später in diesem Jahr vorgesehen. Die Modelle sind noch nicht verfügbar, und ein Starttermin steht noch nicht fest. Diese Seite gibt einen Ausblick auf die kommenden Modelle; Funktionen und Benchmarks können sich bis zur Veröffentlichung noch ändern. Die folgenden Codebeispiele sind für die Nutzung nach Veröffentlichung der Modelle und der Paketunterstützung vorgesehen und funktionieren nicht mit dem aktuellen öffentlichen Paket. Modellgewichte, Konfigurationen und Implementierungscode werden derzeit nicht veröffentlicht. Trag dich in die YOLO27-Warteliste ein, um als Erstes von der Markteinführung zu erfahren.
Übersicht#
Ultralytics YOLO27 ist eine Familie von Echtzeit-Vision-Modellen. Die Erkennungsmodelle verwenden zwei sich ergänzende Entwürfe: eine schlanke CNN-Architektur für die kompakten Modelle N und S sowie eine abfragebasierte, NMS-freie Architektur für die größeren Modelle M und L. Beide Entwürfe lassen sich über dieselbe Schnittstelle bereitstellen. Bei den Erkennungsmodellen N und S ist standardmäßig der One-to-Many-Kopf mit NMS aktiviert; verwende nms=False, um den NMS-freien Kopf auszuwählen.
YOLO27 ist die kommende Modellfamilie in der Ultralytics-YOLO-Reihe und folgt auf YOLO26. Es gibt vier Größen — N, S, M und L — und das Modell unterstützt Objekterkennung, Instanzsegmentierung, semantische Segmentierung, Tiefenschätzung, Klassifizierung, Posenschätzung und orientierte Objekterkennung. Die Aufteilung auf zwei Designs gilt für Objekterkennung, Instanzsegmentierung und Posenschätzung. Semantische Segmentierung, Tiefenschätzung, Klassifizierung und orientierte Objekterkennung verwenden die CNN-Architektur.
Über seine vier Erkennungsskalen hinweg erreicht YOLO27 42.6-60.5 mAP auf COCO bei einer Latenz von 0.44-1.86 ms auf einer NVIDIA RTX PRO 6000 – und mit YOLO27l bei einer größeren Eingabegröße von 800 Pixeln bis zu 61.4 mAP. YOLO27l ist das erste Ultralytics Modell, das auf COCO mehr als 60 mAP erreicht, während die kompakten Modelle YOLO27n/s die Genauigkeit von YOLO26n/s bei praktisch gleicher Geschwindigkeit übertreffen.
from ultralytics import YOLO
model = YOLO("yolo27n.pt") # Ein vortrainiertes YOLO27n-Modell laden
results = model("path/to/bus.jpg") # Inferenz ausführenWichtige Funktionen#
-
Erkennung auf zwei Skalen Standarddetektoren sagen Objekte auf drei Merkmalskarten voraus – einer feinen, einer mittleren und einer groben. YOLO27 N und S lassen die mittlere Karte weg und sagen Objekte nur auf einer feinen Karte (für kleine Objekte) und einer groben Karte (für große Objekte) voraus. Eine feste Skalierung der zusammengeführten Merkmale sorgt für ein ausgewogenes Verhältnis zwischen den beiden Skalen. Dadurch wird ein erheblicher Teil der Berechnungen im Erkennungskopf eingespart und die Modelle werden schneller, während das Training ebenso zuverlässig bleibt wie beim vollständigen Design mit drei Skalen.
-
Verbesserte Erkennung kleiner Objekte Die frühe Feature-Stufe mit hoher Auflösung wird verbreitert, damit sie mehr feine Details erfassen kann. Zusammen mit der erhaltenen feinen Vorhersagekarte verbessert dies die Lokalisierung und Regression kleiner Objekte – der schwierigsten Kategorie für kompakte Modelle.
-
Überwachung der Vordergrundausrichtung Während des Trainings lernt ein zusätzlicher, leichtgewichtiger Zweig, an jeder Position zwischen „Objekt“ und „Hintergrund“ zu unterscheiden. Er soll die Lücke zwischen der dichteren Many-to-one-Überwachung während des Trainings und dem One-to-one-Kopf schließen, der die endgültigen Vorhersagen erzeugt. Dadurch sinkt die Genauigkeitslücke von 0.9/0.8 mAP bei YOLO26n/s auf nur 0.4 mAP bei YOLO27n/s, sodass der bereitgestellte One-to-one-Kopf nahezu die gesamte Trainingsgenauigkeit beibehält. Der Zweig wird nur während des Trainings verwendet und für Inferenz und Export entfernt, sodass er im Einsatz keine Kosten verursacht.
-
Abfragebasierte Erkennung ohne NMS Die größeren Modelle ersetzen die dichte Vorhersage durch einen Transformer-Decoder, der eine feste Anzahl von Objektabfragen verfeinert und direkt die endgültigen Erkennungsergebnisse ausgibt — eine Nachverarbeitung durch Non-Maximum Suppression ist nicht erforderlich. YOLO27m und YOLO27l kombinieren diesen Decoder mit einem UltraViT-Backbone, das in seiner tiefsten Stufe Self-Attention einsetzt, um den globalen Kontext zu erfassen, gefolgt von einem FPN/PAN-Neck.
-
Eine einfache Schnittstelle Beide Architekturen werden über dieselbe
YOLOPython-Schnittstelle verwendet. Die passende Pipeline für Training, Validierung, Vorhersage und Export wird automatisch anhand des Modells ausgewählt, sodass Code für eine YOLO27-Größenstufe unverändert auch für die anderen funktioniert.
Welches YOLO27 sollte ich verwenden?#
Die folgenden Empfehlungen helfen dir bei der Auswahl eines Modells nach der Veröffentlichung von YOLO27. Verwende für aktuelle Projekte YOLO26.
- YOLO27n / YOLO27s — Edge-Geräte, Drohnen und Echtzeitvideo: die schnellsten Modelle der Familie, mit verbesserter Erkennung kleiner Objekte dank des dualen Maßstabsdesigns. Informationen zur gerätespezifischen Bereitstellung findest du für NVIDIA Jetson und Raspberry Pi.
- YOLO27m — der ideale Kompromiss zwischen Genauigkeit und Geschwindigkeit auf GPUs: höhere Genauigkeit als YOLO26m bei vergleichbarer Latenz, was es zur Standardwahl für die produktive GPU-Bereitstellung macht.
- YOLO27l – für Anwendungen, bei denen Genauigkeit entscheidend ist: das erste Ultralytics-Modell mit mehr als 60 mAP auf COCO. Es erreicht bei einer größeren Eingabegröße 61.4 mAP und bleibt auf der GPU echtzeitfähig.
Einen Vergleich mit anderen Modellfamilien findest du unter Alle Ultralytics-Modelle. Informationen dazu, wie du den Kompromiss zwischen Genauigkeit und Geschwindigkeit auf deiner eigenen Hardware statt auf unserer misst, findest du unter Benchmark-Modus.
Unterstützte Aufgaben und Modi#
Die folgende Tabelle gibt einen Ausblick auf die geplante Unterstützung von Aufgaben und Modi für die vier YOLO27-Modellgrößen. Häkchen kennzeichnen die geplante Unterstützung zum Veröffentlichungszeitpunkt, nicht die aktuelle öffentliche Verfügbarkeit; alle aufgeführten Modelldateien sind noch nicht veröffentlicht.
| Modell | Dateinamen | Aufgabe | Training | Validierung | Inferenz | Exportieren |
|---|---|---|---|---|---|---|
| YOLO27 | yolo27n.pt yolo27s.pt yolo27m.pt yolo27l.pt | Erkennung | ✅ | ✅ | ✅ | ✅ |
| YOLO27-seg | yolo27n-seg.pt yolo27s-seg.pt yolo27m-seg.pt yolo27l-seg.pt | Instanzsegmentierung | ✅ | ✅ | ✅ | ✅ |
| YOLO27-sem | yolo27n-sem.pt yolo27s-sem.pt yolo27m-sem.pt yolo27l-sem.pt | Semantische Segmentierung | ✅ | ✅ | ✅ | ✅ |
| YOLO27-depth | yolo27n-depth.pt yolo27s-depth.pt yolo27m-depth.pt yolo27l-depth.pt | Tiefenschätzung | ✅ | ✅ | ✅ | ✅ |
| YOLO27-cls | yolo27n-cls.pt yolo27s-cls.pt yolo27m-cls.pt yolo27l-cls.pt | Klassifizierung | ✅ | ✅ | ✅ | ✅ |
| YOLO27-pose | yolo27n-pose.pt yolo27s-pose.pt yolo27m-pose.pt yolo27l-pose.pt | Pose/Schlüsselpunkte | ✅ | ✅ | ✅ | ✅ |
| YOLO27-obb | yolo27n-obb.pt yolo27s-obb.pt yolo27m-obb.pt yolo27l-obb.pt | Erkennung orientierter Objekte | ✅ | ✅ | ✅ | ✅ |
Die YOLO27-Modelle Detect, Segment, Pose und OBB funktionieren auch mit dem Tracking-Modus, der auf dem Vorhersagemodus aufbaut, um mehrere Objekte über Videobilder hinweg zu verfolgen.
YOLO27 verwendet für Objekterkennung, Instanzsegmentierung und Posenschätzung zwei Designs unter einer gemeinsamen Schnittstelle: Die Größen N und S verwenden die CNN-Architektur, während die Größen M und L die abfragebasierte Architektur ohne NMS verwenden. Semantische Segmentierung, Tiefenschätzung, Klassifizierung und orientierte Objekterkennung verwenden die CNN-Architektur.
Leistungskennzahlen#
Die Erkennungsgenauigkeit wird auf dem COCO-Validierungsdatensatz angegeben. Erläuterungen zu mAP, Precision und Recall findest du unter YOLO Performance Metrics. Genauigkeitswerte über COCO hinaus findest du im Ultralytics-Benchmark. Dieser misst den Makro-mAP50-95 auf 37 realen Erkennungsdatensätzen aus den Bereichen medizinische Bildgebung, Fernerkundung, Industrie, Einzelhandel und weiteren Gebieten. Die Inferenzgeschwindigkeit wird für die GPU mit einer NVIDIA RTX PRO 6000 (TensorRT 11, FP16) und für die CPU mit einem AMD EPYC 9655 (ONNX Runtime, FP32) gemessen. Nach der Veröffentlichung lassen sich die Genauigkeitswerte mit yolo val model=yolo27n.pt data=coco.yaml imgsz=640 nms=False save_json=True reproduzieren. Die Tabellen zu Objekterkennung, Instanzsegmentierung und Posenschätzung verwenden den NMS-freien Head und die COCO-Auswertung. Für die Posenschätzung wird die Validierung mit N/S mit rechteckigen Batches durchgeführt (rect=True).
Diese Forschungsergebnisse können sich während der abschließenden F&E ändern. Die Gewichte und Anweisungen zur Reproduktion werden mit der Veröffentlichung bereitgestellt.
Anwendungsbeispiele mit diesen auf COCO trainierten Modellen, die 80 vortrainierte Klassen enthalten, findest du in der Dokumentation zur Erkennung. Die Tabelle verwendet eine Eingabegröße von 640 Pixeln; in der Übersicht wird YOLO27l außerdem mit 800 Pixeln angegeben.
| Modell | Größe (Pixel) | mAPval50-95 | Geschwindigkeit CPU ONNX (ms) | Geschwindigkeit RTX PRO 6000 TensorRT11 (ms) | Parameter (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 |
Die Angaben zu Parametern und FLOPs beziehen sich auf das zusammengeführte Modell nach dem Zusammenfassen von Conv/BatchNorm und dem Entfernen des nicht verwendeten Erkennungszweigs. Bei den Messungen für Objekterkennung, Instanzsegmentierung und Posenschätzung wird der NMS-freie Head mit nms=False ausgewählt; die Genauigkeit von N/S hängt vom ausgewählten Head ab. Die FLOPs umfassen Matrixmultiplikationen für die Decoder-Attention. Vortrainierte Checkpoints behalten die vollständige Trainingsarchitektur bei und können daher höhere Werte aufweisen.
Anwendungsbeispiele#
Dieser Abschnitt enthält einfache Beispiele für Training und Inferenz mit YOLO27. Für benutzerdefinierte Datensätze findest du unter Tipps für optimale Trainingsergebnisse und im Leitfaden zur Hyperparameter-Abstimmung weitere Informationen.
Das folgende Beispiel bezieht sich auf YOLO27-Detect-Modelle zur Objekterkennung.
Vortrainierte PyTorch-Modelle *.pt sowie Konfigurationsdateien *.yaml kannst du an die Klasse YOLO() übergeben, um in Python eine Modellinstanz zu erstellen:
from ultralytics import YOLO
# Ein mit COCO vortrainiertes YOLO27n-Modell laden
model = YOLO("yolo27n.pt")
# Mit dem YOLO27n-Modell eine Inferenz auf dem Bild 'bus.jpg' ausführen
results = model("path/to/bus.jpg")
# Das Modell 100 Epochen lang mit dem COCO8-Beispieldatensatz trainieren
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)Häufig gestellte Fragen#
- Erkennung auf zwei Skalen (N/S): Lässt die mittlere Vorhersagekarte weg und ermöglicht so einen schnelleren Erkennungskopf bei wettbewerbsfähiger Genauigkeit.
- Verbesserte Erkennung kleiner Objekte (N/S): Eine verbreiterte frühe Merkmalsstufe verbessert die Lokalisierung kleiner Objekte.
- Überwachung der Vordergrundausrichtung (N/S): Verringert die Genauigkeitslücke zwischen One-to-Many und One-to-One von 0.9/0.8 mAP bei YOLO26n/s auf 0.4 mAP bei YOLO27n/s – ohne zusätzliche Inferenzkosten.
- Abfragebasierte Erkennung ohne NMS (M/L): Ein Transformer-Decoder gibt die finalen Erkennungen direkt aus.
- Eine einfache Schnittstelle: Beide Architekturen laufen über dieselbe Klasse
YOLO.
Noch nicht – YOLO27 wurde noch nicht veröffentlicht. Verwende für aktuelle Projekte weiterhin YOLO26. Vorläufige Ergebnisse zeigen eine höhere Genauigkeit bei allen Modellgrößen; YOLO27l übertrifft auf COCO 60 mAP. Prüfe die finalen veröffentlichten Modelle für deinen Anwendungsfall, bevor du migrierst.
Nach der Veröffentlichung soll YOLO27 dieselbe Klasse
YOLOund dieselbe Train/Val/Predict/Export-API wie YOLO26 verwenden – die passende Pipeline (CNN oder abfragebasiert) wird automatisch anhand des Modells ausgewählt. Der Austausch vonyolo26n.ptdurchyolo27n.ptist die vorgesehene Änderung bei der Modellauswahl, sobald YOLO27 unterstützt wird und die Gewichte verfügbar sind.Die meisten Detektoren sagen Vorhersagen auf drei Merkmalskarten mit unterschiedlichen Auflösungen voraus. YOLO27 N und S behalten die feine Karte bei, auf die kleine Objekte angewiesen sind, sowie die grobe Karte, die große Objekte benötigen, und lassen die mittlere Karte aus. Das reduziert einen erheblichen Teil des Rechenaufwands des Erkennungskopfs. Die oben genannten Verbesserungen beim Training sorgen dafür, dass das Verhältnis zwischen Genauigkeit und Latenz wettbewerbsfähig bleibt.
YOLO27l ist das erste Ultralytics-Modell, das auf COCO mehr als 60 mAP erreicht: 60.5 mAP bei einer Eingabegröße von 640 Pixeln (1.9 ms auf einer NVIDIA RTX PRO 6000) und 61.4 mAP bei einer Eingabegröße von 800 Pixeln (2.4 ms). Es kombiniert den UltraViT-Backbone, mehrskalige Feature-Fusion und einen abfragebasierten Detektor, der die endgültigen Erkennungen direkt und ohne NMS erzeugt.
YOLO27 befindet sich in der abschließenden Forschungs- und Entwicklungsphase; die Markteinführung wird für später in diesem Jahr erwartet. Ein Veröffentlichungstermin steht noch nicht fest. Modellgewichte und Implementierungscode sind noch nicht öffentlich verfügbar.
Sobald YOLO27 veröffentlicht ist, findest du unter Schnellstart, wie du das Paket
ultralyticsinstallierst oder aktualisierst. Lade anschließend wie unten gezeigt ein Modell. Dieses Beispiel ist für die Verwendung nach der Veröffentlichung gedacht:from ultralytics import YOLO # Ein vortrainiertes YOLO27-Nano-Modell laden model = YOLO("yolo27n.pt") # Eine Inferenz auf einem Bild ausführen results = model("image.jpg")Unter Anwendungsbeispiele findest du Beispiele für Training und Inferenz. Die Leitfäden zu Val und Export behandeln diese Modi.
Kommentare9
Stell eine Frage, teile deine Ergebnisse oder hilf jemand anderem.
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(bearbeitet)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