2010-04-14 9 views
5

Ich bin sehr neu in OCR und weiß fast nichts über die Algorithmen zur Erkennung von Wörtern. Ich werde mich gerade erst daran gewöhnen.Was ist die typische Methode, um verbundene Buchstaben in einem Wort mit OCR zu trennen

Könnte jemand bitte auf die typische Methode zur Erkennung und Trennung einzelner Zeichen in verbundener Form hinweisen (ich meine in einem Wort, wo alle Buchstaben miteinander verbunden sind)? Vergessen Sie die Handschrift, wenn man annimmt, dass die Buchstaben mit einer bekannten Schriftart verbunden sind. Was ist die beste Methode, um jedes einzelne Zeichen in einem Wort zu bestimmen? Wenn Zeichen getrennt geschrieben werden, gibt es kein Problem, aber wenn sie zusammengefügt werden, sollten wir wissen, wo jedes einzelne Zeichen beginnt und endet, um zum nächsten Schritt zu gehen und sie individuell mit einem Buchstaben zu vergleichen. Gibt es einen bekannten Algorithmus dafür?

Antwort

3

Der Standardbegriff für diesen Prozess ist "Zeichensegmentierung" - Segmentierung ist der Bildverarbeitungsbegriff für das Aufteilen von Bildern in gruppierte Bereiche für die Erkennung. "Arabische Zeichensegmentierung" throws up a lot of hits in google scholar wenn Sie mehr erfahren möchten.

Ich würde Sie ermutigen, sich Tesseract - an open source OCR implementation, vor allem the documents.

Feature wie in the glossary definiert hat ein bisschen darauf, aber es gibt eine Tonne Informationen hier.

Grundsätzlich löst Tesseract das Problem (von How Tesseract Works) durch Blobs (keine Buchstaben) und dann diese Blobs in Worte zu kombinieren. Dies vermeidet das von Ihnen beschriebene Problem und schafft gleichzeitig neue Probleme.

Für arabisch (wie Sie darauf hinweisen) Tesseract funktioniert nicht. Ich weiß nicht viel über dieses Gebiet, aber this paper scheint zu implizieren Dynamic Time Warping (DTW) ist eine nützliche Technik. Dies versucht, die Wörter so zu strecken, dass sie mit bekannten Wörtern übereinstimmen, und arbeitet wieder im Wort statt im Buchstabenraum.

+0

Tesseract ist wahrscheinlich nicht in der Lage, verbundene Skripte wie Arabisch zu behandeln. Es braucht einige spezialisierte Algorithmen, um diesen Fall zu behandeln, und im Moment hat er sie nicht. code.google.com/p/tesseract-ocr/wiki/TrainingTesseract – Meysam

+0

Fair genug. Ich nahm an, du sprichst davon verbundenes Englisch (ir Cursive). Hoffentlich sind die Ideen aber nützlich. Ich werde eine weitere Antwort für Arabisch hinzufügen. –

Verwandte Themen