Yolo Vision Shenzhen
Shenzhen
Jetzt beitreten

So exportieren Sie Ultralytics YOLO mithilfe Ultralytics

Exportieren Sie Bildverarbeitungs-KI-Modelle ganz einfach über die Ultralytics . Erfahren Sie, wie Sie Modelle mit nur wenigen Klicks für den Einsatz am Edge, auf Mobilgeräten und in der Cloud vorbereiten können.

Möchten Sie ein Computer-Vision-Projekt umsetzen?

Informieren Sie sich über Lizenzen

Im vergangenen Monat haben wir Ultralytics eingeführt, eine einheitliche Arbeitsumgebung, die darauf ausgelegt ist, den gesamten Workflow im Bereich Computer Vision zu vereinfachen. Sie vereint wichtige KI-Funktionen für die Bildverarbeitung – darunter Datenmanagement, Annotation, Modelltraining, Test, Bereitstellung und Überwachung – in einer einzigen, optimierten Benutzeroberfläche.

Abb. 1: Ein Einblick in Ultralytics (Quelle)

Im Rahmen dieses durchgängigen Workflows spielt die Bereitstellung eine entscheidende Rolle dabei, Modelle von der Experimentierphase in den praktischen Einsatz zu überführen. Zuvor haben wir die verschiedenen auf der Plattform verfügbaren Bereitstellungsoptionen untersucht, darunter die gemeinsame Inferenz über APIs, dedizierte Endpunkte für skalierbare Produktionsbereitstellungen sowie den Export von Modellen zur Ausführung auf Edge-Geräten oder in externer Infrastruktur.

Werfen wir nun einen genaueren Blick auf den Modellexport und darauf, wie er die Bereitstellung in verschiedenen Umgebungen unterstützt. Im Gegensatz zu Shared Inference und dedizierten Endpunkten, bei denen Modelle innerhalb der Ultralytics Infrastruktur ausgeführt werden, ermöglicht der Modellexport die Bereitstellung und Ausführung von Modellen in externen Umgebungen wie Edge-Geräten, mobilen Anwendungen und benutzerdefinierten Infrastrukturen.

Bevor Modelle in diesen Umgebungen ausgeführt werden können, müssen sie in Formate konvertiert werden, die von der jeweiligen Laufzeitumgebung unterstützt werden. Jede Bereitstellungsumgebung hat ihre eigenen Anforderungen, von ressourcenschonenden Formaten für Mobil- und Edge-Geräte bis hin zu leistungsstarken Formaten für Cloud- und GPU Systeme.

Traditionell ist dieser Vorgang sehr zeitaufwendig und erfordert Skripte, Abhängigkeiten und mehrere Tools. Mit Ultralytics ist der Export wesentlich einfacher. Modelle lassen sich mit nur wenigen Klicks konvertieren und optimieren, ohne dass zusätzliche Einstellungen erforderlich sind.

In diesem Artikel erklären wir Ihnen, was der Export von Modellen bedeutet, welche Formate von Ultralytics unterstützt werden und wie Sie das richtige Format für Ihren Anwendungsfall auswählen. Los geht’s!

Ein Überblick über den Export eines Modells

Beim Exportieren eines Modells wird ein vortrainiertes oder individuell trainiertes Modell in ein Format konvertiert, das außerhalb seines ursprünglichen Frameworks verwendet werden kann. YOLO werden mit PyTorch erstellt PyTorch in ihrem nativen Format gespeichert, was sich gut für das Training, die Bewertung und Experimente innerhalb des PyTorch eignet.

In Produktionsumgebungen gelten jedoch oft andere Laufzeit- und Hardwareanforderungen. Aus diesem Grund ist das im Trainingsprozess verwendete Format nicht immer für die Produktion geeignet.

Beispielsweise benötigt eine mobile Anwendung möglicherweise ein schlankes Format, das auf geringen Stromverbrauch optimiert ist, während eine browserbasierte App ein Format benötigt, das in Webumgebungen effizient läuft. 

Edge-Geräte wie Kameras und eingebettete Systeme profitieren von kompakten und schnellen Modellen, während Cloud-Systeme für leistungsstarke Inferenz ausgelegt sind. Um diese unterschiedlichen Szenarien zu unterstützen, müssen Modelle in kompatible Formate exportiert werden. 

Warum die Möglichkeit, Modelle zu exportieren, wichtiger denn je ist

Heutzutage werden Modelle für maschinelles Sehen näher an den Orten eingesetzt, an denen die Daten generiert werden, insbesondere auf Edge-Geräten. Smartphones führen Bildverarbeitungsanwendungen in Echtzeit aus, CCTV-Kameras übernehmen die Überwachung direkt auf dem Gerät, und autonome Systeme sind auf sofortige Entscheidungsfindung angewiesen.

Der Einsatz in diesen Umgebungen bringt jedoch ganz eigene Herausforderungen mit sich. Edge-Geräte verfügen über begrenzte Rechenleistung, unterliegen strengen Latenzanforderungen und haben Einschränkungen hinsichtlich Speicherplatz und Energieverbrauch. Ein Modell, das während des Trainings mit ausreichenden Ressourcen gute Ergebnisse liefert, läuft unter diesen eingeschränkten Bedingungen möglicherweise nicht effizient.

Der Export eines Modells in das richtige Format kann dabei helfen, diese Herausforderungen zu bewältigen. Durch eine geeignete Konvertierung lässt sich das Modell hinsichtlich der Geschwindigkeit optimieren, in seiner Größe reduzieren und mit bestimmter Hardware kompatibel machen. 

Gleichzeitig bietet der Export Flexibilität. Das gleiche Modell lässt sich an unterschiedliche Einsatzumgebungen anpassen, indem es je nach den spezifischen Anforderungen in verschiedene Formate konvertiert wird.

Abb. 2: Einige der in Ultralytics verfügbaren Exportformate (Quelle)

So ist beispielsweise das NCNN für Mobil- und Edge-Geräte mit geringem Ressourcenverbrauch optimiert. Das OpenVINO hingegen ist auf Intel zugeschnitten und bietet eine bessere Leistung auf Zentralprozessoren (CPUs), Grafikprozessoren (GPUs) und neuronalen Prozessoren (NPUs). 

In den meisten Fällen war das Erreichen dieses Flexibilitätsgrades mit manuellen Konvertierungen, Abhängigkeiten und dem Einsatz mehrerer Tools verbunden, was den Prozess zeitaufwendig und komplex machte. Ultralytics optimiert diesen Arbeitsablauf, indem sie den Modellexport zugänglicher und einfacher zu verwalten macht.

Wie Ultralytics den Modellexport vereinfacht

Normalerweise wird der Export eines Modells als separater und komplexer Schritt in Computer-Vision-Workflows betrachtet. Die Ultralytics ändert dies, indem sie die Möglichkeit zum direkten Export eines Modells in einen einzigen Arbeitsbereich integriert, der alle Schritte vom Training bis zur Bereitstellung abdeckt.

Einer der wichtigsten Vorteile ist die Möglichkeit, Modelle ohne Programmieraufwand zu exportieren. Es ist nicht erforderlich, Skripte zu schreiben, Umgebungen zu verwalten oder frameworkspezifische Befehle zu verwenden. Modelle lassen sich mit nur wenigen Klicks über eine benutzerfreundliche Oberfläche exportieren.

Abb. 3: Beispiel für den Export eines Modells aus Ultralytics (Quelle)

Hinter den Kulissen übernimmt die Plattform die Hauptarbeit. Aufgaben, für die normalerweise mehrere Tools und manuelle Konfigurationen erforderlich wären, werden zu einem einzigen Prozess zusammengefasst. Sie müssen keine zusätzlichen Abhängigkeiten installieren oder sich mit Kompatibilitätsproblemen herumschlagen, was den Weg vom trainierten Modell zur produktionsreifen Lösung erheblich vereinfacht.

Von Ultralytics unterstützte Formate für den Modellexport

Ultralytics unterstützt 17 Exportformate, wodurch sich Modelle ohne zusätzlichen Aufwand für eine Vielzahl von Einsatzumgebungen vorbereiten lassen.

Hier finden Sie eine Übersicht über einige der gängigsten Exportformate:

  • Plattformübergreifende Kompatibilität und Interoperabilität: ONNX TorchScript häufig eingesetzt, um Modelle in verschiedenen Frameworks und Umgebungen auszuführen. ONNX als Brücke zwischen verschiedenen Ökosystemen und erleichtert so den Austausch von Modellen zwischen verschiedenen Tools, während TorchScript die Ausführung PyTorch in der Produktion TorchScript , ohne dass eine Python erforderlich ist.
  • Hochleistungsfähige Inferenz auf GPUs: TensorRT für NVIDIA entwickelt und konzentriert sich auf die Optimierung von Modellen im Hinblick auf geringe Latenz und hohen Durchsatz. Es unterstützt Techniken wie Präzisionsreduktion und Layer-Fusion zur Beschleunigung der Inferenz und ist damit eine hervorragende Wahl für Echtzeit- und produktionsreife Anwendungen.
  • Bereitstellung auf Mobilgeräten und am Netzwerkrand: CoreML, LiteRT (TensorFlow ) und NCNN für Geräte mit begrenzter Rechenleistung und begrenztem Speicher optimiert. Diese Formate reduzieren die Modellgröße und verbessern die Effizienz, wodurch eine reibungslose Leistung auf Smartphones, eingebetteten Systemen und Edge-Hardware ermöglicht wird. CoreML typischerweise in Apple-Ökosystemen verwendet, während LiteRT bei Android üblich ist.
  • Hardwareoptimierte Ausführung: OpenVINO speziell auf Intel wie CPUs, GPUs und VPUs zugeschnitten und trägt dazu bei, die Inferenzgeschwindigkeit und -effizienz auf diesen Geräten zu verbessern. Solche hardwarespezifischen Formate sind nützlich, wenn Sie die bestmögliche Leistung aus einem bestimmten System herausholen möchten.
  • Framework-spezifische und spezialisierte Laufzeitumgebungen: Formate wie PaddlePaddle ExecuTorch unterstützen spezifische Ökosysteme und Bereitstellungsanforderungen, darunter die effiziente Ausführung von Modellen auf Edge-Geräten oder die Integration in bestimmte Deep-Learning-Stacks.

So exportieren Sie ein Modell über Ultralytics

Das Exportieren eines Modells auf Ultralytics ist ein einfacher, über die Benutzeroberfläche gesteuerter Vorgang. Der gesamte Arbeitsablauf wird über die Benutzeroberfläche abgewickelt, ohne dass Skripte oder Befehlszeilentools erforderlich sind.

So exportieren Sie ein Modell über die Plattform:

  • Melden Sie sich an und wählen Sie Ihr Modell aus: Gehen Sie zu Ihrem Projekt und öffnen Sie das trainierte Modell, das Sie exportieren möchten.
  • Wechseln Sie zur Registerkarte „Exportieren“: Klicken Sie im Modell-Dashboard auf die Registerkarte „Exportieren“, um die verfügbaren Exportoptionen anzuzeigen.
  • Wählen Sie ein Exportformat aus: Wählen Sie CoreML nach Ihren Bereitstellungsanforderungen ein Format wie ONNX, TensorRT oder CoreML aus.
  • Exporteinstellungen konfigurieren (optional): Passen Sie Parameter wie Bildgröße, Genauigkeit oder Stapelgröße an, um die Leistung zu optimieren.
  • Starten Sie den Exportvorgang: Klicken Sie auf „Export starten“, um den Vorgang zu beginnen. Die Plattform übernimmt die Konvertierung automatisch.
  • Laden Sie das exportierte Modell herunter: Sobald der Export abgeschlossen ist, können Sie das Modell herunterladen und in Ihrer Bereitstellungspipeline verwenden.
Abb. 4: Ein Blick auf die Konfiguration der Exporteinstellungen in Ultralytics

Das richtige Exportformat auswählen

Wenn Sie sich mit den verschiedenen Exportformaten der Ultralytics vertraut machen, fragen Sie sich vielleicht, welches Sie wählen sollen. Die Antwort hängt wirklich davon ab, wo und wie Sie Ihr Modell einsetzen möchten.

Hier sind einige Faktoren, die es zu berücksichtigen gilt:

  • Anforderungen an die Latenz: Für Echtzeitanwendungen wie Videoanalyse oder autonome Systeme ist eine geringe Latenz entscheidend. Für die Hochleistungs-Inferenz optimierte Formate wie TensorRT, sind oft besser geeignet.
  • Hardware-Einschränkungen: Geräte mit begrenztem Speicher und begrenzter Rechenleistung, wie beispielsweise Mobiltelefone oder eingebettete Systeme, erfordern kompakte Formate wie LiteRT oder NCNN. 
  • Modellgröße und Stromverbrauch: Bei der Arbeit mit Edge-Geräten spielen Modellgröße und Stromverbrauch eine wichtige Rolle. Kleinere, optimierte Modelle tragen dazu bei, eine konstante Leistung zu gewährleisten, ohne die Ressourcen zu belasten.
  • ‍Bereitstellungsumgebung: Wenn Ihr Modell auf verschiedenen Plattformen ausgeführt werden soll, ONNX Formate wie ONNX Flexibilität. Für plattformspezifische Anwendungsfälle, wie beispielsweise iOS , CoreML oft die bessere Wahl.

Es gibt kein einheitliches Standardformat. Letztendlich kommt es darauf an, ein Gleichgewicht zwischen Leistung, Kompatibilität und den Einschränkungen Ihrer Zielumgebung zu finden. Ultralytics erleichtert dies, indem sie es Ihnen ermöglicht, verschiedene Formate ohne zusätzlichen Aufwand auszuprobieren und zu vergleichen.

Wesentliche Erkenntnisse

Der Export ist ein entscheidender Schritt, um Ihr Modell für den praktischen Einsatz in verschiedenen Umgebungen vorzubereiten. Mit Ultralytics wird dieser Prozess erheblich vereinfacht, sodass Sie Modelle ohne zusätzliche Konfiguration oder Komplikationen konvertieren und optimieren können. Durch die Wahl des richtigen Formats für Ihren Anwendungsfall stellen Sie sicher, dass Ihr Modell überall, wo Sie es einsetzen, effizient läuft.

Werden Sie Teil unserer wachsenden Community und besuchen Sie unser GitHub-Repository, um mehr über Computer Vision zu erfahren. Entdecken Sie unsere Lösungsseiten, um mehr über Anwendungen wie KI in der Robotik und Computer Vision in der Logistik zu erfahren. Informieren Sie sich über unsere Lizenzoptionen und legen Sie los mit Vision-KI! 

Lassen Sie uns gemeinsam die Zukunft der KI gestalten!

Beginnen Sie Ihre Reise mit der Zukunft des maschinellen Lernens