2014-01-10 9 views
6

Я пытаюсь следовать этому примеру pytesser (link) в Mac Maverick.image_to_string не работает в Mac

>>> from pytesser import * 
>>> im = Image.open('phototest.tif') 
>>> text = image_to_string(im) 

Но, в последней строке я получаю сообщение об ошибке:

Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
    File "pytesser.py", line 31, in image_to_string 
    call_tesseract(scratch_image_name, scratch_text_name_root) 
    File "pytesser.py", line 21, in call_tesseract 
    proc = subprocess.Popen(args) 
    File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/subprocess.py", line 711, in __init__ 
    errread, errwrite) 
    File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/subprocess.py", line 1308, in _execute_child 
    raise child_exception 
OSError: [Errno 2] No such file or directory 

Но я не понимаю, что я должен делать. Файл phototest находится в той же папке, в которой я запускаю скрипт. Как это исправить?

UPDATE:

Когда я пытаюсь

brew install tesseract 

Я получаю эту ошибку:

Warning: It appears you have MacPorts or Fink installed. 
Software installed with other package managers causes known problems for 
Homebrew. If a formula fails to build, uninstall MacPorts/Fink and try again. 
Error: You must `brew link libtiff libpng jpeg' before tesseract can be installed 
+0

Похоже, ваш сценарий имеет проблемы запуская процесс ... и, похоже, с той же проблемой, описанной в https://code.google.com/p/pytesser/wiki/ README В дистрибутив входит исполняемый файл Windows, и это не будет работать на Mac. Как упоминалось в Linux, вы, вероятно, должны будете предоставить исполняемый файл tessact. – Luis

+0

Получил это. Но могу ли я это сделать? –

+0

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

ответ

8

я на самом деле имел ту же ошибку, как и вы, что, как я нашел этот пост. У меня также есть решение моей проблемы, потому что вы дали ее мне!

Я видел:

ryan.davis$ python tesseract.py 
Traceback (most recent call last): 
    File "tesseract.py", line 52, in <module> 
    print (image_to_string(big)) 
    File "/usr/local/lib/python2.7/site-packages/pytesseract/pytesseract.py", line 161, in image_to_string 
    config=config) 
    File "/usr/local/lib/python2.7/site-packages/pytesseract/pytesseract.py", line 94, in run_tesseract 
    stderr=subprocess.PIPE) 
    File "/usr/local/Cellar/python/2.7.10_2/Frameworks/Python.framework/Versions/2.7/lib/python2.7/subprocess.py", line 710, in __init__ 
    errread, errwrite) 
    File "/usr/local/Cellar/python/2.7.10_2/Frameworks/Python.framework/Versions/2.7/lib/python2.7/subprocess.py", line 1335, in _execute_child 
    raise child_exception 
OSError: [Errno 2] No such file or directory 

Хотите знать, что я должен был сделать, чтобы исправить это? То, что вы пробовали: brew install tesseract Я установил библиотеку python tesseract, но не установил ее на системном уровне. Так что решает мою проблему. Как насчет твоего?

Я думаю, что вы могли бы быть отвлечен этим:

Warning: It appears you have MacPorts or Fink installed. Software installed with other package managers causes known problems for Homebrew. If a formula fails to build, uninstall MacPorts/Fink and try again.

И не заметил ваш ответ уже содержится в ответе заваривать:

You must brew link libtiff libpng jpeg before tesseract can be installed.

Так что:

brew link libtiff 
brew link libpng 
brew link jpeg 

Затем:

brew install tesseract 

Наконец:

:) 
+0

Он работает для меня Спасибо! Mac OS High Sierra, python 3 =) –

 Смежные вопросы

  • Нет связанных вопросов^_^