image_to_string ne fonctionne pas dans Mac
-
21-12-2019 - |
Question
J'essaie de suivre cet exemple de PyTesser ( lien ) dansun Mac Maverick.
>>> from pytesser import *
>>> im = Image.open('phototest.tif')
>>> text = image_to_string(im)
Mais, dans la dernière ligne, je reçois ce message d'erreur:
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
Mais, je ne comprends pas ce que je devrais faire.Le fichier phototest est dans le même dossier que j'exécute le script.Comment réparer cela?
mise à jour:
Quand j'essaie
brew install tesseract
Je reçois cette erreur:
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
La solution
J'avais vraiment la même erreur que vous, ce qui correspond à ce que j'ai trouvé ce post. J'ai aussi la solution à mon problème, car vous me l'avez donné!
Je voyais:
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
Vous voulez savoir ce que je devais faire pour résoudre ce problème? Exactement ce que vous avez essayé: brew install tesseract
J'avais installé la bibliothèque Python Tesseract, mais je ne l'avais pas installée au niveau du système. De sorte que cela résout mon problème. Que diriez-vous de vous?
Je pense que vous auriez peut-être été distrait par ceci:
AVERTISSEMENT: il apparaît que vous avez installé MacPorts ou Fink. Logiciel installé avec d'autres gestionnaires de colis provoque des problèmes connus pour Homebrew. Si une formule ne construit pas, désinstallez MacPorts / Fink et essayez encore.
et non remarqué que votre réponse a déjà été fournie dans la réponse de préparation:
Vous devez brasser le lien libtiff liblng jpeg avant que Tesseract ne puisse être installé.
Alors faire:
brew link libtiff
brew link libpng
brew link jpeg
ALORS:
brew install tesseract
Enfin:
:)