zuruck zur Themenseite

Artikel und Hintergründe zum Thema

Deep Learning

Johannes Hiltner | Inka Krischke,

Open Source oder proprietär?

KI-basierte Technologien wie Deep Learning sind schon oft Bestandteil von Machine-Vision-Lösungen. Dabei stellt sich die Frage, ob ein Open-Source-System den eigenen Anforderungen genügt, oder ob die Investition in eine proprietäre ­Software-Lösung lohnt. Eine Abwägung.

© MVTec

Als ‚Auge der Produktion‘ beobachtet und überwacht die industrielle Bildverarbeitung (Machine Vision) Fertigungsabläufe in Echtzeit. Die dabei generierten, digitalen Bilddaten werden von einer integrierten Machine-Vision-Software verarbeitet und für unterschiedlichste Aufgaben in der Prozesskette bereitgestellt. So können etwa Gegenstände aufgrund optischer Merkmale zielsicher erkannt und genau positioniert werden. Ebenso detektiert die Technologie fehlerhaft gefertigte Produkte und ermöglicht damit deren automatisierte Aussortierung, was die Prozesse in der Qualitätssicherung optimiert.

Heute fließen mehr und mehr moderne Verfahren der künstlichen Intelligenz (KI) in Machine-Vision-Systeme ein. Zu nennen sind hier vor allem Deep-Learning-Verfahren, die auf Convolutional Neural Networks (CNNs) basieren. Hierbei werden sehr große Mengen an digitalen Bildinformationen für einen weitreichenden Trainingsprozess genutzt, aufgrund dessen die Software später selbstständig neue Objekte klassifizieren kann. Im Rahmen des Trainings werden spezifische Besonderheiten und Merkmale automatisch angelernt, die typisch für eine bestimmte Objektklasse sind. So lassen sich neue Bilddaten sowie die darauf abgebildeten Objekte exakt ihrer jeweiligen Klasse zuordnen, was sehr hohe und robuste Erkennungsraten ermöglicht. Zudem eignen sich diese Deep-Learning-Algorithmen für eine präzise Lokalisierung von Objekten und Defekten.

Anzeige

Geeignet für Deep Learning

Mit Deep Learning lassen sich Objekte präzise detektieren, wie das Beispiel 'Halcon‘ von MVTec zeigt.

© MVTec

Deep-Learning-Technologien sind innerhalb von Machine-Vision- Anwendungen für bestimmte Einsatzgebiete prädestiniert.  Dazu zählen in erster Linie Klassifizierung, Objektdetektion und semantische Segmentierung. Für andere Anwendungsfälle in der industriellen Bildverarbeitung ist Deep Learning jedoch nur bedingt geeignet. Da meist extrem umfangreiche Datenmengen zu analysieren sind, benötigt das Training in der Regel sehr große Rechenkapazitäten und eine entsprechend dimensionierte Hardware. Vor allem bei hochgradig zeitkritischen Applikationen ist daher eine Standard-CPU in vielen Fällen nicht ausreichend. 

Dies gilt beispielsweise für Hochgeschwindigkeitsanwendungen wie etwa hochpräzise Messaufgaben oder die Lokalisierung von Objekten mit einer Genauigkeit im Millimeter- oder gar Mikrometer-Bereich. Auf einer Standard-CPU benötigen Deep-Learning-Algorithmen hierfür Berechnungszeiten in der Größenordnung von 50 bis 100 ms. In vielen Anwendungsfällen bleiben jedoch nur wenige Millisekunden Zeit für eine exakte Positionsbestimmung. Deep Learning wäre in solchen Einsatzfällen nur in Kombination mit einer leistungsfähigen GPU sinnvoll realisierbar, die jedoch in industriell genutzter Hardware häufig nicht vorhanden ist.

Nicht die optimale Wahl ist Deep Learning zudem in industriellen Anwendungsfällen, in denen die zu erkennenden oder zu inspizierenden Objekte nur eine geringe Varianz aufweisen, wie zum Beispiel in der Elektronik- und Halbleiterindustrie. Da hier die entsprechenden Bauteile meistens sehr ähnlich aussehen, werden für das Training jeweils nur wenige Beispielbilder benötigt. Oft genügt sogar ein einziges Bild, um die Objekte zielsicher zu erkennen und genau zu lokalisieren.

Minimum 100 Trainingsbilder pro Objekt

Der Einsatz von Deep-Learning-Algorithmen macht jedoch nur Sinn, wenn eine hohe Varianz der Objekte vorliegt und mindestens 100 Trainingsbilder pro Objekt zur Verfügung stehen. Daher lassen sich Bildverarbeitungsaufgaben mit einer geringen Varianz der zu erkennenden Gegenstände eher mit herkömmlichen Methoden wie etwa regelbasierten Software-Technologien lösen. Auch für das Lesen von Codes eignen sich heuristische Verfahren besser als Deep-Learning-Algorithmen. Ebenso wird bei der metrischen Vermessung von Objekten auf heuristische Methoden wie etwa die subpixelgenaue Konturenextraktion zurückgegriffen.

Liegen dennoch Anwendungsfälle vor, in denen Deep Learning seinen vollen Nutzen entfalten kann, müssen bestimmte Herausforderungen beachtet werden: Deep Learning ist eine vergleichsweise junge Technologie, für die der Markt noch kaum gängige Standards bietet. Zudem gestaltet sich das gesamte Handling von Deep Learning äußerst komplex und erfordert tiefgehende Kenntnisse und langjährige Erfahrungen im Umgang mit künstlicher Intelligenz, Programmierung und industrieller Bildverarbeitung. Unternehmen stoßen hier häufig an ihre Grenzen, da sie nicht über die nötigen Fachkräfte verfügen.

Vortrainierte Deep-Learning-Netze

Firmen können dennoch von den Vorteilen der Deep-Learning-Technologie mit vertretbarem Aufwand profitieren, indem sie beispielsweise auf bereits vortrainierte Deep-Learning-Netze zurückgreifen. Der Markt bietet hierfür eine Auswahl an kostenfreien Open-Source-Lösungen. Deren Verwendung ist allerdings mit einigen Fallstricken verbunden: Zu beachten ist etwa, dass lizenzrechtliche Probleme auftreten können, denn für die präzise Identifikation von Objekten sind häufig mehrere hunderttausend Beispielbilder erforderlich. Diese hohe Anzahl wird benötigt, da für den Erkennungsprozess viele unterschiedliche Merkmale wie etwa Farbe, Form, Textur oder Oberflächenstruktur maßgeblich sind. Bei der Auswahl dieser Vielzahl von Bildern muss sichergestellt sein, dass sie frei von Rechten Dritter sind, was bei Open-Source-Produkten häufig nicht gewährleistet ist. Eine weitere Herausforderung bei der Verwendung von Open-Source-Tools besteht darin, dass sie meist nur bestimmte Machine-Vision-Aufgaben isoliert lösen und sich nur schwer mit anderen Anwendungen oder in bestehende Frameworks integrieren lassen. Denn typische Problemstellungen in der Bildverarbeitung umfassen immer mehrere Schritte: Zunächst müssen die digitalen Bilddaten aus dem Bildeinzugsgerät in die jeweilige Anwendung gespeist werden. Im zweiten Schritt erfolgt eine Vorverarbeitung. Dabei werden die Bilder optimal ausgerichtet, um die Objekte in die gewünschte Position zu bringen. Abschließend werden die verarbeiteten Daten an andere Komponenten wie etwa an eine SPS weitergereicht, sodass die Ergebnisse nahtlos für weitere Prozessschritte zur Verfügung stehen. Open-Source-Systeme stoßen hierbei meist an ihre Grenzen.

Proprietäre Standardsoftware

Eine praktikablere Lösung bieten proprietäre Standardsoftware-Lösungen für die industrielle Bildverarbeitung, die bereits über vortrainierte Netze verfügen. Dazu zählt beispielsweise die Toolbox ‚Halcon‘ von MVTec, die mit allen wichtigen Features für das Training von Deep-Learning-Netzen ausgestattet ist. Aufgrund der Funktionsvielfalt und speziell vorkonfigurierter Werkzeuge lässt sie sich gut mit anderen Anwendungen kombinieren. Zudem gehören damit lizenzrechtliche Probleme der Vergangenheit an. Die Lösung enthält mehrere Netze, die auf Basis von rund einer Million sorgfältig selektierter, lizenzfreier Bilder aus dem industriellen Umfeld vortrainiert wurden. Der Vorteil für Unternehmen: Sie benötigen nur noch wenige zusätzliche Bilder, um das Training der Netze abschließend auf ihre eigenen, spezifischen Anwendungen zuzuschneiden. Dadurch reduzieren sie den Trainingsaufwand deutlich, sie sparen Kosten und gehen hinsichtlich der Bildrechte keinerlei Risiko ein.

Außerdem ist bei der Nutzung von Open-Source-Tools auf eine weitere Herausforderung zu achten: Deep-Learning-Anwendungen enthalten in der Regel mehrere 100.000 Zeilen Programmiercode. Um fehlerfrei zu funktionieren, muss dieser bestimmten Qualitätskriterien entsprechen. Die Nutzung von quelloffenem Code, der von einer unbekannten Community entwickelt wurde, birgt diesbezüglich gewisse Risiken in sich. Um auf der sicheren Seite zu sein, sollten Unternehmen den Code intern auf seine Qualität hin überprüfen. Dies zieht aufgrund des hohen Umfangs enormen Aufwand und kaum überschaubare Kosten nach sich. Mit einer proprietären, kommerziellen Lösung hingegen profitieren Firmen von einem hochwertigen, qualitätsgeprüften und sicheren Code. Zudem stehen im Falle von Support-Anfragen professionelle Ansprechpartner und Experten zur Verfügung, was bei einer freien Community nicht unbedingt gewährleistet ist.

Autor: 
Johannes Hiltner ist Produktmanager ‚Halcon‘ bei MVTec Software in München.

  • Xing Icon
  • LinkedIn Icon
Anzeige
zurück zur Themenseite
Anzeige

Das könnte Sie auch interessieren

Anzeige

Bildverarbeitung

Autonom dank Künstlicher Intelligenz

Maschinelle Bildverarbeitung zur zuverlässigen Qualitätssicherung per Plug & Play und ohne eine gehörige Portion Fachwissen – von dieser Idealvorstellung sind gängige Bildverarbeitungssysteme in der Regel weit entfernt. Ein deutsch-israelisches...

mehr...
Anzeige
Anzeige
Anzeige

Leichtbaurobotik

Welcher Greifer für welche Anwendung?

Fortschritte im Bereich des End-of-Arm-Tooling (EoAT) machen es möglich: Greifer und Sensoren werden zunehmend intelligent und lassen sich immer leichter bedienen. Somit erweitern sie das Einsatzspektrum ­kollaborierender Roboter und rentieren sich...

mehr...
Anzeige
Anzeige
Anzeige

Cloud-Lösung

Mehr Usability durch KI?

Zeitweise benötigte Ressourcen flexibel und kostentransparent buchen – ein Versprechen, das die Cloud-Provider oft nicht halten: Die Angebote sind zwar umfassend und leistungsstark, aber ebenso unübersichtlich und preislich intransparent. Ein...

mehr...
Jetzt Newsletter abonnieren