Непоследовательный Pytesseract - PullRequest
0 голосов
/ 22 апреля 2020

У меня есть каталог, полный изображений, и я хочу извлечь значение из его части.

Я не буду беспокоить вас попытками извлечь точное положение текста из исходного изображения. Это просто свернутая функция.

Вот пример ее работы:

Извлеченный текст (на самом деле это массив numpy T / F, сохраненный как изображение с matplotlib imsave (имя, изображение, cmap = 'grey')):

Extracted Text

Если я сейчас запусту

pytesseract.image_to_string(image2)

или

pytesseract.image_to_string(image2,config="--psm 7")

результат равен '3 000 x', как и ожидалось.

Вот пример его сбоя:

Извлеченный текст (это на самом деле numpy массив T / F, сохраненный как изображение с помощью matplotlib imsave (name, image, cmap = 'grey')):

imageText

Если я сейчас запусту

pytesseract.image_to_string(image2)

или

pytesseract.image_to_string(image2,config="--psm 7")

, то получится 'i imol els 4'

Мне кажется странным, что была бы такая большая разница для такого похожего процесса. Существуют ли параметры, помогающие pytesseract, например, ожидаемый размер символов, формат и т. Д. c?

PS: Мое текущее решение этой проблемы - использовать функцию свернутой, сравнивая ее с каталог сэмплов, которые я уже прочитал вручную (мой личный OCR лучше, хотя и медленнее, чем pytesseract!). Этого вполне достаточно, но было бы неплохо иметь дополнительный уровень автоматизации!

1 Ответ

1 голос
/ 23 апреля 2020

Я инвертирую ваш образ и затем запускаю эту команду.

tesseract hluZr.png stdout -l eng --oem 3 --psm 6
1508 x
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...