2017-08-06 53 views
0

我试图让tesseract-ocr识别图像上的一个字符串。我在Windows操作系统电脑上使用python。我已经为tesseract-OCR安装了python包装器,即使用pip install安装pytesseract。我收到以下错误信息:Pytesseract不适用于Windows操作系统。 Subprocess.py丢失?

runfile('C:/Users/rlc/Desktop/tesseract_test.py', wdir='C:/Users/rlc/Desktop') 
Traceback (most recent call last): 
    File "<ipython-input- 1-5f5eff4c4064>", line 1, in <module> 
    runfile('C:/Users/rlc/Desktop/tesseract_test.py', wdir='C:/Users/rlc/Desktop') 
    File "C:\Users\rlc\Anaconda2\lib\site-packages\spyderlib\widgets\externalshell\sitecustomize.py", line 714, in runfile 
    execfile(filename, namespace) 
    File "C:\Users\rlc\Anaconda2\lib\site-packages\spyderlib\widgets\externalshell\sitecustomize.py", line 74, in execfile 
    exec(compile(scripttext, filename, 'exec'), glob, loc) 
    File "C:/Users/rlc/Desktop/tesseract_test.py", line 12, in <module> 
    pytesseract.image_to_string(Image.open('example_02.png')) 
    File "C:\Users\rlc\Anaconda2\lib\site-packages\pytesseract\pytesseract.py", line 161, in image_to_string 
    config=config) 
    File "C:\Users\rlc\Anaconda2\lib\site-packages\pytesseract\pytesseract.py", line 94, in run_tesseract 
    stderr=subprocess.PIPE) 
    File "C:\Users\rlc\Anaconda2\lib\subprocess.py", line 711, in __init__ 
    errread, errwrite) 
    File "C:\Users\rlc\Anaconda2\lib\subprocess.py", line 959, in _execute_child 
    startupinfo) 
    WindowsError: [Error 2] Den angivne fil blev ikke fundet. 

看来它无法找到文件subprocess.py。

任何解决方案,好主意或获得tesseract-ocr在windows os pc上工作的教程?非常感谢您的帮助。

+0

我不认为Anaconda2捆绑子进程(因为它是基于py2的旧版本,它可能不可用?),所以请尝试升级到Anaconda3或尝试py2最新的python.org分发if你必须使用py2。 – MatsLindh

+1

感谢您的回复。当问到一位帮助我弄清楚问题出在哪里的好同事。如果您有兴趣,请在下面提供的答案中查看解决方案。 –

回答

1

找出subprocess.py实际上包含在Anaconda 2和Anaconda 3中。错误的原因是,tesseract所在的路径未添加为Windows中的环境路径变量。

在windows上获取pytesseract的步骤。

  1. https://www.continuum.io/downloads
  2. 安装阿纳康达2或3阿纳康达从http://digi.bib.uni-mannheim.de/tesseract/tesseract-ocr-setup-4.00.00dev.exe
  3. 安装用于Windows的tesseract所述的tesseract目录添加到窗口作为路径环境变量。
  4. 安装pytesseract例如

    PIP安装pytesseract

和..

import pytesseract 
    from PIL import Image 
    image = Image.open('example_02.png') 
    code = pytesseract.image_to_string(image) 
    print code 

瞧。

相关问题