在之前已經說明過識Tessract-OCR識別(手寫|通用字體)中文了,只不過使用的是官方的漢字庫,
https://blog.csdn.net/weixin_37794901/article/details/83343092;
若想提高針對幾個漢字的識別,可以自己訓練文字庫生成語言包,這裏採用的是比較智障的方式手動機器訓練哈;
1.工具:
1)安裝好Tesseract-OCR 2)訓練工具 jTessBoxEditor (需Java環境),具體如何使用可以網上撈;
2.demo(window10環境)
1)將測試的圖片(帶有中文的)轉換成tiff格式:https://www.aconvert.com/cn/image/jpg-to-tiff/
2)文件命名的格式:
tif文面命名格式[lang].[fontname].exp[num].tif,
lang是語言 fontname是字體,比如我們要訓練自定義字庫 mjorcen字體名normal,那麼我們把圖片文件重命名 mjorcen.normal.exp0.jpg在轉tif。
3)生成box文件
進入tesseract安裝目錄,dos命令:
tesseract mjorcen.normal.exp0.jpg mjorcen.normal.exp0 -l chi_sim batch.nochop makebox
4)打開校驗工具,訓練文字
dos命令:
tesseract mjorcen.normal.exp0.jpg mjorcen.normal.exp0 nobatch box.train
unicharset_extractor mjorcen.normal.exp0.box
5)新建一個font_properties文件
dos命令:echo normal 0 0 0 0 0 >fileName_properties
6) 生成語言包
dos命令:
shapeclustering -F font_properties -U unicharset mjorcen.normal.exp0.tr
mftraining -F font_properties -U unicharset -O unicharset mjorcen.normal.exp0.tr
cntraining mjorcen.normal.exp0.tr
將生成的unicharset、inttemp、pffmtable、shapetable、normproto這五個文件前面都加上normal. 方便合成
combine_tessdata normal.
最後得到: