Python Tesseract не может распознать этот шрифт

У меня есть это изображение:

alt text

Я хочу прочитать его в строке с использованием python, и я не думаю, что это будет сложно. Я наткнулся на tesseract, а затем на оболочку для скриптов python, используя tesseract.

Итак, я начал читать изображения, и это здорово, пока я не попытался прочитать это. Мне нужно научить его читать этот конкретный шрифт? Любые идеи о том, что это за конкретный шрифт? Или есть лучший двигатель ocr, который я мог бы использовать с python, чтобы выполнить эту работу.

Изменить: Возможно, я мог бы сделать какой-то вектор вокруг чисел, а затем перерисовать их в большем размере? Чем больше изображений, тем лучше tesseract ocr, кажется, читает их (неудивительно, что LOL).

Ответ 1

Просто тренируйте двигатель на 10 цифр и "."., Это должно сделать это. И убедитесь, что вы изменили изображение в оттенках серого, прежде чем открывать его.

Ответ 2

Обучение тяжелое, и это не то, что действительно нужно здесь. Различие между O и 0 и l и 1 будет сложным, независимо от script. Ограничение OCR для выбора только между численными цифрами значительно упрощает проблему, если контекст позволяет это.

Мой интерес к tesseract заключается в обработке большого количества номеров, из старых правительственных отчетов. В этом случае и в рассматриваемом случае набор символов будет примерно таким же, как "0123456789". Следуя комментарию в старой (sourceforge) новостной группе для tesseract, с помощью eric_taj в 2007-03-21, вы можете изменять Шаблоны- > ИндексFor и Шаблоны- > ClassIdFor в classify/intproto.cpp для маскировки символов, которые не могут быть разрешены, Я изменил этот подход немного, чтобы прочитать допустимый набор символов во время выполнения в переменной среды, чтобы я мог настроить разрешенный набор на лету.

Ответ 3

В последнее время в группе обсуждения tesseract OCR было много трафика. Вам нужно будет использовать "язык" только чисел. Многие люди уже тренировали двигатель раньше. Похоже, вы пытаетесь перехитрить схему защиты данных captcha... tsk, tsk.

Ответ 4

Признание маленького шрифта экрана может быть затруднено для OCR общего назначения, которое оптимизировано для чтения большого гладкого шрифта, отсканированного на бумаге.

Лучше попробовать специальный снимок экрана OCR Textract SDK. Он будет собирать все локальные шрифты и обеспечивать 100% точное распознавание, просто сопоставляя символ с символом.

Ответ 5

Это похоже на шрифт Eurostile. Да, вам придется тренироваться с каждым шрифтом, который используется в ваших исходных изображениях.