1、生成box文件:组织训练集,并生成对应的box标注文件。

./tesseract {image_path} {output_path} -l chi_sim makebox

tesseract.exe num.font.exp0.tif num.font.exp0 batch.nochop makebox 

生成的box文件为num.font.exp0.box,box文件为Tesseract识别出的字符及其坐标。

:Make Box File 文件名有一定的格式,不能随便乱取名字,命令格式为:

tesseract [lang].[fontname].exp[num].tif [lang].[fontname].exp[num] batch.nochop makebox

其中lang为语言名称,fontname为字体名称,num为序号,可以随便定义。

-l chi_sim 选择中文简体, 需要在jTessBoxEditor/tesseract-ocr/tessdata文件夹下放入下载好的中文字库chi_sim.traineddata 

如果上述命令省略-l chi_sim 表示默认使用引文字符集

使用jTessBoxEditor   gui 修正字体

定义字符配置文件

在目标文件夹内生成一个名为font_properties的文本文件,内容为:   font 00000

【语法】: <fontname> <italic> <bold> <fixed> <serif> <frakture>  

  fontname为字体名称,italic为斜体,bold为黑体字,fixed为默认字体,serif为衬线字体,fraktur德文黑字体,1和0代表有和无,精细区分时可使用

2、合并box文件:将多个box文件进行合并。

cat *.box > font.box

3、生成训练集:通过box文件生成对应的训练集。

./tesseract {image_path} {output_path} nobatch box.train

4、生成字符集:通过训练集计算生成字符集文件。

unicharset_extractor train/ampersand.box train/A.box ...train/Y.box

5、生成向量文件:通过字符集和训练集生成向量文件。

mftraining -F font_properties -U unicharset -O output unicharset

6、生成分类器文件:通过向量文件生成分类器文件。

cntraining output/ampersand.tr output/A.tr ... output/Y.tr

7、生成Tesseract字库:将向量文件和分类器文件合并,生成Tesseract OCR引擎所需的字库文件。

combine_tessdata output/{fontname}.traineddata

将生成的traineddata放入tessdata中

最后将num.trainddata复制到Tesseract-OCR中tessdata文件夹即可。

 测试:

tesseract test.png output_2 -l num

总结批命令: 

rem 执行改批处理前先要目录下创建font_properties文件 
echo Run Tesseract for Training.. 
tesseract.exe num.font.exp0.tif num.font.exp0 nobatch box.train 
 
echo Compute the Character Set.. 
unicharset_extractor.exe num.font.exp0.box 
mftraining -F font_properties -U unicharset -O num.unicharset num.font.exp0.tr 


echo Clustering.. 
cntraining.exe num.font.exp0.tr 

echo Rename Files.. 
rename normproto num.normproto 
rename inttemp num.inttemp 
rename pffmtable num.pffmtable 
rename shapetable num.shapetable  

echo Create Tessdata.. 
combine_tessdata.exe num. 
echo. & pause

 参考:

Tesseract-OCR的简单使用与训练 - 简书

Tesseract-OCR的简单使用与训练 

tesseract-ocr使用以及训练方法_欧晨eli的博客-CSDN博客 

JTessBoxEditor:开源OCR识别工具的学习与应用_笔记大全_设计学院

GitHub 加速计划 / te / tesseract
60.1 K
9.29 K
下载
tesseract-ocr/tesseract: 是一个开源的光学字符识别(OCR)引擎,适用于从图像中提取和识别文本。特点是可以识别多种语言,具有较高的识别准确率,并且支持命令行和API调用。
最近提交(Master分支:2 个月前 )
bc490ea7 Don't check for a directory, because a symbolic link is also allowed. Signed-off-by: Stefan Weil <sw@weilnetz.de> 4 个月前
2991d36a - 4 个月前
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐