image_to_string 在 Mac 中不起作用
Posted
技术标签:
【中文标题】image_to_string 在 Mac 中不起作用【英文标题】:image_to_string doesn't work in Mac 【发布时间】:2014-01-29 17:27:55 【问题描述】:我正在尝试在 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
【问题讨论】:
看起来您的脚本在启动进程时遇到了问题……而且看起来与code.google.com/p/pytesser/wiki/README 中描述的问题相同。该发行版附带了一个 Windows 可执行文件,并且在 Mac 上无法运行。正如那里的 Linux 人员所提到的,您可能需要提供 tessact 可执行文件。 知道了。但是我可以这样做吗? 我确定这是可行的,但我不知道细节:应该为 tessact 用户标记问题。 好的,已经标记了 tesseract 主题 你可以用brew install tesseract
安装tesseract
【参考方案1】:
我实际上和你有同样的错误,这就是我找到这篇文章的方式。我也有解决问题的办法,因为你给了我!
我看到了:
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 之前 brew link libtiff libpng jpeg 已安装。
这样做:
brew link libtiff
brew link libpng
brew link jpeg
然后:
brew install tesseract
最后:
:)
【讨论】:
对我有用 谢谢!! Mac OS High Sierra,python 3 =)以上是关于image_to_string 在 Mac 中不起作用的主要内容,如果未能解决你的问题,请参考以下文章
颤振热重新加载在android studio(mac)中不起作用
多处理、动态嵌套管理器在 Windows 中不起作用(在 Mac 上很好)