ошибка pytesseract Ошибка Windows [Ошибка 2]

Привет, я пытаюсь использовать библиотеку python pytesseract для извлечения текста из изображения. Пожалуйста, найдите код:

from PIL import Image
from pytesseract import image_to_string
print image_to_string(Image.open(r'D:\new_folder\img.png'))

Но пришла следующая ошибка:

Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "C:\Python27\lib\site-packages\pytesseract\pytesseract.py", line 161, in image_to_string
config=config)
File "C:\Python27\lib\site-packages\pytesseract\pytesseract.py", line 94, in run_tesseract
stderr=subprocess.PIPE)
File "C:\Python27\lib\subprocess.py", line 710, in __init__
errread, errwrite)
File "C:\Python27\lib\subprocess.py", line 958, in _execute_child
startupinfo)
WindowsError: [Error 2] The system cannot find the file specified

Я не нашел конкретного решения для этого. Может ли кто-нибудь помочь мне, что делать. Что-нибудь еще, чтобы скачать или откуда я могу скачать это и т.д..

Заранее спасибо :)


person Sourajit Roy Chowdhury    schedule 14.01.2017    source источник


Ответы (4)


У меня была такая же проблема, и я быстро нашел решение, прочитав этот пост:

OSError: [Errno 2] Нет такого файла или каталога, использующего питессер

Просто нужно адаптировать его под Windows, заменив следующий код:

tesseract_cmd = 'tesseract'

с:

tesseract_cmd = 'C:\\Program Files (x86)\\Tesseract-OCR\\tesseract'

(нужно удвоить \\, чтобы избежать первого \ в строке)

person Fabien    schedule 18.01.2017

Вы получаете исключение, потому что подпроцесс не может найти двоичные файлы (исполняемый файл tesser).

Установка состоит из 3 шагов:

1.Загрузите/установите библиотеки/двоичные файлы системного уровня:

Для различных ОС здесь справка. Для MacOS вы можете установить его напрямую с помощью brew.

Установите Google Tesseract OCR (дополнительная информация, как установить движок на Linux, Mac OSX и Windows). Вы должны иметь возможность вызывать команду tesseract как tesseract. Если это не так, например, из-за того, что tesseract отсутствует в вашем PATH, вам придется изменить переменную «tesseract_cmd» в верхней части tesseract.py. В Debian/Ubuntu вы можете использовать пакет tesseract-ocr. Для пользователей Mac OS. пожалуйста, установите доморощенный пакет tesseract.

Для Windows:

Установщик старой версии 3.02 доступен для Windows на нашей странице загрузки. Это включает в себя данные обучения английскому языку. Если вы хотите использовать другой язык, загрузите соответствующие обучающие данные, распакуйте их с помощью 7-zip и скопируйте файл .traineddata в каталог «tessdata», возможно, C:\Program Files\Tesseract-OCR\tessdata.

Чтобы получить доступ к tesseract-OCR из любого места, вам может потребоваться добавить каталог, в котором находятся двоичные файлы tesseract-OCR, к переменным пути, возможно, C:\Program Files\Tesseract-OCR.

Можно загрузить .exe из здесь.


2.Установите пакет Python.

pip install pytesseract

3.Наконец, вам нужно иметь двоичный файл tesseract в вашем PATH.

Или вы можете установить его во время выполнения:

import pytesseract

pytesseract.pytesseract.tesseract_cmd = '<path-to-tesseract-bin>'

Для Windows:

pytesseract.pytesseract.tesseract_cmd = 'C:/Program Files (x86)/Tesseract-OCR/tesseract'
  • Приведенная выше строка заставит его работать временно, для постоянного решения добавьте tesseract.exe к PATH, например PATH=%PATH%;"C:\Program Files (x86)\Tesseract-OCR".

  • Кроме того, убедитесь, что переменная среды TESSDATA_PREFIX Windows установлена ​​в каталог, содержащий каталог tessdata. Например:

    TESSDATA_PREFIX=C:\Program Files (x86)\Tesseract-OCR

то есть местоположение tessdata: C:\Program Files (x86)\Tesseract-OCR\tessdata


Ваш пример:

from PIL import Image
import pytesseract

pytesseract.pytesseract.tesseract_cmd = 'C:/Program Files (x86)/Tesseract-OCR/tesseract'
print pytesseract.image_to_string(Image.open(r'D:\new_folder\img.png'))
person Nabeel Ahmed    schedule 26.09.2017

На вашем компьютере должен быть установлен механизм распознавания текста Tesseract («Tesseract.exe»). Если путь не настроен на вашем компьютере, укажите полный путь в pytesseract.py(tesseract.py).

README

Установите Google Tesseract OCR (дополнительная информация, как установить движок на Linux, Mac OSX и Windows). Вы должны иметь возможность вызывать команду tesseract как tesseract. Если это не так, например, из-за того, что tesseract отсутствует в вашем PATH, вам придется изменить переменную «tesseract_cmd» в верхней части tesseract.py. В Debian/Ubuntu вы можете использовать пакет tesseract-ocr. Для пользователей Mac OS. пожалуйста, установите доморощенный пакет tesseract.

Другой поток

person Abdul    schedule 22.09.2017

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

pip install pytesseract
sudo apt-get update
sudo apt-get install pytesseract-ocr

Надеюсь, это сработает..

person pankaj pundir    schedule 28.06.2018