Tesseract训练注意事项

时间:2021-04-17 08:55:11

生成训练样本

1.如果只为识别有限范围内的字体,一张训练样本就足够了,但是多余的会增加准确度。

2.生成训练样本时,确保每个字符有最少数量的样本,10个就很好,针对低频率出现的字符,5个也行。对于频繁出现的字符,至少需要20个样本。

3.让训练样本中的文本更贴近现实,The (quick) brown {fox} jumps! over the $3,456.78<lazy> #90 dog & duck/goose, as 12.5% of E-mail from aspammer@website.com is spam?就比The quick brown fox jumps over the lazy dog. 0123456789 !@#$%^&(),.{}<>/?好很多。

4.增加字符之前的距离比较安全。

5.训练集应该按字体划分,不能在同一个.tr文件中混入多种字体,否则会丢失字体特征。

6.对于同一个字符,不需要多个大小的训练样本,10Pt就够了。待识别字符小于15像素的需要特别训练或者识别前放大识别图片。

7.修正box文件时,字符被分开了,merge!多个字符连在一起,重新修正训练样本图片。如果识别图像中,这个连在一起的字符块很常见,则使box中的多个字符表示这个box的识别结果。box 的坐标系左下角是(0,0)。

8.在box.train过程中,需要修正输出中的FATALITIES,否则训练过程会失效。

unicharset_extractor lang.fontname.exp0.box lang.fontname.exp1.box ...
<fontname> <italic> <bold> <fixed> <serif> <fraktur>