Klassifikation von Defekten auf optischen Oberflächen mit synthetischen Trainingsdaten

Masterarbeiten am ifp - Dominik Huber

Dominik Huber

Klassifikation von Defekten auf optischen Oberflächen mit synthetischen Trainingsdaten

Dauer: 6 Monate
Abgabe: Juli 2022
Betreuer: M.Sc. Nils Weiss, Dipl.-Inf. (FH) Hans-Peter Radtke (Diehl Defence), Prof. Dr.-Ing. Norbert Haala
Prüfer: Prof. Dr.-Ing. Norbert Haala


 

Einleitung

Optische Elemente wie Linsen, Prismen und Spiegel müssen nach dem Wareneingang in der Regel einer aufwändigen Oberflächenprüfung unterzogen werden. Diese wird heutzutage hauptsächlich manuell nach DIN ISO 10110-7 durchgeführt. Die manuelle Untersuchung hat jedoch einige Nachteile. Sie ist beispielsweise subjektiv, zeit- und kostenintensiv, schlecht reproduzierbar und muss manuell dokumentiert werden. Aufgrund dieser Nachteile soll die Möglichkeit der eigenen Entwicklung eines automatischen bildbasierten Oberflächenprüfsystems untersucht werden. Bevor die Oberflächendefekte durch ein Prüfsystem ausgewertet werden können, müssen diese zunächst klassifiziert werden und damit beschäftigt sich die vorliegende Arbeit.

Ziel der Arbeit war der Entwurf eines bildbasierten Softwaresystems zur Klassifikation von Defekten auf planen optischen Oberflächen. Dabei sollte aufgrund der Knappheit realer Daten die Nutzung synthetischer Trainingsdaten untersucht und bewertet werden. Um die benannten Ziele zu erreichen, wurden zunächst geeignete Defektklassen in Anlehnung an die bestehende Klassenunterteilung der DIN ISO 10110-7 definiert.  Anschließend wurde ein synthetischer Datensatz erstellt, welcher auf synthetisch generierten binären Defektbildern basiert. Für die Klassifikation wurden geeignete Klassifikatoren ausgewählt und die Vorhersagekraft der Klassifikatoren wurde anhand eines synthetischen und realen Datensatzes getestet.

Beschreibung des Systems

Das entworfene System verfolgt in dieser Arbeit den klassischen Ansatz eines Mustererkennungssystems mit den Schritten Bildaufnahme, Bildvorverarbeitung, Merkmalsgewinnung und Klassifikation. Die Defektbewertung wäre dann der nachgelagerte Schritt, welcher nicht mehr im Umfang der Arbeit enthalten ist. In der Bildvorverarbeitung werden die Defekte durch ein Schwellwertverfahren mit anschließender Konturverfolgung vom Bildhintergrund getrennt (Siehe Abbildung 1).  Auf Basis der einzelnen Defektsegmente können Merkmalsvektoren bestimmt werden, welche schließlich mittels Klassifikatoren den verschiedenen Klassen zugeordnet werden können.

Abbildung 1: Darstellung des Prozesses von der Bildaufnahme bis zur Bildvorverarbeitung

Einführung der Klassen

Die Defekte können nach Norm in mehrere Klassen unterteilt werden. Für diese Arbeit waren jedoch lediglich reale Daten für die Normklassen „Löcher“, „Wischer“ und „lange Kratzer“ verfügbar. Daher wurden lediglich diese Normklassen in der Arbeit betrachtet. Dabei gelten Kratzer mit einer Länge < 2 mm als „Wischer“ und Kratzer mit einer Länge > 2 mm als „lange Kratzer“.

In dieser Arbeit wurden die verfügbaren Klassen um weitere Klassen ergänzt bzw. erweitert, die einerseits die Form der Kratzer und andererseits Überlagerungen von Löchern, Wischern und langen Kratzern berücksichtigen.

Insgesamt wurden 13 Klassen eingeführt. Die eingeführten Klassen sollen eine Hilfe für die Defektbewertung sein, zur Erhöhung des Informationsgehalts dienen und die Möglichkeiten der synthetischen Datengenerierung demonstrieren.  Die eingeführten Klassenbezeichnungen lauten wie folgt:
1)    „Löcher“ (Loch)
2)    „Kurze längliche Objekte“ (Wischer mit Länge < 0,5 mm) (KLO)
3)    „Wischer mit geradenähnlicher Form“ (WGÄ)
4)    „Wischer mit sonstiger Form“ (WSF)
5)    „Überlappung: Ein Wischer und min. ein Loch (Ü1KL)“
6)    „Überlappung: Mehrere Wischer (ÜMW)“
7)    „Überlappung: Ein Wischer und min. ein Loch (ÜMWL)“
8)    „Langer Kratzer mit geradenähnlicher Form (KGÄ)“
9)    „Langer Kratzer mit sonstiger Form (KSF)“
10)    „Überlappung: Ein langer Kratzer und min. ein Loch (Ü1KL)“
11)    „Überlappung: Mehrere lange Kratzer (ÜMK)“
12)    „Überlappung: Mehrere lange Kratzer und min. ein Loch (ÜMKL)“
13)    „Inklusionen“ (INKL)
Dabei muss erwähnt werden, dass bei der „Überlagerung mehrerer langer Kratzer“ eigentlich immer die Überlagerung mit mindestens einem langen Kratzer gemeint ist. D.h. die Klasse ÜMK beinhaltet beispielsweise auch die Überlagerung von einem langen Kratzer mit einem Wischer.

„Löcher“ und „Wischer“ und Überlagerungen dieser Klassen gelten nach Norm als „allgemeine Unvollkommenheiten“. Dabei ist für die Auswertung der Flächeninhalt des Defektsegments relevant. „Lange Kratzer“ werden nach Norm meist geosondert betrachtet. Dabei ist für die Auswertung die maximale Breite bzw. Dicke eines Kratzers relevant. Sobald sich Defektsegmente mit einer Beteiligung von mindestens einem langen Kratzer überlagern, so muss die Überlagerung aufgetrennt werden, damit die Defekte getrennt bewertet werden können. Diese Problematik betrifft die Klassen 10) bis 12) und gegebenenfalls auch die Klasse 13).

Generierung synthetischer Binärbilder

In der Arbeit wurde eine Methodik aufgezeigt, mit der sich die einzelnen binären Defektsegmente mittels Splines synthetisch generieren lassen. Dabei wurden mehrere Binärbilder mit jeweils einem Defektsegment erzeugt. Im Folgenden wird der Erstellungsprozess von „Löchern“ und „Kratzern“ beispielhaft dargelegt.

Löcher

Für die synthetische Erzeugung von Löchern wurde eine modifizierte Version des von Viquerat und Hachem (2020) beschriebenen Algorithmus zur Erzeugung von zweidimensionalen Zufallsformen verwendet.  Dabei werden zunächst zufällig Punkte auf einem Kreisring mit innerem Radius ri = 1 - rpert  und äußerem Radius ra = 1 - rpert erzeugt (Siehe Abbildung 2). Anschließend wird der radiale Abstand der Punkte zum Kreismittelpunkt mit jeweils demselben Faktor skaliert, um Formen unterschiedlicher Größe zu erhalten. Der nächste Schritt besteht darin, dass zwischen den Zufallspunkten jeweils kubische Bézier-Kurven berechnet werden, welche stückweise zusammengesetzt werden. Im letzten Schritt werden die Zufallsformen in weiß auf schwarzem Hintergrund geplottet, um die entsprechende Binärdarstellung zu erhalten. In Abbildung 3 ist eine Gegenüberstellung von realen und synthetischen Löchern dargestellt.

Abbildung 2: Darstellung der Erzeugung von Zufallspunkten für die Generierung synthetischer Löcher (Viquerat, J. und Hachem, E. (2020)).
Abbildung 3: Gegenüberstellung von realen und synthetischen Löchern. Links sind reale Löcher dargestellt und rechts synthetisch generierte Löcher.

Kratzer

Bei Betrachtung der realen Kratzer fällt auf, dass die Breite bzw. Dicke der Kratzer meist nicht konstant ist, sondern über der Länge variiert. Zudem ist die Kontur der Kratzer meist nicht glatt sondern erscheint ausgefranst. Um diese Effekte nachzustellen wurde ein Algorithmus entwickelt, welcher auf der Spline-Interpolation und den zuvor dargelegten Zufallsformen basiert.

Abbildung 4: Darstellung des Prozesses zur Erstellung eines synthetischen Kratzers

In Abbildung 4 ist der Erstellungsprozess eines Kratzers schematisch dargestellt.  Zunächst werden Stützstellen erzeugt (Kreisringe).  Im nächsten Schritt wird auf Basis der Stützstellen ein Spline (rot) berechnet, welcher anschließend diskretisiert wird. Um die Andickung der Kratzer darzustellen, werden die diskretisierten Spline-Punkte zweimal kopiert. Im Anschluss daran wird eine bestimmte Anzahl aneinanderhängender Spline-Punkte der ersten Kopie vertikal nach oben verschoben und dieselben Punkte werden bei der zweiten Kopie vertikal nach unten verschoben. Anschließend werden durch die kopierten Punkte zwei Splines (grün und blau) berechnet. Die berechneten Splines werden daraufhin in einer bestimmten Breite bzw. Dicke in weiß auf schwarzem Hintergrund geplottet werden. Um die Ausfransungen und die Überlagerung eines Kratzers durch Löcher darzustellen, werden die Splines mit den zuvor beschriebenen Zufallsformen überlagert. In Abbildung 5 ist eine Gegenüberstellung von realen und synthetischen Kratzern dargestellt.

Abbildung 5: Gegenüberstellung von realen und synthetischen Kratzern. Links sind reale Kratzer dargestellt und rechts sind synthetisch generierte Kratzer dargestellt.

Ergebnisse der Klassifikation

Für die Klassifikation wurden 1000 Daten je Klasse erzeugt.  Davon wurden 80% für das Training und 20% für den Test verwendet. Zudem standen ca. 1700 reale Testdaten mit unausgewogener Klassenverteilung zur Verfügung. Dabei muss erwähnt werden, dass Augmentationstechniken, wie Strecken, Verzerren und Überlagern von Segmenten angewandt wurden, um zu gewährleisten, dass mindestens 20 reale Testdaten je Klasse zur Verfügung standen.

Für die Klassifikation wurden zwei Klassifikatoren ausgewählt. Zum einen wurde ein k-Nearest-Neighbor Klassifikator in Kombination mit einem Sequential-Forward-Selection-Verfahren verwendet und zum anderen ein Random-Forest Klassifikator. Da Random-Forest für den vorliegenden Anwendungsfall eine höhere Klassifikationsgüte liefert, werden im Folgenden die Ergebnisse der Klassifikation mittels Random-Forest dargelegt.

Tabelle 1: Ergebnisse der Klassifikation mit Random Forest.

Ergebnisse der Klassifikation mit Random-Forest

 

Korrektklassifizierungsrate

Makro-  F1-Maß

Synthetische Testdaten

0,996

0,996

Reale Testdaten

0,986

0,971

 

 

 

 

 

In Tabelle 1 ist die Korrektklassifizierungsrate und der Makro-Durchschnitt des F1-Maßes der Klassifikation auf den synthetischen und realen Testdaten dargelegt. Der Makro-Durchschnitt des F1- Maßes wurde aufgrund der unausgewogenen Klassenverteilung der realen Daten herangezogen.

 

Abbildung 6: Konfusionsmatrix der Klassifikation auf den synthetischen Testdaten.

Insgesamt kann festgehalten werden, dass Random-Forest sowohl auf den synthetischen als auch auf den realen Testdaten sehr wenige Fehler macht. Um herauszufinden wie die Fehler zustande kommen, bietet es sich an, die entsprechenden Konfusionsmatrizen zu betrachten.

In Abbildung 6 ist die Konfusionsmatrix der Klassifikation auf den synthetischen Testdaten dargestellt.  Dabei wird deutlich, dass der Großteil der Fehlklassifizierungen auf die Unterscheidung der Längen bei überlagerten Kratzern zurückzuführen ist (rot markierte Einträge). Das kann damit begründet werden, dass kein verwendetes Merkmal die Länge der Kratzer exakt repräsentiert. Daher ist es nachvollziehbar, dass es insbesondere dann zu Fehlern kommen kann, wenn ein Defekt aus mehreren Kratzern besteht und wenn sich die Längen der Kratzer in der Nähe der 2 mm – Grenze befinden.

Abbildung 7: Konfusionsmatrix der Klassifikation auf den realen Testdaten

In Abbildung 7 ist die Konfusionsmatrix der Klassifikation auf den realen Testdaten dargestellt. Dabei fällt zunächst auf, dass keine Fehler gemacht werden, welche auf die Unterscheidung der Längen zurückzuführen sind.  Dies kann damit begründet werden, dass die Länge der Kratzer bei den realen Daten selten in der Nähe der 2mm – Grenze liegen. Zudem fällt bei Betrachtung der Konfusionsmatrix auf, dass bei einigen Überlagerungen von Kratzern lediglich ein Kratzer erkannt wird (gelb markierte Einträge). Dabei werden vor allem Instanzen der Klasse ÜMW mit anderen Klassen verwechselt. Bei Betrachtung der fehlklassifizierten Defekte der Klasse ÜMW fällt auf, dass Fehlklassifizierungen vor allem dann auftreten, wenn die Länge eines Wischers gegenüber der Länge eines anderen Wischers dominiert, wenn beide überlagerten Wischer sehr kurz sind, oder wenn sich die Wischer nicht mittig überschneiden, sondern in der Nähe der Wischer Enden.  Daher liegt es nahe den Erstellungsalgorithmus im nächsten Schritt anzupassen, sodass vermehrt Überlagerungen von Wischern erzeugt werden, die den fehlklassifizierten Defektsegmenten ähneln. Somit könnte die Korrektklassifizierungsrate weiter angehoben werden.

Zusammenfassung und Ausblick

Zusammenfassend kann festgehalten werden, dass Random-Forest sowohl auf den synthetischen als auch auf den realen Daten eine hohe Klassifikationsgüte liefert. Um eine verlässliche Aussage über die Leistungsfähigkeit auf den realen Daten zu erhalten, müssen jedoch deutlich mehr reale Daten gesammelt werden. Zudem muss berücksichtigt werden, dass die realen Daten mit Hilfe von Augmentationstechniken erweitert wurden, um den realen Testdatensatz zu erweitern. Dies kann die Aussagekraft der Ergebnisse beeinflussen. Das im Vorfeld definierte Ziel, die Nutzung des Einsatzes synthetischer Trainingsdaten für diesen Anwendungsfall zu untersuchen wurde dennoch erreicht. Der Einsatz synthetischer Daten ist sinnvoll, denn in der Arbeit wurde eine Methodik aufgezeigt, mit der beliebig viele gekennzeichnete Trainingsdaten synthetisch erzeugt werden können. Zudem liefert Random-Forest vielversprechende Ergebnisse auf den realen Testdaten und es gibt weiterhin Möglichkeiten, um die Klassifikationsgüte anzuheben. Beispielsweise kann der Erstellungsprozess für die synthetischen Daten angepasst werden, damit vermehrt Daten erzeugt werden, welche den fehlklassifizierten Daten ähneln oder es könnte ein hybrider Trainingsdatensatz bestehend aus synthetischen und realen Daten verwendet werden.

Liegt in Zukunft ein Klassifikationsverfahren mit ausreichender Leistungsfähigkeit vor, so wäre beispielsweise ein teilautomatisiertes Prüfsystem denkbar, wobei alle Defekte automatisch ausgewertet werden, bis auf die Überlagerungen mit mindestens einem langen Kratzer.

 

Referenzen (Auswahl)

DIN (2017). Optik und Photonik - Erstellung von Zeichnungen für optische Elemente und Systeme - Teil 7: Oberflächenunvollkommenheiten (ISO 10110-7:2017). Beuth Verlag GmbH.

Neubecker, R. und Hon, J. (2016). Automatic Inspection for Surface Imperfections: Requirements, Potentials and Limits. In Third European Seminar on Precision Optics Manufacturing, Band 10009, Seite 1000907. International Society for Optics and Photonics.

Raschka, S. und Mirjalili, V. (2018). Machine Learning mit Python und Scikit-Learn und TensorFlow: Das umfassende Praxis-Handbuch für Data Science, predictive Analytics und Deep Learning. MITP, Frechen, 2018. Auflage.

Schöch, A., Perez, P., Linz-Dittrich, S., Bach, C., und Ziolek, C. (2018). Automating the Surface Inspection on small Customer-specific optical Elements. In Optics, Photonics, and Digital Technologies for Imaging Applications, Band 10679, SeiteInternational Society for Optics and Photonics.

Viquerat, J. und Hachem, E. (2020). A supervised Neural Network for Drag Prediction of arbitrary 2D Shapes in laminar Flows at low Reynolds Number. Computers and Fluids, 210:104645.

Ansprechpartner

Dieses Bild zeigt Norbert Haala

Norbert Haala

apl. Prof. Dr.-Ing.

Stellvertretender Institutsleiter

Zum Seitenanfang