Deep Learning: Objekte zielsicher im Bild erkennen und lokalisieren

Künstliche Intelligenz in der industriellen Bildverarbeitung

  • Die drei Einsatzgebiete für Deep Learning sind Klassifikation, Objektdetektion und semantische Segmentierung. (Bildquelle: MVTec)Die drei Einsatzgebiete für Deep Learning sind Klassifikation, Objektdetektion und semantische Segmentierung. (Bildquelle: MVTec)
  • Die drei Einsatzgebiete für Deep Learning sind Klassifikation, Objektdetektion und semantische Segmentierung. (Bildquelle: MVTec)
  • Training und Inferenz sind die Kernkomponenten von Deep Learning. (Bildquelle: MVTec)
  • Bei der Objektdetektion läuft der Workflow in vier Schritten ab: Vorbereitung, Training, ­Evaluierung und Ausführung. (Bildquelle: MVTec)

Deep-Learning-Technologien kommen innerhalb der industriellen Bildverarbeitung in verschiedenen Varianten zum Einsatz. Dies sind in erster Linie Klassifikation, Objektdetektion und semantische Segmentierung. Für alle drei Verfahren bieten moderne Machine-Vision-Produkte praktikable Funktionen. Dennoch hat der Einsatz von Deep Learning auch Grenzen. So gibt es durchaus Anwendungsfälle in der Bildverarbeitung, bei denen regelbasierte ­Ansätze eher weiterhelfen.

Die einzelnen Deep-Learning-basierten Machine-Vision-Methoden setzen unterschiedliche Parameter für die Bildverarbeitung voraus: Bei der Klassifikation werden Objekte anhand von Bilddaten in bestimmte Klassen eingeteilt. Dabei lässt sich für jedes einzelne Bild eine Klasse mit einer gewissen Wahrscheinlichkeit ermitteln.

Bei der Objektdetektion hingegen werden innerhalb eines bestimmten Bildes einzelne Objekte erkannt und lokalisiert. Hierfür müssen die Bilder, mit denen das zugrunde liegende Deep-Learning-Netz trainiert wird, vorab gelabelt, also mit einem Etikett versehen werden. Dabei werden in diese Trainingsbilder Rechtecke, sogenannte Bounding Boxes, eingezeichnet. Diese rahmen die zu erkennenden Objekte ein und weisen sie der jeweiligen Klasse zu. Während des Trainingsprozesses geschieht dies händisch, bei der Anwendung des trainierten Netzes auf neue Bilder dann eigenständig durch das Netz selbst.
Die semantische Segmentierung schließlich erfordert Trainingsbilder, bei denen jeder Pixel einer bestimmten Grundklasse zugeordnet wird. Alle Bildpunkte, die sich hier nicht eindeutig bestimmen lassen, werden einer sogenannten Background-Klasse zugewiesen. Das Einlernen des Modells auf Basis einer großen Menge von Trainingsdaten ermöglicht es schließlich, für jeden Pixel in einem neuen Bild eine spezifische Klasse mit hoher Wahrscheinlichkeit vorherzusagen.

Vierstufiger Workflow bei der Objektdetektion

Basis des Deep-Learning-Konzepts ist also ein umfassender Trainingsprozess, der in allen drei beschriebenen Methoden zum Einsatz kommt. Dieser ermöglicht sehr hohe Erkennungsraten für die bloße Identifikation von Objekten und für das Aufdecken von Produktmängeln im Rahmen der Fehlerinspektion und Qualitätskontrolle.

Dabei kommt speziell bei der Objektdetektion ein Workflow zum Einsatz, der sich in vier Schritte gliedert: Zunächst müssen die Bilddaten für das Training vorbereitet werden. Wie beschrieben, werden hierbei Rechtecke eingezeichnet sowie entsprechende Labels vergeben und verwaltet. Der Software-Hersteller MVTec bietet dafür das sogenannte Deep-Learning-Tool an, das diesen Prozess umfassend abbildet und steuert.

Die gelabelten Bilddaten werden im zweiten Schritt in die Machine-Vision-Software Halcon eingelesen, wo der anschließende eigentliche Trainingsprozess stattfindet. Aufgrund der hohen Performance-Anforderungen ist dafür hardware-seitig ein Grafikprozessor (Graphics Processing Unit, GPU) erforderlich. Im Anschluss werden die Trainingsergebnisse umfassend evaluiert und ausgewertet. Hierbei werden die gelabelten Daten miteinander verglichen, um die Qualität der Erkennung zuverlässig zu bestimmen. Im vierten Schritt lässt sich das trainierte, neuronale Netz schließlich im Rahmen der sogenannten Deep-Learning-Inferenz auf Standard-Hardware verwenden. Dieser Prozess läuft wahlweise auf einer GPU oder auf einer CPU (Central Processing Unit).

Deep-Learning-Inferenz auf Standard-CPUs verfügbar

Für Halcon 19.05 haben die MVTec-Experten diese Inferenz erfolgreich auf verschiedenen Embedded Boards und CPUs getestet, die auf der weit verbreiteten ARM-Prozessor-Architektur basieren. Das ermöglicht es, umfassende Deep-Learning-Funktionen auch auf preiswerten, im industriellen Umfeld üblichen Standard-CPUs sowie auf Embedded-Geräten zu realisieren. Da der Trainingsprozess eine Deep-Learning-fähige GPU erfordert, ist es sinnvoll, das Modell zunächst auf einem Standard-PC mit entsprechend leistungsfähiger GPU zu trainieren und es anschließend auf ein Arm-basiertes Embedded-Gerät zu transferieren. Darauf lässt sich das trainierte Modell dann ohne weitere Anpassungen für die Inferenz einsetzen. Verfügt das Embedded-Gerät über eine Nvidia-GPU, kann auch dort trainiert werden.

Grenzen von Deep Learning: zeitkritische Anwendungen

Innerhalb von Machine-Vision-Anwendungen eignet sich Deep Learning also insbesondere für die Klassifikation, Objektdetektion und semantische Segmentierung. Für andere Einsatzgebiete hingegen ist die KI-Technologie weniger relevant. Dies betrifft vor allem extrem zeitkritische Applikationen, die mit hoher Geschwindigkeit ablaufen. Dazu zählen beispielsweise hochpräzise Messoperationen oder Lokalisierungen von Gegenständen mit einer Genauigkeit im Millimeter- oder Mikrometer-Bereich. Beim Einsatz einer typischen ARM-CPU würden Deep-Learning-Algorithmen hierfür 50 bis 100 ms benötigen. Eine solch genaue Ortung darf jedoch nur wenige Millisekunden dauern, wofür in Deep-Learning-Anwendungen ein performanter Grafikprozessor nötig wäre. Die meisten Industrie-PCs und Embedded Devices verfügen aber lediglich über eine Standard-CPU und keine entsprechend leistungsfähige GPU. Daher kommen bei derartigen Messaufgaben auf diesen Plattformen in der gewünschten Geschwindigkeit eher herkömmliche, regelbasierte Algorithmen zum Einsatz.

Kein Deep Learning bei geringer Objekt-Varianz

Ebenso eignet sich die KI-Technologie weniger für industrielle Szenarien, in denen sich die zu erkennenden oder inspizierenden Objekte nur geringfügig unterscheiden. In der Elektronik- und Halbleiterindustrie beispielsweise sehen sich bestimmte Bauteile oft sehr ähnlich. Daher erfordert das Einlernen jeweils nur eine geringe Anzahl von Beispielbildern. In manchen Fällen reicht sogar ein einziges Bild für die Erkennung und präzise Lokalisierung der Objekte aus, weshalb hier die Anwendung von Deep-Learning-Algorithmen nicht erforderlich ist. Liegt eine geringe Varianz der zu erkennenden Objekte vor, ist eher der Einsatz von klassischen Machine-Vision-Technologien wie etwa regelbasierten Ansätzen ratsam. Eine weitere Alternative sind heuristische Verfahren, wie etwa die subpixelgenaue Konturenextraktion. Diese wird beispielsweise bei der metrischen Vermessung von Objekten angewandt.

Zudem sind in einigen weiteren Anwendungsbereichen nicht immer komplexe Deep-Learning-Funktionen erforderlich, um robuste Erkennungsraten zu realisieren. Dies gilt etwa für Identifikationsaufgaben, wie das Lesen von Barcodes und Datacodes, Matching-Verfahren sowie Methoden der 3D-Algorithmik wie dreidimensionale Punktwolken und Höhenbilder. Auch diese Applikationen kommen mit klassischen, regelbasierten Software-Technologien aus. Deren Vorteil besteht darin, dass sie je nach Anwendung keine große Anzahl von gelabelten Bildern für den Trainingsprozess benötigen. Zudem wurden die zugrundeliegenden Algorithmen über Jahrzehnte hinweg auf die dedizierten Problemstellungen hin optimiert. Ein weiterer Vorteil: Regelbasierte Software setzt deutlich niedrigere Systemanforderungen voraus als Deep-Learning-Applikationen, was die ­Effizienz der Prozesse begünstigt.

Fazit

Innerhalb der industriellen Bildverarbeitung eignen sich Deep-Learning-Technologien vor allem für die Klassifikation, Objektdetektion und semantische Segmentierung bei komplexen Problemstellungen oder Anwendungen mit hohen Objektvarianzen. Für andere Anwendungsgebiete, die keine komplexen Deep-Learning-Algorithmen benötigen, sind klassische, regelbasierte Software-Technologien die sinnvollere Alternative.

Autor(en)

Kontaktieren

MVTec Software GmbH
Arnulfstraße 205
80634 München
Germany
Telefon: +49 89 457 695 0
Telefax: +49 89 457 695 55

Jetzt registrieren!

Die neusten Informationen direkt per Newsletter.

To prevent automated spam submissions leave this field empty.