Tesseract训练中文字体识别问题总结

Tesseract4.0训练中文字体识别问题总结

注:目前仅说明windows下的情况

前言

网上已经有大量的tesseract的识别教程,这里不再赘述,本文主要针对初学者搭建环境中所遇到的问题进行描述和解答, 有些问题因资料有限,只能罗列无法回答,也期待各位进行完善补充:

本文参考以下博主的文章进行逐步搭建

https://blog.csdn.net/qq_37674858/article/details/80340914

问题一,在自主训练前需要生成.box文件,需要执行tesseract chi_my.font.exp0.tif chi_my.font.exp0 -l chi_sim batch.nochop makebox命令报错

解答: 这是由于在安装tesseract时没有中文chi_sim.traineddata文件导致, 可以下载chi_sim.traineddata放置于Tesseract-OCR\tessdata\下,再运行tesseract chi_my.font.exp0.tif chi_my.font.exp0 -l chi_sim batch.nochop makebox

问题二、我在win7系统下运行了jTessBoxEditor,由于无法处理中文,我下载了jTessBoxEditorFX使用,发现jTessBoxEditorFX无法启动,没有报错,直接闪退,于是我换了一个电脑,可以正常使用

解答:该问题等待解答


问题三、我在第一天使用jTessBoxEditorFX正常打开tif文件,可以看到很多图片已经切割字符,然后我编辑后保存,关闭软件,第二天我打开发现jTessBoxEditorFX打开tif文件或者jpg文件都无法显示切割字符,没有一个切割框

解答:查看生成的box文件,文件大小为0KB,说明文件遭到破坏,得重新生成编译


问题四、在命令中输入tesseract chi_my.font.exp0 nobatch box.train出现了问题,报WARNING!LEAK! object 0349FF58 still has count 1错误

解答:该问题等待解答


问题五、执行命令tesseract chi_my.font.exp0.tif chi_my.font.exp0 -l chi_sim batch.nochop makebox报错


解决:该问题是由于训练的文件中,字符中有其他元素导致,尽量保证训练的图画面干净,比如我训练失败的图如下


图中有水印

当我去掉该图后,再执行命令tesseract chi_my.font.exp0.tif chi_my.font.exp0 -l chi_sim batch.nochop makebox,效果如下,

已经生成 “chi_my.font.exp0.tr”训练 文件

开始运行实例,GD,又出错了,看下文

问题六、Failed loading language 'chi'

Tesseract couldn't load any languages!

Could not initialize tesseract.

解答,这是由于Tesseract版本问题,经常中文包就报上面的信息,如果你是3.x版本,请升级到4.0


问题七、Error opening data file src/test/resources/tessdata/chi_my.traineddata

解决:这是由于我们自己训练的语言包没有放到项目下,那么放好到对应的项目的tessdata目录下即可,如下图

开始运行,结果已识别中文

注意,这里尝试过官网给的几个方法都没有识别,这个处理倾斜的方法执行成功,和图像本身有一定关系,请多注意

预祝大家学习愉快!

你可能感兴趣的:(Tesseract训练中文字体识别问题总结)