本文主要是介绍利用jTessBoxEditor工具进行Tesseract3.02.02样本训练,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
参考自:
- 官方:https://github.com/tesseract-ocr/tesseract/wiki/Training-Tesseract-3.00%E2%80%933.02#bootstrapping-a-new-character-set
- http://blog.csdn.net/why200981317/article/details/48265621
- http://www.cnblogs.com/cnlian/p/5765871.html
- http://www.cnblogs.com/zhongtang/p/5555950.html?utm_source=tuicool&utm_medium=referral
- jTessBoxEditor下载地址:https://sourceforge.net/projects/vietocr/files/jTessBoxEditor/
这个工具是基于java虚拟机运行的,所以我们还要下载并安装一个java虚拟机 - tesseract可以去我的资源页下载:http://download.csdn.net/detail/ss_s1gn/9810646
1.生成tif文件
将图片用 画图 打开,保存为tif格式。
注意:保存的文件名为:
2.生成box文件(需要安装tesseract)
在命令行进入存放tif文件的目录,输入:
tesseract lang.sign.img.tif lang.sign.img batch.nochop makebox
3.打开下载好的jTessBoxEditor,点击
4.点击Box Editor –>>open 打开以tif为扩展名的文件
5.用jTessBoxEditor打开前面的tiff=文件lang.sign.img1.tif,工具会自动加载对应的box文件。
需要删除点击delete
需要新增点击insert
需要切割点击split
如图,可对对应的字符进行修正,输入正确的字符,enter确定
最后不要忘了点击save保存(注意:我使用的时候,如果只是修改数据,save按钮不可点击,可以新增一条无用数据,再删除就可以保存了)
6.生成font_properties
在命令行输入:
echo sign 0 0 0 0 0 >font_properties
7.生成训练文件
在命令行输入:
tesseract lang.sign.img.tif lang.sign.img nobatch box.train
8.生成字符集文件
在命令行输入:
unicharset_extractor lang.sign.img.box
如果有多个,就在后面依次添加
eg:
unicharset_extractor lang.sign.img.box lang.sign.img1.box lang.sign.img2.box
9.生成shape文件
在命令行输入:
shapeclustering -F font_properties -U unicharset lang.sign.img.tr
注意:lang.unicharset 对应你的语言名称
如果有多个,就在后面依次添加
eg:
shapeclustering -F font_properties -U unicharset lang.sign.img.tr lang.sign.img1.tr lang.sign.img2.tr
10.生成聚集字符特征文件
mftraining -F font_properties -U unicharset -O lang.unicharset lang.sign.img.tr
注意:lang.unicharset 与上一部的lang.unicharset 对应
如果有多个,就在后面依次添加
eg:
mftraining -F font_properties -U unicharset -O lang.unicharset lang.sign.img.tr lang.sign.img1.tr lang.sign.img2.tr
11.生成字符正常化特征文件
在命令行输入:
cntraining lang.sign.img.tr
如果有多个,就在后面依次添加
eg:
cntraining lang.sign.img.tr lang.sign.img1.tr lang.sign.img2.tr
12.更名
rename normproto lang.normproto
rename inttemp lang.inttemp
rename pffmtable lang.pffmtable
rename unicharset lang.unicharset
rename shapetable lang.shapetable
13.合并训练文件
执行命令,生成lang.traineddata文件
combine_tessdata lang.
注意:命令行最后必须带一个点。
14.最后将lang.trainddata复制到Tesseract-OCR中tessdata文件夹即可
tesseract test.png output -l lang
lang就是根据我们生成的lang.traineddata去识别
也可以用google的eng.traineddata或其它库识别
在生成的output.txt查看扫描的结果
这篇关于利用jTessBoxEditor工具进行Tesseract3.02.02样本训练的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!