Ultralytics YOLO27: Trag dich auf die Warteliste ein.
Erste Schritte

YOLOv5-Schnellstart 🚀

Dieser Leitfaden ist ein Einstieg in die Objekterkennung in Echtzeit mit Ultralytics YOLOv5. Er behandelt die Installation, Inferenz mit PyTorch Hub und detect.py sowie das Training, damit du dieses Deep-Learning-Modell in deinen eigenen Projekten einsetzen kannst.

Installation#

Klone das YOLOv5-Repository und installiere die Anforderungen in einer Umgebung mit Python>=3.8.0 und PyTorch>=1.8.

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

Inferenz mit PyTorch Hub#

Führe YOLOv5-Inferenz über PyTorch Hub aus. Dabei werden Modelle automatisch aus der neuesten YOLOv5-Version heruntergeladen. Bei dieser Methode übernimmt PyTorch das Laden und Ausführen des Modells, sodass sich unkompliziert Vorhersagen erstellen lassen.

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#

Verwende detect.py für Inferenz mit einer Vielzahl von Quellen. Das Skript lädt Modelle automatisch aus der neuesten YOLOv5-Version herunter und speichert die Ergebnisse in runs/detect. Es eignet sich ideal für die Verwendung über die Befehlszeile und die Integration von YOLOv5 in größere Systeme. Unterstützt werden Eingaben wie Bilder, Videos, Verzeichnisse, Webcams und sogar Live-Streams.

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

Wenn du YOLOv5 in deinen Computer-Visionprojekten einsetzt, kannst du im GitHub-Repository Fragen stellen und Ergebnisse mit anderen Entwicklern und Forschenden teilen. Mit der Ultralytics Platform kannst du außerdem Datensätze verwalten und Modelle ohne Code trainieren oder auf der Seite Lösungen Anwendungsbeispiele aus der Praxis entdecken.

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-Arbeitsablauf zum Einsatz, der im Schnellstart beschrieben wird.

Kommentare

Stell eine Frage, teile deine Ergebnisse oder hilf jemand anderem.