top of page
AutorenbildTobias Dietz

Computer Vision

Aktualisiert: 25. Apr.


In vielen Produktionslinien werden bereits industrielle Kameras genutzt, um die Nachweispflicht gegenüber dem Kunden zu erfüllen, die Qualität zu sichern und menschliche Aufwände zu reduzieren. Für viele unserer mittelständischen Kunden erscheint dieses Thema jedoch sehr komplex und wirft insbesondere die Frage auf: "Wann lohnt sich eine solche Investition, und was sind die Vorteile im Vergleich zum Status quo oder zu alternativen Lösungen?"


In diesem Blogartikel wird erläutert, wie eine Bilderkennung funktioniert und welche Technischen Entwicklungen dafür sorgen, dass Computer Vision Applikationen auch für kleine Anwendungen interessant sein können. Am Ende vergleichen wir dabei die Alternativen und gehen auf Vor- und Nachteile ein.


Wie funktioniert Computer Vision in der Qualitätsprüfung?


Während des Produktionsprozesses wird durch eine Kamera ein Bild bzw. Video des Produktes oder Teilproduktes erzeugt. Mit Hilfe von Künstlicher Intelligenz (KI) werden visuelle Mängel erkannt und markiert. In einem weiteren Schritt können diese Teile aussortiert oder nachkontrolliert werden.


Als Entscheidungsrundlage dienen dabei Bilder aus der Vergangenheit. Dabei ist eine Diversität in den Bilddaten wichtig: Alle Fehler, die später erkannt werden müssen, sollten auch in den Bilddaten vorhanden sein. Je seltener die Fehler sind, desto schwerer wird es für die KI diese zu erkennen.


Die KI entscheidet sich dabei auf einem Spektrum zwischen 0 und 1, wie sicher sie sich mit der Entscheidung ist. Je nach Anwendung bzw. Fehlertoleranz kann die Entscheidungsgrenze verschoben werden. Je niedriger die Grenze, desto mehr Fehler werden gefunden. Allerdings auch mit der Konsequenz, dass mehr i. O.-Teile als "fehlerhaft" markiert werden.


Schema Bildklassifizierung und Objekterkennung

Bildklassifikation oder Objekterkennung - Was passt zu meinem Anwendungsfall?


Generell unterscheiden wir zwischen zwei Kategorien: Klassifizierung und Objekterkennung. Der einfache Anwendungsfall ist die Klassifikation eines Bildes. In diesem Fall lässt sich dem Bild eine oder mehrere Klassen zuordnen. Das nachfolgende Bild zeigt den Unterschied am Beispiel von einem Kabel. Die Klassifikation ist im Fall des Kabels entweder „i. O.“ oder „fehlerhaft“. Diese entscheidet nun also für das ganze Bild, ob das Kabel fehlerhaft ist oder nicht.


Mit dieser einfachen Anwendung ist es möglich z. B. Teile in eine Nachkontrolle zu schicken oder einzelne Teile auszusortieren. Allerdings liegt dann keine Information darüber vor, wo der Fehler im Bild gefunden wurde bzw. ist es nicht möglich mehrere Teile im gleichen Bild zu klassifizieren. Hier kommt die Objekterkennung ins Spiel. Durch eine Objekterkennung ist es möglich Fehler zu lokalisieren und zu klassifizieren.


Bei dem blauen Kabel in der Abbildung wurden z. B. zwei Risse gefunden und markiert. Bei der Klassifikation konnte lediglich die Klasse "Riss" hinzugefügt werden. Somit können die Entscheidungen in der Anwendung klar dokumentiert bzw. mögliche Fehler schneller durch eine Nachkontrolle eines Menschen gegengeprüft werden. Durch fortgeschrittene Verfahren wie "YOLO" (You Only Look Once) lässt sich dies als Real Time Object Detection auch auf Videos übertragen und findet z. B. beim autonomen Fahren Anwendung.


Gegenüberstellung Bildklassifizierung und Objekterkennung

Transfer Learning: Fokus auf Datengrundlage, anstelle der Modellauswahl


Große Convolutional Neural Network (CNN) Architekturen und Transfer Learning sorgen dafür, dass bei der Entwicklung von Computer Vision-Anwendungen in der Produktion die Datengrundlage im Mittelpunkt stehen kann, da bereits vortrainierte Modelle verwendet werden können (Data Driven AI).


CNNs sind in der Lage, komplexe Muster in Daten bzw. Bildern zu erkennen. ResNet-50, eine populäre Modell Architektur, besteht aus über 23 Millionen trainierbaren Parametern. Dies führt zu einer erheblichen Verbesserung der Vorhersagegenauigkeit. Ein solches Training ist jedoch ressourcenaufwendig. Damit ein Training überhaupt möglich ist, wird eine Leistungsstarke GPU benötigt.


Transfer Learning entgegnet diesem Problem. Bei Transfer Learning werden Modelle auf großen und vielfältigen Datensätzen trainiert und dann als Ausgangspunkt für spezifische Aufgaben in der Computer Vision genutzt. Die Modelle müssen also nicht von Grund auf neu entwickelt werden. Stattdessen können wir vorhandene Modelle an unsere speziellen Anforderungen anpassen, denn das spart Zeit und Ressourcen.


Die Herausforderung ist, dass die vortrainierten Modelle oftmals auf Daten trainiert wurden, die nicht den Daten aus der Produktion entsprechen, weshalb ein weiteres Finetuning der Modelle wichtig ist. Je nach Anwendungsfall kann dies von einem Cloud Service erledigt werden, sodass die Anwendung lediglich Trainingsdaten benötigt oder das Training wird an Cloud Ressourcen ausgelagert. Die fertigen Modelle sind dann entweder als Service in der Cloud erreichbar oder können auf Edge Devices deployed werden.


Alternative zur KI-gestützten Qualitätsprüfung:


Eine Alternative zur KI-gestützten Qualitätsprüfung wäre eine manuelle Prüfung durch einen Menschen. Dafür müssen die Personen eingelernt werden bzw. die nötige Expertise besitzen, wodurch eine zusätzliche Fehlerquelle geschaffen wird. Die Tätigkeit ist zudem einseitig, weshalb die Aufmerksamkeit von Menschen zunehmend reduziert ist. Wenn die Bildverarbeitung hier den Menschen unterstützt, können langfristig Ressourcen gespart und die Fehleranfälligkeit durch Leichtsinnsfehler reduziert werden.


Eine Alternative sind fertige Industriekameras zur Bildverarbeitung wie z.B. von Keyence, diese haben oftmals vorprogrammierte Funktionalitäten bzw. können je nach Anwendungsfall angepasst werden. Der Nachteil hierbei ist, dass zur Einrichtung Spezialisten benötigt werden, welche am jeweiligen Standort evtl. nicht vorhanden, und die Kameras mit der nötigen Software meist sehr teuer sind. Die Modellentwicklung einer KI passiert an einem zentralen Ort, das fertige Modell wird in einem Speicher abgelegt und steht von dort aus allen Anwendungen zur Verfügung. Per Knopfdruck können also Verbesserungen bzw. neue Versionen allen Standorten zu Verfügung gestellt werden, sofern die Anwendungen eine bestehende Verbindung zum Netzwerk haben. Hier besteht der Vorteil aus kurzen Updatezyklen und einer iterativen Verbesserung der Anwendung.


Welche Nachteile gibt es und was brauche ich zur Umsetzung?


Um eine KI einsetzen zu können, werden Daten benötigt. Je diverser dabei die vorhandenen Fälle sind, desto besser kann das Modell später neue Fälle vorhersagen. Dabei müssen aber alle Fehlertypen, die erkannt werden sollen, auch in den Daten der Vergangenheit (Trainingsdaten) vorhanden sein. Das Sammeln und Anreichern dieser Daten kann einiges an Zeit in Anspruch nehmen bzw. bedeutet zusätzlichen Aufwand, die das Unternehmen vornehmen muss. So muss für jedes der Bilder entschieden werden ob auf dem Bild ein Fehler vorkommt und wo dieser ist. Diesen Vorgang nennt man auch "Annotieren".


Da der menschliche Fehler später oftmals eine Obergrenze ist, sollte dies von Experten durchgeführt werden. Ein Weg diesem Mangel bzw. Aufwand entgegenzuwirken, ist die Erzeugung künstlicher Daten, welche sich aus Kombinationen von echten Daten zusammensetzen. Die Erzeugung von möglichst realistischen synthetischen Daten ist dabei ein aktuelles Forschungsthema.


Die Entscheidungen von KI basieren auf Wahrscheinlichkeiten, das bedeutet, dass es auch immer Fehler geben kann. Dieser Fehlerwahrscheinlichkeit sollte man sich bewusst sein, weshalb Modelle im Voraus ausreichend evaluiert und getestet werden müssen.


Zusammengefasst lässt sich also sagen, dass KI zur Bilderverarbeitung einige Vorteile bietet wie z. B. das Reduzieren von Fehleranfälligkeit durch eine Ermüdung des Personals und das Sparen von Ressourcen. Die Grundlage für einen Anwendungsfall sind dabei Bilder aus der Vergangenheit und vortrainierte Modell Architekturen. Die Schwierigkeit ist dabei, eine einheitliche bzw. repräsentative Datengrundlage zu schaffen. Deshalb ist es wichtig die Qualität des Modells vor einer Nutzung ausreichend zu evaluieren bzw. zu testen.

Aktuelle Beiträge

Alle ansehen

Comments


bottom of page