Bessere Zeichenerkennung dank Deep Learning

Bessere Zeichenerkennung dank Deep Learning

OCR spielt eine wichtige Rolle bei der Identifikation von Objekten in industriellen Produktions- und Logistikprozessen. In der neuen Halcon-Version steht nun mit Deep OCR ein neues Feature zur Verfügung, das die Zeichenerkennung mit Hilfe von Deep Learning optimiert. Durch die automatische Gruppierung von Zeichen können auch ganze Wörter identifiziert werden.

Mit Deep OCR ist in Halcon erstmalig ein ganzheitlich Deep-Learning-basierter OCR-Ansatz verfügbar, mit dem Texte unabhängig von Orientierung, Schrifttyp und Polarität im Bild gefunden werden können. (Bild: MVTec Software GmbH)


Die optische Zeichenerkennung (OCR: Optical Character Recognition) ist nicht nur in der Bürokommunikation, wie etwa bei der textlichen Erfassung gescannter Dokumente, von Bedeutung. Auch im industriellen Umfeld spielt die Technologie eine wichtige Rolle. Beispielsweise lassen sich aufgedruckte Seriennummern erfassen und automatisch auslesen, um Produkte im Warenfluss sicher zu identifizieren und nachzuverfolgen. Dabei muss die OCR-Software auch unter rauen Industriebedingungen Zahlen- oder Buchstaben-Codes präzise lesen, um die Objekte eindeutig zuordnen zu können. So müssen auch schwer leserliche, verzerrte, verschwommene, unscharfe oder schräg gestellte Zeichen zuverlässig erkannt werden, auch auf stark reflektierenden Hintergründen. Mit modernen Machine-Vision-Technologien lassen sich diese hohen Anforderungen sehr gut abdecken. Dank integrierter Funktionen auf Basis von künstlicher Intelligenz (KI) werden hiermit passable Erkennungsraten erreicht. Dabei bietet sich insbesondere Deep Learning an, um anspruchsvolle OCR-Aufgaben anzugehen. Durch ein umfassendes Training anhand großer Mengen von Bilddaten lernen die Software-Algorithmen eigenständig, eine große Bandbreite an Schriftzeichen unter verschiedensten Bedingungen sicher zu erkennen. OCR-Klassifikatoren sorgen dafür, dass sich zahlreiche, vortrainierte Schriftarten wie Dot-Print-, SEMI-, industrielle und dokumentenbasierte Fonts präzise lesen lassen. Allerdings haben herkömmliche, regelbasierte OCR-Technologien einige Schwächen. So gibt es zahlreiche Parameter, mit denen vor allem die Segmentierung einzelner Buchstaben der jeweiligen Applikation angepasst werden muss. Im Nachgang müssen die dann gefundenen und einzeln gelesenen Buchstaben bestimmten Wörtern zugeordnet werden. Kein einfaches Unterfangen, wenn der Kontext des zu lesenden Textes nicht bekannt ist. So liefern konventionelle Lösungen noch nicht die Erkennungsergebnisse, die mit KI möglich wären.

Deep OCR liest Dot-Print und gruppiert zusammengehörende Zeichen automatisch. (Bild: MVTec Software GmbH)

OCR unabhängig von Schrifttyp & Rotation

Mit dem Feature Deep OCR, das in die aktuelle Version 20.11 der Machine-Vision-Standardsoftware Halcon integriert ist, bedarf es keiner Segmentierung einzelner Zeichen mehr. Die Technologie nutzt zwei spezifisch vortrainierte Deep-Learning-Netze: Eines dient dazu, komplette Wörter anstatt einzelne Buchstaben im Bild zu finden. Als Ergebnis wird die genaue Position des jeweiligen Wortes mit einem umschließenden Rechteck (Bounding Box) gekennzeichnet. Das zweite Netz hingegen ist speziell auf das Lesen des Wortes trainiert. Der wesentliche Unterschied zu herkömmlichen Verfahren besteht darin, dass beide Schritte der Zeichenerkennung – also das Finden sowie das Lesen der Wörter – auf Deep-Learning-Algorithmen basieren und ganze Wörter anstatt einzelner Buchstaben gelesen werden. Der große Vorteil dieses dualen Ansatzes: Es müssen nur wenige Parameter an die jeweilige Applikation angepasst werden. So arbeitet die Technologie völlig unabhängig vom Schrifttyp, gleich ob Dot-Print-, Kursivschrift oder Schlagzahlen. Auch die Rotation und Ausrichtung des Textes im Bild sowie die Polarität – also ob schwarze Zeichen auf weißem Hintergrund oder umgekehrt – spielen keine Rolle. Denn hinsichtlich dieser Parameter wurde das Netz bereits trainiert, sodass keine entsprechenden Einstellungen mehr manuell vorzunehmen sind. Dabei lassen sich die beiden Netze auch unabhängig voneinander nutzen. Dies macht beispielsweise Sinn, wenn die genaue Position des jeweiligen Wortes im Bild bereits bekannt ist. Dann kann Deep Learning ausschließlich für das Lesen des Textes verwendet werden, womit sich massiv Rechenkapazität einsparen lässt. Dies ist insbesondere dann von Bedeutung, wenn Deep OCR auf einer weniger performanten Hardware läuft. Kann aufgrund von Vorinformation auf das Finden des Textes verzichtet werden, lässt sich auf einer Standard-CPU eine Ausführungszeit von etwa 10ms realisieren. Auf einer Midrange-GPU beträgt die Laufzeit sogar nur 5ms, was für eine Deep-Learning-Anwendung sehr schnell ist.

MVTec Software GmbH

Das könnte Sie auch Interessieren