Zum Inhalt springen

Exportieren von YOLOv8 Modellen in das Format PaddlePaddle

Der Spagat zwischen der Entwicklung und dem Einsatz von Computer-Vision-Modellen in realen Szenarien mit unterschiedlichen Bedingungen kann schwierig sein. PaddlePaddle erleichtert diesen Prozess durch seinen Fokus auf FlexibilitÀt, Leistung und seine FÀhigkeit zur parallelen Verarbeitung in verteilten Umgebungen. Das bedeutet, dass du deine YOLOv8 Computer-Vision-Modelle auf einer Vielzahl von GerÀten und Plattformen einsetzen kannst, von Smartphones bis hin zu Cloud-basierten Servern.

Die Möglichkeit, Modelle in das Format PaddlePaddle zu exportieren, ermöglicht es dir, deine Ultralytics YOLOv8 Modelle fĂŒr die Verwendung innerhalb des PaddlePaddle Frameworks zu optimieren. PaddlePaddle ist dafĂŒr bekannt, dass es den industriellen Einsatz erleichtert und ist eine gute Wahl fĂŒr den Einsatz von Computer-Vision-Anwendungen in realen Umgebungen in verschiedenen Bereichen.

Warum solltest du auf PaddlePaddle exportieren?

PaddlePaddle Logo

Entwickelt von Baidu, PaddlePaddle(PArallel Distributed Deep LEarning) ist Chinas erste Open-Source-Plattform fĂŒr Deep Learning. Im Gegensatz zu anderen Frameworks, die hauptsĂ€chlich fĂŒr die Forschung entwickelt wurden, legt PaddlePaddle den Schwerpunkt auf eine einfache Nutzung und eine reibungslose Integration in verschiedene Branchen.

Es bietet Ă€hnliche Tools und Ressourcen wie beliebte Frameworks wie TensorFlow und PyTorch und ist damit fĂŒr Entwickler aller Erfahrungsstufen zugĂ€nglich. Von der Landwirtschaft ĂŒber Fabriken bis hin zu Dienstleistungsunternehmen - die große Entwicklergemeinschaft von PaddlePaddle mit ĂŒber 4,77 Millionen Menschen hilft bei der Entwicklung und dem Einsatz von KI-Anwendungen.

Wenn du deine Ultralytics YOLOv8 Modelle in das PaddlePaddle Format exportierst, kannst du die StĂ€rken von PaddlePaddlebei der Leistungsoptimierung nutzen. PaddlePaddle legt den Schwerpunkt auf eine effiziente ModellausfĂŒhrung und eine geringere Speichernutzung. Dadurch können deine YOLOv8 Modelle eine noch bessere Leistung erzielen und in praktischen Szenarien erstklassige Ergebnisse liefern.

Die wichtigsten Merkmale der PaddlePaddle Modelle

PaddlePaddle Modelle bieten eine Reihe von SchlĂŒsselfunktionen, die zu ihrer FlexibilitĂ€t, Leistung und Skalierbarkeit in verschiedenen Einsatzszenarien beitragen:

  • Dynamischer-zu-statischer Graph: PaddlePaddle unterstĂŒtzt die dynamische-zu-statische Kompilierung, bei der Modelle in einen statischen Berechnungsgraphen ĂŒbersetzt werden können. Dies ermöglicht Optimierungen, die den Laufzeit-Overhead reduzieren und die Inferenzleistung erhöhen.

  • Operator Fusion: PaddlePaddle Wie TensorRT nutzt auch das Framework Operator Fusion, um Berechnungen zu rationalisieren und den Overhead zu reduzieren. Durch die Zusammenlegung kompatibler Operationen werden SpeicherĂŒbertragungen und Rechenschritte minimiert, was zu schnelleren Schlussfolgerungen fĂŒhrt.

  • Quantisierung: PaddlePaddle unterstĂŒtzt Quantisierungstechniken, einschließlich Quantisierung nach dem Training und quantisierungsorientiertes Training. Diese Techniken ermöglichen die Verwendung von DatenreprĂ€sentationen mit geringerer Genauigkeit, wodurch die Leistung effektiv gesteigert und die ModellgrĂ¶ĂŸe verringert wird.

Einsatzoptionen in PaddlePaddle

Bevor wir uns mit dem Code fĂŒr den Export von YOLOv8 Modellen nach PaddlePaddle beschĂ€ftigen, werfen wir einen Blick auf die verschiedenen Einsatzszenarien, in denen sich PaddlePaddle Modelle auszeichnen.

PaddlePaddle bietet eine Reihe von Optionen, von denen jede ein ausgewogenes VerhÀltnis von Benutzerfreundlichkeit, FlexibilitÀt und Leistung bietet:

  • Paddle Serving: Dieses Framework vereinfacht die Bereitstellung von PaddlePaddle Modellen als leistungsstarke RESTful APIs. Paddle Serving ist ideal fĂŒr Produktionsumgebungen und bietet Funktionen wie Modellversionierung, Online-A/B-Tests und Skalierbarkeit fĂŒr die Verarbeitung großer Mengen von Anfragen.

  • Paddle Inference API: Mit der Paddle Inference API kannst du die AusfĂŒhrung des Modells auf niedriger Ebene steuern. Diese Option eignet sich gut fĂŒr Szenarien, in denen du das Modell eng in eine benutzerdefinierte Anwendung integrieren oder die Leistung fĂŒr bestimmte Hardware optimieren musst.

  • Paddle Lite: Paddle Lite wurde fĂŒr den Einsatz auf mobilen und eingebetteten GerĂ€ten entwickelt, wo die Ressourcen begrenzt sind. Es optimiert die Modelle fĂŒr kleinere GrĂ¶ĂŸen und schnellere Inferenzen auf ARM-CPUs, GPUs und anderer Spezialhardware.

  • Paddle.js: Paddle.js ermöglicht es dir, PaddlePaddle Modelle direkt im Webbrowser einzusetzen. Paddle.js kann entweder ein vortrainiertes Modell laden oder ein Modell von paddle-hub mit den von Paddle.js bereitgestellten Modellumwandlungswerkzeugen umwandeln. Es kann in Browsern ausgefĂŒhrt werden, die WebGL/WebGPU/WebAssembly unterstĂŒtzen.

Exportieren nach PaddlePaddle: Konvertiere dein YOLOv8 Modell

Die Konvertierung von YOLOv8 Modellen in das PaddlePaddle Format kann die AusfĂŒhrungsflexibilitĂ€t verbessern und die Leistung fĂŒr verschiedene Einsatzszenarien optimieren.

Installation

Um das benötigte Paket zu installieren, fĂŒhre es aus:

Installation

# Install the required package for YOLOv8
pip install ultralytics

AusfĂŒhrliche Anweisungen und bewĂ€hrte Verfahren fĂŒr den Installationsprozess findest du in unserem Ultralytics Installationsleitfaden. Wenn du bei der Installation der erforderlichen Pakete fĂŒr YOLOv8 auf Schwierigkeiten stĂ¶ĂŸt, findest du in unserem Leitfaden fĂŒr hĂ€ufige Probleme Lösungen und Tipps.

Verwendung

Bevor du dich mit den Nutzungshinweisen beschĂ€ftigst, solltest du wissen, dass alle Modelle vonUltralytics YOLOv8 exportiert werden können. Hier kannst du sicherstellen, dass das von dir ausgewĂ€hlte Modell die Exportfunktion unterstĂŒtzt.

Verwendung

from ultralytics import YOLO

# Load the YOLOv8 model
model = YOLO('yolov8n.pt')

# Export the model to PaddlePaddle format
model.export(format='paddle')  # creates '/yolov8n_paddle_model'

# Load the exported PaddlePaddle model
paddle_model = YOLO('./yolov8n_paddle_model')

# Run inference
results = paddle_model('https://ultralytics.com/images/bus.jpg')
# Export a YOLOv8n PyTorch model to PaddlePaddle format
yolo export model=yolov8n.pt format=paddle  # creates '/yolov8n_paddle_model'

# Run inference with the exported model
yolo predict model='./yolov8n_paddle_model' source='https://ultralytics.com/images/bus.jpg'

Weitere Details zu den unterstĂŒtzten Exportoptionen findest du auf der Ultralytics Dokumentationsseite zu den Bereitstellungsoptionen.

Einsatz von exportierten YOLOv8 PaddlePaddle Modellen

Nachdem du deine Ultralytics YOLOv8 Modelle erfolgreich in das PaddlePaddle Format exportiert hast, kannst du sie nun einsetzen. Der wichtigste und empfohlene erste Schritt zum AusfĂŒhren eines PaddlePaddle Modells ist die Verwendung der Methode YOLO("./model_paddle_model"), wie im vorherigen Codeausschnitt beschrieben.

AusfĂŒhrliche Anleitungen fĂŒr den Einsatz deiner PaddlePaddle Modelle in verschiedenen anderen Umgebungen findest du in den folgenden Ressourcen:

  • Paddeln Servieren: Lerne, wie du deine PaddlePaddle Modelle mit Paddle Serving als performante Dienste bereitstellst.

  • Paddel Lite: Erfahre, wie du mit Paddle Lite Modelle auf mobilen und eingebetteten GerĂ€ten optimieren und einsetzen kannst.

  • Paddel.js: Entdecke, wie du mit Paddle.js PaddlePaddle Modelle in Webbrowsern fĂŒr client-seitige KI ausfĂŒhren kannst.

Zusammenfassung

In diesem Leitfaden haben wir den Prozess des Exports von Ultralytics YOLOv8 Modellen in das PaddlePaddle Format untersucht. Wenn du diese Schritte befolgst, kannst du die StĂ€rken von PaddlePaddle in verschiedenen Einsatzszenarien nutzen und deine Modelle fĂŒr unterschiedliche Hardware- und Softwareumgebungen optimieren.

Weitere Einzelheiten zur Verwendung findest du in der offiziellen DokumentationPaddlePaddle

Möchtest du weitere Möglichkeiten zur Integration deiner Ultralytics YOLOv8 Modelle kennenlernen? Unser Integrationsleitfaden zeigt dir verschiedene Möglichkeiten auf und versorgt dich mit wertvollen Ressourcen und Erkenntnissen.



Erstellt am 2024-03-11, Aktualisiert am 2024-04-02
Autoren: Burhan-Q (1), abirami-vina (2)

Kommentare