| MVTec

DEEP OCR RECOGNITION TRAINING – THE NEXT LEVEL

HALCONs Deep OCR ist sehr leistungsfähig und kann Text in verschiedenen Industrieszenen erkennen und wiedergeben. Was aber, wenn Sie eine spezielle Schriftart haben oder fremde Zeichen lesen wollen? Mit HALCON 22.05 ist es möglich, das Erkennungsmodell zu trainieren, um ein spezielles Alphabet oder eine spezielle Schriftart zu lesen und die Leistung von Deep OCR so zu steigern, dass es genau zu Ihrer Anwendung passt.

Wie Sie bereits wissen, benötigen Sie für jedes Training zunächst einen Datensatz. Wie können Sie einen geeigneten Deep OCR-Datensatz erstellen?

Ab Deep Learning Tool 22.06 können Sie die neue Funktionalität des Deep OCR Labeling nutzen. Es gibt zwei Möglichkeiten:

  • Sie können den Deep OCR-Datensatz von Grund auf neu erstellen: Initialisieren Sie einfach ein Deep OCR Projekt im Deep Learning Tool (Screenshot) und laden Sie die Bilder, die Sie beschriften möchten. Für die Beschriftung müssen Sie ein Rechteck um das Wort in der Leseausrichtung ziehen und es wird ein Text vorgeschlagen, den Sie korrigieren oder bestätigen können (Screenshot).
  • Alternativ können Sie auch das Standardbeispiel deep_ocr_prelabel_dataset.hdev verwenden. Es erstellt einen Datensatz auf der Grundlage der zu beschriftenden Bilder und des von der vortrainierten Deep OCR vorgeschlagenen Textes. Sie können den erstellten Datensatz (hdict-Datei) in das Deep Learning Tool 22.06 importieren und die vorgeschlagenen Beschriftungen korrigieren.

Im Allgemeinen sollten die Trainingsbilder einen repräsentativen Satz von Möglichkeiten enthalten, die während der Inferenz auftreten können. Darüber hinaus wird empfohlen, einen ausgewogenen Datensatz zu verwenden, d. h. alle Zeichen sollten in etwa gleich häufig vorkommen. Und natürlich erfordern hervorragende Ergebnisse eine gute Beschriftung. Eine gute Ground Truth Bounding Box muss wie eine Ausgabe des Deep OCR-Erkennungsmodells aussehen (Screenshot). Wenn Sie mit dem Datensatz zufrieden sind, müssen Sie den Datensatz als hdict-Datei exportieren und mit dem nächsten Schritt, dem Training, fortfahren.

Das Standardbeispiel deep_ocr_recognition_training_workflow.hdev führt Sie durch den Trainingsworkflow. Alles, was Sie tun müssen, ist, den extrahierten Datensatz in das Trainingsskript zu importieren und die Trainingsparameter anzupassen. Ein wichtiger Parameter ist die Bildbreite des Erkennungsmodells. Sie muss erhöht werden, wenn der Datensatz Bilder von Wörtern mit vielen Zeichen enthält. Bitte beachten Sie, dass Sie umso mehr Trainingsdaten benötigen, je mehr die Einstellung von ImageWidth von der Standardeinstellung (120) abweicht, da das trainierte Modell mit der Standardbreite trainiert wurde. Es ist daher ratsam, die Bildbreite während des Trainings nahe der Standardeinstellung (120) zu halten. Die Anzahl der Epochen muss ebenfalls auf der Grundlage des Trainingsfehlers und der Komplexität der Aufgabe angepasst werden.

Nach dem Training des Erkennungsmodells zeigt Ihnen das Standardbeispiel, wie Sie Ihr verfeinertes Modell auswerten und mit dem vortrainierten Modell vergleichen können.

Der letzte Schritt besteht darin, das optimierte Modell in Ihren Inferenzschritt zu integrieren und sich von den Ergebnissen beeindrucken zu lassen. Weitere Informationen finden Sie wie immer in der Dokumentation (Solutions Guide I Kapitel 19.2).