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

mog*_*oli 0 python windows tesseract python-2.7

我正在运行一个使用 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)
Run Code Online (Sandbox Code Playgroud)

子进程由框架中的非 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]
Run Code Online (Sandbox Code Playgroud)

我已在我的计算机上安装了 Windows Tesseract,路径为 C:\Program Files x86\Tesseract-OCR

感谢你的想法。

谢谢

the*_*ere 5

显然,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 系统变量中,例如通过命令添加以供临时使用。PATHPATH=%PATH%;"C:\Program Files (x86)\Tesseract-OCR"