Praktische Einführung in YOLO-World
Erfahre mehr über YOLO-World, ein innovatives Objekterkennungsmodell, das Objekte durch Text-Prompts identifizieren kann. Entdecke, wie YOLO-World funktioniert, lerne seine Anwendungen kennen und probiere es mit einem kurzen Code-Beispiel aus.

Computer-Vision-Projekte erfordern oft viel Zeit für die Datenannotation und das Training von Objekterkennungs-Modellen. Das könnte jedoch bald der Vergangenheit angehören. Am 31. Januar 2024 veröffentlichte das AI Lab von Tencent YOLO-World, ein Echtzeit-Objekterkennungsmodell mit offenem Vokabular. YOLO-World ist ein Zero-Shot-Modell, was bedeutet, dass du Objekterkennungsinferenzen auf Bildern ausführen kannst, ohne es dafür trainieren zu müssen.
Zero-Shot-Modelle haben das Potenzial, die Herangehensweise an Computer-Vision-Anwendungen zu verändern. In diesem Blog erfahren wir, wie YOLO-World funktioniert, welche Einsatzmöglichkeiten es bietet, und wir teilen ein praktisches Codebeispiel, mit dem du sofort loslegen kannst.
Link to this sectionEin Einblick in YOLO-World#
Du kannst ein Bild und eine Textbeschreibung der gesuchten Objekte an das YOLO-World-Modell übergeben. Wenn du zum Beispiel „eine Person in einem roten Hemd“ auf einem Foto finden möchtest, nimmt YOLO-World diese Eingabe und legt los.
Die einzigartige Architektur des Modells kombiniert drei Hauptelemente:
- Einen Detektor auf Basis des Ultralytics YOLOv8-Objekterkennungsmodells zur Analyse des visuellen Inhalts des Bildes.
- Einen Text-Encoder, der von OpenAIs CLIP vortrainiert wurde und speziell darauf ausgelegt ist, deinen Text-Prompt zu verstehen.
- Ein Netzwerk, das Vision-Language Path Aggregation Network (RepVL-PAN), welches die verarbeiteten Bilddaten mit den Textdaten integriert.
Der YOLO-Detektor scannt dein Eingabebild, um potenzielle Objekte zu identifizieren. Der Text-Encoder transformiert deine Beschreibung in ein Format, das das Modell verstehen kann. Diese beiden Informationsströme werden dann durch das RepVL-PAN mittels mehrstufiger Cross-Modality-Fusion zusammengeführt. Dies ermöglicht es YOLO-World, die in deinem Prompt beschriebenen Objekte präzise im Bild zu erkennen und zu lokalisieren.

Ein Beispiel für Ergebnisse von YOLO-World.
Link to this sectionVorteile von YOLO-World#
Einer der größten Vorteile bei der Verwendung von YOLO-World ist, dass du das Modell nicht für eine spezifische Klasse trainieren musst. Es hat bereits aus Paaren von Bildern und Texten gelernt und weiß daher, wie es Objekte basierend auf Beschreibungen finden kann. Du sparst dir stundenlanges Datensammeln, Annotieren, Training auf teuren GPUs und so weiter.
Hier sind weitere Vorteile von YOLO-World:
- Echtzeit-Leistung - YOLO-World unterstützt Echtzeit-Leistung, genau wie die ursprüngliche YOLO-Architektur. Es ist ideal für Anwendungen, die eine sofortige Objekterkennung erfordern, wie etwa autonome Fahrzeuge und Überwachungssysteme.
- Instance Segmentation - YOLO-World kann Objekte auf Bildern sauber umranden und trennen, selbst wenn diese Objekte während des Trainings nicht speziell gelernt wurden.
- Effizienz - YOLO-World kombiniert hohe Genauigkeit mit rechnerischer Effizienz, was es für reale Anwendungen praktisch macht. Seine optimierte Architektur ermöglicht eine schnelle Objekterkennung ohne übermäßigen Bedarf an Rechenleistung.
Link to this sectionDie Anwendungsbereiche von YOLO-World#
YOLO-World-Modelle können für eine Vielzahl von Anwendungen eingesetzt werden. Sehen wir uns einige davon an.
Link to this sectionQualitätskontrolle in der Fertigung#
Produkte, die am Fließband hergestellt werden, werden vor dem Verpacken visuell auf Defekte geprüft. Die Defekterkennung erfolgt oft manuell, was Zeit kostet und zu Fehlern führen kann. Diese Fehler können Probleme wie hohe Kosten sowie den Bedarf an Reparaturen oder Rückrufen verursachen. Um hier zu helfen, wurden spezielle Machine-Vision-Kameras und KI-Systeme entwickelt, um diese Prüfungen durchzuführen.
YOLO-World-Modelle sind in diesem Bereich ein großer Fortschritt. Dank ihrer Zero-Shot-Fähigkeiten können sie Defekte an Produkten finden, selbst wenn sie nicht für dieses spezifische Problem trainiert wurden. Beispielsweise kann eine Fabrik, die Wasserflaschen herstellt, mit YOLO-World leicht unterscheiden, ob eine Flasche korrekt mit einem Verschluss versiegelt ist oder ob ein Verschluss fehlt oder fehlerhaft ist.

Ein Beispiel für eine Flaschenverschluss-Prüfung.
Link to this sectionRobotik#
YOLO-World-Modelle ermöglichen es Robotern, mit unbekannten Umgebungen zu interagieren. Ohne auf spezifische Objekte trainiert zu sein, die sich in einem Raum befinden könnten, können sie dennoch identifizieren, welche Objekte vorhanden sind. Nehmen wir an, ein Roboter betritt einen Raum, in dem er noch nie zuvor war. Mit einem YOLO-World-Modell kann er Objekte wie Stühle, Tische oder Lampen erkennen und identifizieren, obwohl er nicht spezifisch auf diese Gegenstände trainiert wurde.
Neben der Objekterkennung kann YOLO-World dank seiner „Prompt-then-detect“-Funktion auch den Zustand dieser Objekte bestimmen. In der Landwirtschaft kann es beispielsweise verwendet werden, um reife von unreifen Früchten zu unterscheiden, indem der Roboter darauf programmiert wird, diese zu erkennen.
Link to this sectionKI in der Automobilindustrie#
Die Automobilindustrie umfasst viele bewegliche Teile, und YOLO-World kann für verschiedene Anwendungen im Fahrzeugbereich eingesetzt werden. Bei der Fahrzeugwartung ist beispielsweise die Fähigkeit von YOLO-World, eine Vielzahl von Objekten ohne manuelle Markierung oder umfangreiches Vortraining zu erkennen, äußerst nützlich. YOLO-World kann verwendet werden, um Autoteile zu identifizieren, die ersetzt werden müssen. Es könnte sogar Aufgaben wie Qualitätsprüfungen automatisieren, indem es Defekte oder fehlende Teile bei neuen Autos aufspürt.
Eine weitere Anwendung ist die Zero-Shot-Objekterkennung in selbstfahrenden Autos. Die Zero-Shot-Erkennungsfunktionen von YOLO-World können die Fähigkeit eines autonomen Fahrzeugs verbessern, Objekte auf der Straße, wie Fußgänger, Verkehrsschilder und andere Fahrzeuge, in Echtzeit zu erkennen und zu klassifizieren. Auf diese Weise kann es helfen, Hindernisse zu erkennen und Unfälle für eine sicherere Fahrt zu vermeiden.

Ein Beispiel für die Objekterkennung auf einer Straße.
Link to this sectionBestandsmanagement für Einzelhandelsgeschäfte#
Das Identifizieren von Objekten in Regalen ist ein wichtiger Teil der Bestandsverfolgung, der Warenpflege und der Automatisierung von Prozessen im Einzelhandel. Die Fähigkeit von Ultralytics YOLO-World, eine große Vielfalt an Objekten ohne manuelle Tagging-Prozesse oder umfangreiches Vortraining zu erkennen, ist für das Bestandsmanagement extrem hilfreich.
Zum Beispiel kann YOLO-World beim Bestandsmanagement schnell Artikel in einem Regal erkennen und kategorisieren, wie etwa verschiedene Marken von Energy-Drinks. Einzelhändler können so präzise Bestände führen, Lagerbestände effizient verwalten und Abläufe in der Lieferkette optimieren.
Alle diese Anwendungen sind einzigartig und zeigen, wie vielseitig YOLO-World eingesetzt werden kann. Als Nächstes wollen wir praktisch mit YOLO-World arbeiten und uns ein Codebeispiel ansehen.
Link to this sectionEin Code-Walkthrough#
Wie bereits erwähnt, kann YOLO-World zur Erkennung verschiedener Autoteile für Wartungszwecke verwendet werden. Eine Computer-Vision-Anwendung, die notwendige Reparaturen erkennt, würde das Aufnehmen eines Bildes vom Auto, das Identifizieren von Autoteilen, das Untersuchen jedes Teils auf Schäden und das Empfehlen von Reparaturen beinhalten. Jeder Teil dieses Systems würde unterschiedliche KI-Techniken und Ansätze nutzen. Für diesen Code-Walkthrough konzentrieren wir uns auf den Teil, bei dem die Autoteile erkannt werden.
Mit YOLO-World kannst du verschiedene Autoteile in einem Bild in unter 5 Minuten identifizieren. Du kannst diesen Code erweitern, um auch andere Anwendungen mit YOLO-World auszuprobieren! Um zu starten, müssen wir das Ultralytics-Paket wie unten gezeigt mittels pip installieren.
Für weitere Anweisungen und bewährte Verfahren zum Installationsprozess, wirf einen Blick in unsere Ultralytics-Installationsanleitung. Falls du bei der Installation der erforderlichen Pakete für YOLOv8 auf Schwierigkeiten stößt, schau in unseren Leitfaden zu häufigen Problemen für Lösungen und Tipps.
Sobald du das benötigte Paket installiert hast, können wir ein Bild aus dem Internet herunterladen, um unsere Inferenzen darauf auszuführen. Wir werden das untenstehende Bild verwenden.

Unser Eingabebild.
Dann importieren wir das benötigte Paket, initialisieren unser Modell und legen die Klassen fest, nach denen wir in unserem Eingabebild suchen. Hier sind wir an folgenden Klassen interessiert: Auto, Rad, Autotür, Autospiegel und Nummernschild.
Wir verwenden dann die predict-Methode und geben den Pfad zum Bild sowie Parameter für die maximale Anzahl an Erkennungen und Schwellenwerte für Intersection over Union (IoU) und Konfidenz (conf) an, um eine Inferenz auf dem Bild auszuführen. Abschließend werden die erkannten Objekte in einer Datei namens 'result.jpg' gespeichert.
Das folgende Ausgabebild wird in deinen Dateien gespeichert.

Unser Ausgabebild.
Wenn du lieber sehen möchtest, was YOLO-World kann, ohne zu programmieren, kannst du die YOLO-World-Demo-Seite besuchen, ein Eingabebild hochladen und die benutzerdefinierten Klassen eingeben.
Lies unsere Dokumentationsseite zu YOLO-World, um zu erfahren, wie du das Modell mit den benutzerdefinierten Klassen speichern kannst, damit es später direkt verwendet werden kann, ohne die Klassen wiederholt eingeben zu müssen.
Link to this sectionIst dir aufgefallen, dass die Autotüren nicht erkannt wurden?#
Wenn du dir das Ausgabebild noch einmal ansiehst, wirst du feststellen, dass die benutzerdefinierte Klasse „Autotür“ nicht erkannt wurde. Trotz seiner großartigen Leistungen hat YOLO-World gewisse Einschränkungen. Um diese Einschränkungen zu überwinden und das YOLO-World-Modell effektiv zu nutzen, ist es wichtig, die korrekten Arten von Text-Prompts zu verwenden.
Hier sind einige Einblicke dazu:
- YOLO-World benötigt für genaue Vorhersagen möglicherweise keine hohen Konfidenzniveaus, daher kann das Senken der Konfidenz-Schwellenwerte die Erkennungsraten verbessern.
- Füge Klassen hinzu, an denen du nicht interessiert bist. Dies hilft, die primäre Objekterkennung zu verbessern, indem falsch-positive Ergebnisse für sekundäre Objekte reduziert werden.
- Das Erkennen größerer Objekte, bevor man sich auf kleinere Details konzentriert, kann die Genauigkeit der Erkennung erhöhen.
- Erwähne Farben in deinen Klassen, um Objekte basierend auf Farbhinweisen zu erkennen.
- Das Beschreiben von Objektgrößen in Prompts kann YOLO-World ebenfalls dabei helfen, spezifische Objekte genauer zu identifizieren.
- Post-Processing-Methoden, wie das Filtern von Vorhersagen nach Größe oder das Anpassen der Konfidenzniveaus pro Klasse, können die Ergebnisse der Objekterkennung weiter verbessern.
Link to this sectionDie Möglichkeiten sind unbegrenzt#
Insgesamt können YOLO-World-Modelle mit ihren fortschrittlichen Objekterkennungsfähigkeiten zu einem mächtigen Werkzeug werden. Es bietet hohe Effizienz, Genauigkeit und hilft bei der Automatisierung verschiedener Aufgaben in unterschiedlichsten Anwendungen, wie etwa dem Beispiel der Identifizierung von Autoteilen, das wir praktisch besprochen haben.
Erkunde gerne unser GitHub-Repository, um mehr über unsere Beiträge zu Computer Vision und KI zu erfahren. Wenn du neugierig bist, wie KI Bereiche wie Gesundheitstechnologie umgestaltet, schau dir unsere Lösungsseiten an. Die Möglichkeiten mit Innovationen wie YOLO-World scheinen unendlich zu sein!






