YOLOv5
Übersicht
YOLOv5u stellt einen Fortschritt in der Methodik der Objekterkennung dar. Ausgehend von der grundlegenden Architektur des YOLOv5 Modells, das von Ultralytics entwickelt wurde, integriert YOLOv5u den verankerungsfreien, objektfreien geteilten Kopf, eine Funktion, die zuvor in den YOLOv8 Modelle. Durch diese Anpassung wird die Architektur des Modells verfeinert, was zu einem verbesserten Kompromiss zwischen Genauigkeit und Geschwindigkeit bei der Objekterkennung führt. Angesichts der empirischen Ergebnisse und der daraus abgeleiteten Merkmale ist YOLOv5u eine effiziente Alternative für alle, die sowohl in der Forschung als auch in der Praxis nach robusten Lösungen suchen.
Hauptmerkmale
-
Ankerfreier Split Ultralytics Head: Herkömmliche Modelle zur Objekterkennung stützen sich auf vordefinierte Ankerboxen, um die Position von Objekten vorherzusagen. YOLOv5u modernisiert diesen Ansatz jedoch. Durch die Verwendung eines verankerungsfreien geteilten Ultralytics Kopfes sorgt es für einen flexibleren und anpassungsfähigeren Erkennungsmechanismus und verbessert so die Leistung in verschiedenen Szenarien.
-
Optimierter Kompromiss zwischen Genauigkeit und Geschwindigkeit: Geschwindigkeit und Genauigkeit gehen oft in die entgegengesetzte Richtung. Aber YOLOv5u stellt diesen Zielkonflikt in Frage. Es bietet ein ausgewogenes Gleichgewicht, das Echtzeit-Erkennungen gewährleistet, ohne Kompromisse bei der Genauigkeit einzugehen. Diese Funktion ist besonders für Anwendungen von unschätzbarem Wert, die schnelle Reaktionen erfordern, wie z. B. autonome Fahrzeuge, Robotik und Echtzeit-Videoanalyse.
-
Eine Vielzahl an vortrainierten Modellen: YOLOv5u ist sich bewusst, dass unterschiedliche Aufgaben unterschiedliche Tools erfordern und bietet daher eine Vielzahl an vortrainierten Modellen. Egal, ob du dich auf Inferenz, Validierung oder Training konzentrierst, es gibt ein maßgeschneidertes Modell, das auf dich wartet. Diese Vielfalt stellt sicher, dass du nicht nur eine Einheitslösung verwendest, sondern ein Modell, das speziell auf deine einzigartige Herausforderung abgestimmt ist.
Unterstützte Aufgaben und Modi
Die YOLOv5u-Modelle mit verschiedenen vortrainierten Gewichten eignen sich hervorragend für Objekterkennungsaufgaben. Sie unterstützen eine breite Palette von Modi und eignen sich daher für verschiedene Anwendungen, von der Entwicklung bis zum Einsatz.
Modell Typ | Vortrainierte Gewichte | Aufgabe | Inferenz | Validierung | Ausbildung | exportieren |
---|---|---|---|---|---|---|
YOLOv5u | yolov5nu , yolov5su , yolov5mu , yolov5lu , yolov5xu , yolov5n6u , yolov5s6u , yolov5m6u , yolov5l6u , yolov5x6u |
Objekt-Erkennung | ✅ | ✅ | ✅ | ✅ |
Diese Tabelle gibt einen detaillierten Überblick über die YOLOv5u-Modellvarianten und hebt ihre 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 die Nutzer die Fähigkeiten der YOLOv5u-Modelle in einer Vielzahl von Objekterkennungsszenarien voll ausschöpfen können.
Leistungsmetriken
Leistung
In den Detection Docs findest du Anwendungsbeispiele mit diesen Modellen, die auf COCO trainiert wurden und 80 vortrainierte Klassen enthalten.
Modell | YAML | Größe (Pixel) |
mAPval 50-95 |
Geschwindigkeit CPU ONNX (ms) |
Geschwindigkeit A100 TensorRT (ms) |
params (M) |
FLOPs (B) |
---|---|---|---|---|---|---|---|
yolov5nu.pt | yolov5n.yaml | 640 | 34.3 | 73.6 | 1.06 | 2.6 | 7.7 |
yolov5su.pt | yolov5s.yaml | 640 | 43.0 | 120.7 | 1.27 | 9.1 | 24.0 |
yolov5mu.pt | yolov5m.yaml | 640 | 49.0 | 233.9 | 1.86 | 25.1 | 64.2 |
yolov5lu.pt | yolov5l.yaml | 640 | 52.2 | 408.4 | 2.50 | 53.2 | 135.0 |
yolov5xu.pt | yolov5x.yaml | 640 | 53.2 | 763.2 | 3.81 | 97.2 | 246.4 |
yolov5n6u.pt | yolov5n6.yaml | 1280 | 42.1 | 211.0 | 1.83 | 4.3 | 7.8 |
yolov5s6u.pt | yolov5s6.yaml | 1280 | 48.6 | 422.6 | 2.34 | 15.3 | 24.6 |
yolov5m6u.pt | yolov5m6.yaml | 1280 | 53.6 | 810.9 | 4.36 | 41.2 | 65.7 |
yolov5l6u.pt | yolov5l6.yaml | 1280 | 55.7 | 1470.9 | 5.47 | 86.1 | 137.4 |
yolov5x6u.pt | yolov5x6.yaml | 1280 | 56.8 | 2436.5 | 8.98 | 155.4 | 250.7 |
Verwendungsbeispiele
Dieses Beispiel zeigt einfache YOLOv5 Trainings- und Schlussfolgerungsbeispiele. Die vollständige Dokumentation zu diesen und anderen Modi findest du auf den Seiten Predict, Train, Val und Export docs.
Beispiel
PyTorch vorgebildet *.pt
Modelle als auch die Konfiguration *.yaml
Dateien können an den YOLO()
Klasse, 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')
CLI Befehle sind verfügbar, um die Modelle direkt auszuführen:
Zitate und Danksagungen
Wenn du YOLOv5 oder YOLOv5u in deiner Forschung verwendest, zitiere bitte das Ultralytics YOLOv5 Repository wie folgt:
Bitte beachte, dass die Modelle von YOLOv5 unter AGPL-3.0 und Enterprise-Lizenzen angeboten werden.