image_to_string在Mac中不起作用

时间:2014-01-10 16:27:05

标签: python ocr tesseract python-tesseract

我正试图在Mac Maverick中关注pytesser(link)的这个例子。

>>> 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位于我运行脚本的同一文件夹中。如何解决这个问题?

更新:

当我尝试

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

1 个答案:

答案 0 :(得分: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我已经安装了tesseract python库,但没有在系统级安装它。这样就解决了我的问题。你呢?

我想你可能会对此感到分心:

  

警告:您似乎安装了MacPorts或Fink。软件   与其他包管理器一起安装会导致已知问题   家酿。如果公式无法构建,请卸载MacPorts / Fink并尝试   试。

并没有注意到你的回答已在brew回复中提供:

  

你必须在tesseract之前酿造链接libtiff libpng jpeg   安装。

所以:

brew link libtiff 
brew link libpng 
brew link jpeg

然后:

brew install tesseract

最后:

:)