Schnellstart
Installiere Ultralytics
Ultralytics bietet verschiedene Installationsmethoden, darunter pip, conda und Docker. Installiere YOLOv8 über die ultralytics
pip-Paket für die letzte stabile Version oder durch Klonen der Ultralytics GitHub-Repository für die aktuellste Version. Docker kann verwendet werden, um das Paket in einem isolierten Container auszuführen und so eine lokale Installation zu vermeiden.
Pass auf: Ultralytics YOLO Schnellstart-Anleitung
Installiere
Installieren Sie die ultralytics
Paket mit pip oder aktualisieren Sie eine bestehende Installation, indem Sie pip install -U ultralytics
. Besuchen Sie den Python Package Index (PyPI) für weitere Informationen über die ultralytics
Paket: https://pypi.org/project/ultralytics/.
Du kannst auch die ultralytics
Paket direkt vom GitHub Repository. Das kann nützlich sein, wenn du die neueste Entwicklungsversion haben willst. Vergewissere dich, dass du das Git-Kommandozeilen-Tool auf deinem System installiert hast. Die @main
Befehl installiert die main
Zweig und kann in einen anderen Zweig geändert werden, d.h. @my-branch
oder ganz entfernt, um die Standardeinstellung zu main
Zweig.
Conda ist ein alternativer Paketmanager zu pip, der ebenfalls für die Installation verwendet werden kann. Weitere Informationen zu Anaconda findest du unter https://anaconda.org/conda-forge/ultralytics. Ultralytics Das Feedstock-Repository zum Aktualisieren des Conda-Pakets findest du unter https://github.com/conda-forge/ultralytics-feedstock/.
Hinweis
Wenn du in einer CUDA Umgebung installierst, ist es am besten, wenn du ultralytics
, pytorch
und pytorch-cuda
in demselben Befehl, damit der conda-Paketmanager etwaige Konflikte auflösen kann, oder um die pytorch-cuda
zuletzt, damit es die CPU-spezifischen Einstellungen überschreibt. pytorch
Paket, wenn nötig.
Conda Docker Image
Ultralytics Conda Docker-Images sind auch erhältlich bei DockerHub. Diese Bilder basieren auf Miniconda3 und sind ein einfacher Weg, um mit der ultralytics
in einer Conda-Umgebung.
# Set image name as a variable
t=ultralytics/ultralytics:latest-conda
# Pull the latest ultralytics image from Docker Hub
sudo docker pull $t
# Run the ultralytics image in a container with GPU support
sudo docker run -it --ipc=host --gpus all $t # all GPUs
sudo docker run -it --ipc=host --gpus '"device=2,3"' $t # specify GPUs
Klone die ultralytics
Repository, wenn du dich an der Entwicklung beteiligen oder mit dem neuesten Quellcode experimentieren möchtest. Nach dem Klonen navigierst du in das Verzeichnis und installierst das Paket im Editiermodus -e
mit pip.
Verwende Docker, um mühelos die ultralytics
Paket in einem isolierten Container, um eine konsistente und reibungslose Leistung in verschiedenen Umgebungen zu gewährleisten. Durch die Wahl eines der offiziellen ultralytics
Bilder von Docker HubMit Ultralytics kannst du nicht nur die Komplexität einer lokalen Installation vermeiden, sondern auch auf eine verifizierte Arbeitsumgebung zugreifen. bietet 5 unterstützte Docker-Images, die jeweils für eine hohe Kompatibilität und Effizienz für verschiedene Plattformen und Anwendungsfälle ausgelegt sind:
- Dockerfile: GPU image recommended for training.
- Dockerfile-arm64: Optimiert für die ARM64-Architektur und ermöglicht den Einsatz auf Geräten wie dem Raspberry Pi und anderen ARM64-basierten Plattformen.
- Dockerfile-cpu: Ubuntu-basierte CPU-only Version, die für Inferenz und Umgebungen ohne GPUs geeignet ist.
- Dockerfile-Jetson: Maßgeschneidert für NVIDIA Jetson-Geräte, mit optimierter Unterstützung von GPU für diese Plattformen.
- Dockerfile-python: Minimales Image mit nur Python und den notwendigen Abhängigkeiten, ideal für leichtgewichtige Anwendungen und Entwicklung.
- Dockerfile-conda: Basiert auf Miniconda3 mit der conda-Installation des ultralytics Pakets.
Im Folgenden findest du die Befehle, um das neueste Image zu erhalten und auszuführen:
# Set image name as a variable
t=ultralytics/ultralytics:latest
# Pull the latest ultralytics image from Docker Hub
sudo docker pull $t
# Run the ultralytics image in a container with GPU support
sudo docker run -it --ipc=host --gpus all $t # all GPUs
sudo docker run -it --ipc=host --gpus '"device=2,3"' $t # specify GPUs
Der obige Befehl initialisiert einen Docker-Container mit der neuesten ultralytics
Bild. Die -it
Flag weist ein Pseudo-TTY zu und hält stdin offen, damit du mit dem Container interagieren kannst. Die --ipc=host
Flag setzt den IPC (Inter-Process Communication) Namespace auf den Host, der für die gemeinsame Nutzung von Speicher zwischen Prozessen wichtig ist. Die --gpus all
Flag ermöglicht den Zugriff auf alle verfügbaren GPUs innerhalb des Containers, was für Aufgaben, die GPU Berechnungen erfordern, entscheidend ist.
Hinweis: Um mit Dateien auf deinem lokalen Rechner innerhalb des Containers zu arbeiten, verwende Docker-Volumes, um ein lokales Verzeichnis in den Container zu mounten:
# Mount local directory to a directory inside the container
sudo docker run -it --ipc=host --gpus all -v /path/on/host:/path/in/container $t
Alter /path/on/host
mit dem Verzeichnispfad auf deinem lokalen Rechner, und /path/in/container
mit dem gewünschten Pfad innerhalb des Docker-Containers für die Zugänglichkeit.
Für die fortgeschrittene Nutzung von Docker kannst du den Ultralytics Docker Guide lesen.
Siehe die ultralytics
pyproject.toml Datei für eine Liste der Abhängigkeiten. Beachte, dass alle obigen Beispiele alle erforderlichen Abhängigkeiten installieren.
Tipp
PyTorch Die Anforderungen variieren je nach Betriebssystem und CUDA Anforderungen. Es wird daher empfohlen, zuerst PyTorch zu installieren, indem du den Anweisungen unter https://pytorch.org/get-started/locally folgst.
Verwende Ultralytics mit CLI
Die Ultralytics Befehlszeilenschnittstelle (CLI) ermöglicht einfache einzeilige Befehle, ohne dass eine Python Umgebung benötigt wird. CLI erfordert keine Anpassungen oder Python Code. Du kannst alle Aufgaben einfach vom Terminal aus mit der yolo
Befehl. Schau dir die CLI Leitfaden um mehr über die Verwendung von YOLOv8 von der Kommandozeile aus zu erfahren.
Beispiel
Ultralytics yolo
Befehle verwenden die folgende Syntax:
TASK
(optional) ist eine von (erkennen., Segment, klassifizieren, Pose)MODE
(erforderlich) ist eine von (Zug, val, vorhersagen., exportieren, Strecke)ARGS
(optional) sindarg=value
Paare wieimgsz=640
die die Standardeinstellungen außer Kraft setzen.
Alle sehen ARGS
in der vollen Konfigurationsleitfaden oder mit der yolo cfg
CLI Befehl.
Trainiere ein Erkennungsmodell für 10 Epochen mit einer anfänglichen learning_rate von 0,01
Vorhersage eines YouTube-Videos mit einem trainierten Segmentierungsmodell bei Bildgröße 320:
Val ein vortrainiertes Erkennungsmodell bei Losgröße 1 und Bildgröße 640:
Exportiere ein Klassifizierungsmodell von YOLOv8n in das Format ONNX mit der Bildgröße 224 x 128 (kein TASK erforderlich)
Warnung
Argumente müssen übergeben werden als arg=val
Paare, getrennt durch ein Gleichheitszeichen =
Zeichen und durch Leerzeichen zwischen den Paaren abgegrenzt. Verwenden Sie nicht --
Argument-Präfixe oder Kommas ,
zwischen den Argumenten.
yolo predict model=yolov8n.pt imgsz=640 conf=0.25
✅yolo predict model yolov8n.pt imgsz 640 conf 0.25
❌ (fehlt=
)yolo predict model=yolov8n.pt, imgsz=640, conf=0.25
❌ (nicht verwenden,
)yolo predict --model yolov8n.pt --imgsz 640 --conf 0.25
❌ (nicht verwenden--
)
Verwende Ultralytics mit Python
YOLOv8Die Schnittstelle Python ermöglicht eine nahtlose Integration in deine Python Projekte und erleichtert das Laden, Ausführen und Verarbeiten der Ergebnisse des Modells. Die Schnittstelle Python wurde mit Blick auf Einfachheit und Benutzerfreundlichkeit entwickelt und ermöglicht es den Nutzern, die Objekterkennung, Segmentierung und Klassifizierung schnell in ihre Projekte zu integrieren. Das macht die Python Schnittstelle von YOLOv8 zu einem unschätzbaren Werkzeug für alle, die diese Funktionen in ihre Python Projekte einbauen wollen.
Du kannst zum Beispiel ein Modell laden, es trainieren, seine Leistung auf einem Validierungsset bewerten und es sogar mit nur wenigen Zeilen Code in das Format ONNX exportieren. In der AnleitungPython erfährst du mehr über die Verwendung von YOLOv8 in deinen Python Projekten.
Beispiel
from ultralytics import YOLO
# Create a new YOLO model from scratch
model = YOLO("yolov8n.yaml")
# Load a pretrained YOLO model (recommended for training)
model = YOLO("yolov8n.pt")
# Train the model using the 'coco8.yaml' dataset for 3 epochs
results = model.train(data="coco8.yaml", epochs=3)
# Evaluate the model's performance on the validation set
results = model.val()
# Perform object detection on an image using the model
results = model("https://ultralytics.com/images/bus.jpg")
# Export the model to ONNX format
success = model.export(format="onnx")
Ultralytics Einstellungen
Die Bibliothek Ultralytics bietet ein leistungsfähiges Einstellungsmanagement, mit dem du deine Experimente genauestens steuern kannst. Durch die Verwendung der SettingsManager
untergebracht in der ultralytics.utils
Modul können die Nutzer ihre Einstellungen leicht abrufen und ändern. Diese werden in einer YAML-Datei gespeichert und können entweder direkt in der Umgebung Python oder über die Befehlszeilenschnittstelle (CLI) eingesehen und geändert werden.
Einstellungen inspizieren
Um einen Einblick in die aktuelle Konfiguration deiner Einstellungen zu erhalten, kannst du sie direkt einsehen:
Einstellungen ansehen
Du kannst Python verwenden, um deine Einstellungen zu sehen. Beginne mit dem Importieren der settings
Objekt aus dem ultralytics
Modul. Drucke die Einstellungen mit den folgenden Befehlen aus und gib sie zurück:
Ändern der Einstellungen
Ultralytics ermöglicht es den Nutzern, ihre Einstellungen einfach zu ändern. Änderungen können auf die folgenden Arten vorgenommen werden:
Einstellungen aktualisieren
Rufen Sie innerhalb der Umgebung Python die update
Methode auf der settings
Objekt, um deine Einstellungen zu ändern:
Wenn du lieber die Befehlszeilenschnittstelle verwendest, kannst du mit den folgenden Befehlen deine Einstellungen ändern:
Einstellungen verstehen
Die folgende Tabelle gibt einen Überblick über die Einstellungen, die auf Ultralytics vorgenommen werden können. Jede Einstellung ist mit einem Beispielwert, dem Datentyp und einer kurzen Beschreibung versehen.
Name | Beispielwert | Datentyp | Beschreibung |
---|---|---|---|
settings_version |
'0.0.4' |
str |
Ultralytics Version derEinstellungen (abweichend von Ultralytics pip version) |
datasets_dir |
'/path/to/datasets' |
str |
Das Verzeichnis, in dem die Datensätze gespeichert werden |
weights_dir |
'/path/to/weights' |
str |
Das Verzeichnis, in dem die Modellgewichte gespeichert werden |
runs_dir |
'/path/to/runs' |
str |
Das Verzeichnis, in dem die Experimentläufe gespeichert werden |
uuid |
'a1b2c3d4' |
str |
Der eindeutige Bezeichner für die aktuellen Einstellungen |
sync |
True |
bool |
Ob Analysen und Abstürze mit HUB synchronisiert werden sollen |
api_key |
'' |
str |
Ultralytics HUB API Schlüssel |
clearml |
True |
bool |
Ob die ClearML Protokollierung verwendet werden soll |
comet |
True |
bool |
Ob du Comet ML für die Verfolgung und Visualisierung von Experimenten nutzen willst |
dvc |
True |
bool |
Ob du DVC für die Versuchsverfolgung und Versionskontrolle nutzen willst |
hub |
True |
bool |
Ob die Ultralytics HUB-Integration verwendet werden soll |
mlflow |
True |
bool |
Ob MLFlow für die Experimentverfolgung verwendet werden soll |
neptune |
True |
bool |
Ob Neptune für die Verfolgung von Experimenten verwendet werden soll |
raytune |
True |
bool |
Ob Ray Tune für die Abstimmung der Hyperparameter verwendet werden soll |
tensorboard |
True |
bool |
Ob TensorBoard für die Visualisierung verwendet werden soll |
wandb |
True |
bool |
Ob die Weights & Biases Protokollierung verwendet werden soll |
Während du durch deine Projekte oder Experimente navigierst, solltest du diese Einstellungen immer wieder überprüfen, um sicherzustellen, dass sie optimal für deine Bedürfnisse konfiguriert sind.
FAQ
Wie kann ich Ultralytics YOLOv8 mit pip installieren?
Um Ultralytics YOLOv8 mit pip zu installieren, führe den folgenden Befehl aus:
Bei der letzten stabilen Version wird dadurch die ultralytics
Paket direkt aus dem Python Package Index (PyPI). Für weitere Details besuche die ultralytics Paket auf PyPI.
Alternativ kannst du die neueste Entwicklungsversion auch direkt von GitHub installieren:
Vergewissere dich, dass das Git-Kommandozeilentool auf deinem System installiert ist.
Kann ich Ultralytics YOLOv8 mit conda installieren?
Ja, du kannst Ultralytics YOLOv8 mit conda installieren, indem du conda ausführst:
Diese Methode ist eine hervorragende Alternative zu pip und gewährleistet die Kompatibilität mit anderen Paketen in deiner Umgebung. Für CUDA Umgebungen ist es am besten, die ultralytics
, pytorch
, und pytorch-cuda
gleichzeitig, um eventuelle Konflikte zu lösen:
Weitere Anweisungen findest du in der Conda Schnellstartanleitung.
Was sind die Vorteile der Verwendung von Docker für Ultralytics YOLOv8 ?
Die Verwendung von Docker zur Ausführung von Ultralytics YOLOv8 bietet eine isolierte und konsistente Umgebung, die eine reibungslose Leistung über verschiedene Systeme hinweg gewährleistet. Außerdem entfällt dadurch die Komplexität der lokalen Installation. Offizielle Docker-Images von Ultralytics sind auf Docker Hub verfügbar, mit verschiedenen Varianten, die für GPU, CPU, ARM64, NVIDIA Jetson und Conda-Umgebungen zugeschnitten sind. Im Folgenden findest du die Befehle, um das neueste Image zu laden und auszuführen:
# Pull the latest ultralytics image from Docker Hub
sudo docker pull ultralytics/ultralytics:latest
# Run the ultralytics image in a container with GPU support
sudo docker run -it --ipc=host --gpus all ultralytics/ultralytics:latest
Ausführlichere Anweisungen zu Docker findest du in der Docker-Schnellstartanleitung.
Wie kann ich das Ultralytics Repository für die Entwicklung klonen?
Um das Repository Ultralytics zu klonen und eine Entwicklungsumgebung einzurichten, gehst du wie folgt vor:
# Clone the ultralytics repository
git clone https://github.com/ultralytics/ultralytics
# Navigate to the cloned directory
cd ultralytics
# Install the package in editable mode for development
pip install -e .
Auf diese Weise kannst du zum Projekt beitragen oder mit dem neuesten Quellcode experimentieren. Weitere Informationen findest du im Ultralytics GitHub-Repository.
Warum sollte ich Ultralytics YOLOv8 CLI verwenden?
Die Ultralytics YOLOv8 Befehlszeilenschnittstelle (CLI) vereinfacht die Ausführung von Objekterkennungsaufgaben, ohne dass Python Code benötigt wird. Du kannst einzeilige Befehle für Aufgaben wie Training, Validierung und Vorhersage direkt von deinem Terminal aus ausführen. Die grundlegende Syntax für yolo
Befehle ist:
Zum Beispiel, um ein Erkennungsmodell mit bestimmten Parametern zu trainieren:
Schau dir den vollständigen CLI Guide an, um mehr Befehle und Anwendungsbeispiele zu entdecken.
Erstellt 2023-11-12, Aktualisiert 2024-07-04
Autoren: glenn-jocher (13), Burhan-Q (2), RizwanMunawar (2), Laughing-q (1), AyushExel (1)