Wenn Sie auf "Alle Cookies akzeptieren" klicken, stimmen Sie der Speicherung von Cookies auf Ihrem Gerät zu, um die Navigation auf der Website zu verbessern, die Nutzung der Website zu analysieren und unsere Marketingaktivitäten zu unterstützen. Mehr Infos
Cookie-Einstellungen
Wenn Sie auf "Alle Cookies akzeptieren" klicken, stimmen Sie der Speicherung von Cookies auf Ihrem Gerät zu, um die Navigation auf der Website zu verbessern, die Nutzung der Website zu analysieren und unsere Marketingaktivitäten zu unterstützen. Mehr Infos
Erfahren Sie, wie Sie Ultralytics YOLO-Modelle, z. B. Ultralytics YOLO11, mithilfe der ONNX-Integration für den plattformübergreifenden Einsatz auf verschiedenen Geräten exportieren können.
Als KI-Lösungen zum ersten Mal Aufmerksamkeit erregten, wurden die meisten Modelle auf leistungsstarken Servern in kontrollierten Umgebungen implementiert. 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. Diese Verlagerung unterstützt eine schnellere Verarbeitung, Offline-Funktionen und intelligentere Systeme, die näher am Ort der Datengenerierung 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 über verschiedene Hardware und Plattformen laufen können.
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, so wichtig. So bietet beispielsweise die von Ultralytics unterstützte ONNX-Integration (Open Neural Network Exchange) eine praktische Möglichkeit, die Lücke zwischen Training und Bereitstellung zu schließen. ONNX ist ein offenes Format, das Modelle plattformunabhängig und einsatzbereit macht.
Abbildung 1. Mit ONNX können Sie ein Modell, das in einem Framework trainiert wurde, problemlos in einem anderen ausführen.
In diesem Artikel werfen wir einen genaueren Blick auf die von Ultralytics unterstützte ONNX-Integration und untersuchen, wie Sie Ihr YOLO11-Modell für einen flexiblen, plattformübergreifenden Einsatz exportieren können.
Was ist ONNX und ONNX Runtime?
Open Neural Network Exchange ist ein Open-Source-Projekt, das ein Standardformat für Modelle für maschinelles Lernen definiert. Ursprünglich von Microsoft und Facebook entwickelt, ermöglicht es Entwicklern, ein Modell in einem Framework wie PyTorch zu trainieren und es in einem anderen wie TensorFlow auszuführen. Dies 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, wodurch es einfacher wird, 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 können Sie Ihr 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-Format entwickelt wurde. Sie wurde entwickelt, um ONNX-Modelle schneller und effizienter auf einer Vielzahl von Plattformen laufen zu lassen - einschließlich Servern, mobilen Geräten und Edge-Hardware. ONNX Runtime ist mit beliebten Frameworks wie PyTorch, TensorFlow, TensorFlow Lite und scikit-learn kompatibel, was die Integration in verschiedene Arbeitsabläufe und die Bereitstellung von Modellen überall dort, wo sie benötigt werden, erleichtert.
Abbildung 2. ONNX und ONNX Runtime ermöglichen einen flexiblen plattformübergreifenden Einsatz von Modellen.
Hauptmerkmale von ONNX
Bevor wir besprechen, wie man YOLO11 in das ONNX-Format exportiert, wollen wir uns einige wichtige Merkmale des ONNX-Modellformats ansehen.
Ganz gleich, ob Sie zwischen verschiedenen Tools wechseln, auf verschiedenen Geräten einsetzen oder Systeme aktualisieren, ONNX sorgt für einen reibungslosen Ablauf. Das macht das ONNX-Modellformat so einzigartig:
Ein Standardformat: ONNX verwendet eine einheitliche Methode, um zu beschreiben, wie Modelle aufgebaut sind, z. B. Ebenen und Operationen (man kann sie sich als Bausteine vorstellen). Wenn ein Modell in ONNX konvertiert wird, folgt es diesem Standard, so dass jedes System, das ONNX unterstützt, es verstehen und ausführen kann.
Abwärtskompatibilität: Auch wenn ONNX ständig verbessert wird, ist sichergestellt, dass ältere Modelle weiterhin mit neueren Versionen funktionieren. Das bedeutet, dass Sie Ihre Modelle nicht jedes Mal neu trainieren oder erstellen müssen, wenn ONNX ein Update erhält.
Graphenbasierter Modellentwurf: ONNX-Modelle sind als Berechnungsgraphen strukturiert, wobei jeder Knoten eine Operation (z. B. eine Schicht oder eine mathematische Funktion) darstellt und die Kanten den Datenfluss anzeigen. Dieses graphenbasierte Design erleichtert die Integration mit verschiedenen Systemen, die ähnliche Berechnungsgraphenstrukturen verwenden.
Entwicklerfreundliche Werkzeuge: Es wird mit einer breiten Palette von Tools geliefert, die Sie bei der Konvertierung, Validierung und Optimierung Ihrer Modelle unterstützen. Diese Tools vereinfachen das Verschieben von Modellen zwischen verschiedenen Frameworks und können die Bereitstellung beschleunigen - insbesondere für Computer-Vision-Anwendungen.
Ein Überblick über die ONNX-Integration
Das Exportieren von Ultralytics YOLO-Modellen wie Ultralytics YOLO11 im ONNX-Format ist einfach und kann in wenigen Schritten durchgeführt werden.
Um loszulegen, installieren Sie das Ultralytics-Python-Paket mit einem Paketmanager wie "pip". Führen Sie dazu den Befehl "pip install ultralytics" in Ihrer Eingabeaufforderung oder Ihrem Terminal aus.
Mit dem Ultralytics-Paket können Sie auf einfache Weise Modelle für verschiedene Computer-Vision-Aufgaben trainieren, testen, feinabstimmen, exportieren und einsetzen - und so den gesamten Prozess schneller und effizienter gestalten. Sollten Sie bei der Installation auf Schwierigkeiten stoßen, finden Sie im Leitfaden für allgemeine Probleme Lösungen und Tipps.
Sobald das Ultralytics-Paket installiert ist, können Sie das YOLO11-Modell mit dem unten stehenden Code in das ONNX-Format laden und exportieren. Dieses Beispiel lädt ein vorab trainiertes YOLO11-Modell (yolo11n.pt) und exportiert es als ONNX-Datei (yolo11n.onnx), so dass es für den Einsatz auf verschiedenen Plattformen und Geräten bereit ist.
Nachdem Sie Ihr Modell in das ONNX-Format konvertiert haben, können Sie es auf einer Vielzahl von Plattformen einsetzen.
Das folgende Beispiel zeigt, wie man das exportierte YOLO11-Modell (yolo11n.onnx) lädt und eine Inferenz mit ihm durchführt. Inferenzierung 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.
Wenn Sie diesen Code ausführen, wird das folgende Ausgabebild im Ordner runs/detect/predict gespeichert.
Abb. 3. Durchführung einer Inferenz unter Verwendung des exportierten YOLO11-Modells für ein Bild.
Wann sollten Sie sich für die ONNX-Integration entscheiden?
Das Ultralytics Python-Paket unterstützt den Export von Modellen in verschiedene Formate, darunter TorchScript, CoreML, TensorRT und ONNX. Warum also ONNX wählen?
ONNX zeichnet sich dadurch aus, dass es sich um ein rahmenunabhä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 hochgradig portabel, hardwarefreundlich und ideal für die plattformübergreifende Bereitstellung - egal, ob Sie mit Cloud-Servern, mobilen Apps oder Edge-Geräten arbeiten.
Hier sind einige Gründe, warum die ONNX-Integration die ideale Wahl für Ihre YOLO11-Projekte sein könnte:
Portabler Einsatz: Einmal in ONNX exportiert, kann Ihr YOLO11-Modell auf verschiedenen Plattformen eingesetzt werden, ohne dass der Code geändert oder neu trainiert werden muss.
Branchenweite Unterstützung: ONNX wird von großen KI-Unternehmen und -Frameworks unterstützt, was es zu einem zuverlässigen, weithin akzeptierten Format macht. Es gewährleistet langfristige Kompatibilität, ähnlich wie PDFs auf verschiedenen Geräten funktionieren.
Zukunftssichere Entwicklung: Mit ONNX schützen Sie Ihre Modellinvestitionen. ONNX sorgt dafür, dass Ihre Modelle auch in neuen oder veränderten Umgebungen relevant und nutzbar bleiben, wenn sich die Tools weiterentwickeln.
Keine Bindung an einen bestimmten Anbieter: Einige Tools binden Sie an das jeweilige System, was die Möglichkeiten Ihres Modells einschränken kann. ONNX vermeidet dies, indem es Ihnen die Wahl der Plattform überlässt, die für Ihre Bedürfnisse am besten geeignet ist, ohne dass Sie an eine einzige Einrichtung gebunden sind.
Anwendungen von YOLO11 und dem ONNX-Modellformat
Als Nächstes wollen wir uns einige reale Anwendungen ansehen, bei denen YOLO11 mit Hilfe der ONNX-Integration eingesetzt werden kann.
Bestandsverfolgung in Lagern mit YOLO11
In geschäftigen Lagern ist es schwierig, jedes Produkt und jede Verpackung jederzeit im Auge zu behalten. Bildverarbeitungssysteme können den Mitarbeitern helfen, 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 bei der automatischen Verwaltung ihrer umfangreichen Bestände unterstützen und den Lagerarbeitern viel Zeit ersparen.
Insbesondere in intelligenten Lagern können YOLO11-Modelle, die in ONNX exportiert werden, zur Identifizierung und Zählung von Artikeln in Echtzeit mithilfe von Kameras und Edge Devices verwendet werden. Das exportierte Modell kann helfen, Regale oder Paletten zu scannen, um Lagerbestände, fehlende Artikel oder leere Stellen zu erkennen. Da das Modell durch den Export in ONNX leicht und effizient ist, kann es direkt auf kleinen Edge-Geräten wie Smart-Kameras ausgeführt werden, so dass keine teuren Server oder ständiger Cloud-Zugriff erforderlich sind.
Abb. 4. Ein Beispiel für die Verwendung von YOLO11 zum Erkennen und Zählen von Verpackungen.
Abfallmanagement im Krankenhaus mit YOLO11
In Krankenhäusern auf der ganzen Welt fallen täglich große Mengen an Abfall an, von gebrauchten Handschuhen und Spritzen bis hin zu chirurgischen Geräten (wie Einweg- oder kontaminierte chirurgische Werkzeuge wie Scheren und Skalpelle). Untersuchungen haben ergeben, dass Krankenhäuser jedes Jahr etwa 5 Millionen Tonnen Abfall produzieren, das sind 29 Pfund Abfall pro Bett und Tag.
Die ordnungsgemäße Sortierung solcher Abfälle ist für die Hygiene, die Sicherheit und die Einhaltung von Vorschriften unerlässlich. Mit YOLO11-Modellen, die im ONNX-Format 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 maßgeschneidertes YOLO11-Modell, das darauf trainiert ist, verschiedene Arten von medizinischem Abfall zu erkennen, kann das Filmmaterial analysieren und erkennen, was weggeworfen wird. Wenn ein Gegenstand im falschen Behälter landet, z. B. eine gebrauchte Spritze im normalen Müll, kann das System so eingestellt werden, dass das Personal sofort durch ein Licht oder einen Ton gewarnt wird, um eine Kontamination zu verhindern und die Einhaltung der Vorschriften zu gewährleisten.
Abb. 5. Verwendung von YOLO11 zur Erkennung von medizinischen Instrumenten.
YOLO11-gestützte Ernteüberwachung
Den richtigen Erntezeitpunkt zu kennen, kann einen großen Einfluss auf die Qualität der Erzeugnisse und die Gesamtproduktivität eines Betriebs haben. Traditionell verlassen sich die Landwirte auf ihre Erfahrung und manuelle Kontrollen - aber mit den jüngsten Fortschritten in der Technologie beginnt sich das zu ändern.
Mit Computer-Vision-Innovationen wie YOLO11, die im ONNX-Format exportiert werden, können Landwirte nun 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 von ihren Pflanzen (wie Tomaten, Äpfel oder Weizen) aufnehmen. YOLO11 kann dann verwendet werden, um wichtige Indikatoren wie Farbe, Größe und Verteilung der Pflanzen zu erkennen. Anhand dieser Informationen können die Landwirte feststellen, ob die Pflanzen erntereif sind, noch reifen oder ihren Höhepunkt bereits überschritten haben.
Abb. 6. YOLO11 kann zur Erkennung von Pflanzen in Luftaufnahmen von Drohnen verwendet werden.
Zu beachtende ONNX-Einschränkungen
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 zu beachten sind.
Modellgröße: Die Konvertierung von Modellen in das ONNX-Format kann manchmal zu einer größeren Dateigröße im Vergleich zum Originalformat führen. Techniken wie Quantisierung und Pruning können dazu beitragen, dieses Problem zu entschärfen, indem sie die Modellgröße reduzieren, ohne die Leistung wesentlich zu beeinträchtigen.
Laufzeitkompatibilität: Obwohl ONNX Runtime auf plattformübergreifende Kompatibilität ausgelegt ist, können Leistung und Unterstützung auf verschiedenen Hardware- und Betriebssystemen variieren.
Herausforderungen bei der Fehlersuche: Das Debuggen von ONNX-Modellen kann komplexer sein als bei nativen Frameworks wie PyTorch oder TensorFlow. Fehlermeldungen können weniger aussagekräftig sein, was es schwieriger macht, Probleme zu lokalisieren. Tools wie Netron zur Modellvisualisierung und die Protokollierungsfunktionen von ONNX Runtime können jedoch bei der Fehlersuche helfen.
Die wichtigsten Erkenntnisse
Der Export von Ultralytics YOLO11 nach ONNX macht es einfach, ein trainiertes Computer-Vision-Modell fast überall einzusetzen - sei es auf einem Laptop, einem mobilen Gerät oder sogar einer kompakten Smart-Kamera. Mit der ONNX-Integration sind Sie nicht an ein einziges Framework oder eine Plattform gebunden und können Ihr Modell in der Umgebung ausführen, die am besten zu Ihrer Anwendung passt.
Dadurch wird der Übergang von der Schulung zum Einsatz in der Praxis schneller und effizienter. Ganz gleich, ob Sie den Bestand in einem Lager verfolgen oder sicherstellen, dass Krankenhausabfälle ordnungsgemäß entsorgt werden - diese Einrichtung trägt dazu bei, dass die Systeme reibungsloser laufen, Fehler reduziert werden und wertvolle Zeit gespart wird.