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

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-Rezept Conda Downloads Conda Version 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.

# 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 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 Anforderungen.txt 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 dem yolo cfg CLI Befehl.

Trainiere ein Erkennungsmodell f├╝r 10 Epochen mit einer anf├Ąnglichen learning_rate von 0,01

yolo train data=coco128.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=coco128.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 'coco128.yaml' dataset for 3 epochs
results = model.train(data='coco128.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 synchronisiert werden sollen mit HUB
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 Sie die Ultralytics HUB Integration
mlflow True bool Ob MLFlow f├╝r die Experimentverfolgung verwendet werden soll
neptune True bool Ob Neptun 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.



Erstellt 2023-11-12, Aktualisiert 2024-02-03
Autoren: glenn-jocher (7), chr043416@gmail.com (2), Laughing-q (1), AyushExel (1)

Kommentare