Wie extrahiere ich Unicode-Zeichen aus der .png-Datei?

1208
Madhav Nikam

Ich möchte Unicode-Zeichen aus JPG- und PNG-Dateien extrahieren.

Ich versuche es mit folgendem Befehl:

tesseract 1.png output.txt 

Dieser Befehl funktioniert für englische Zeichen, aber wenn ich es für Unicode wie Hindi, Marathi oder Devanagari Script versuche, führt dies zu einer falschen Ausgabe.

Gibt es eine Möglichkeit, das Unicode-Skript (Devanagari) mithilfe von OCR in eine Textdatei zu extrahieren?

3

1 Antwort auf die Frage

5
DavidPostill

Gibt es eine Möglichkeit, ein Unicode-Skript zu extrahieren?

Wenn ich es für Unicode wie Hindi, Marathi oder Devanagari Script versuche, wird die falsche Ausgabe erzeugt.

Es scheint, dass nur Hindidie Option "out of the box" unterstützt wird.

Sie müssen verwenden, um die -l langOption zu verwenden:

tesseract 1.png output.txt -l hin 

Sie können Tesseract trainieren, um andere Sprachen wie Marathioder zu erkennen Devanagari.

Siehe So verwenden Sie die bereitgestellten Tools, um Tesseract 3.0x für eine neue Sprache zu trainieren


TESSERACT (1) Handbuchseite

OPTIONEN

...

-l lang

Die zu verwendende Sprache. Wenn keine angegeben ist, wird Englisch angenommen. Es können mehrere Sprachen angegeben werden, getrennt durch Pluszeichen. Tesseract verwendet 3-stellige ISO 639-2-Sprachcodes. (Siehe SPRACHEN)

...

SPRACHEN

Derzeit sind Sprachpakete für die folgenden Sprachen verfügbar:

ara (arabisch), aze (Aserbauijani), bul (bulgarisch), katze (katalanisch), ces (tschechisch), chi_sim (vereinfachtes Chinesisch), chi_tra (traditionelles Chinesisch), chr (Cherokee), dan (dänisch), dan-frak (Dänisch (Fraktur)), deu (deutsch), ell (griechisch), eng (Englisch), enm (altes Englisch), epo (Esperanto), est (estnisch), fin (finnisch), fra (französisch), frm ( Altfranzösisch), glg (Galizisch), heb (hebräisch), hin (Hindi), hrv (Croation), hun (ungarisch), ind (indonesisch), ita (italienisch), jpn (japanisch), kor (koreanisch), lav (Lettisch), lit (litauisch), nld (niederländisch), nor (norwegisch), pol (polnisch), por (portugiesisch), ron (rumänisch), rus (russisch), slk (slowakisch), slv (slowenisch), sqi (Albanisch), spa (spanisch), srp (serbisch), swe (schwedisch), tam (Tamil), tel (Telugu), tgl (Tagalog), tha (thailändisch), tur (türkisch), ukrain (ukrainisch), vie (Vietnamesisch)

Um ein nicht standardmäßiges Sprachpaket mit dem Namen foo.traineddata zu verwenden, legen Sie die Umgebungsvariable TESSDATA_PREFIX so fest, dass die Datei unter TESSDATA_PREFIX / tessdata / foo.traineddata zu finden ist, und geben Sie Tesseract das Argument -l foo.

Quelle TESSERACT (1) Handbuchseite

greaat ..... ich wünschte, sie haben in Bahasa & Arabisch sowie ihre Sprache für die zukünftige Verwendung: D gumuruh vor 7 Jahren 0