Hohe Erkennungsraten

Hohe Erkennungsraten

Softwaretool für schnelle und robuste Mustererkennung

Die Bildverarbeitungsbibliothek Common Vision Box (CVB) wird um das Tool Polimago erweitert, das mit einer hohen Ausführungsgeschwindigkeit robuste Erkennungsraten ermöglicht. Während des Anlernens erstellt es automatisch Tausende von Trainingsbildern, was den Aufwand für den Anwender erheblich reduziert.
Eine der Hauptaufgaben der industriellen Bildverarbeitung besteht in der Erkennung von Objekten in Bildern. Dies wird häufig mit dem Begriff Mustererkennung umschrieben und kommt in einer Vielzahl von Anwendungen zum Einsatz. Bevor ein Bauteil auf Abweichungen wie Verunreinigungen, Kratzer oder andere Mängel untersucht werden kann, muss dem verarbeitenden System jedoch die Information vorliegen, welches Bauteil genau inspiziert werden soll. Diese Information wird im Rahmen einer vorhergehenden Trainingsphase mit der Bildung eines Trainingsmodells präzise festgelegt. Im Anschluss erfolgt die Suche bzw. Erkennung des Bauteils, wobei Informationen bzgl. der Position, der Orientierung und gegebenenfalls weiterer Attribute ermittelt werden. Liegen in einem Szenenbild mehrere baugleiche Teile vor, so sind viele Systeme auch in der Lage, innerhalb eines Inspektionszyklus alle Teile unabhängig voneinander zu erfassen und deren Eigenschaften individuell auszuwerten. Wie gut bzw. robust die Mustererkennung der Bauteile funktioniert, hängt maßgeblich von der Variabilität des Trainingsmodells ab. Diese dient als ein Indikator, wie hoch die Erkennungsrate der antrainierten Bauteile auch bei variablen Konditionen liegt. Beispiele dafür sind geometrische Transformationen in Form von Drehungen, Größenänderungen und Verkippungen, aber auch Verdeckungen sowie Änderungen in der Beleuchtungssituation.

Steigende Anforderungen an Mustererkennungen

Aufgrund der Vielzahl unterschiedlicher Anforderungen im Bereich der Mustererkennung existiert eine große Zahl unterschiedlicher Werkzeuge am Markt. Ein Beispiel ist CVB Manto, das als eigenständiges Paket Bestandteil der Bildverarbeitungsbibliothek Common Vision Blox ist und speziell für die Erkennung von verschiedenartigen Bildmustern konzipiert wurde. Das Tool unterstützt den Anwender von der Erstellung von Trainingsmodellen bis hin zur Suche der Modelle in Szenenbildern. Mit dem fortschreitenden Einzug von Bildverarbeitungstechnologie in die verschiedenen Märkte sind auch die Anforderungen an die Werkzeuge der Bildverarbeitung gestiegen. Dieser Trend gilt speziell auch für die Mustererkennung. Stand bislang primär die 2D-Positionsbestimmung eines Bauteils im Vordergrund, so ermitteln neuartige Anwendungen zusätzliche Informationen wie z.B. die Orientierung und die Größe eines Bauteils. Auch rücken allgemein die räumliche Erfassung eines Bauteils und seine relative Lage zur Position der Kamera in den Fokus. Die Verfahren zur Lagebestimmung werden auch Posenschätzung genannt und sind Grundlage für Pick&Place-Anwendungen.

Antrainieren in variablen Lagen

Um auch die Lage eines Bauteils zuverlässig aus verschiedenen Perspektiven erkennen zu können, bedarf es neuartiger und leistungsfähigerer Algorithmen. Für die Trainingsphase bedeutet dies, dass ein vorliegendes Muster in all seinen variablen Lagen antrainiert werden muss, um es später in einem gegebenen Szenenbild zuverlässig erfassen zu können. Manto ermöglicht bereits die Erstellung eines Trainingsmodells auf Basis einer ausreichend großen Bildmenge, das eine robuste Klassifikation der variabel auftretenden Muster erlaubt. In Abhängigkeit von der zur Verfügung stehenden Bildmenge und der Variabilität der Muster müssen jedoch eventuell Abstriche in der Positionierungsgenauigkeit gemacht werden oder eine händische Anpassung erfolgen, was den Arbeitsaufwand steigert und deshalb nur in Ausnahmefällen zu empfehlen ist. Bei aufwändigeren Suchen kann zudem die Ausführungsgeschwindigkeit der Mustersuche in Echtzeit zum Problem werden. Daher wurde ein neuartiges Verfahren entwickelt, das speziell für die Anwendungen der Posenschätzung eine möglichst hohe Erkennungsrate erzielt.

Augenmerk auf Echtzeit

Bei Polimago handelt es sich um ein neuartiges Softwarepaket, das als Modul der bestehenden Common Vision Box-Bibliothek angeboten wird und speziell für die robuste Erkennung von Objekten aus unterschiedlichen Lagen entwickelt wurde. Weitere Ziele der Entwicklung waren eine hohe Ausführungsgeschwindigkeit – möglichst in Echtzeit. Das Tool orientiert sich an der Zwei-Schritte-Arbeitsweise eines jeden Mustererkennungswerkzeugs: Im ersten Schritt wird ein vorliegendes Muster, bestehend aus einem oder mehreren Bildern, zu einem Modell antrainiert. Der zweite Schritt umfasst die Suche des antrainierten Modells im Szenenbild. Die Ausführungszeit des Schrittes bestimmt die Geschwindigkeit, mit der die Erkennung und damit die gesamte Anwendung betrieben werden kann. Bild 1 verdeutlicht die Funktionsweise. Während der Erstellung eines Trainingsmodells extrahiert der Algorithmus Merkmale aus dem vorliegenden Datensatz, bei dem es sich um ein einzelnes Bild oder einen kompletten Satz an Trainingsbildern handeln kann. Analog zu jedem klassischen Mustererkennungsverfahren werden zunächst Merkmale aus der ursprünglichen Nulllage des Bildes gewonnen. In Bild 1 wird dies durch das grün eingezeichnete Rechteck illustriert. Mithilfe der Software wählt der Benutzer auf dem vorliegenden Trainingsbild eine lokale Pixelumgebung für das Training aus. Der Algorithmus beginnt sofort mit der Extraktion von Merkmalen, die in das Modell gespeichert werden. Das Verfahren hat somit gelernt, welcher Ausschnitt der Grafikkarte für die spätere Suche in Szenenbildern gesucht werden soll und damit für die Weiterverarbeitung relevant ist.

Künstlich generierte Ansichten

Die weiteren Arbeitsschritte des Algorithmus stellen die eigentliche Neuentwicklung dar, die konkret zwei Ziele verfolgen: Zum einen werden künstlich generierte Ansichten des Modells erstellt mit der Absicht, die verschiedenen Lagen eines Bauteils in der Realität möglichst präzise nachzubilden (In Bild 1 sind diese Ansichten mit den Farben Blau und Schwarz markiert). So kann der Algorithmus die Variabilität des vorliegenden Musters erlernen und erlangt damit formal die Fähigkeit, das Trainingsbild auch unter einer Vielzahl unterschiedlicher Ansichten zuverlässig zu erkennen. Diese Maßnahme dient der Steigerung der Erkennungsrate. Zum anderen wird für jede generierte Ansicht die aktuell vorliegende Transformation im Modell gespeichert (In Bild 1 rechts dargestellt). Im Beispiel des blauen Rechtecks wird das Trainingsbild um 30° im Uhrzeigersinn gedreht. Der Algorithmus beginnt daraufhin abermals mit der Extraktion von Merkmalen und lernt damit, wie das Trainingsbild unter dieser Transformation aussieht. Dieses Vorgehen hat noch einen weiteren Hintergrund: Jede gespeicherte Transformation, bzw. dessen Inverse, führt prinzipbedingt in Richtung der Nulllage des Trainingsbildes. Für die spätere Mustersuche bedeutet dies, dass sich die Suche, wenn sie auf die blau markierte Region trifft, mit Hilfe der inversen Transformation direkt in Richtung Nulllage weiterführen lässt. Das Fenster fungiert somit als eine Art Ankerpunkt für die Suche und bewirkt formal eine deutliche Steigerung in der Ausführungsgeschwindigkeit. Nach dem gleichen Prinzip wird mit dem in Bild 1 schwarz markierten Bildausschnitt verfahren. Das Mustertraining zusammenfassend, besteht der Umfang dieses iterativen Vorgehens formal aus der zufälligen Generierung von Trainingsbildern, die mitsamt ihrer Transformation im Modell gespeichert werden. Die Zahl der Trainingsbilder geht in die Tausende und läuft ohne Interaktion des Nutzers voll automatisch ab. Der zweite Schritt in der Funktionsweise besteht in der Suche des antrainierten Musters mit Hilfe der in Schritt eins generierten Trainingsmenge. In diesem Punkt folgt Polimago grundsätzlich dem Vorgehen von Manto und sucht das gelernte Modell im Szenenbild mittels einer gerasteten Fenstersuche ab. Eine auf Regression basierte Metrik entscheidet hierbei für jedes Suchfenster, ob eine Übereinstimmung mit dem angelernten Modell vorliegt oder nicht.

Steigerung der Ausführungsgeschwindigkeit

Die Weiterentwicklung besteht darin, dass es die im Mustertraining beschriebenen Ankerpunkte erlauben, sich mit einem deutlich gröberen Suchraster über das Bild zu bewegen. Dies wird in Bild 2 mit einem grün markierten Raster aus Fenstern illustriert. Jedes Fenster wird auf eine Übereinstimmung mit dem Model geprüft. Die Wahrscheinlichkeit, während der Fenstersuche auf eine im Training generierte Ansicht zu stoßen und sich von dieser in Richtung der gewünschten Nulllage weiterzubewegen, ist bei der Größe des Trainingsmodells derart hoch, dass die Suche sehr schnell in Richtung der Nulllage konvergiert. Bei Bild 2 trifft die Suche auf das blau markierte Fenster, das im Rahmen der vorangegangenen Trainingsphase angelernt wurde. Von diesem Fenster ausgehend kann die Suche nun mithilfe der inversen Transformation in der Nulllage fortgeführt werden. Der in Bild 1 festgelegte Ausschnitt wurde erfolgreich wiedergefunden. Das beschriebene Vorgehen führt somit zu einer Steigerung der Ausführungsgeschwindigkeit und ermöglicht den Einsatz des Verfahrens in Echtzeit-Anwendungen. Natürlich stellt sich bei diesem Vorgehen die Frage, auf welchem Niveau die zu erreichende Präzision von Polimago angesiedelt ist. Aus diesem Grund wurde bereits die Entwicklungsphase von intensiven Tests bzgl. der erreichbaren Genauigkeit begleitet. Konkret wurden die Polimago-Suchergebnisse mit dem ebenfalls für die Mustererkennung verfügbaren Tool CVB ShapeFinder verglichen. Der Algorithmus des Tools arbeitet mit einem geometrischen Pattern Matching und ist bei der Erstellung eines Trainingsmodells vornehmlich auf die Extraktion von Gradienten-Merkmalen spezialisiert. Die Merkmale des Modells werden hierbei in einen Akkumulator gespeichert, der dem Prinzip des Hough-Akkumulators aus der Hough-Transformation ähnelt. Mit Hilfe unterschiedlicher Testreihen, bestehend aus einer Vielzahl aus zufälligen, affinen Transformationen, konnte bei beiden Verfahren eine hohe Präzision nachgewiesen werden. Demnach sind beide Verfahren in der Lage, die Orientierung eines im Vorfeld antrainierten Bauteils auf unter 0,1° Grad genau zu erfassen. Ähnlich präzise zeigt sich die Positionierungsgenauigkeit, die sich auf 1/20 Pixel beläuft.

Neben der abschließenden Integration von Polimago in die Softwarebibliothek Common Vision Box werden nochmals verbesserte Werkzeuge sowohl für das Training als auch die Suche von Mustern beigefügt. Von den neuen Werkzeugen profitieren somit nicht nur Polimago, sondern auch die bestehenden Produkte CVB Minos für die Optical Charakter Recognition, sowie CVB Manto. Polimago ist ab Mitte 2015 verfügbar. Interessierte Anwender haben die Möglichkeit, für das Software-Tool eine kostenfreie 30-Tage-Testlizenz zu erwerben.

Stemmer Imaging GmbH

Das könnte Sie auch Interessieren