Ultralytics YOLO27:
Get Started

YOLOv5-Schnellstart 🚀#

Starte mit Ultralytics YOLOv5 in die dynamische Welt der Objekterkennung in Echtzeit! Dieser Leitfaden bietet KI-Begeisterten und Fachleuten einen umfassenden Einstieg, um YOLOv5 zu meistern. Von der ersten Einrichtung bis hin zu fortgeschrittenen Trainingstechniken findest du hier alle wichtigen Informationen. Am Ende dieses Leitfadens weißt du, wie du YOLOv5 mit modernen Methoden des Deep Learning sicher in deinen Projekten einsetzt. Lass uns durchstarten und mit YOLOv5 durchstarten!

Installation#

Mach dich startklar, indem du das YOLOv5-Repository klonst und die Umgebung einrichtest. So stellst du sicher, dass alle erforderlichen Abhängigkeiten installiert sind. Prüfe, ob Python>=3.8.0 und PyTorch>=1.8 für den Start bereitstehen. Diese grundlegenden Werkzeuge sind entscheidend, um YOLOv5 effektiv auszuführen.

git clone https://github.com/ultralytics/yolov5 # clone repository
cd yolov5
pip install -r requirements.txt # install dependencies

Inferenz mit PyTorch Hub#

Erlebe, wie einfach die Inferenz mit YOLOv5 über den PyTorch Hub ist: Die Modelle werden nahtlos aus der neuesten Veröffentlichung von YOLOv5 heruntergeladen. Dieses Verfahren nutzt die Leistungsfähigkeit von PyTorch, um Modelle einfach zu laden und auszuführen und so schnell Vorhersagen zu erhalten.

import torch

# Modell laden
model = torch.hub.load("ultralytics/yolov5", "yolov5s")  # Kann 'yolov5n' - 'yolov5x6' oder 'custom' sein

# Inferenz auf Bildern
img = "https://ultralytics.com/images/zidane.jpg"  # Kann eine Datei, ein Path-, PIL-, OpenCV-, numpy-Objekt oder eine Liste von Bildern sein

# Inferenz ausführen
results = model(img)

# Ergebnisse anzeigen
results.print()  # oder .show(), .save(), .crop(), .pandas() usw.

Inferenz mit detect.py#

Nutze detect.py für vielseitige Inferenz mit verschiedenen Quellen. Das Skript lädt Modelle automatisch aus der neuesten YOLOv5-Version herunter und speichert Ergebnisse ganz einfach. Das Skript eignet sich ideal für die Verwendung über die Befehlszeile und zur Integration von YOLOv5 in größere Systeme. Es unterstützt Eingaben wie Bilder, Videos, Verzeichnisse, Webcams und sogar Livestreams.

python detect.py --weights yolov5s.pt --source 0                              # webcam
python detect.py --weights yolov5s.pt --source image.jpg                      # image
python detect.py --weights yolov5s.pt --source video.mp4                      # video
python detect.py --weights yolov5s.pt --source screen                         # screenshot
python detect.py --weights yolov5s.pt --source path/                          # directory
python detect.py --weights yolov5s.pt --source list.txt                       # list of images
python detect.py --weights yolov5s.pt --source list.streams                   # list of streams
python detect.py --weights yolov5s.pt --source 'path/*.jpg'                   # glob pattern
python detect.py --weights yolov5s.pt --source 'https://youtu.be/LNwODJXcvt4' # YouTube video
python detect.py --weights yolov5s.pt --source 'rtsp://example.com/media.mp4' # RTSP, RTMP, HTTP stream

Training#

Reproduziere die Benchmarks des YOLOv5-COCO-Datensatzes, indem du die folgenden Trainingsanweisungen befolgst. Die erforderlichen Modelle und Datensätze (wie coco128.yaml oder der vollständige coco.yaml) werden direkt aus der neuesten YOLOv5-Version abgerufen. Das Training von YOLOv5n/s/m/l/x auf einer V100-GPU sollte in der Regel 1/2/4/6/8 Tage dauern (beachte, dass Konfigurationen für das Training mit mehreren GPUs schneller sind). Optimiere die Leistung mit dem größtmöglichen --batch-size oder verwende --batch-size -1 für die YOLOv5-AutoBatch-Funktion, die automatisch die optimale Batchgröße ermittelt. Die folgenden Batchgrößen eignen sich ideal für V100-GPUs mit 16 GB. Einzelheiten zu den Modellkonfigurationsdateien (*.yaml) findest du in der Architekturübersicht.

# Train YOLOv5n on COCO128 for 3 epochs
python train.py --data coco128.yaml --epochs 3 --weights yolov5n.pt --batch-size 128

# Train YOLOv5s on COCO for 300 epochs
python train.py --data coco.yaml --epochs 300 --weights '' --cfg yolov5s.yaml --batch-size 64

# Train YOLOv5m on COCO for 300 epochs
python train.py --data coco.yaml --epochs 300 --weights '' --cfg yolov5m.yaml --batch-size 40

# Train YOLOv5l on COCO for 300 epochs
python train.py --data coco.yaml --epochs 300 --weights '' --cfg yolov5l.yaml --batch-size 24

# Train YOLOv5x on COCO for 300 epochs
python train.py --data coco.yaml --epochs 300 --weights '' --cfg yolov5x.yaml --batch-size 16
YOLOv5 training curves for COCO dataset

Zusammenfassend ist YOLOv5 nicht nur ein hochmodernes Werkzeug zur Objekterkennung, sondern auch ein Beleg dafür, wie maschinelles Lernen die Art und Weise verändert, wie wir durch visuelles Verständnis mit der Welt interagieren. Wenn du diesen Leitfaden durcharbeitest und YOLOv5 in deinen Projekten einsetzt, denke daran, dass du an der Spitze einer technologischen Revolution stehst und in der Computer Vision Bemerkenswertes erreichen kannst. Wenn du weitere Einblicke oder Unterstützung von anderen Visionären benötigst, bist du in unserem GitHub-Repository willkommen, in dem eine lebendige Community aus Entwicklern und Forschenden zu Hause ist. Entdecke weitere Ressourcen wie die Ultralytics Platform für die Verwaltung von Datensätzen und das Training von Modellen ohne Code oder sieh dir unsere Seite Lösungen mit praxisnahen Anwendungsfällen und Inspiration an. Erkunde weiter, entwickle Neues und hab Freude an den Möglichkeiten von YOLOv5. Viel Erfolg beim Erkennen! 🌠🔍

Häufig gestellte Fragen#

  • Nicht für die Inferenz. PyTorch Hub lädt den Code und die Gewichte bei Bedarf mit torch.hub.load("ultralytics/yolov5", "yolov5s") herunter. Zum Ausführen der Skripte train.py, val.py, detect.py und export.py musst du das Repository klonen.

  • yolov5s.pt bietet für die meisten Projekte die beste Balance zwischen Geschwindigkeit und Genauigkeit. Verwende yolov5n.pt für Edge-Geräte, yolov5m.pt bis yolov5x.pt, wenn Genauigkeit wichtiger als Geschwindigkeit ist, und P6-Varianten wie yolov5s6.pt für das Training mit 1280 Pixeln. Die vollständige Liste findest du in der Tabelle mit den vortrainierten Checkpoints.

  • Lege Bilder und Labels im YOLO-Format in parallelen Ordnern images/ und labels/ ab, beschreibe sie in einer dataset.yaml und führe python train.py --data dataset.yaml --weights yolov5s.pt aus. Das Tutorial Benutzerdefinierte Daten trainieren führt dich durch jeden Schritt.

  • YOLOv5 ist stabil und wird im eigenständigen Repository weiterhin vollständig unterstützt, ist aber nicht mehr das neueste Modell. Für neue Projekte ist YOLO26 im Paket ultralytics schneller, genauer und lässt sich ohne NMS Ende-zu-Ende exportieren. Dabei kommt derselbe pip install ultralytics-Workflow zum Einsatz, der im Schnellstart beschrieben ist.

Kommentare