Live-Objekterkennung mit maschinellem Lernen

Diese Live-Demo-App zur Objekterkennung demonstriert die Möglichkeiten des Einsatzes von Computer Vision und Algorithmen des maschinellen Lernens zur Erkennung von Objekten in einem Live-Video-Stream. Sie können mit der Anwendung interagieren, indem Sie Objekte vor Ihrer Kamera bewegen.

Die Anwendung basiert auf einem vortrainierten COCO-Modell und YOLOv7, einem Echtzeit-Algorithmus zur Objekterkennung. Das Modell wird mit ONNX und WebAssembly in den Browser geladen, einem binären Befehlsformat und Interpreter für die Ausführung von maschinellen Lernmodellen im Browser. Die Anwendung selbst wurde in React entwickelt.

Die App läuft auf den meisten Desktop- und Browser-Plattformen. Die Erkennungsgeschwindigkeit und -leistung sind begrenzt, da die App vollständig im Webbrowser und auf der CPU läuft.

Was ist Objekterkennung?

Die Objekterkennung mit maschinellem Lernen ist eine Technologie, die Computern hilft, Objekte in Bildern oder Videos zu erkennen und zu identifizieren. Der Prozess beginnt mit dem Training eines Computermodells anhand eines umfangreichen Datensatzes von Bildern, die manuell mit Beschriftungen für die Objekte auf dem Bild versehen worden sind. Das Computermodell lernt dann, Muster in den Bildern zu erkennen und diese Muster mit verschiedenen Arten von Objekten zu assoziieren.

Bei einem neuen Bild oder Video verwendet das Computermodell diese gelernten Muster, um das Vorhandensein und die Position der verschiedenen Objekte im Bild zu erkennen. Dazu wird das Bild in kleinere Bereiche unterteilt und jeder Bereich auf das Vorhandensein eines Objekts untersucht.

Vortrainierte Modelle Nutzen!

Um ein Modell von Grund auf zu trainieren, ist ein umfangreicher Datensatz mit gelabelten Daten erforderlich. Das Sammeln und Annotieren von Datensätzen ist oft sehr zeitaufwändig und kostspielig. Für viele Anwendungsfälle können jedoch so genannte vortrainierte Modelle als Grundlage verwendet werden, die mit der sogenannten Lerntransfer-Technik verbessert werden können. Viele solcher Modelle sind Open Source und frei verfügbar.

Lerntransfer ist eine Technik des maschinellen Lernens, bei der ein Ausgangsmodell auf einem umfangreichen Datensatz für eine bestimmte Aufgabe trainiert wird und dann dasselbe Modell auf einem kleineren Datensatz für eine verwandte Studie feinabgestimmt wird.

Wir haben in der obigen Demo ein YOLOv7-Standardmodell verwendet, das mit der COCO-Datenbank trainiert wurde. YOLO steht für You Only Look Once und ist ein sehr effizientes Modell zur Objekterkennung, das häufig in der Computer Vision verwendet wird. COCO steht für Common Objects in Context (“Gewöhnliche Objekte im Kontext”), ein umfangreicher Datensatz für Objekterkennung, Segmentierung und Beschriftung. COCO enthält über 330.000 Bilder und mehr als 2,5 Millionen Objektinstanzen, die mit Objektkategorie, Objektbegrenzungsrahmen und Segmentierungsmaske beschriftet sind. Es ist einer der beliebtesten Datensätze für die Objekterkennung, und viele moderne Objekterkennungsmodelle wurden auf COCO trainiert. Mit Hilfe von Lerntransfer können neue Objekte oder bestimmte Untergruppen von Objekten erkannt werden, z. B. “Teetasse” oder “Kaffeetasse” statt nur “Tasse”.