参考文章:
http://my.oschina.net/lixinspace/blog/60124 的采用tessract库训练字符的过程,
对中文字符库,比如车牌中的省份简称等的训练,字母的训练,数目和字母的训练。
在训练过程中,发现了以下问题:
1、font_properties的文件创建:
文件中的内容为:UnknownFont 0 0 0 0 0
因为在训练过程中,我并没有对文件命名,所以系统默认是:UnknownFont 这个名称。
2、把unicharset, inttemp, normproto, pfftable这四个文件加上前缀“orderNo.”时,少写了一个文件shapetable,此文件也应该重新命名。
3、鉴于 http://www.lixin.me/blog/2012/05/26/29536 在下面讨论中,提到的3.02版本需要一个 shapeclustering 过程
Example:
font_properties file:
timesitalic 1 0 0 1 0
shapeclustering -F font_properties -U unicharset eng.timesitalic.exp0.tr
mftraining -F font_properties -U unicharset -O eng.unicharset eng.timesitalic.exp0.tr
其实是没有必要的。
对中文字符库,比如车牌中的省份简称等的训练,字母的训练,数目和字母的训练。
在训练过程中,发现了以下问题:
1、font_properties的文件创建:
文件中的内容为:UnknownFont 0 0 0 0 0
因为在训练过程中,我并没有对文件命名,所以系统默认是:UnknownFont 这个名称。
2、把unicharset, inttemp, normproto, pfftable这四个文件加上前缀“orderNo.”时,少写了一个文件shapetable,此文件也应该重新命名。
3、鉴于 http://www.lixin.me/blog/2012/05/26/29536 在下面讨论中,提到的3.02版本需要一个 shapeclustering 过程
Example:
font_properties file:
timesitalic 1 0 0 1 0
shapeclustering -F font_properties -U unicharset eng.timesitalic.exp0.tr
mftraining -F font_properties -U unicharset -O eng.unicharset eng.timesitalic.exp0.tr
其实是没有必要的。
以下附上命令行使用,可以将这些拷贝到一个文件中,命名为.bat文件,就可以直接使用,而不用一行一行敲代码了。
tesseract.exe letterNumMerge.tif letterNumMerge batch.nochop makebox
pause
tesseract.exe letterNumMerge.tif letterNumMerge nobatch box.train
unicharset_extractor.exe letterNumMerge.box
mftraining.exe -F font_properties -U unicharset letterNumMerge.tr
cntraining.exe letterNumMerge.tr
rename normproto letterNumMerge.normproto
rename unicharset letterNumMerge.unicharset
rename inttemp letterNumMerge.inttemp
rename pffmtable letterNumMerge.pffmtable
rename shapetable letterNumMerge.shapetable
pause
combine_tessdata.exe letterNumMerge.
pause