我试图用图像而不是字体来训练Tesseract 4。
在docs中,他们只解释了字体的方法,而不是图像。
我知道它是如何工作的,当我使用Tesseract的早期版本但我没有得到如何使用box / tiff文件在Tesseract 4中使用LSTM进行训练。
我调查tesstrain.sh,用于生成LSTM训练数据,但无法找到任何有用的信息。有什么想法吗?
答案 0 :(得分:5)
在https://github.com/tesseract-ocr/tesstrain上复制tesstrain回购。
您还需要克隆tessdata_best存储库https://github.com/tesseract-ocr/tessdata_best。这是您训练的起点。要获取准确性,需要数十万个训练数据样本,因此使用一个好的起点,您可以使用少得多的数据来微调您的训练(大约数十到数百个样本就足够了)
将训练样本添加到名为./tesstrain/data/my-custom-model-ground-truth
的tesstrain存储库中的目录中
您的训练样本应该是图像/文本文件对,它们共享相同的名称但具有不同的扩展名。例如,您应该有一个名为001.png
的图像文件,它是文本foobar
的图片,而您应该有一个名为001.gt.txt
的文本文件,其中文本为foobar
。
这些文件必须是一行文字。
在tesstrain
存储库中,运行以下命令:
make training MODEL_NAME=my-custom-model START_MODEL=eng TESSDATA=~/src/tessdata_best
培训完成后,将有一个新文件tesstrain / data / .traineddata。将该文件复制到目录中,Tesseract搜索模型。在我的机器上,它是/ usr / local / share / tessdata/。
然后,您可以运行tesseract并将该模型用作语言。
tesseract -l my-custom-model foo.png -