Aufrufe
vor 3 Wochen

Industrielle Automation 5/2018

  • Text
  • Industrielle
  • Automation
Industrielle Automation 5/2018

Industrielle Kamera mit integriertem Deep Learning Wie viele Trainingsdaten sind erforderlich? Neuronale Netze Deep Learning – die Königsdisziplin des Machine Learning Die maschinelle Bildanalyse reicht vom Anzeigen der Bilder über die Objekterkennung bis hin zur Objektklassifizierung. Die Königsdisziplin ist Deep Learning, eine Machine-Learning-Technik, mit der Klassifikations- Aufgaben direkt aus Bildern, Text oder Akustik ausgeführt werden können. Grundlage bilden Architekturen in Form von neuronalen Netzen. Lesen Sie, wie Computer lernen und wo die Zukunft künstlicher Intelligenz liegt. Ob es um fahrerlose Transportsysteme, um Sprachsteuerung von mobilen Endgeräten oder um die Freisprecheinrichtung eines Navigationssystems geht – Computer werden zunehmend intelligenter. Ebenso vielfältig ist der Bedarf an intelligenten Systemen. Er reicht von der Medizinforschung, dem Elektronikmarkt bis hin zum autonomen Fahren und der Industrie, zum Beispiel zur Qualitätssicherung. Wie Deep Learning funktioniert und welche Herausforderungen damit verbunden sind, beschreibt folgender Beitrag. Neuronale Netze in der Kameratechnik Deep Learning ist eine Weiterentwicklung des Machine Learnings. Mithilfe von sog. Deep-Learning Algorithmen entwickeln sich Modelle oder Modellgruppen zur Erkennung und Klassifizierung von Objekten eigenständig weiter aus. Sie bildern ein künstliches neuronales Netzwerk, also Gruppen von Algorithmen, die ähnlich eines menschlichen Gehirns aufgebaut sind, um wiederkehrende Muster zu erkennen, diese zu ordnen und zu klassifizieren. Das zugrundeliegende Verfahren kann hierbei jedes eintrainierte Objekt in vielen Variationen wiedererkennen. Erforderlich sind dafür umfangreicher Sätze klassifizierter Daten, die anhand neuronaler Netzarchitekturen trainiert werden. Beim Training eines Deep-Learning-Systems ist der verwendete Datensatz ausschlaggebend für die Effizienz des Systems. Je hochwertiger die Daten sind, umso besser ist die Wiedererkennung und Geschwindigkeit der Inferenz (computergestützte Schlussfolgerung). Zudem werden weniger Systemressourcen und Rechenleistung benötigt. Bei der Anwendung eines trainierten neuronalen Netzes können Entwickler das Netz so optimieren, dass kein Hostsystem mehr erforderlich ist und die Inferenz-Berechnung auf einem viel kleineren Gerät wie einer Machine Vision-Kamera ausgeführt werden kann. Prädestiniert für solche Anwendungen ist die Flir Firefly Kamera, die in Kürze auf den Markt kommt. Dank der integrierten Movidius Myriad 2 VPU (Vision Processing Unit) führt sie trainierte neuronale Netze direkt auf der Kamera aus. Doch wie erfolgt die Entwicklung eines Trainingsdatensatzes zur Bildklassifizierung und Sortierung in vordefinierte Kategorien? Am Beispiel der Klassifizierung von Obst, hängt die Quantität der benötigten Trainingsdaten maßgeblich von folgenden Faktoren ab: n Anzahl der zu unterscheidenden Daten- Klassen, z. B. „Apfel“, „Blatt“, „Ast“ n Ähnlichkeit der zu erkennenden Klassen, z. B. „Apfel“ vs. „Birne“ ist komplexer als „Apfel“ vs. „Blatt“ n Gewollte Varianz innerhalb der Klassen, z. B. Äpfel unterschiedlicher Farben und Formen, für eine bessere Robustheit gegen Variationen in der realen Anwendung n Ungewollte Varianz in den Bilddaten, z. B. Rauschen, Unterschiede in Weißabgleich, Kontrast, Objekt-Größe, Erfassungswinkel In manchen Fällen erzielen bereits ein paar hundert Bilder akzeptable Resultate. Bei komplexeren Aufgabenstellungen hingegen sind eine Million oder mehr Bilder notwendig. Die beste Methode zur Anforderungsermittlung für Trainingsdaten besteht darin, einige Daten zu sammeln und diese am eigenen System zu testen. Das neuronale Netz erreicht schließlich einen Punkt, an dem zusätzliche Daten die Erkennungsrate nicht mehr weiter verbessern. Unabhängig vom Umfang des Trainingsdatensatzes ist es unwahrscheinlich, dass das System eine Präzision von 100 % erreicht. Die jeweiligen Anforderungen an Geschwindigkeit und Erkennungsleistung des Systems geben Ausschlag über die Notwendigkeit zusätzlicher Trainingsdaten. Repräsentatives Ergebnis: Tests mit Validierungsdaten Der Datensatz muss umfangreich genug sein, damit ein separater Satz an Validierungsdaten vorhanden ist, mit dem die Erkennungsrate und Geschwindigkeit des Netzes beim Training eingeschätzt werden kann. Diese Bilder sollten innerhalb des Datensatzes zufällig gewählt sein. Denn nur so wird sichergestellt, dass die Bilder für den gesamten Datensatz repräsentativ sind. Ist der Datensatz relativ klein, kann die Erkennungsleistung auch durch Mehrfach- Validierung bestimmt werden. Hierzu untergliedert man den Datensatz z. B. in fünf zufällig gewählte Teile, trainiert zunächst ein neuronales Netz mit vier Teilen und validiert mit dem fünften Teil. Dieses Procedere wird für alle fünf Kombinationsmöglichkeiten wiederholt. Der Mittelwert der Erkennungsrate gibt die zu erwartende Leistungsfähigkeit an. Die Varianz der Erkennungsrate erlaubt Rückschlüsse darauf, wie repräsentativ der Datensatz ist. 68 INDUSTRIELLE AUTOMATION 5/2018

Hohe Erkennungsrate beschleunigt das Training Deep Learning ist ein iterativer Prozess. Beim Training eines Netzes werden Vorhersagen über Trainingsdaten getroffen. Die Genauigkeit dieser Vorhersagen wird genutzt, um das Netz weiter zu optimieren. Der Prozess wird so lange wiederholt bis die gewünschte Erkennungsrate erreicht ist. Je größer der Datensatz, desto mehr Varianz, die auch in der Zielanwendung auftreten kann und im Deep Learning-Algorithmus dargestellt werden kann. Eine gut geplante Erfassung der Trainingsdaten, bei der exakt annotierte Bilder mit einem Minimum an unnötiger Varianz gewonnen werden, ist von Vorteil. Dies senkt den Umfang der benötigten Trainingsdaten, beschleunigt das Training und erhöht die Erkennungs rate sowie die Geschwindigkeit der Inferenz. 01 Die Annotation (Kennzeichnung der Daten) von Bildern zu Segmentierungszwecken ist sehr viel komplexer und aufwändiger als zur Klassifizierung Zaun Baum Apfel Blatt Training und Realität: gleiche Messmittel einsetzen Trainingsbilder sollten mit den gleichen Kameras, Optiken und Beleuchtungen wie im späteren Produktionssystem aufgenommen werden. Dies reduziert die für das Netz erfor- derlichen Ressourcen und beschleunigt das Training. Zudem muss das System die Unterschiede zwischen Trainings- und Livebildern in Bezug auf Geometrie, Beleuchtung und spektrale Empfindlichkeit nicht kompensieren. Hochwertige Kameras mit Pregius Sensoren, GenICam und umfangreichen GPIO Schnittstellen vereinfachen die automatische Erfassung von großen, hochwertigen Trainingsdatensätzen. Kontrollierte Umgebungsbedingungen von Vorteil Äpfel direkt am Baum zu untersuchen ist wesentlich komplexer als am Förderband. Denn bei letzterem befinden sich die Äpfel in einer kon trollierten Umgebung, sodass der Systementwickler viele Varianz- Quellen eliminieren kann. Jedes Bild wird aus dem gleichen Winkel, derselben Distanz sowie mit demselben Hintergrund und derselben Beleuchtung aufgenommen. Das vereinfacht die Messung, ermöglicht eine sehr präzise Inferenz, also die Schlussfolgerung aus einer bestehenden Datenbasis) bei deutlich geringerem Trainingsdatensatz und reduziert die Größe des benötigten neuronalen Netzes. Somit lassen sich Auswertungen auf einer Standalone-Hardware wie auf dem Intel Movidius Myriad 2 (integriert in der Flir Firefly) ausführen. 02 Beispiele für eine Transformationen mit Rotation, Skalierung und Verzerren: Die transformierten Bilder müssen anschließend zugeschnitten werden, um der vom neuronalen Netz benötigten Bildgröße zu entsprechen ausreicht, können synthetische Daten ein leistungsfähiges Werkzeug sein. Dabei handelt es sich um künstlich generierte Bilder, die die schnelle Erzeugung großer Mengen an Trainingsdaten ermöglichen, die mit 100 % Genauigkeit vorannotiert und segmentiert werden. Neuronales Netz auf einer Kamera Für Entwickler, die die Systemgröße reduzieren und gleichzeitig eine hohe Präzision der Inferenz erreichen möchten, ist die in Kürze erhältliche Kamera Flir Firefly das geeignete Mittel der Wahl. Sie vereint die wichtigsten Funktionen industrieller Kameras mit der Leistung von Deep Learning und ist für Anwendungen in der industriellen und nicht-industriellen Bildgebung konzipiert. Sie verfügt zudem über eine integrierte Intel Movidius Myriad 2 VPU, um ein trainiertes neurales Netzwerk direkt über die Kamera für Inferenzen am Netzwerkrand zu nutzen. Bilder: Aufmacher Fotolia, sonstige Flir www.flir.com Hilfreiche Werkzeuge wie Daten-Augmentation, Normalisierung und synthetische Daten Manche Systeme untersuchen Objekte, deren Ausrichtung und Position variieren kann. So kommt es z. B. bei Prüfsystemen für Obst vor, dass das Obst herumrollt. In solchen Fällen kann die Daten- Augmentation ein sehr hilfreiches Werkzeug sein, um den Datensatz durch affine und projektive Transformation auf einfacher Weise zu erweitern. Auch Farbtransformationen können eingesetzt werden, um das neuronale Netz mit einer größeren Bildvarianz zu erweitern. Eine weitere Optimierungsmöglichkeit und Verbesserung der Erkennungsleistung kann durch die sogenannte Normalisierung erreicht werden. Normalisierte Bilder werden vom Menschen zwar als unnatürlich wahrgenommen, sind aber für das Training leistungsstarker neuronaler Netze effektiver. In Situationen, die große Mengen an Trainingsdaten erfordern und in denen eine Datensatzerweiterung durch Augmentation nicht industrielle automation 10/2018 - 1/8 Seite 90 x 60mm (Satzspiegel) creating machine vision Ein abgestimmtes System von Bildverarbeitungs-Komponenten. Besuchen Sie uns Stand 1 H35 Beleuchtung Kamera- System www.vision-control.com Optik INDUSTRIELLE AUTOMATION 5/2018 69 Vision u Control.indd 1 25.09.2018 10:35:09

AUSGABE