如何使用图像数据而不是字体文件训练tesseract 4?

cla*_*aim 16 ocr tesseract training-data lstm

我正在尝试使用图像而不是字体来训练Tesseract 4.

文档中,他们只解释了字体的方法,而不是图像.

我知道它是如何工作的,当我使用以前版本的Tesseract但我没有得到如何使用box/tiff文件在Tesseract 4中使用LSTM进行训练.

我查看了tesstrain.sh,它用于生成LSTM训练数据,但找不到任何有用的信息.有任何想法吗?

Eri*_*hli 15

https://github.com/tesseract-ocr/tesstrain克隆 tesstrain 存储库。

您还需要克隆 tessdata_best 存储库,https://github.com/tesseract-ocr/tessdata_best。这是您训练的起点。需要数十万个训练数据样本才能获得准确性,因此使用一个好的起点可以让您用更少的数据来微调训练(大约数十到数百个样本就足够了)

将您的训练样本添加到名为的 tesstrain 存储库中的目录中 ./tesstrain/data/my-custom-model-ground-truth

您的训练样本应该是具有相同名称但扩展名不同的图像/文本文件对。例如,你应该有一个名为图像文件001.png是文本的照片foobar,你应该有一个文本文件名为001.gt.txt具有文本foobar

这些文件需要是单行文本。

tesstrainrepo 中,运行以下命令:

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 -

  • 文件名可以是任何内容,唯一重要的是 .gt.txt 文件和 .png 文件名应该相同。a_1.gt.txt、a_1.png、a_2.gt.txt、a_2.png 是正确的。 (2认同)