Ultralytics YOLO Häufig gestellte Fragen (FAQ)
Dieser FAQ-Bereich behandelt häufige Fragen und Probleme, die bei der Arbeit mit Ultralytics YOLO-Repositories auftreten können.
FAQ
Was ist Ultralytics und was bietet es?
Ultralytics ist ein KI-Unternehmen für Computer Vision, das sich auf modernste Objekterkennungs- und Bildsegmentierungsmodelle spezialisiert hat, mit einem Fokus auf die YOLO-Familie (You Only Look Once). Das Angebot umfasst:
- Open-Source-Implementierungen von YOLOv8 und YOLO11
- Eine breite Palette von vorab trainierten Modellen für verschiedene Aufgaben der Computer Vision
- Ein umfassendes Python-Paket für die nahtlose Integration von YOLO-Modellen in Projekte
- Vielseitige Werkzeuge zum Trainieren, Testen und Bereitstellen von Modellen
- Umfangreiche Dokumentation und eine hilfsbereite Community
Wie installiere ich das Ultralytics-Paket?
Die Installation des Ultralytics-Pakets ist unkompliziert mit pip:
pip install ultralytics
Für die neueste Entwicklungsversion installieren Sie direkt aus dem GitHub-Repository:
pip install git+https://github.com/ultralytics/ultralytics.git
Detaillierte Installationsanweisungen finden Sie im Schnellstart-Leitfaden.
Was sind die Systemanforderungen für die Ausführung von Ultralytics-Modellen?
Mindestanforderungen:
- Python 3.8+
- PyTorch 1.8+
- CUDA-kompatible GPU (für GPU-Beschleunigung)
Empfohlene Einrichtung:
- Python 3.8+
- PyTorch 1.10+
- NVIDIA GPU mit CUDA 11.2+
- 8GB+ RAM
- 50 GB+ freier Festplattenspeicher (für Datensatzspeicherung und Modelltraining)
Zur Behebung häufiger Probleme besuchen Sie die Seite YOLO Häufige Probleme.
Wie kann ich ein benutzerdefiniertes YOLO-Modell mit meinem eigenen Datensatz trainieren?
So trainieren Sie ein benutzerdefiniertes YOLO-Modell:
- Bereiten Sie Ihren Datensatz im YOLO-Format vor (Bilder und entsprechende Label-txt-Dateien).
- Erstellen Sie eine YAML-Datei, die Ihre Dataset-Struktur und -Klassen beschreibt.
-
Verwenden Sie den folgenden Python-Code, um das Training zu starten:
from ultralytics import YOLO # Load a model model = YOLO("yolov8n.yaml") # build a new model from scratch model = YOLO("yolov8n.pt") # load a pretrained model (recommended for training) # Train the model results = model.train(data="path/to/your/data.yaml", epochs=100, imgsz=640)
Eine ausführlichere Anleitung, einschließlich Datenaufbereitung und erweiterter Trainingsoptionen, finden Sie im umfassenden Trainingsleitfaden.
Welche vortrainierten Modelle sind in Ultralytics verfügbar?
Ultralytics bietet eine vielfältige Auswahl an vortrainierten Modellen für verschiedene Aufgaben:
- Objekterkennung: YOLO11n, YOLO11s, YOLO11m, YOLO11l, YOLO11x
- Instanzsegmentierung: YOLO11n-seg, YOLO11s-seg, YOLO11m-seg, YOLO11l-seg, YOLO11x-seg
- Klassifizierung: YOLO11n-cls, YOLO11s-cls, YOLO11m-cls, YOLO11l-cls, YOLO11x-cls
- Pose-Schätzung: YOLO11n-pose, YOLO11s-pose, YOLO11m-pose, YOLO11l-pose, YOLO11x-pose
Diese Modelle variieren in Größe und Komplexität und bieten unterschiedliche Kompromisse zwischen Geschwindigkeit und Genauigkeit. Entdecken Sie die gesamte Bandbreite der vorab trainierten Modelle, um die beste Lösung für Ihr Projekt zu finden.
Wie führe ich eine Inferenz mit einem trainierten Ultralytics-Modell durch?
So führen Sie Inferenz mit einem trainierten Modell durch:
from ultralytics import YOLO
# Load a model
model = YOLO("path/to/your/model.pt")
# Perform inference
results = model("path/to/image.jpg")
# Process results
for r in results:
print(r.boxes) # print bbox predictions
print(r.masks) # print mask predictions
print(r.probs) # print class probabilities
Für erweiterte Inferenzoptionen, einschließlich Batch-Verarbeitung und Video-Inferenz, lesen Sie den detaillierten Vorhersageleitfaden.
Können Ultralytics-Modelle auf Edge-Geräten oder in Produktionsumgebungen eingesetzt werden?
Absolut! Ultralytics-Modelle sind für den vielseitigen Einsatz auf verschiedenen Plattformen konzipiert:
- Edge-Geräte: Optimieren Sie die Inferenz auf Geräten wie NVIDIA Jetson oder Intel Neural Compute Stick mit TensorRT, ONNX oder OpenVINO.
- Mobil: Stellen Sie Modelle auf Android- oder iOS-Geräten bereit, indem Sie sie in TFLite oder Core ML konvertieren.
- Cloud: Nutzen Sie Frameworks wie TensorFlow Serving oder PyTorch Serve für skalierbare Cloud-Bereitstellungen.
- Web: Implementierung von In-Browser-Inferenz unter Verwendung von ONNX.js oder TensorFlow.js.
Ultralytics bietet Exportfunktionen, um Modelle zur Bereitstellung in verschiedene Formate zu konvertieren. Entdecken Sie die vielfältigen Bereitstellungsoptionen, um die beste Lösung für Ihren Anwendungsfall zu finden.
Was ist der Unterschied zwischen YOLOv8 und YOLO11?
Die wichtigsten Unterschiede sind:
- Architektur: YOLO11 verfügt über ein verbessertes Backbone- und Head-Design für eine höhere Leistung.
- Leistung: YOLO11 bietet im Allgemeinen eine höhere Genauigkeit und Geschwindigkeit im Vergleich zu YOLOv8.
- Effizienz: YOLO11m erreicht eine höhere mittlere Average Precision (mAP) auf dem COCO-Datensatz mit 22 % weniger Parametern als YOLOv8m.
- Aufgaben: Beide Modelle unterstützen Objekterkennung, Instanzsegmentierung, Klassifizierung und Pose-Schätzung in einem einheitlichen Framework.
- Codebasis: YOLO11 ist mit einer modulareren und erweiterbaren Architektur implementiert, die eine einfachere Anpassung und Erweiterung ermöglicht.
Für einen detaillierten Vergleich der Funktionen und Leistungsmetriken besuchen Sie die YOLO11-Dokumentationsseite.
Wie kann ich zum Ultralytics Open-Source-Projekt beitragen?
Ein Beitrag zu Ultralytics ist eine großartige Möglichkeit, das Projekt zu verbessern und Ihre Fähigkeiten zu erweitern. So können Sie sich beteiligen:
- Forken Sie das Ultralytics-Repository auf GitHub.
- Erstellen Sie einen neuen Branch für Ihr Feature oder Ihren Bugfix.
- Nehmen Sie Ihre Änderungen vor und stellen Sie sicher, dass alle Tests bestanden werden.
- Senden Sie eine Pull-Anfrage mit einer klaren Beschreibung Ihrer Änderungen.
- Beteiligen Sie sich am Code-Review-Prozess.
Sie können sich auch beteiligen, indem Sie Fehler melden, Funktionen vorschlagen oder die Dokumentation verbessern. Detaillierte Richtlinien und Best Practices finden Sie im Leitfaden für Mitwirkende.
Wie installiere ich das Ultralytics-Paket in Python?
Die Installation des Ultralytics-Pakets in Python ist einfach. Verwenden Sie pip, indem Sie den folgenden Befehl in Ihrem Terminal oder Ihrer Eingabeaufforderung ausführen:
pip install ultralytics
Für die neueste Entwicklungsversion installieren Sie direkt aus dem GitHub-Repository:
pip install git+https://github.com/ultralytics/ultralytics.git
Umgebungsspezifische Installationsanweisungen und Tipps zur Fehlerbehebung finden Sie im umfassenden Schnellstart-Leitfaden.
Was sind die Hauptmerkmale von Ultralytics YOLO?
Ultralytics YOLO bietet eine Vielzahl von Funktionen für fortgeschrittene Computer-Vision-Aufgaben:
- Echtzeit-Erkennung: Objekte in Echtzeit-Szenarien effizient erkennen und klassifizieren.
- Multi-Task-Fähigkeiten: Führen Sie Objekterkennung, Instanzsegmentierung, Klassifizierung und Pose-Schätzung mit einem einheitlichen Framework durch.
- Vorab trainierte Modelle: Greifen Sie auf eine Vielzahl von vorab trainierten Modellen zu, die Geschwindigkeit und Genauigkeit für verschiedene Anwendungsfälle ausbalancieren.
- Benutzerdefiniertes Training: Modelle einfach mit der flexiblen Trainingspipeline auf benutzerdefinierten Datensätzen feinabstimmen.
- Breite Bereitstellungsoptionen: Exportieren Sie Modelle in verschiedene Formate wie TensorRT, ONNX und CoreML zur Bereitstellung auf verschiedenen Plattformen.
- Umfangreiche Dokumentation: Profitieren Sie von umfassender Dokumentation und einer hilfsbereiten Community, die Sie auf Ihrem Weg im Bereich Computer Vision begleitet.
Wie kann ich die Leistung meines YOLO-Modells verbessern?
Die Verbesserung der Leistung Ihres YOLO-Modells kann durch verschiedene Techniken erreicht werden:
- Hyperparameter-Optimierung: Experimentieren Sie mit verschiedenen Hyperparametern mithilfe des Hyperparameter-Optimierungsleitfadens, um die Modell-Performance zu optimieren.
- Datenerweiterung: Implementieren Sie Techniken wie Spiegeln, Skalieren, Drehen und Farbanpassungen, um Ihren Trainingsdatensatz zu erweitern und die Modellgeneralisierung zu verbessern.
- Transfer Learning: Nutzen Sie vortrainierte Modelle und optimieren Sie sie mit dem Trainingsleitfaden für Ihren spezifischen Datensatz.
- Exportieren in effiziente Formate: Konvertieren Sie Ihr Modell in optimierte Formate wie TensorRT oder ONNX für eine schnellere Inferenz mithilfe des Export-Leitfadens.
- Benchmarking: Nutzen Sie den Benchmark-Modus, um die Inferenzgeschwindigkeit und -genauigkeit systematisch zu messen und zu verbessern.
Kann ich Ultralytics YOLO-Modelle auf mobilen Geräten und Edge-Geräten einsetzen?
Ja, Ultralytics YOLO-Modelle sind für den vielseitigen Einsatz konzipiert, einschließlich mobiler Geräte und Edge-Geräte:
- Mobil: Konvertieren Sie Modelle in TFLite oder CoreML zur nahtlosen Integration in Android- oder iOS-Apps. Weitere Informationen finden Sie im TFLite Integrationsleitfaden und im CoreML Integrationsleitfaden für plattformspezifische Anweisungen.
- Edge-Geräte: Optimieren Sie die Inferenz auf Geräten wie NVIDIA Jetson oder anderer Edge-Hardware mit TensorRT oder ONNX. Der Edge TPU Integration Guide bietet detaillierte Schritte für die Edge-Bereitstellung.
Einen umfassenden Überblick über Bereitstellungsstrategien auf verschiedenen Plattformen finden Sie im Leitfaden zu den Bereitstellungsoptionen.
Wie kann ich Inferenz mit einem trainierten Ultralytics YOLO-Modell durchführen?
Die Durchführung von Inferenz mit einem trainierten Ultralytics YOLO Modell ist unkompliziert:
-
Modell laden:
from ultralytics import YOLO model = YOLO("path/to/your/model.pt")
-
Inferenz ausführen:
results = model("path/to/image.jpg") for r in results: print(r.boxes) # print bounding box predictions print(r.masks) # print mask predictions print(r.probs) # print class probabilities
Für fortgeschrittene Inferenztechniken, einschließlich Batch-Verarbeitung, Video-Inferenz und benutzerdefinierter Vorverarbeitung, lesen Sie den detaillierten Vorhersageleitfaden.
Wo finde ich Beispiele und Tutorials zur Verwendung von Ultralytics?
Ultralytics bietet eine Fülle von Ressourcen, die Ihnen den Einstieg erleichtern und Ihnen helfen, die Tools zu beherrschen:
- 📚 Offizielle Dokumentation: Umfassende Anleitungen, API-Referenzen und Best Practices.
- 💻 GitHub-Repository: Quellcode, Beispielskripte und Community-Beiträge.
- ✍️ Ultralytics Blog: Detaillierte Artikel, Anwendungsfälle und technische Einblicke.
- 💬 Community-Foren: Vernetzen Sie sich mit anderen Benutzern, stellen Sie Fragen und teilen Sie Ihre Erfahrungen.
- 🎥 YouTube-Kanal: Video-Tutorials, Demos und Webinare zu verschiedenen Ultralytics-Themen.
Diese Ressourcen bieten Codebeispiele, Anwendungsfälle aus der Praxis und Schritt-für-Schritt-Anleitungen für verschiedene Aufgaben mit Ultralytics-Modellen.
Wenn Sie weitere Unterstützung benötigen, zögern Sie nicht, die Ultralytics-Dokumentation zu konsultieren oder sich über GitHub Issues oder das offizielle Diskussionsforum an die Community zu wenden.