試試我的小功能。我從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