Vergleich von CNN zur Erkennung von kleinen Bauteilen am Montagetisch

Künstliche Intelligenz in Form neuronaler Netze existiert in der Theorie bereits seit den 1940er Jahren. In den vergangenen Jahren konnten auf dem Sektor erhebliche Fortschritte verzeichnet werden. Im Bereich Computer Vision legen beispielsweise so genannte CNN (Convolutional Neural Networks) den Grundstein für eine zuverlässige Erkennung, Ortung und Klassifizierung von Objekten in Bildern und Videos. Damit lassen sich viele Einsatzbereiche für CNN finden, sowohl im Gebiet des autonomen Fahrens als auch in der Industrie 4.0. Die Anwendung von CNN zur Bilderkennung hat jedoch immer noch Schwächen: So stellt die Größe der Objekte im Bild aktuell noch eine Schwierigkeit dar. Wo zur Bildgröße gesehen relativ große Objekte problemlos und mit einer hohen Trefferquote erkannt werden, erkennen viele neuronale Netze kleine Objekte gar nicht oder klassifizieren falsch. Untersucht wurde deshalb die Eignung verschiedener CNN, welche sich zuvor bereits für bestimmte Aufgaben der Objekterkennung bewährt haben, für die Erkennung kleiner Bauteile am Montagetisch.

Das Training eines neuen neuronalen Netzes erfordert in der Regel eine enorme Anzahl an Daten und ist sowohl rechenintensiv als auch zeitaufwändig. Nicht selten muss ein neuronales Netz erst mit hunderttausenden von Bildern für viele Trainingszyklen (auch Epochen genannt) trainiert werden, um das gewünschte Ergebnis zu erzielen. Der Begriff Transfer Learning beschreibt das Übertragen der Ergebnisse eines bereits (auf eine bestimmte Aufgabe) fertig trainierten Netzes auf eine neue Aufgabe. Um zeit- und ressourcensparend zu arbeiten, wurde das Prinzip des Transfer Learnings auch für das beschriebene Projekt angewendet. Hierfür wurden die Layer vortrainierter neuronaler Netze mit neuen Daten und Klassen weiter trainiert.

Ein grundlegender Bestandteil des Projekts war das Erstellen eines Bilddatensatzes, welcher zum Trainieren und zum späteren Test der Trainingsergebnisse eingesetzt wurde. Für jede der 25 Klassen wurden deshalb auf unterschiedlichen Untergründen 97 Bilder mit verschiedenen Kamerawinkeln, – abständen und -auflösungen gemacht (vgl. Abb. 1). Im Anschluss wurden alle Bilder für das anstehende Supervised Learning mit Hilfe der Software LabelImg gelabelt. Für das Training der neuronalen Netze wurden letztlich 90% der insgesamt 2.425 Bilder des Datensatzes genutzt, die restlichen 10% dienten für die spätere Überprüfung der Trainingsergebnisse. Um Untersuchung der verschiedenen Netze möglichst vergleichbar zu gestalten, wurde das Training aller Netze so konfiguriert, dass die Anzahl an Bildern, die gleichzeitig in das Netz eingespeist werden (sog. Batch Size), möglichst klein gehalten wurde. Insgesamt sollte während dem Training jedes der Trainings-Bilder 200-mal das Netz durchlaufen (entspr. 200 Trainings-Epochen). 

Die Untersuchung sollte in Anbetracht einer späteren Verwendung der künstlichen Intelligenz zur Unterstützung bei der Arbeit am Montagetisch erfolgen. Dementsprechend sollte bei der Auswahl der Netze darauf geachtet werden, dass eine Erkennung von Objekten in einer Videosequenz ohne größere Verzögerungen möglich ist.

Zwar sind die Trainingslaufzeiten der SSD-Netze die kürzesten, betrachtet man jedoch die Präzision wird deutlich, dass Faster R-CNN und RFCN eine beträchtlich bessere Leistung erzielen. Zu beachten gilt allerdings, dass es bei der Objekterkennung in einer Video-Sequenz mit den beiden präziseren Netzen zu Verzögerungen kommen könnte. Auf Basis der Geschwindigkeit empfiehlt es sich deshalb, das Faster R-CNN mit einem größeren Datensatz und weiterem Fine Tuning, weiter zu trainieren, um das gewünschte Ergebnis zu erreichen.

Autor: Madlon Pécaut

Schreibe einen Kommentar