MVTec Software GmbH
 

Deep Learning

MVTec Softwareprodukte bieten eine große Auswahl an Operatoren, Funktionen und Methoden, die entweder auf Deep-Learning-Technologien basieren oder es Kunden ermöglichen, Deep-Learning-Technologien in ihren eigenen Anwendungen selbst einzusetzen.

Deep-Learning-Gestützte Technologien

In HALCON and MERLIC beinhaltet

HALCON (hier kostenlos testen) und MERLIC (hier kostenlos testen) bieten beide Deep-Learning-basierte OCR (in diesem Video in Aktion zu sehen). Diese neuen Klassifikatoren wurde mit Hilfe von Deep Learning trainiert. Mit ihnen lassen sich höhere Leseraten erzielen als mit allen bisherigen Klassifikationsverfahren.

Deep Learning in Ihrer Anwendung

[Translate to Deutsch:] Featured in HALCON

HALCON erlaubt es Kunden, Deep-Learning-Technologien in ihren eigenen Anwendungen selbst einzusetzen. Nutzer können mit Hilfe von CNNs (Convolutional Neural Networks) einen eigenen Klassifikator trainieren, der dann zur Klassifizierung neuer Daten eingesetzt werden kann.

HALCON bietet einen nahtlos integrierten, umfassenden Satz von Deep-Learning-Funktionen für:

Klassifikation ganzer Bilder
Semantische Segmentierung
Objektdetektion (achsenparallel)
Objektdetektion (orientiert)

Die deep-learning-basierte Bildklassifizierung ermöglicht eine einfache Zuordnung von Bildern zu trainierten Klassen. Dabei ermöglicht der geringe Labeling-Aufwand besonders kurze Rüstzeiten. Zudem ist die Anwendung des Klassifikators auf neue Daten (Inferenz) besonders schnell.

Mit der semantischen Segmentierung können trainierte Fehlerklassen pixelgenau lokalisiert werden. So können Anwender z.B. Inspektionsaufgaben lösen, die bisher gar nicht oder nur mit erheblichem Programmieraufwand realisierbar waren.

Die Objektdetektion lokalisiert trainierte Objektklassen und identifiziert sie mit einem umschreibenden Rechteck (Bounding Box). Berührende oder sich teilweise überlappende Objekte werden ebenfalls getrennt, was das Zählen von Objekten ermöglicht. HALCON gibt Anwendern auch die Option diese Rechtecke an der Orientierung des Objekts ausrichten zu lassen, was zu einer präziseren Erkennung führt, da Rechtecke damit optimaler an die Form des Objekts angepasst sind.

Um sein Potenzial in industriellen Umgebungen zu maximieren, kann HALCONs deep-learning-basierte Bildklassifizierung, semantische Segmentierung und Objektdetektion sowohl auf GPUs als auch auf x86-CPUs und Arm®-Prozessoren ausgeführt werden.

Labeling von Daten

Screenshot des Deep Learning Tools
Ein Screenshot des MVTec Deep Learning Tools

Mit dem Deep Learning Tool bietet MVTec eine Lösung zum Labeln von Trainingsdaten, die für die Objektdetektion in HALCON benötigt werden. Je nach Projektanforderung kann der Nutzer seine Daten dabei entweder mit achsen-parallelen oder mit orientierten Rechtecken labeln. Das damit erstellte HALCON-Dictionary kann dann nahtlos in HDevelop integriert werden, um das Netz zu trainieren.

Um Sie beim Labeln von Daten für HALCONs andere Deep-Learning-Technologien zu unterstützen, bieten wir verschiedene HDevelop-Hilfsskripte zum Download an.

Kunden, die ihre Daten bereits (mit einem beliebigen Tool) gelabelt haben, können sich mit uns in Verbindung setzen, um ihren Trainingsdatensatz in ein Format zu konvertieren, das sich einfach in HDevelop integrieren lässt.

Trainieren kundenspezifischer CNNs

Das Netzwerk trainieren
Trainieren eines CNN mit "gelabelten" Bilddaten

Mit HALCON können Anwender ihren eigenen Klassifikator mithilfe vortrainierter CNNs (Convolutional Neural Networks), welche in HALCON enthalten sind, trainieren. Diese Netze wurden hochgradig für industrielle Anwendungen optimiert und basieren auf Hunderttausenden von Bildern. Nach dem Training kann das CNN zur Klassifizierung neuer Daten verwendet werden.

Das Training geschieht durch die Bereitstellung einer ausreichenden Anzahl passend beschrifteter bzw. "gelabelter" Trainingsbilder. Anschließend analysiert die Software diese gelabelten Bilder und lernt dabei automatisch, anhand welcher Merkmale die gegebenen Klassen identifiziert werden können. Dies ist ein großer Vorteil gegenüber traditioneller Klassifizierungsmethoden, bei denen diese Eigenschaften vom Anwender manuell programmiert werden mussten – ein komplexes und umständliches Unterfangen, das qualifizierte Ingenieure mit Programmier- und Bildverarbeitungskenntnissen erfordert.

Verwendung der trainierten Netze

Defektklassifizierung mit Hilfe von Deep Learning
Das trainierte CNN klassifiziert Defekte anhand ganzer Bilder

Sobald das Netzwerk gelernt hat, zwischen den vorgegebenen Klassen zu unterscheiden, z.B. also, ob ein Bild ein zerkratztes, ein verunreinigtes oder ein gutes Werkstück zeigt, kann das Netzwerk in Betrieb genommen werden. Das bedeutet, dass der Anwender den neu erstellten CNN-Klassifikator auf neue Bilddaten anwenden kann, welche der Klassifikator dann mit den im Training erlernten Klassen abgleicht – dies wird auch als "Inferenz" bezeichnet. Die Inferenz kann sowohl auf GPUs als auch auf CPUs ausgeführt werden.

Anwendungsbereiche

Bei der Suche nach realen Anwendungen können CNNs beispielsweise zur Defektklassifizierung (z.B. für Leiterplatten, Flaschenmündungen oder Tabletten) oder zur Objektklassifizierung (z.B. zum Identifizieren einer Pflanzenart anhand lediglich eines Bildes) verwendet werden.

Entwickelt mit Schlüsselkunden verschiedenster Industrien

Bei der Entwicklung von HALCONs Deep-Learning-Features haben wir eng mit wichtigen Pilotkunden aus verschiedenen Branchen zusammengearbeitet. Nachfolgend ein kurzer Überblick über die verschiedenen Herausforderungen und wie Deep Learning uns geholfen hat, sie zu lösen.

[Translate to Deutsch:] Plant identification

Die Aufgabe: Identifizierung von Pflanzen

Vor Deep Learning

Neue Pflanzentypen mussten manuell programmiert werden. Für die Merkmals­extraktion wurden für jedes Land eigene MLP-Klassifikatoren verwendet ­– ein zeitraubender Prozess.

Mit Deep Learning

Es dauerte nur etwa zwei Wochen, bis wir die gleichen Aufgaben gelöst hatten. Die Fehlerrate konnte dabei halbiert werden.

Identifizierung leerer Regalschächte mit Deep Learning

Die Aufgabe: Leere Regalschächte erkennen

Vor Deep Learning

Ein aufwändiges Hardware-Setup mit 3D-Sensoren war notwendig.

Mit Deep Learning

Die Lösung benötigt lediglich 2D-Bilddaten, was dank der damit kostengünstigeren Bilderfassung und schnelleren Klassifizierung zu Kosteneinsparungen führte. Zudem konnte die Fehlerrate deutlich reduziert werden.

Defektprüfung von Pillen mit Deep Learning

Die Aufgabe: Defekte auf Pillen erkennen

Vor Deep Learning

Neue Fehlerklassen mussten manuell und vor Ort programmiert werden – ein zeit- und kostenintensiver Prozess.

Mit Deep Learning

Neue Fehlertypen können automatisch trainiert werden, was eine enorme Zeit- und Kostenersparnis bedeutet, da die Ingenieure nicht mehr zum Kunden reisen müssen.

Kontaktflächeninspektion mit Deep Learning

Die Aufgabe: Kontaktflächen auf Defekte prüfen

Vor Deep Learning

Eine relativ hohe Fehlerquote erforderte viel manuelle Nach-Kontrolle durch die Arbeiter, was die Produktion verlangsamte und die Kosten erhöhte.

Mit Deep Learning

Die Implementierung einer deep-learning-basierten Fehlererkennung führte zu einer massiven Reduzierung der Fehlerquote, was den Bedarf an manueller Prüfung drastisch reduzierte, die Produktion beschleunigte und die Arbeitskosten senkte.

Deep Learning Tutorials

Unsere dreiteilige Tutorialreihe führt Sie durch alle notwendigen Schritte, um Ihren eigenen Deep-Learning-basierten Klassifikator mit HALCON zu trainieren und zu evaluieren.

Vorbereitende Schritte
(1) Vorbereitende Schritte
Trainieren eines Klassifikators
(2) Trainieren eines Klassifikators
Evaluierung eines trainierten Klassifikators
(3) Evaluierung eines trainierten Klassifikators

Deep-Learning-Helfer

Nachfolgend finden Sie einige zusätzliche Downloads, die Ihnen den Einstieg in Deep Learning mit HALCON erleichtern.

 

BeschreibungDownload

HDevelop-Skript zum Labeln Ihrer Daten für semantische Segmentierung.

Hinweis: Zum Labeln von Daten für die Objektdetektion empfehlen wir das MVTec Deep Learning Tool

Zip-File

(19 MB)

HDevelop-Beispielskript, das zeigt wie man aus vorhandenen gelabelten Daten ein DLDataset-Dictionary zur Objektdetektion mit HALCON erstellt.

Zip-File

(3.4 MB)

Minimalversion des HDevelop-Beispiels für Objektdetektion

Zip-File

(3 KB)

Minimalversion des HDevelop-Beispiels für Semantische Segmentierung

Zip-File

(3 KB)