如何在 pytesseract 中使用经过训练的数据?
Posted
技术标签:
【中文标题】如何在 pytesseract 中使用经过训练的数据?【英文标题】:How to use trained data with pytesseract? 【发布时间】:2017-10-26 06:59:31 【问题描述】:使用此工具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)
如何使用我的训练数据文件,以便我能够使用 python 脚本读取新字体?
谢谢!
edit#1:所以我知道*.traineddata
可以与 Tesseract 一起用作命令行程序。所以我的问题还是一样,如何在 python 中使用traineddata?
edit#2:我的问题的答案在这里How to access the command line for Tesseract from Python?
【问题讨论】:
【参考方案1】:下面是带有选项的pytesseract.image_to_string()
示例。
pytesseract.image_to_string(Image.open("./images***/xyz-small-gray.png"),
lang="eng",boxes=False,
config="--psm 4 --oem 3
-c tessedit_char_whitelist=-01234567890XYZ:"))
要使用您自己训练的语言数据,只需将lang="eng"
中的"eng"
替换为您的语言name(.traineddata)
。
【讨论】:
对上述答案的一个小补充:将 xyz.traineddata 文件保存在保存 tesseract 数据的路径中(例如:/usr/share/tesseract-ocr/tessdata/)并传递以下内容:@987654326 @.traineddata
被附加到语言名称中,并且 OpenCV 4 中的白名单被破坏。以上是关于如何在 pytesseract 中使用经过训练的数据?的主要内容,如果未能解决你的问题,请参考以下文章
如何在 iOS 中使用经过 Tensorflow 训练的机器学习模型