Lerne, wie du Ultralytics YOLO , wie Ultralytics YOLO11, mit der ONNX für den plattformübergreifenden Einsatz auf verschiedenen Geräten exportierst.
Als KI-Lösungen zum ersten Mal Aufmerksamkeit erregten, wurden die meisten Modelle auf leistungsstarken Servern in kontrollierten Umgebungen eingesetzt. Mit dem technologischen Fortschritt hat sich der Einsatz jedoch weit über das Rechenzentrum hinaus ausgedehnt.
Heute laufen KI-Modelle auf allen Geräten, von Cloud-Servern und Desktops bis hin zu Smartphones und Edge-Geräten. Dieser Wandel ermöglicht eine schnellere Verarbeitung, Offline-Funktionen und intelligentere Systeme, die näher am Ort der Datenerzeugung arbeiten.
Ein Bereich, in dem dies besonders deutlich wird, ist die Computer Vision - ein Zweig der KI, der es Maschinen ermöglicht, visuelle Daten zu interpretieren. Sie wird für Anwendungen wie Gesichtserkennung, autonomes Fahren und Videoanalyse in Echtzeit eingesetzt. In dem Maße, wie diese Anwendungsfälle zunehmen, steigt auch der Bedarf an Modellen, die reibungslos auf unterschiedlichen Hardware- und Plattformsystemen laufen.
Der Einsatz von Bildverarbeitungsmodellen für verschiedene Einsatzziele ist jedoch nicht immer einfach. Die Geräte unterscheiden sich in Bezug auf Hardware, Betriebssysteme und unterstützte Frameworks, was Flexibilität und Kompatibilität erforderlich macht.
Deshalb ist die Möglichkeit, Computer Vision Modelle wie Ultralytics YOLO11 in verschiedene Formate zu exportieren, von entscheidender Bedeutung. Die von Ultralytics unterstützte ONNX (Open Neural Network Exchange) ist eine praktische Möglichkeit, die Lücke zwischen Training und Einsatz zu schließen. ONNX ist ein offenes Format, das Modelle plattformunabhängig und einsatzbereit macht.
In diesem Artikel werfen wir einen genaueren Blick auf die von Ultralytics unterstützte ONNX und erfahren, wie du dein YOLO11 für einen flexiblen, plattformübergreifenden Einsatz exportieren kannst.
Der Open Neural Network Exchange ist ein Open-Source-Projekt, das ein Standardformat für Machine-Learning-Modelle definiert. Es wurde ursprünglich von Microsoft und Facebook entwickelt und ermöglicht es Entwicklern, ein Modell in einem Framework wie PyTorch zu trainieren und es in einem anderen wie TensorFlow auszuführen. Das macht die KI-Entwicklung flexibler, kollaborativer und zugänglicher, insbesondere in Bereichen wie Computer Vision.
ONNX bietet einen gemeinsamen Satz von Operatoren und ein einheitliches Dateiformat, das es einfacher macht, Modelle zwischen verschiedenen Tools, Frameworks, Laufzeiten und Compilern zu übertragen. Normalerweise ist ein Modell, das in einem Framework trainiert wurde, nicht ohne Weiteres mit einem anderen kompatibel - aber mit ONNX kannst du dein Modell einmal exportieren und es fast überall einsetzen: auf CPUs (Central Processing Units), GPUs (Graphics Processing Units), mobilen Geräten oder Edge-Hardware.
ONNX Runtime ist eine leistungsstarke Inferenzmaschine, die speziell für die Ausführung von Modellen im ONNX entwickelt wurde. Sie soll dafür sorgen, dass ONNX schneller und effizienter auf einer Vielzahl von Plattformen laufen - darunter Server, mobile Geräte und Edge-Hardware. ONNX Runtime ist mit beliebten Frameworks wie PyTorch, TensorFlow, TensorFlow Lite und scikit-learn kompatibel und lässt sich daher leicht in verschiedene Arbeitsabläufe integrieren und Modelle überall dort einsetzen, wo sie gebraucht werden.
Bevor wir besprechen, wie du YOLO11 in das ONNX exportierst, schauen wir uns einige wichtige Merkmale des ONNX an.
Egal, ob du zwischen verschiedenen Tools wechselst, auf verschiedenen Geräten einsetzt oder dein System aufrüstest, ONNX sorgt dafür, dass alles reibungslos läuft. Das macht das ONNX so einzigartig:
Das Exportieren von Ultralytics YOLO wie Ultralytics YOLO11 im ONNX ist ganz einfach und kann in wenigen Schritten durchgeführt werden.
Um loszulegen, installiere das Ultralytics Python mit einem Paketmanager wie "pip". Dazu kannst du den Befehl "pip install ultralytics" in deiner Eingabeaufforderung oder deinem Terminal ausführen.
Mit dem Ultralytics kannst du ganz einfach Modelle für verschiedene Computer-Vision-Aufgaben trainieren, testen, abstimmen, exportieren und einsetzen - das macht den gesamten Prozess schneller und effizienter. Wenn du bei der Installation auf Schwierigkeiten stößt, kannst du im Leitfaden für häufige Probleme Lösungen und Tipps nachlesen.
Sobald das Ultralytics installiert ist, kannst du das YOLO11 mit dem unten stehenden Code in das ONNX laden und exportieren. In diesem Beispiel wird ein vorab trainiertes YOLO11 (yolo11n.pt) geladen und als ONNX (yolo11nonnx) exportiert, sodass es auf verschiedenen Plattformen und Geräten eingesetzt werden kann.
from ultralytics import YOLO
model = YOLO("yolo11n.pt")
model.export(format="onnx")
Nachdem du dein Modell in das ONNX konvertiert hast, kannst du es auf einer Vielzahl von Plattformen einsetzen.
Das folgende Beispiel zeigt, wie du das exportierte YOLO11 (yolo11nonnx) lädst und eine Inferenz damit durchführst. Inferenz bedeutet einfach, dass das trainierte Modell verwendet wird, um Vorhersagen für neue Daten zu treffen. In diesem Fall verwenden wir die URL eines Bildes von einem Bus, um das Modell zu testen.
onnx_model = YOLO("yolo11n.onnx")
results = onnx_model("https://ultralytics.com/images/bus.jpg",save=True)
Wenn du diesen Code ausführst, wird das folgende Ausgabebild im Ordner runs/detect/predict gespeichert.
Das Ultralytics Python unterstützt den Export von Modellen in verschiedene Formate, darunter TorchScript, CoreML, TensorRT und ONNX. Warum also ONNX wählen?
Das Besondere an ONNX ist, dass es sich um ein Framework-unabhängiges Format handelt. Während viele andere Exportformate an bestimmte Tools oder Umgebungen gebunden sind, verwendet ONNX ein standardisiertes Format und einen gemeinsamen Satz von Operatoren. Dadurch ist es sehr portabel, hardwarefreundlich und ideal für den plattformübergreifenden Einsatz - egal ob du mit Cloud-Servern, mobilen Apps oder Edge-Geräten arbeitest.
Hier sind einige Gründe, warum die ONNX die ideale Wahl für deine YOLO11 sein könnte:
Als Nächstes wollen wir uns einige reale Anwendungen ansehen, bei denen YOLO11 mit Hilfe der ONNX eingesetzt werden kann.
In geschäftigen Lagern ist es schwierig, jedes Produkt und jede Verpackung im Auge zu behalten. Bildverarbeitungssysteme können den Lagerarbeitern helfen, die Produkte in den Regalen zu finden und Einblicke zu erhalten, z. B. in die Anzahl der Produkte, den Typ usw. Solche Systeme können Unternehmen dabei helfen, ihren riesigen Bestand automatisch zu verwalten und den Lagerarbeitern eine Menge Zeit zu sparen.
In intelligenten Lagern können YOLO11 , die in ONNX exportiert werden, dazu verwendet werden, Artikel in Echtzeit mit Kameras und Edge Devices zu identifizieren und zu zählen. Das exportierte Modell kann helfen, Regale oder Paletten zu scannen, um Lagerbestände, fehlende Artikel oder leere Stellen zu erkennen. Da der Export nach ONNX das Modell leicht und effizient macht, kann es direkt auf kleinen Edge-Geräten wie Smart-Kameras ausgeführt werden, sodass keine teuren Server oder ständiger Cloud-Zugriff erforderlich sind.
Krankenhäuser auf der ganzen Welt produzieren jeden Tag große Mengen an Abfall, von gebrauchten Handschuhen und Spritzen bis hin zu chirurgischen Geräten (wie Einweg- oder kontaminierte chirurgische Werkzeuge wie Scheren und Skalpelle). Untersuchungen zeigen, dass Krankenhäuser jedes Jahr rund 5 Millionen Tonnen Abfall produzieren, das sind 29 Pfund Abfall pro Bett und Tag.
Die richtige Sortierung solcher Abfälle ist für die Hygiene, die Sicherheit und die Einhaltung von Vorschriften unerlässlich. Mit YOLO11 , die im ONNX exportiert werden, können Krankenhäuser die Abfallentsorgung in Echtzeit automatisieren und überwachen.
So können Kameras, die in der Nähe von Abfallbehältern in Bereichen wie Operationssälen oder Fluren angebracht sind, die weggeworfenen Gegenstände überwachen. Ein spezielles YOLO11 , das darauf trainiert ist, verschiedene Arten von medizinischem Abfall zu erkennen, kann die Aufnahmen analysieren und erkennen, was weggeworfen wird. Wenn ein Gegenstand im falschen Behälter landet, wie z. B. eine gebrauchte Spritze im normalen Müll, kann das System so eingestellt werden, dass es das Personal sofort durch ein Licht oder einen Ton alarmiert, um Verunreinigungen zu vermeiden und die Einhaltung der Vorschriften sicherzustellen.
Den richtigen Zeitpunkt für die Ernte zu kennen, kann einen großen Einfluss auf die Qualität der Produkte und die Gesamtproduktivität eines Betriebs haben. Traditionell verlassen sich Landwirtinnen und Landwirte auf ihre Erfahrung und manuelle Kontrollen - aber mit den jüngsten Fortschritten in der Technologie beginnt sich das zu ändern.
Mit Bildverarbeitungsinnovationen wie YOLO11, die im ONNX exportiert werden, können Landwirte jetzt Automatisierung und Präzision auf das Feld bringen. Mit Hilfe von Drohnen oder Kameras, die an Traktoren oder Pfählen angebracht sind, können Landwirte Bilder ihrer Ernte (z. B. Tomaten, Äpfel oder Weizen) aufnehmen. Mit YOLO11 lassen sich dann wichtige Indikatoren wie Farbe, Größe und Verteilung der Pflanzen erkennen. Anhand dieser Informationen können die Landwirte feststellen, ob die Pflanzen erntereif sind, noch reifen oder ihren Höhepunkt bereits überschritten haben.
ONNX bietet zwar zahlreiche Vorteile wie Portabilität, plattformübergreifende Kompatibilität und Interoperabilität der Frameworks, aber es gibt auch einige Einschränkungen, die du beachten musst.
Wenn du Ultralytics YOLO11 nach ONNX exportierst, kannst du ein trainiertes Computer Vision Modell fast überall einsetzen - egal ob auf einem Laptop, einem mobilen Gerät oder sogar einer kompakten Smart Kamera. Mit der ONNX bist du nicht an ein bestimmtes Framework oder eine Plattform gebunden und kannst dein Modell in der Umgebung einsetzen, die am besten zu deiner Anwendung passt.
Das macht den Übergang von der Schulung zum Einsatz in der Praxis schneller und effizienter. Ganz gleich, ob du den Bestand in einem Lager nachverfolgst oder sicherstellst, dass Krankenhausabfälle richtig entsorgt werden, diese Einrichtung trägt dazu bei, dass die Systeme reibungsloser laufen, Fehler reduziert werden und wertvolle Zeit gespart wird.
Willst du mehr über Computer Vision und KI erfahren? Erkunde unser GitHub-Repository, tausche dich mit unserer Community aus und sieh dir unsere Lizenzierungsoptionen an, um dein Computer-Vision-Projekt zu starten. Wenn du dich für Innovationen wie KI in der Fertigung und Computer Vision in der Automobilindustrie interessierst, besuche unsere Lösungsseiten, um mehr zu erfahren.
Beginne deine Reise in die Zukunft des maschinellen Lernens