tesseract python系统找不到指定的文件

时间:2017-04-06 18:19:41

标签: python windows python-2.7 tesseract

我正在运行一个使用Tesseract的python测试框架。

当我运行使用tesseract的测试时,我收到以下错误:

WindowsError: [Error 2] The system cannot find the file specified

我设法通过日志,发现它在:

File "C:\Python27\lib\subprocess.py", line 212, in check_output
process = Popen(stdout=PIPE, *popenargs, **kwargs)
File "C:\Python27\lib\subprocess.py", line 390, in __init__
errread, errwrite)
File "C:\Python27\lib\subprocess.py", line 640, in _execute_child
startupinfo)

子进程由框架

中的非python lib命令调用
def process_frame_text(single_char=False):
    tess_list = ['tesseract', 'tmp/ocr_image.png', 'tmp/ocr_output']
    tess_list += ['-psm', '10'] if single_char else []
    check_output(tess_list, stderr=STDOUT)[:-1]

我已经在我的机器上安装了Windows Tesseract:C:\ Program Files x86 \ Tesseract-OCR

欣赏你的想法。

由于

1 个答案:

答案 0 :(得分:3)

显然,subprocess模块无法找到tesseract.exe并从Windows shell调用它。如果可执行文件的路径C:\Program Files x86\Tesseract-OCR未添加到Windows environment variables,则修改tess_list以提供完整文件路径。

修改

对于您的情况,应设置:

  • TESSDATA_PREFIX = C:\Program Files x86\Tesseract\tessdata指向经过培训的语言数据文件。
  • C:\Program Files (x86)\Tesseract-OCR这是tesseract.exe文件路径应作为附加值添加到Windows系统PATH变量中,例如 如果添加PATH=%PATH%;"C:\Program Files (x86)\Tesseract-OCR" 临时使用的命令。