Zum Inhalt springen

Exportieren in das TF.js Modellformat aus einem YOLOv8 Modellformat

Die Bereitstellung von Machine-Learning-Modellen direkt im Browser oder auf Node.js kann schwierig sein. Du musst sicherstellen, dass dein Modellformat fĂŒr eine schnellere Leistung optimiert ist, damit das Modell verwendet werden kann, um interaktive Anwendungen lokal auf dem GerĂ€t des Nutzers auszufĂŒhren. Das Modellformat TensorFlow.js oder TF.js wurde entwickelt, um möglichst wenig Energie zu verbrauchen und gleichzeitig eine hohe Leistung zu erzielen.

Mit der Funktion "Export in das TF.js-Modellformat" kannst du deine Ultralytics YOLOv8 Modelle fĂŒr schnelle und lokal ausgefĂŒhrte Objekterkennungsinferenzen zu optimieren. In diesem Leitfaden zeigen wir dir, wie du deine Modelle in das TF.js-Format konvertierst, damit sie in verschiedenen lokalen Browsern und Node.js-Anwendungen gut funktionieren.

Warum solltest du nach TF.js exportieren?

Der Export deiner Machine-Learning-Modelle nach TensorFlow.js, das vom TensorFlow Team als Teil des breiteren TensorFlow Ökosystems entwickelt wurde, bietet zahlreiche Vorteile fĂŒr den Einsatz von Machine-Learning-Anwendungen. Es trĂ€gt dazu bei, die PrivatsphĂ€re und Sicherheit der Nutzer/innen zu verbessern, indem sensible Daten auf dem GerĂ€t verbleiben. Die folgende Abbildung zeigt die TensorFlow.js-Architektur und wie Machine Learning-Modelle konvertiert und sowohl in Webbrowsern als auch in Node.js eingesetzt werden.

TF.js Architektur

Die lokale AusfĂŒhrung von Modellen verringert außerdem die Latenzzeit und sorgt fĂŒr ein schnelleres Nutzererlebnis. TensorFlow.js verfĂŒgt auch ĂŒber Offline-Funktionen, so dass Nutzer deine Anwendung auch ohne Internetverbindung nutzen können. TF.js ist fĂŒr die effiziente AusfĂŒhrung komplexer Modelle auf GerĂ€ten mit begrenzten Ressourcen konzipiert, da es auf Skalierbarkeit ausgelegt ist und GPU-Beschleunigung unterstĂŒtzt.

Hauptmerkmale von TF.js

Hier sind die wichtigsten Funktionen, die TF.js zu einem leistungsstarken Werkzeug fĂŒr Entwickler machen:

  • PlattformĂŒbergreifende UnterstĂŒtzung: TensorFlow.js kann sowohl in Browser- als auch in Node.js-Umgebungen verwendet werden und bietet so FlexibilitĂ€t bei der Bereitstellung auf verschiedenen Plattformen. So können Entwicklerinnen und Entwickler Anwendungen einfacher erstellen und einsetzen.

  • UnterstĂŒtzung fĂŒr mehrere Backends: TensorFlow.js unterstĂŒtzt verschiedene Backends fĂŒr Berechnungen, darunter CPU, WebGL fĂŒr GPU-Beschleunigung, WebAssembly (WASM) fĂŒr nahezu native AusfĂŒhrungsgeschwindigkeit und WebGPU fĂŒr erweiterte browserbasierte maschinelle LernfĂ€higkeiten.

  • Offline-FĂ€higkeiten: Mit TensorFlow.js können Modelle im Browser ausgefĂŒhrt werden, ohne dass eine Internetverbindung erforderlich ist, so dass es möglich ist, Anwendungen zu entwickeln, die auch offline funktionieren.

Bereitstellungsoptionen mit TensorFlow.js

Bevor wir uns mit dem Export von YOLOv8 Modellen in das TF.js Format befassen, wollen wir einige typische Einsatzszenarien untersuchen, in denen dieses Format verwendet wird.

TF.js bietet eine Reihe von Optionen, um deine Machine Learning-Modelle einzusetzen:

  • In-Browser ML-Anwendungen: Du kannst Webanwendungen erstellen, die Machine-Learning-Modelle direkt im Browser ausfĂŒhren. Die Notwendigkeit fĂŒr serverseitige Berechnungen entfĂ€llt und die Serverlast wird reduziert.

  • Node.js-Anwendungen:: TensorFlow.js unterstĂŒtzt auch den Einsatz in Node.js-Umgebungen und ermöglicht so die Entwicklung von serverseitigen Machine Learning-Anwendungen. Es ist besonders nĂŒtzlich fĂŒr Anwendungen, die die Rechenleistung eines Servers oder den Zugriff auf serverseitige Daten benötigen.

  • Chrome-Erweiterungen: Ein interessantes Einsatzszenario ist die Erstellung von Chrome-Erweiterungen mit TensorFlow.js. Du kannst z. B. eine Erweiterung entwickeln, die es Nutzern ermöglicht, mit der rechten Maustaste auf ein Bild auf einer beliebigen Webseite zu klicken, um es mit einem vorab trainierten ML-Modell zu klassifizieren. TensorFlow.js kann in das alltĂ€gliche Webbrowsing integriert werden, um sofortige Erkenntnisse oder Erweiterungen auf der Grundlage von maschinellem Lernen zu liefern.

Exportieren von YOLOv8 Modellen nach TensorFlow.js

Du kannst die ModellkompatibilitÀt und EinsatzflexibilitÀt erweitern, indem du YOLOv8 Modelle in TF.js konvertierst.

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 TF.js format
model.export(format='tfjs')  # creates '/yolov8n_web_model'

# Load the exported TF.js model
tfjs_model = YOLO('./yolov8n_web_model')

# Run inference
results = tfjs_model('https://ultralytics.com/images/bus.jpg')
# Export a YOLOv8n PyTorch model to TF.js format
yolo export model=yolov8n.pt format=tfjs  # creates '/yolov8n_web_model'

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

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

Bereitstellen exportierter YOLOv8 TensorFlow .js-Modelle

Nachdem du dein YOLOv8 Modell in das TF.js Format exportiert hast, musst du es im nĂ€chsten Schritt einsetzen. Der wichtigste und empfohlene erste Schritt zum AusfĂŒhren einer TF.js ist die Verwendung der Methode YOLO("./yolov8n_web_model"), wie zuvor im Codeausschnitt zur Verwendung gezeigt.

AusfĂŒhrliche Anleitungen fĂŒr den Einsatz deiner TF.js-Modelle findest du in den folgenden Ressourcen:

Zusammenfassung

In dieser Anleitung haben wir gelernt, wie man Ultralytics YOLOv8 Modelle in das TensorFlow.js Format exportiert. Durch den Export in TF.js erhÀltst du die FlexibilitÀt, deine YOLOv8 Modelle auf einer Vielzahl von Plattformen zu optimieren, einzusetzen und zu skalieren.

Weitere Details zur Verwendung findest du in der offiziellen Dokumentation vonTensorFlow.js.

Weitere Informationen zur Integration von Ultralytics YOLOv8 mit anderen Plattformen und Frameworks findest du in unserem Integrationsleitfaden. Sie ist vollgepackt mit großartigen Ressourcen, die dir helfen, das Beste aus YOLOv8 in deinen Projekten zu machen.



Erstellt am 2024-04-03, Aktualisiert am 2024-04-03
Autoren: abirami-vina (1)

Kommentare