Проблемы с запуском pytesseract в скрипте

Я пытаюсь использовать pytesseract в своем скрипте Python для считывания строки текста на изображении, но продолжаю получать ошибки. Я сейчас пробую этот код:

try:
    import Image
except ImportError:
    from PIL import Image
import pytesseract

pytesseract.pytesseract.tesseract_cmd = 'C:\\Program Files 
(x86)\\Tesseract-OCR\\tesseract'
# Include the above line, if you don't have tesseract executable in 
#your PATH
# Example tesseract_cmd: 'C:\\Program Files (x86)\\Tesseract-
#OCR\\tesseract'

# Simple image to string
print(pytesseract.image_to_string(Image.open('IMG_9296.jpg')))

Файл IMG_9296.jpg находится на моем рабочем столе: ~/Desktop. У меня уже установлены tesseract и pytesseract, так как ввод tesseract в мою командную строку возвращает информацию об этом. Когда я ввожу pip install pytesseract в свою командную строку, я получаю ответ:

Requirement already satisfied: pytesseract in /Library/Python/2.7/site-packages
Requirement already satisfied: Pillow in /Library/Python/2.7/site-packages (from pytesseract)

Итак, я предполагаю, что /Library/Python/2.7/site-packages - это мой путь к pytesseract, поэтому я попытался вставить это для pytesseract.pytesseract.tesseract_cmd, но это не сработало. В любом случае я получаю эту ошибку (я думаю, из строки import pytesseract):

ValueError: Attempted relative import in non-package

Нужно ли мне вводить другой путь или куда-то перемещать/копировать pytesseract? Я не совсем понимаю, что происходит.


person curious_cosmo    schedule 09.03.2018    source источник
comment
PIL и подушка разные - возможно, ваша ошибка импорта связана с PIL?   -  person Adnan S    schedule 10.03.2018


Ответы (1)


Сначала проверьте в командной строке, введя код

!pip view pytesseract

Если он возвращает некоторую информацию, это означает, что она есть в вашей системе, вам также необходимо просмотреть модуль PIL.

Теперь перейдем к вашему основному вопросу:


Чтобы выполнить pytesseact, вам нужно указать путь pytesseract.pytesseract.tesseract_cmd:-
Более того, вам также необходимо указать путь, по которому находится изображение.
Итак, что вы можете сделать, как показано ниже

import pytesseract
import cv2

import os os.chdir(FullPath_where_your_"tesseract.exe" находится)

image = cv2.imread('full_path_of_your_image')
pytext = pytesseract.image_to_string(изображение)
print(pytext)


Дайте мне знать, если это не работает

Удачного обучения !!

person Jitesh Vacheta    schedule 18.09.2018