Von Ultralytics unterstützte Modelle
Willkommen zur Modelldokumentation von Ultralytics! Wir bieten Unterstützung für eine breite Palette von Modellen, die jeweils auf spezifische Aufgaben wie Objekterkennung, Instanzsegmentierung, Bildklassifizierung, Pose-Schätzung und Multi-Objekt-Tracking zugeschnitten sind. Wenn Sie daran interessiert sind, Ihre Modellarchitektur zu Ultralytics beizutragen, lesen Sie unseren Leitfaden für Mitwirkende.
Ausgewählte Modelle
Hier sind einige der wichtigsten unterstützten Modelle:
- YOLOv3: Die dritte Iteration der YOLO-Modellfamilie, ursprünglich von Joseph Redmon, bekannt für ihre effizienten Echtzeit-Objekterkennungsfunktionen.
- YOLOv4: Ein Darknet-natives Update für YOLOv3, das 2020 von Alexey Bochkovskiy veröffentlicht wurde.
- YOLOv5: Eine verbesserte Version der YOLO-Architektur von Ultralytics, die im Vergleich zu früheren Versionen ein besseres Verhältnis von Leistung und Geschwindigkeit bietet.
- YOLOv6: Veröffentlicht von Meituan im Jahr 2022 und in vielen autonomen Lieferrobotern des Unternehmens im Einsatz.
- YOLOv7: Aktualisierte YOLO-Modelle, die 2022 von den Autoren von YOLOv4 veröffentlicht wurden. Es wird nur Inferenz unterstützt.
- YOLOv8: Ein vielseitiges Modell mit erweiterten Funktionen wie Instanzsegmentierung, Pose/Keypoints-Schätzung und Klassifizierung.
- YOLOv9: Ein experimentelles Modell, das auf der Ultralytics YOLOv5-Codebasis trainiert wurde und programmierbare Gradienteninformationen (PGI) implementiert.
- YOLOv10: Von der Tsinghua University, mit NMS-freiem Training und effizienz-genauigkeitsgetriebener Architektur, die modernste Leistung und Latenz liefert.
- YOLO11 🚀 NEU: Die neuesten YOLO-Modelle von Ultralytics bieten State-of-the-Art (SOTA) Leistung bei verschiedenen Aufgaben, einschliesslich Erkennung, Segmentierung, Pose-Schätzung, Tracking und Klassifizierung.
- Segment Anything Model (SAM): Metas ursprüngliches Segment Anything Model (SAM).
- Segment Anything Model 2 (SAM2): Die nächste Generation von Metas Segment Anything Model (SAM) für Videos und Bilder.
- Mobile Segment Anything Model (MobileSAM): MobileSAM für mobile Anwendungen, von der Kyung Hee University.
- Fast Segment Anything Model (FastSAM): FastSAM von der Image & Video Analysis Group, Institute of Automation, Chinese Academy of Sciences.
- YOLO-NAS: YOLO Neural Architecture Search (NAS) Modelle.
- Realtime Detection Transformers (RT-DETR): PaddlePaddle Realtime Detection Transformer (RT-DETR)-Modelle von Baidu.
- YOLO-World: Echtzeit-Modelle zur Objekterkennung mit offenem Vokabular von Tencent AI Lab.
- YOLOE: Ein verbesserter Objektdetektor mit offenem Vokabular, der die YOLO-Echtzeitleistung beibehält und gleichzeitig beliebige Klassen erkennt, die über seine Trainingsdaten hinausgehen.
Ansehen: Führen Sie Ultralytics YOLO-Modelle mit nur wenigen Codezeilen aus.
Erste Schritte: Anwendungsbeispiele
Dieses Beispiel enthält einfache Beispiele für YOLO-Training und -Inferenz. Die vollständige Dokumentation zu diesen und anderen Modi finden Sie auf den Dokumentationsseiten Predict, Train, Val und Export.
Beachten Sie, dass das folgende Beispiel für YOLOv8 Detect-Modelle für die Objekterkennung gilt. Weitere unterstützte Aufgaben finden Sie in der Segment-, Classify- und Pose-Dokumentation.
Beispiel
PyTorch vorab trainierte *.pt
Modelle sowie Konfigurations- *.yaml
Dateien können an die YOLO()
, SAM()
, NAS()
und RTDETR()
Klassen, um eine Modellinstanz in Python zu erstellen:
from ultralytics import YOLO
# Load a COCO-pretrained YOLOv8n model
model = YOLO("yolov8n.pt")
# Display model information (optional)
model.info()
# Train the model on the COCO8 example dataset for 100 epochs
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Run inference with the YOLOv8n model on the 'bus.jpg' image
results = model("path/to/bus.jpg")
Es stehen CLI-Befehle zur Verfügung, um die Modelle direkt auszuführen:
# Load a COCO-pretrained YOLOv8n model and train it on the COCO8 example dataset for 100 epochs
yolo train model=yolov8n.pt data=coco8.yaml epochs=100 imgsz=640
# Load a COCO-pretrained YOLOv8n model and run inference on the 'bus.jpg' image
yolo predict model=yolov8n.pt source=path/to/bus.jpg
Beitrag neuer Modelle
Möchten Sie Ihr Modell zu Ultralytics beitragen? Ausgezeichnet! Wir sind immer offen für die Erweiterung unseres Modellportfolios.
-
Repository forken: Beginnen Sie mit dem Forken des Ultralytics GitHub-Repositorys.
-
Fork klonen: Klonen Sie Ihren Fork auf Ihren lokalen Rechner und erstellen Sie einen neuen Branch, an dem Sie arbeiten können.
-
Implementieren Sie Ihr Modell: Fügen Sie Ihr Modell gemäß den Codierungsstandards und Richtlinien hinzu, die in unserem Leitfaden für Mitwirkende bereitgestellt werden.
-
Gründlich testen: Stellen Sie sicher, dass Sie Ihr Modell sowohl isoliert als auch als Teil der Pipeline gründlich testen.
-
Pull-Request erstellen: Sobald Sie mit Ihrem Modell zufrieden sind, erstellen Sie einen Pull-Request an das Haupt-Repository zur Überprüfung.
-
Code-Review & Zusammenführung: Nach der Überprüfung wird Ihr Modell, wenn es unsere Kriterien erfüllt, in das Haupt-Repository übernommen.
Detaillierte Schritte finden Sie in unserem Leitfaden für Mitwirkende.
FAQ
Was sind die wichtigsten Vorteile der Verwendung von Ultralytics YOLO11 für die Objekterkennung?
Ultralytics YOLO11 bietet erweiterte Funktionen wie Echtzeit-Objekterkennung, Instanzsegmentierung, Pose-Schätzung und Klassifizierung. Seine optimierte Architektur gewährleistet eine hohe Geschwindigkeit ohne Einbußen bei der Genauigkeit, was es ideal für eine Vielzahl von Anwendungen in verschiedenen KI-Bereichen macht. YOLO11 baut auf früheren Versionen mit verbesserter Leistung und zusätzlichen Funktionen auf, wie auf der YOLO11-Dokumentationsseite beschrieben.
Wie kann ich ein YOLO-Modell mit benutzerdefinierten Daten trainieren?
Das Trainieren eines YOLO-Modells mit benutzerdefinierten Daten kann einfach mit den Bibliotheken von Ultralytics durchgeführt werden. Hier ist ein kurzes Beispiel:
Beispiel
from ultralytics import YOLO
# Load a YOLO model
model = YOLO("yolo11n.pt") # or any other YOLO model
# Train the model on custom dataset
results = model.train(data="custom_data.yaml", epochs=100, imgsz=640)
yolo train model=yolo11n.pt data='custom_data.yaml' epochs=100 imgsz=640
Weitere detaillierte Anweisungen finden Sie auf der Dokumentationsseite Train.
Welche YOLO-Versionen werden von Ultralytics unterstützt?
Ultralytics unterstützt eine umfassende Palette von YOLO (You Only Look Once)-Versionen von YOLOv3 bis YOLO11 sowie Modelle wie YOLO-NAS, SAM und RT-DETR. Jede Version ist für verschiedene Aufgaben wie Erkennung, Segmentierung und Klassifizierung optimiert. Detaillierte Informationen zu jedem Modell finden Sie in der Dokumentation Von Ultralytics unterstützte Modelle.
Warum sollte ich Ultralytics HUB für Machine-Learning-Projekte verwenden?
Ultralytics HUB bietet eine No-Code-End-to-End-Plattform für das Trainieren, Bereitstellen und Verwalten von YOLO-Modellen. Es vereinfacht komplexe Workflows und ermöglicht es Benutzern, sich auf die Modellleistung und -anwendung zu konzentrieren. Der HUB bietet außerdem Cloud-Trainingsfunktionen, eine umfassende Datenmengenverwaltung und benutzerfreundliche Schnittstellen für Anfänger und erfahrene Entwickler.
Welche Arten von Aufgaben kann YOLO11 ausführen und wie schneidet es im Vergleich zu anderen YOLO-Versionen ab?
YOLO11 ist ein vielseitiges Modell, das Aufgaben wie Objekterkennung, Instanzsegmentierung, Klassifizierung und Pose-Schätzung ausführen kann. Im Vergleich zu früheren Versionen bietet YOLO11 aufgrund seiner optimierten Architektur und des ankerfreien Designs deutliche Verbesserungen in Bezug auf Geschwindigkeit und Genauigkeit. Für einen detaillierteren Vergleich konsultieren Sie die YOLO11-Dokumentation und die Task-Seiten für weitere Details zu bestimmten Aufgaben.