首页 > 解决方案 > Tesseract 找不到 eng.traineddata

问题描述

我有使用 tesseract ocr 引擎的 python 程序。起初它工作得很好。但是,我卸载了 tesseract 并这次重新安装它不起作用。

它给

pytesseract.pytesseract.TesseractError: (1, 'Error opening data file C:\\Program Files\\Tesseract-OCR/eng.traineddata Please make sure the TESSDATA_PREFIX

我没有改变任何东西,但它不起作用。

我将 TESSDATA_PREFIX 添加到路径中。

但是当我将 eng.traineddata 从 tesstada 移动到 tesseract-ocr 文件时,它起作用了。我有另一台电脑,它也有相同的程序,而且运行良好。但是 eng.traineddata 在 tessdata 文件夹中。

为什么一个程序给出错误,另一个没有?

编辑

1) 'C:\Program Files\Tesseract-OCR/eng.traineddata' 在两台计算机中不存在。然而,其中一个正在工作,但另一个不工作。因此,正如我在问题中所说,我将 eng.traineddata 从 tessdata 移动到 Tesseract-OCR 文件夹,然后它就可以工作了。但这里的问题是为什么其中一个有效而另一个无效?因为其他程序在 Tesseract-OCR 文件夹中没有 eng.traineddata。

2) 我从 mannheim uni 库下载了 tesseract 的 windows 可执行文件。所以文件没有损坏。

3)我正在使用 Tesseract 3.05

4) 我创建了 TESSDATA_PREFIX 环境变量。

5) 我从 mannheim uni 库下载了 tesseract 的 windows 可执行文件。

非常感谢。

标签: python-3.xocrtesseract

解决方案


  1. 'C:\Program Files\Tesseract-OCR/eng.traineddata' 是否存在?
  2. 你检查文件是否没有损坏(例如你下载正确)
  3. 您从哪个(tessdata 存储库)源下载了它?
  4. 添加TESSDATA_PREFIX到路径是没用的:你必须设置 env variable TESSDATA_PREFIX
  5. 提供您如何设置和运行 pytesseract 的完整代码。仅显示(部分)错误消息没有帮助。

推荐阅读