Как извлечь символ Unicode из файла.png?

Я хочу извлечь символ Unicode из файлов.jpg и.png.

Я пытаюсь сделать это с помощью следующей команды:

tesseract 1.png output.txt

Эта команда работает для английских символов, но когда я пробую ее для Юникода, такого как хинди, маратхи или сценарий деванагари, выдает неправильный вывод.

Есть ли возможность извлечь сценарий Unicode (Devanagari) в текстовый файл с помощью OCR?

1 ответ

Решение

Есть ли возможность извлечь сценарий Unicode?

Когда я пытаюсь использовать Unicode, такой как хинди, маратхи или сценарий деванагари, получается неправильный вывод.

Похоже, что только Hindi поддерживается из коробки.

Вы должны использовать, чтобы использовать -l langопция:

tesseract 1.png output.txt -l hin

Вы можете обучить tesseract распознавать другие языки, такие как Marathi, или же Devanagari,

См. Как использовать инструменты для обучения Tesseract 3.0x для нового языка


TESSERACT(1) Страница руководства

ОПЦИИ

...

-l lang

Язык для использования. Если ничего не указано, предполагается английский. Можно указать несколько языков, разделенных символами плюса. Tesseract использует 3-х символьные коды языка ISO 639-2. (См. ЯЗЫКИ)

...

ЯЗЫКИ

В настоящее время доступны языковые пакеты для следующих языков:

ara (арабский), aze (азербайджанский), bul (болгарский), cat (каталанский), ces (чешский), chi_sim (упрощенный китайский), chi_tra (традиционный китайский), chr (чероки), дан (датский), дан-фрак (Датский (Fraktur)), deu (немецкий), ell (греческий), eng (английский), enm (древнеанглийский), epo (эсперанто), est (эстонский), fin (финский), fra (французский), frm (Старофранцузский), glg (галисийский), heb (иврит), hin (хинди), hrv (хорватский), hun (венгерский), ind (индонезийский), ita (итальянский), jpn (японский), kor (корейский), lav (Латышский), lit (литовский), nld (голландский), nor (норвежский), pol (польский), por (португальский), ron (румынский), rus (русский), slk (словацкий), slv (словенский), sqi (Албанский), spa (испанский), srp (сербский), swe (шведский), tam (тамильский), tel (телугу), tgl (тагальский), tha (тайский), tur (турецкий), ukr (украинский), ви (Вьетнамский)

Чтобы использовать нестандартный языковой пакет с именем foo.traineddata, задайте переменную среды TESSDATA_PREFIX, чтобы файл можно было найти в TESSDATA_PREFIX/tessdata/foo.traineddata, и дайте Tesseract аргумент -l foo.

Источник TESSERACT(1) Страница руководства

Другие вопросы по тегам