Meet YOLO26: next-gen vision AI.

Link to this sectionUltralytics YOLOv5#

Link to this sectionÜbersicht#

YOLOv5u stellt einen Fortschritt bei den Methoden zur Objekterkennung dar. Ausgehend von der grundlegenden Architektur des von Ultralytics entwickelten YOLOv5-Modells, integriert YOLOv5u den ankerfreien, „objectness“-freien Split-Head, ein Feature, das zuvor in den YOLOv8-Modellen eingeführt wurde. Diese Anpassung verfeinert die Modellarchitektur und führt zu einem verbesserten Kompromiss zwischen Genauigkeit und Geschwindigkeit bei Objekterkennungsaufgaben. Angesichts der empirischen Ergebnisse und der abgeleiteten Merkmale bietet YOLOv5u eine effiziente Alternative für alle, die robuste Lösungen sowohl in der Forschung als auch in der praktischen Anwendung suchen.

Architektur und Leistung des YOLOv5-Objekterkennungsmodells

Mit dem ursprünglichen YOLOv5-Repo trainierte Modelle sind nicht mit der Ultralytics-Bibliothek kompatibel.

Ultralytics bietet eine ankerfreie Variante des YOLOv5-Modells an. Modelle, die mit dem ultralytics/yolov5-Repo trainiert wurden, können nicht mit der ultralytics/ultralytics-Bibliothek geladen werden. Um YOLOv5 hier zu verwenden, trainiere ein neues Modell anhand eines Ultralytics YOLOv5u-Checkpoints (z. B. yolov5su.pt).

Auf der Ultralytics Plattform ausprobieren

Erkunde und starte YOLOv5-Modelle direkt auf der Ultralytics Platform.

Link to this sectionHauptfunktionen#

  • Ankerfreier, geteilter Ultralytics-Head: Herkömmliche Objekterkennungsmodelle verlassen sich auf vordefinierte Ankerboxen, um Objektpositionen vorherzusagen. YOLOv5u modernisiert diesen Ansatz jedoch. Durch die Übernahme eines ankerfreien, geteilten Ultralytics-Heads wird ein flexiblerer und anpassungsfähigerer Erkennungsmechanismus sichergestellt, wodurch die Leistung in verschiedenen Szenarien verbessert wird.

  • Optimierter Genauigkeits-Geschwindigkeits-Kompromiss: Geschwindigkeit und Genauigkeit stehen oft im Widerspruch zueinander. Doch YOLOv5u stellt diesen Kompromiss infrage. Es bietet eine kalibrierte Balance, die Erkennungen in Echtzeit gewährleistet, ohne die Genauigkeit zu beeinträchtigen. Dieses Feature ist besonders wertvoll für Anwendungen, die schnelle Reaktionen erfordern, wie zum Beispiel autonome Fahrzeuge, Robotik und Videoanalyse in Echtzeit.

  • Vielzahl an vortrainierten Modellen: Da verschiedene Aufgaben unterschiedliche Toolsets erfordern, bietet YOLOv5u eine Vielzahl an vortrainierten Modellen an. Egal ob du dich auf Inferenz, Validierung oder Training konzentrierst, es wartet ein maßgeschneidertes Modell auf dich. Diese Vielfalt stellt sicher, dass du keine Einheitslösung verwendest, sondern ein Modell, das speziell für deine einzigartige Herausforderung feinabgestimmt wurde.

Link to this sectionUnterstützte Aufgaben und Modi#

Die YOLOv5u-Modelle mit verschiedenen vortrainierten Gewichten zeichnen sich bei Objekterkennungsaufgaben aus. Sie unterstützen eine umfassende Reihe an Modi, wodurch sie für verschiedene Anwendungen von der Entwicklung bis zur Bereitstellung geeignet sind.

ModelltypVortrainierte GewichteAufgabeInferenzValidierungTrainingExportieren
YOLOv5uyolov5nu, yolov5su, yolov5mu, yolov5lu, yolov5xu, yolov5n6u, yolov5s6u, yolov5m6u, yolov5l6u, yolov5x6uObjekterkennung

Diese Tabelle bietet einen detaillierten Überblick über die YOLOv5u-Modellvarianten und hebt deren Anwendbarkeit bei Objekterkennungsaufgaben sowie die Unterstützung für verschiedene Betriebsmodi wie Inferenz, Validierung, Training und Export hervor. Diese umfassende Unterstützung stellt sicher, dass Benutzer die Fähigkeiten von YOLOv5u-Modellen in einer Vielzahl von Objekterkennungsszenarien voll ausschöpfen können.

Link to this sectionLeistungsmetriken#

Leistung

Siehe Detektionsdokumentation für Nutzungsbeispiele mit diesen Modellen, die auf COCO trainiert wurden und 80 vortrainierte Klassen enthalten.

ModellYAMLGröße
(Pixel)
mAPval
50-95
Geschwindigkeit
CPU ONNX
(ms)
Geschwindigkeit
A100 TensorRT
(ms)
Parameter
(M)
FLOPs
(B)
yolov5nu.ptyolov5n.yaml64034.373.61.062.67.7
yolov5su.ptyolov5s.yaml64043.0120.71.279.124.0
yolov5mu.ptyolov5m.yaml64049.0233.91.8625.164.2
yolov5lu.ptyolov5l.yaml64052.2408.42.5053.2135.0
yolov5xu.ptyolov5x.yaml64053.2763.23.8197.2246.4
yolov5n6u.ptyolov5n6.yaml128042.1211.01.834.37.8
yolov5s6u.ptyolov5s6.yaml128048.6422.62.3415.324.6
yolov5m6u.ptyolov5m6.yaml128053.6810.94.3641.265.7
yolov5l6u.ptyolov5l6.yaml128055.71470.95.4786.1137.4
yolov5x6u.ptyolov5x6.yaml128056.82436.58.98155.4250.7

Link to this sectionAnwendungsbeispiele#

Dieses Beispiel enthält einfache Trainings- und Inferenzbeispiele für YOLOv5. Die vollständige Dokumentation zu diesen und anderen Modi findest du auf den Dokumentationsseiten für Predict, Train, Val und Export.

Beispiel

PyTorch vortrainierte *.pt-Modelle sowie Konfigurations-*.yaml-Dateien können an die YOLO()-Klasse übergeben werden, um eine Modellinstanz in Python zu erstellen:

from ultralytics import YOLO

# Load a COCO-pretrained YOLOv5n model
model = YOLO("yolov5n.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 YOLOv5n model on the 'bus.jpg' image
results = model("path/to/bus.jpg")

Link to this sectionZitate und Danksagungen#

Ultralytics YOLOv5-Publikation

Ultralytics hat aufgrund der sich schnell entwickelnden Natur der Modelle kein formelles Forschungspapier für YOLOv5 veröffentlicht. Wir konzentrieren uns darauf, die Technologie voranzubringen und ihre Nutzung zu erleichtern, anstatt statische Dokumentationen zu erstellen. Die aktuellsten Informationen zu YOLO-Architektur, Features und Nutzung findest du in unserem GitHub-Repository und in der Dokumentation.

Wenn du YOLOv5 oder YOLOv5u in deiner Forschung verwendest, zitiere das Ultralytics YOLOv5-Repository bitte wie folgt:

Zitat
@software{yolov5,
  title = {Ultralytics YOLOv5},
  author = {Glenn Jocher},
  year = {2020},
  version = {7.0},
  license = {AGPL-3.0},
  url = {https://github.com/ultralytics/yolov5},
  doi = {10.5281/zenodo.3908559},
  orcid = {0000-0001-5950-6979}
}

Bitte beachte, dass YOLOv5-Modelle unter AGPL-3.0 und Enterprise-Lizenzen bereitgestellt werden.

Link to this sectionFAQ#

Link to this sectionWas ist Ultralytics YOLOv5u und wie unterscheidet es sich von YOLOv5?#

Ultralytics YOLOv5u ist eine fortschrittliche Version von YOLOv5, die den ankerfreien, „objectness“-freien Split-Head integriert, was den Genauigkeits-Geschwindigkeits-Kompromiss für Objekterkennungsaufgaben in Echtzeit verbessert. Im Gegensatz zum herkömmlichen YOLOv5 verwendet YOLOv5u einen ankerfreien Erkennungsmechanismus, wodurch es in verschiedenen Szenarien flexibler und anpassungsfähiger ist. Weitere detaillierte Informationen zu seinen Features findest du in der YOLOv5-Übersicht.

Link to this sectionWie verbessert der ankerfreie Ultralytics-Head die Leistung der Objekterkennung in YOLOv5u?#

Der ankerfreie Ultralytics-Head in YOLOv5u verbessert die Objekterkennungsleistung, indem er die Abhängigkeit von vordefinierten Ankerboxen eliminiert. Dies führt zu einem flexibleren und anpassungsfähigeren Erkennungsmechanismus, der verschiedene Objektgrößen und -formen effizienter handhaben kann. Diese Verbesserung trägt direkt zu einem ausgewogenen Verhältnis zwischen Genauigkeit und Geschwindigkeit bei, wodurch YOLOv5u für Echtzeitanwendungen geeignet ist. Erfahre mehr über dessen Architektur im Abschnitt Key Features.

Link to this sectionKann ich vortrainierte YOLOv5u-Modelle für verschiedene Aufgaben und Modi verwenden?#

Ja, du kannst vortrainierte YOLOv5u-Modelle für verschiedene Aufgaben wie Objekterkennung verwenden. Diese Modelle unterstützen mehrere Modi, einschließlich Inferenz, Validierung, Training und Export. Diese Flexibilität ermöglicht es Benutzern, die Fähigkeiten von YOLOv5u-Modellen für unterschiedliche betriebliche Anforderungen zu nutzen. Einen detaillierten Überblick findest du im Abschnitt Supported Tasks and Modes.

Link to this sectionWie lassen sich die Leistungsmetriken von YOLOv5u-Modellen auf verschiedenen Plattformen vergleichen?#

Die Leistungsmetriken von YOLOv5u-Modellen variieren je nach verwendeter Plattform und Hardware. Zum Beispiel erreicht das YOLOv5nu-Modell einen mAP von 34.3 auf dem COCO-Datensatz mit einer Geschwindigkeit von 73.6 ms auf der CPU (ONNX) und 1.06 ms auf A100 TensorRT. Detaillierte Leistungsmetriken für verschiedene YOLOv5u-Modelle findest du im Abschnitt Performance Metrics, der einen umfassenden Vergleich über verschiedene Geräte hinweg bietet.

Link to this sectionWie kann ich ein YOLOv5u-Modell mit der Ultralytics Python API trainieren?#

Du kannst ein YOLOv5u-Modell trainieren, indem du ein vortrainiertes Modell lädst und den Trainingsbefehl mit deinem Datensatz ausführst. Hier ist ein kurzes Beispiel:

Beispiel
from ultralytics import YOLO

# Load a COCO-pretrained YOLOv5n model
model = YOLO("yolov5n.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)

Für detailliertere Anweisungen besuche den Abschnitt Nutzungsbeispiele.

Kommentare