试试我的小功能。我从svn
回购库中运行tesseract
,所以我的结果可能更准确。
我在Linux上,所以在Windows上,我想你必须用tesseract.exe
替换tesseract
才能使它工作。
import tempfile, subprocess
def ocr(image):
tempFile = tempfile.NamedTemporaryFile(delete = False)
process = subprocess.Popen(['tesseract', image, tempFile.name], stdout = subprocess.PIPE, stdin = subprocess.PIPE, stderr = subprocess.STDOUT)
process.communicate()
handle = open(tempFile.name + '.txt', 'r').read()
return handle
和样品的Python会话:
>>> import tempfile, subprocess
>>> def ocr(image):
... tempFile = tempfile.NamedTemporaryFile(delete = False)
... process = subprocess.Popen(['tesseract', image, tempFile.name], stdout = subprocess.PIPE, stdin = subprocess.PIPE, stderr = subprocess.STDOUT)
... process.communicate()
... handle = open(tempFile.name + '.txt', 'r').read()
... return handle
...
>>> print ocr('326_fail.jpg')
0+1
小心解释为什么这是被拒绝的? – Entity 2011-05-08 03:19:45
@TheAdamGaskins:是的,我可以,这个问题需要更多的信息,例如你的相关代码是什么,如果你可以发布你迄今为止想要修复的问题,那么这将是一件好事,所以人们不会“donshing – Trufa 2011-05-08 03:22:27
抱歉,由于某种原因,我不能编辑前一个,因此,那些回答你问题的人不需要为你完成所有繁重的工作和所有的工作,这应该是如果你添加更多的信息并且把它作为一个完整的问题,我将删除我的downvote – Trufa 2011-05-08 03:24:28