Folgendes habe ich für einen Kunden getan (Was Sie fragen, ist dasselbe).
Angenommen, Sie haben Zugriff auf einen bestimmten Mustertyp im Bild (oder in der Mitte des Lochs), können Sie die Vorlage jederzeit erkennen, um die Position eines möglichen Unwarps zu ermitteln:
Beachten Sie, dass im transformierten Bild zwei Bereiche von Interesse definiert sind und der Bereich, in dem wir die Zeichen lesen möchten, der Torus ist, der zwischen zwei Kreisen liegt. Mit diesen Informationen könnten wir dieses Bild mithilfe einer inversen Polartransformation verziehen, um Folgendes zu erhalten:
Ich stelle auch den MATLAB-Code für diese Transformation in diesem Dateiaustauschbeitrag zur Verfügung .
Im nächsten Schritt liegen die zu lesenden Zeichen dank der Vorlagenübereinstimmung immer in der im obigen Bild definierten lokalen Region. Wenn Sie nun über eine angemessene Beleuchtung verfügen, ist die Zeichensegmentierung nichts anderes als ein trivialer Satz von Bildverarbeitungsvorgängen:
Die erhaltenen verbundenen Komponenten werden schließlich in ein neuronales Netzwerk oder eine SVM eingespeist, um zuerst zu trainieren und dann zu klassifizieren. Dieser Teil besteht nur aus einer grundlegenden maschinellen Lernaufgabe, auf die ich hier nicht näher eingehen werde.
Vergessen Sie nicht, gut auf die Beleuchtung zu achten, da das Problem fast zur Hälfte gelöst ist.