Pytesseract 加载语言失败 'chi-sim'

Pytesseract Failed loading language 'chi-sim'

我正在开发 python tesseract 包,示例代码如下:

import pytesseract
from PIL import Image

tessdata_dir_config = "--tessdata-dir \"/opt/homebrew/Cellar/tesseract-lang/4.1.0/share/tessdata/\""
image = Image.open("dataset/test.jpeg")
text = pytesseract.image_to_string(image, lang = "chi-sim", config = tessdata_dir_config)
print(text)

我收到以下错误消息:

pytesseract.pytesseract.TesseractError: (1, 'Error opening data file /opt/homebrew/Cellar/tesseract-lang/4.1.0/share/tessdata/chi-sim.traineddata Please make sure the TESSDATA_PREFIX environment variable is set to your "tessdata" directory. Failed loading language 'chi-sim' Tesseract couldn't load any languages! Could not initialize tesseract.')

根据我的理解,错误发生在读取文件chi-sim.traineddata(代表简体中文)时,我将在下面解释我为解决此问题所做的尝试。

print(pytesseract.get_languages(config = ""))

我打印了一长串语言,包括 chi-sim。

text = pytesseract.image_to_string(image)
  1. 在原始代码中使用 config 参数。

  2. 在PyCharm中添加全局环境变量。

  3. 在代码中添加以下行

os.environ["TESSDATA_PREFIX"] = "tesseract/4.1.1/share/tessdata/"
  1. 在终端
  2. 中将以下行添加到 bash_profile
export TESSDATA_PREFIX=/opt/homebrew/Cellar/tesseract-lang/4.1.0/share/tessdata/

但不幸的是,none 这些作品。

关于这个问题,有什么可能的解决方案吗?

如果我使用 lang="chi_sim"_ 而不是 -,代码在 Linux 上对我有效,因为从服务器下载的文件的名称也为 chi_sim.traineddata _ 而不是 -.


如果我将文件重命名为 chi-sim.traineddata,那么我可以使用 lang="chi-sim"(使用 - 而不是 _