如何在 pytesseract 中使用经过训练的数据?

Sim*_*ton 5 ocr tesseract python-tesseract

使用这个工具http://trainyourtesseract.com/我希望能够在 pytesseract 中使用新字体。该工具给了我一个名为 *.traineddata 的文件

现在我正在使用这个简单的脚本:

try:
    import Image
except ImportError:
    from PIL import Image
import pytesseract as tes

results = tes.image_to_string(Image.open('./test.jpg'),boxes=True)
file = open('parsing.text','a')
file.write(results)
print(results)
Run Code Online (Sandbox Code Playgroud)

如何使用我的训练数据文件,以便我能够使用 python 脚本读取新字体?

谢谢 !

编辑#1 :所以我知道*.traineddata可以与 Tesseract 一起用作命令行程序。所以我的问题还是一样,我如何在 python 中使用traineddata?

编辑#2:我的问题的答案在这里如何从 Python 访问 Tesseract 的命令行?

the*_*ere 6

以下是pytesseract.image_to_string()带选项的示例。

pytesseract.image_to_string(Image.open("./imagesStackoverflow/xyz-small-gray.png"),
                                  lang="eng",boxes=False,
                                  config="--psm 4 --oem 3 
                                  -c tessedit_char_whitelist=-01234567890XYZ:"))
Run Code Online (Sandbox Code Playgroud)

要使用您自己训练的语言数据,只需将"eng"in替换lang="eng"为您的 language name(.traineddata)

  • 对上述答案的一个小补充:将 xyz.traineddata 文件保留在保存 tesseract 数据的路径中(例如:/usr/share/tesseract-ocr/tessdata/)并传递以下内容: `pytesseract.image_to_string(Image.open(" ./imagesStackoverflow/xyz-small-gray.png"),lang="xyz")` (2认同)