14

据我所知,Tesseract 3.x 带有 6 种英文(如果我错了,请纠正我)字体。我需要为更多 5 种字体训练 Tesseract。我只需要大写字母和数字(没有特殊字符或符号)。

我遵循了各种流程,例如: 向 Tesseract 3 OCR 引擎添加新字体

并且还使用了诸如Serak Tesseract Trainer for Tesseract 3.02之类的工具来自动化该过程

为了生成盒子文件,我使用了 QT Box Editor

使用上述工具后,我得到eng.traineddata文件。所有教程都告诉我将此eng.traineddata文件添加到文件Tesseract-OCR\tessdata夹中,但这样做会替换原始eng.traineddata文件。这样做之后,我会丢失 Tesseract 3.x 附带的默认字体吗?

如何添加新字体?我还不清楚。我希望有人可以在这里帮助我。谢谢。

4

2 回答 2

17

应使用不同的名称,例如eng1.traineddata. 这样,您可以通过指定语言选项将新数据与原始数据一起使用-l eng+eng1

于 2013-05-02T12:45:27.297 回答
0

如果您有不同字体的新训练数据,我认为您没有新字体的字典校正。

要添加新的训练数据,您可以这样做(我在这里使用 PHP 代码)

//  as you new trained data, it must be 3 letter prefix 
// what ever 3 letter you want
$languange = "eng+deu";
$settingLanguage = $tesseract -> setLanguage($language) ; 

通过查看 tesseract.php 函数setLanguage(),您可以通过该函数设置语言。

于 2015-03-29T09:16:50.623 回答