Zum Inhalt springen

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

PyPI - Python Version

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/.

PyPI - Version Downloads

# Install the ultralytics package from PyPI
pip install 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-branchoder ganz entfernt, um die Standardeinstellung zu main Zweig.

# Install the ultralytics package from GitHub
pip install git+https://github.com/ultralytics/ultralytics.git@main

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/.

Conda Version Conda Downloads Conda-Rezept Conda-Plattformen

# Install the ultralytics package using conda
conda install -c conda-forge ultralytics

Hinweis

Wenn Sie in einer CUDA-Umgebung installieren, ist die beste Vorgehensweise die Installation von ultralytics, pytorch und pytorch-cuda in demselben Befehl, damit der conda-Paketmanager etwaige Konflikte auflösen kann, oder um die pytorch-cuda zuletzt, damit sie die CPU-spezifischen pytorch Paket, wenn nötig.

# Install all packages together using conda
conda install -c pytorch -c nvidia -c conda-forge pytorch torchvision pytorch-cuda=11.8 ultralytics

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.

GitHub letzte Übertragung GitHub Commit-AktivitĂ€t

# 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 .

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:

Docker Image Version Docker Pulls

  • Dockerfile: GPU-Image fĂŒr die Ausbildung empfohlen.
  • 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-Version, die sich fĂŒr Inferenzen und Umgebungen ohne GPUs eignet.
  • Dockerfile-Jetson: Maßgeschneidert fĂŒr NVIDIA Jetson-GerĂ€te, mit einer fĂŒr diese Plattformen optimierten GPU-UnterstĂŒtzung.
  • 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 Flagge 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 und dabei den Anweisungen unter https://pytorch.org/get-started/locally zu folgen.

PyTorch Einbauanleitung

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:

yolo TASK MODE ARGS

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

yolo train data=coco8.yaml model=yolov8n.pt epochs=10 lr0=0.01

Vorhersage eines YouTube-Videos mit einem trainierten Segmentierungsmodell bei BildgrĂ¶ĂŸe 320:

yolo predict model=yolov8n-seg.pt source='https://youtu.be/LNwODJXcvt4' imgsz=320

Val ein vortrainiertes Erkennungsmodell bei LosgrĂ¶ĂŸe 1 und BildgrĂ¶ĂŸe 640:

yolo val model=yolov8n.pt data=coco8.yaml batch=1 imgsz=640

Exportiere ein Klassifizierungsmodell von YOLOv8n in das Format ONNX mit der BildgrĂ¶ĂŸe 224 x 128 (kein TASK erforderlich)

yolo export model=yolov8n-cls.pt format=onnx imgsz=224,128

FĂŒhre spezielle Befehle aus, um die Version zu sehen, Einstellungen anzuzeigen, PrĂŒfungen durchzufĂŒhren und mehr:

yolo help
yolo checks
yolo version
yolo settings
yolo copy-cfg
yolo cfg

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 --)

CLI Leitfaden

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")

Python Leitfaden

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:

from ultralytics import settings

# View all settings
print(settings)

# Return a specific setting
value = settings["runs_dir"]

Alternativ kannst du deine Einstellungen auch mit einem einfachen Befehl ĂŒber die Kommandozeile ĂŒberprĂŒfen:

yolo settings

Ä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:

from ultralytics import settings

# Update a setting
settings.update({"runs_dir": "/path/to/runs"})

# Update multiple settings
settings.update({"runs_dir": "/path/to/runs", "tensorboard": False})

# Reset settings to default values
settings.reset()

Wenn du lieber die Befehlszeilenschnittstelle verwendest, kannst du mit den folgenden Befehlen deine Einstellungen Àndern:

# Update a setting
yolo settings runs_dir='/path/to/runs'

# Update multiple settings
yolo settings runs_dir='/path/to/runs' tensorboard=False

# Reset settings to default values
yolo settings reset

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.



Created 2023-11-12, Updated 2024-06-10
Authors: glenn-jocher (11), Burhan-Q (2), RizwanMunawar (2), Laughing-q (1), AyushExel (1)

Kommentare