2016-03-26 12 views
4

Hallo ich versuche Tesserakts für eine neue Schriftart zu trainieren, basierend auf den folgenden Stellen: digits with transparent backgroundTesseract Training - neue Schriftart mit nur Ziffern

alle Ziffern in einer PNG-Datei mit transparentem Hintergrund zur Verfügung gestellt. Wenn ich daraus eine Box-Datei erstelle, trainiere und so weiter - alles funktioniert gut!

Nun ist das Problem, gleiche Situation, aber ich möchte tesseract auf dem folgenden Bild trainieren basiert: digits without transparent background

, wie Sie die Ziffern genau sowie die Positionen gleich sind zu sehen und so weiter. Der einzige Unterschied zu Bild 1 ist, dass ich einen gelben Hintergrund verwendete und von nun an nichts mehr funktioniert. Ich erstelle eine Box-Datei i die gleichen Positionen wie für das erste Bild gesetzt:

0 5 4 20 22 0 
1 27 4 38 21 0 
2 48 4 60 22 0 
3 71 3 83 22 0 
4 94 5 109 22 0 
5 119 5 131 22 0 
6 143 5 157 22 0 
7 172 5 184 22 0 
8 197 5 211 23 0 
9 224 5 238 22 0 

gut und dann habe ich die Box ausgebildet, aber die resultierende .tr Datei ist völlig leer i hier nicht hinderte und abgeschlossen alle anderen Schritte. Die resultierende Schriftart kann nicht verwendet werden!

Also meine Frage ist, wie Tesseract zu erkennen, diese Ziffern egal welchen Hintergrund für sie verwendet wird?

bearbeiten 2016.04.16:

benutzte ich ImageMagick die Bilder vorverarbeitet und ich fand einen Befehl, der für alle Arten von Hintergründen sehr gut funktioniert. Also wollte ich Tesseract für diese erstellten Bilder trainieren, aber es funktioniert nicht so, wie ich dachte, es würde .... Zuerst erstellte ich Box-Dateien, wo die meisten leer waren. Nun, ich benutzte eine Website, um die Charakterpositionen zu organisieren, und ich verbrachte viel Zeit, um den Cropping perfekt zu machen! Danach erstellte ich die resultierenden .tr-Dateien und machte auch die anderen Sachen, um Tesseract zu trainieren.

Endlich habe ich die „traineddata“, zog ich die Datei in das „tessdata“ Verzeichnis von tesseract und verwenden es, wie es verwendet werden soll:

tesseract example.jpg output -l mg 

(i die neue Schriftart „mg“ genannt)

Okay, was auch immer es nicht alle oder die meisten von ihnen erkennt! Ich habe diesen Thread geöffnet, um Hilfe zu finden, bis jetzt hat niemand wirklich eine Ahnung wie man das macht, leider .... Bitte hilf mir.

Die ganze Tesserakts Trainingsdateien, die ich verwendet, und erstellt, kann u finden Sie hier:

Tesseract training directory (wie kein zip/nicht komprimiert -> Ansicht aller Dateien des Verzeichnisses)

+0

Vielleicht OT, aber Sie könnten vorprozessieren, um die Hintergrundfarbe zu entfernen. – xvan

Antwort

1

Sie ändern können ein beliebiges Farbbild zu einem Binärbild und benutze dann tesseract darauf, auf diese Weise, egal welche Farbe du verwendest, wirst du immer dasselbe Ergebnis haben.

Verwandte Themen