python-tesseract OCR: получать только цифры

Я использую тессеракт OCR с python-тессерактом. В FAQ по тессеракту относительно цифр имеем:

использование

TessBaseAPI::SetVariable("tessedit_char_whitelist", "0123456789");

ПЕРЕД вызовом функции Init или поместите ее в текстовый файл с именем tessdata/configs/digits:

tessedit_char_whitelist 0123456789

и тогда ваша командная строка становится:

tesseract image.tif outputbase nobatch digits

Предупреждение: пока старые и новые переменные конфигурации не будут объединены, у вас также должен быть параметр nobatch.

В python-tesseract метод SetVariable существует. Я пробовал это, но результат OCR такой же:

api = tesseract.TessBaseAPI()
api.SetVariable("tessedit_char_whitelist", "0123456789")
api.Init('.','eng',tesseract.OEM_DEFAULT)
api.SetPageSegMode(tesseract.PSM_AUTO)

Кто-нибудь уже получил это работает, или я должен считать это ошибкой в ​​python-tesseract?

1 ответ

Решение

ОК, все заработало. В соответствии с этой (неофициальной?) Документацией tesseract-ocr, SetVariable() должен вызываться после Init(), даже если об этом говорится в официальном FAQ. Вызов его после Init () работает как задумано.

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