Installieren Sie Ultralytics
Ultralytics bietet eine Vielzahl von Installationsmethoden an, darunter pip, conda und Docker. Sie können YOLO über die ultralytics
pip-Paket für die letzte stabile Version oder durch Klonen des Ultralytics GitHub-Repository für die aktuellste Version. Docker ist auch eine Option, um das Paket in einem isolierten Container auszuführen, was eine lokale Installation vermeidet.
Beobachten: Ultralytics YOLO Schnellstart-Anleitung
Installieren Sie
Installieren oder aktualisieren Sie die ultralytics
Paket mit pip durch Ausführen von pip install -U ultralytics
. Für weitere Einzelheiten über die ultralytics
Paket, besuchen Sie die Python (PyPI).
# Install the ultralytics package from PyPI
pip install ultralytics
Sie können auch Folgendes installieren ultralytics
direkt vom Ultralytics GitHub-Repository. Dies kann nützlich sein, wenn Sie die neueste Entwicklungsversion benötigen. Vergewissern Sie sich, dass Sie das Git-Befehlszeilentool installiert haben, und führen Sie es dann aus:
# Install the ultralytics package from GitHub
pip install git+https://github.com/ultralytics/ultralytics.git@main
Conda kann als alternativer Paketmanager zu pip verwendet werden. Weitere Einzelheiten finden Sie unter Anaconda. Das Ultralytics Feedstock-Repository für die Aktualisierung des Conda-Pakets ist auf GitHub verfügbar.
# Install the ultralytics package using conda
conda install -c conda-forge ultralytics
Hinweis
Wenn Sie in einer CUDA installieren, ist es am besten, wenn Sie ultralytics
, pytorch
und pytorch-cuda
in demselben Befehl. Dadurch kann der conda-Paketmanager eventuelle Konflikte auflösen. Alternativ können Sie auch pytorch-cuda
zuletzt, um die CPU Einstellungen zu überschreiben pytorch
Paket, falls erforderlich.
# 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 verfügbar unter DockerHub. Diese Bilder basieren auf Miniconda3 und bieten einen unkomplizierten Einstieg in die Nutzung 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
Klonen Sie die Ultralytics GitHub-Repository wenn Sie sich an der Entwicklung beteiligen oder mit dem neuesten Quellcode experimentieren möchten. Navigieren Sie nach dem Klonen in das Verzeichnis und installieren Sie das Paket im bearbeitbaren Modus -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 .
Verwenden Sie Docker zur Ausführung der ultralytics
Paket in einem isolierten Container, wodurch eine konsistente Leistung in verschiedenen Umgebungen gewährleistet wird. Durch die Auswahl eines der offiziellen ultralytics
Bilder von Docker-HubMit Ultralytics vermeiden Sie die Komplexität einer lokalen Installation und erhalten Zugang zu einer verifizierten Arbeitsumgebung. Ultralytics bietet fünf unterstützte Docker-Images, die jeweils auf hohe Kompatibilität und Effizienz ausgelegt sind:
- Dockerfile: GPU image recommended for training.
- Dockerfile-arm64: Optimiert für ARM64-Architektur, geeignet für den Einsatz auf Geräten wie Raspberry Pi und anderen ARM64-basierten Plattformen.
- cpu: Ubuntu-basierte CPU, geeignet für Inferenzen und Umgebungen ohne GPUs.
- Dockerfile-Jetson: Maßgeschneidert für NVIDIA Jetson-Geräte, mit integrierter GPU , die für diese Plattformen optimiert ist.
- Dockerfile-python: Minimales Image mit nur Python und den notwendigen Abhängigkeiten, ideal für leichtgewichtige Anwendungen und Entwicklung.
- Dockerfile-conda: Basierend auf Miniconda3 mit einer conda-Installation der
ultralytics
Paket.
Hier sind 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 Website -it
Flaggen weisen ein Pseudo-TTY zu und halten stdin offen, was eine Interaktion mit dem Container ermöglicht. Die --ipc=host
setzt den IPC-Namensraum (Inter-Process Communication) auf den Host, der für die gemeinsame Nutzung von Speicher durch Prozesse unerlässlich ist. Die --gpus all
Flagge ermöglicht den Zugriff auf alle verfügbaren GPUs innerhalb des Containers, was für Aufgaben, die GPU erfordern, entscheidend ist.
Hinweis: Um mit Dateien auf Ihrem lokalen Rechner innerhalb des Containers zu arbeiten, verwenden Sie Docker-Volumes, um ein lokales Verzeichnis in den Container einzuhängen:
# 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
Ersetzen Sie /path/on/host
mit dem Verzeichnispfad auf Ihrem lokalen Rechner, und /path/in/container
mit dem gewünschten Pfad innerhalb des Docker-Containers.
Für die fortgeschrittene Verwendung von Docker lesen Sie bitte den Ultralytics Docker Guide.
Siehe die ultralytics
pyproject.toml Datei für eine Liste der Abhängigkeiten. Beachten Sie, dass alle obigen Beispiele alle erforderlichen Abhängigkeiten installieren.
Tipp
PyTorch Die Anforderungen variieren je nach Betriebssystem und CUDA . Installieren Sie daher zuerst PyTorch , indem Sie die Anweisungen unter PyTorch.
Benutzerdefinierte Installationsmethoden
Während die Standard-Installationsmethoden die meisten Anwendungsfälle abdecken, kann es sein, dass Sie ein maßgeschneidertes Setup benötigen. Dies könnte die Installation bestimmter Paketversionen, das Weglassen optionaler Abhängigkeiten oder das Ersetzen von Paketen, wie das Ersetzen von opencv-python
mit der GUI-losen opencv-python-headless
für Serverumgebungen.
Benutzerdefinierte Methoden
Sie können die ultralytics
Paketkern ohne jegliche Abhängigkeiten mit der Pip-Funktion --no-deps
Flagge. In diesem Fall müssen Sie alle erforderlichen Abhängigkeiten manuell nachinstallieren.
-
Installieren Sie
ultralytics
Kern:pip install ultralytics --no-deps
-
Manuelle Installation von Abhängigkeiten: Sie müssen alle erforderlichen Pakete installieren, die in der
pyproject.toml
Datei und ersetzen oder ändern Sie die Versionen nach Bedarf. Für das OpenCV-Beispiel ohne Kopf:# Install other core dependencies pip install torch torchvision numpy matplotlib pandas pyyaml pillow psutil requests tqdm scipy seaborn ultralytics-thop # Install headless OpenCV instead of the default pip install opencv-python-headless
Verwaltung von Abhängigkeiten
Diese Methode bietet volle Kontrolle, erfordert aber eine sorgfältige Verwaltung der Abhängigkeiten. Stellen Sie sicher, dass alle benötigten Pakete mit kompatiblen Versionen installiert sind, indem Sie auf die ultralytics
pyproject.toml
Datei.
Wenn Sie dauerhafte benutzerdefinierte Änderungen benötigen (z. B. immer mit opencv-python-headless
), können Sie das Ultralytics forken, Änderungen an pyproject.toml
oder anderen Code, und installieren Sie von Ihrem Fork aus.
- Forken Sie das Ultralytics GitHub-Repository auf Ihr eigenes GitHub-Konto.
- Klonen Ihre Gabelung vor Ort:
git clone https://github.com/YOUR_USERNAME/ultralytics.git cd ultralytics
- Einen neuen Zweig erstellen für Ihre Änderungen:
git checkout -b custom-opencv
- Ändern Sie
pyproject.toml
: Öffnen Siepyproject.toml
in einem Texteditor und ersetzen Sie die Zeile mit"opencv-python>=4.6.0"
mit"opencv-python-headless>=4.6.0"
(Version nach Bedarf anpassen). - Commit und Push Ihre Änderungen:
git add pyproject.toml git commit -m "Switch to opencv-python-headless" git push origin custom-opencv
- Installieren Sie unter Verwendung von pip mit der
git+https
Syntax, die auf Ihren Zweig verweist:pip install git+https://github.com/YOUR_USERNAME/ultralytics.git@custom-opencv
Mit dieser Methode wird sichergestellt, dass Ihr benutzerdefinierter Abhängigkeitssatz immer dann verwendet wird, wenn Sie von dieser speziellen URL aus installieren. Siehe Methode 4 für die Verwendung dieser Methode in einer requirements.txt
Datei.
Ähnlich wie bei der Standardmethode "Git Clone" für die Entwicklung können Sie das Repository lokal klonen, Abhängigkeitsdateien vor der Installation ändern und dann im bearbeitbaren Modus installieren.
- Klonen das Ultralytics :
git clone https://github.com/ultralytics/ultralytics cd ultralytics
- Ändern Sie
pyproject.toml
: Bearbeiten Sie die Datei, um die gewünschten Änderungen vorzunehmen. Verwenden Sie zum Beispielsed
(unter Linux/macOS) oder einen Texteditor, um dieopencv-python
mitopencv-python-headless
. Verwendung vonsed
(Überprüfen Sie die genaue Zeile inpyproject.toml
zuerst):Oder manuell bearbeiten# Example: Replace the line starting with "opencv-python..." # Adapt the pattern carefully based on the current file content sed -i'' -e 's/^\s*"opencv-python>=.*",/"opencv-python-headless>=4.8.0",/' pyproject.toml
pyproject.toml
zu ändern"opencv-python>=...
zu"opencv-python-headless>=..."
. - Installieren Sie das Paket im bearbeitbaren Modus (
-e
). Pip verwendet nun Ihre geändertepyproject.toml
um Abhängigkeiten aufzulösen und zu installieren:pip install -e .
Dieser Ansatz ist nützlich, um lokale Änderungen an Abhängigkeiten oder Build-Konfigurationen zu testen, bevor sie festgeschrieben werden, oder um spezielle Entwicklungsumgebungen einzurichten.
Wenn Sie Ihre Projektabhängigkeiten mit einer requirements.txt
Datei können Sie Ihren eigenen Ultralytics direkt darin angeben. Dadurch wird sichergestellt, dass jeder, der das Projekt einrichtet, Ihre spezielle Version mit ihren geänderten Abhängigkeiten (wie opencv-python-headless
).
- Erstellen oder bearbeiten
requirements.txt
: Fügen Sie eine Zeile hinzu, die auf Ihren benutzerdefinierten Fork und Branch verweist (wie in Methode 2 vorbereitet).Anforderungen.txtHinweis: Sie müssen keine Abhängigkeiten auflisten, die bereits für Ihre benutzerdefinierte# Core dependencies numpy matplotlib pandas pyyaml Pillow psutil requests>=2.23.0 tqdm torch>=1.8.0 # Or specific version/variant torchvision>=0.9.0 # Or specific version/variant # Install ultralytics from a specific git commit or branch # Replace YOUR_USERNAME and custom-branch with your details git+https://github.com/YOUR_USERNAME/ultralytics.git@custom-branch # Other project dependencies flask # ... etc
ultralytics
gabel (wieopencv-python-headless
) hier, da pip sie basierend auf dem Fork derpyproject.toml
. - Installieren Sie Abhängigkeiten aus der Datei:
pip install -r requirements.txt
Diese Methode fügt sich nahtlos in die Standardabläufe der Python ein und ermöglicht es Ihnen, die ultralytics
zu Ihrer angepassten Git-Quelle.
Verwenden Sie Ultralytics mit CLI
Die Ultralytics CLI) ermöglicht einfache einzeilige Befehle, ohne dass eine Python erforderlich ist. Die CLI erfordert keine Anpassungen oder Python ; alle Aufgaben werden vom Terminal aus mit dem Befehl yolo
Befehl. Für weitere Informationen zur Verwendung von YOLO von der Kommandozeile aus, siehe CLI Leitfaden.
Beispiel
Ultralytics yolo
Befehle verwenden die folgende Syntax:
yolo TASK MODE ARGS
TASK
(fakultativ) ist eine von (erkennen., Segment, einordnen., Pose, obb)
- MODE
(erforderlich) ist eine von (Zug, val, vorhersagen, exportieren, Spur, Benchmark)
- ARGS
(fakultativ) sind arg=value
Paare wie imgsz=640
die die Standardeinstellungen außer Kraft setzen.
Alle sehen ARGS
im vollen Leitfaden zur Konfiguration oder mit dem yolo cfg
CLI Befehl.
Trainieren Sie ein Erkennungsmodell für 10 Epochen mit einer anfänglichen Lernrate von 0,01:
yolo train data=coco8.yaml model=yolo11n.pt epochs=10 lr0=0.01
Vorhersage eines YouTube-Videos mit Hilfe eines vortrainierten Segmentierungsmodells bei Bildgröße 320:
yolo predict model=yolo11n-seg.pt source='https://youtu.be/LNwODJXcvt4' imgsz=320
Validieren Sie ein vorab trainiertes Erkennungsmodell mit einer Stapelgröße von 1 und einer Bildgröße von 640:
yolo val model=yolo11n.pt data=coco8.yaml batch=1 imgsz=640
Exportieren Sie ein YOLOv11n-Klassifizierungsmodell in das ONNX mit einer Bildgröße von 224x128 (kein TASK erforderlich):
yolo export model=yolo11n-cls.pt format=onnx imgsz=224,128
Zählen Sie Objekte in einem Video oder Live-Stream mit YOLO11:
yolo solutions count show=True
yolo solutions count source="path/to/video.mp4" # specify video file path
Überwachen Sie Trainingsübungen mit einem YOLO11 :
yolo solutions workout show=True
yolo solutions workout source="path/to/video.mp4" # specify video file path
# Use keypoints for ab-workouts
yolo solutions workout kpts="[5, 11, 13]" # left side
yolo solutions workout kpts="[6, 12, 14]" # right side
Verwenden Sie YOLO11 , um Objekte in einer bestimmten Warteschlange oder Region zu zählen:
yolo solutions queue show=True
yolo solutions queue source="path/to/video.mp4" # specify video file path
yolo solutions queue region="[(20, 400), (1080, 400), (1080, 360), (20, 360)]" # configure queue coordinates
Führen Sie Objekterkennung, Instanzsegmentierung oder Posenschätzung in einem Webbrowser mit Streamlit durch:
yolo solutions inference
yolo solutions inference model="path/to/model.pt" # use model fine-tuned with Ultralytics Python package
Führen Sie spezielle Befehle aus, um die Version zu sehen, Einstellungen anzuzeigen, Prüfungen durchzuführen und vieles mehr:
yolo help
yolo checks
yolo version
yolo settings
yolo copy-cfg
yolo cfg
yolo solutions help
Warnung
Die Argumente müssen als arg=value
Paare, getrennt durch ein Gleichheitszeichen =
Zeichen und durch Leerzeichen getrennt. Verwenden Sie nicht --
Argument-Präfixe oder Kommas ,
zwischen den Argumenten.
yolo predict model=yolo11n.pt imgsz=640 conf=0.25
✅yolo predict model yolo11n.pt imgsz 640 conf 0.25
❌ (fehlt=
)yolo predict model=yolo11n.pt, imgsz=640, conf=0.25
❌ (nicht verwenden,
)yolo predict --model yolo11n.pt --imgsz 640 --conf 0.25
❌ (nicht verwenden--
)yolo solution model=yolo11n.pt imgsz=640 conf=0.25
❌ (Verwendungsolutions
, nichtsolution
)
Verwenden Sie Ultralytics mit Python
DiePython Ultralytics bietet eine nahtlose Integration in Python , was das Laden, Ausführen und Verarbeiten von Modellergebnissen erleichtert. Die auf Einfachheit ausgelegte Python ermöglicht den Benutzern eine schnelle Implementierung von Objekterkennung, Segmentierung und Klassifizierung. Dies macht die YOLO Python zu einem unschätzbaren Werkzeug für die Integration dieser Funktionen in Python .
So können Benutzer beispielsweise ein Modell laden, trainieren, seine Leistung bewerten und es mit nur wenigen Zeilen Code in das ONNX exportieren. Im Python Guide erfahren Sie mehr über die Verwendung von YOLO in Ihren Python .
Beispiel
from ultralytics import YOLO
# Create a new YOLO model from scratch
model = YOLO("yolo11n.yaml")
# Load a pretrained YOLO model (recommended for training)
model = YOLO("yolo11n.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 Ultralytics enthält eine SettingsManager
für eine fein abgestufte Kontrolle über die Experimente, so dass die Benutzer leicht auf die Einstellungen zugreifen und sie ändern können. Diese Einstellungen werden in einer JSON-Datei im Benutzerkonfigurationsverzeichnis der Umgebung gespeichert und können in der Python oder über die BefehlszeilenschnittstelleCLI) angezeigt oder geändert werden.
Prüfen der Einstellungen
So zeigen Sie die aktuelle Konfiguration Ihrer Einstellungen an:
Einstellungen anzeigen
Verwenden Sie Python , um Ihre Einstellungen anzuzeigen, indem Sie die settings
Objekt aus dem ultralytics
Modul. Mit diesen Befehlen können Sie Einstellungen drucken und zurückgeben:
from ultralytics import settings
# View all settings
print(settings)
# Return a specific setting
value = settings["runs_dir"]
Mit der Befehlszeilenschnittstelle können Sie Ihre Einstellungen überprüfen:
yolo settings
Ändern von Einstellungen
Ultralytics macht es einfach, die Einstellungen auf folgende Weise zu ändern:
Einstellungen aktualisieren
In Python verwenden Sie die update
Methode auf der settings
Objekt:
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()
So ändern Sie die Einstellungen über die Befehlszeilenschnittstelle:
# 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
Verstehen von Einstellungen
Die folgende Tabelle gibt einen Überblick über die anpassbaren Einstellungen in Ultralytics, einschließlich Beispielwerten, Datentypen und Beschreibungen.
Name | Beispielwert | Datenart | Beschreibung |
---|---|---|---|
settings_version |
'0.0.4' |
str |
Version derUltralytics-Einstellungen (unterscheidet sich von derUltralytics-Pip-Version ) |
datasets_dir |
'/path/to/datasets' |
str |
Verzeichnis, in dem die Datensätze gespeichert sind |
weights_dir |
'/path/to/weights' |
str |
Verzeichnis, in dem die Modellgewichte gespeichert sind |
runs_dir |
'/path/to/runs' |
str |
Verzeichnis, in dem Experimentläufe gespeichert werden |
uuid |
'a1b2c3d4' |
str |
Eindeutiger Bezeichner für die aktuellen Einstellungen |
sync |
True |
bool |
Option zur Synchronisierung von Analysen und Abstürzen mit Ultralytics HUB |
api_key |
'' |
str |
Ultralytics HUB API-Schlüssel |
clearml |
True |
bool |
Option zur Verwendung von ClearML Protokollierung |
comet |
True |
bool |
Option zur Verwendung von Comet ML für die Verfolgung und Visualisierung von Experimenten |
dvc |
True |
bool |
Option zur Verwendung von DVC für die Versuchsverfolgung und Versionskontrolle |
hub |
True |
bool |
Option zur Verwendung der Ultralytics HUB-Integration |
mlflow |
True |
bool |
Option zur Verwendung von MLFlow für die Experimentverfolgung |
neptune |
True |
bool |
Option zur Verwendung von Neptune für die Experimentverfolgung |
raytune |
True |
bool |
Option zur Verwendung von Ray Tune für die Abstimmung der Hyperparameter |
tensorboard |
True |
bool |
Option zur Verwendung von TensorBoard für die Visualisierung |
wandb |
True |
bool |
Option zur Verwendung Weights & Biases Protokollierung |
vscode_msg |
True |
bool |
Wenn ein VS-Code-Terminal erkannt wird, wird eine Aufforderung zum Herunterladen der Ultralytics aktiviert. |
Überprüfen Sie diese Einstellungen im Laufe Ihrer Projekte oder Experimente, um eine optimale Konfiguration sicherzustellen.
FAQ
Wie kann ich Ultralytics mit pip installieren?
Installieren Sie Ultralytics mit pip:
pip install ultralytics
Dies installiert die neueste stabile Version des ultralytics
Paket von PyPI. Um die Entwicklungsversion direkt von GitHub zu installieren:
pip install git+https://github.com/ultralytics/ultralytics.git
Stellen Sie sicher, dass das Git-Befehlszeilentool auf Ihrem System installiert ist.
Kann ich Ultralytics YOLO mit conda installieren?
Ja, installieren Sie Ultralytics YOLO mit conda mit:
conda install -c conda-forge ultralytics
Diese Methode ist eine gute Alternative zu pip und gewährleistet die Kompatibilität mit anderen Paketen. Für CUDA , installieren Sie ultralytics
, pytorch
und pytorch-cuda
zusammen, um Konflikte zu lösen:
conda install -c pytorch -c nvidia -c conda-forge pytorch torchvision pytorch-cuda=11.8 ultralytics
Weitere Anweisungen finden Sie in der Conda-Schnellstartanleitung.
Was sind die Vorteile der Verwendung von Docker für die Ausführung von Ultralytics YOLO ?
Docker bietet eine isolierte, konsistente Umgebung für Ultralytics YOLO, die eine reibungslose Leistung über verschiedene Systeme hinweg gewährleistet und die Komplexität der lokalen Installation vermeidet. Offizielle Docker-Images sind auf Docker Hub verfügbar, mit Varianten für GPU, CPU, ARM64, NVIDIA Jetson und Conda. So ziehen Sie das neueste Image und führen es aus:
# 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ührliche Anweisungen zu Docker finden Sie in der Docker-Schnellstartanleitung.
Wie kann ich das Ultralytics Repository für die Entwicklung klonen?
Klonen Sie das Ultralytics und richten Sie eine Entwicklungsumgebung mit ein:
# 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 .
Dies ermöglicht Beiträge zum Projekt oder das Experimentieren mit dem neuesten Quellcode. Weitere Informationen finden Sie im Ultralytics GitHub-Repository.
Warum sollte ich Ultralytics YOLO CLI verwenden?
Die Ultralytics YOLO CLI vereinfacht die Ausführung von Objekterkennungsaufgaben ohne Python und ermöglicht einzeilige Befehle für Training, Validierung und Vorhersage direkt von Ihrem Terminal aus. Die grundlegende Syntax ist:
yolo TASK MODE ARGS
Zum Beispiel, um ein Erkennungsmodell zu trainieren:
yolo train data=coco8.yaml model=yolo11n.pt epochs=10 lr0=0.01
Weitere Befehle und Anwendungsbeispiele finden Sie im vollständigen CLI .