欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

使用jTessBoxEditorFX制作自己的字库

程序员文章站 2024-01-10 21:33:01
...

1、下载jTessBoxEditorFX

注意jTessBoxEditor有两个版本,带FX的版本才支持中文字符编辑,我们下载带FX版本的。在这个网址上列出了所有的jTessBoxEditorFX版本。

  • 选择了jTessBoxEditorFX-2.2.0安装
  • 我们将图片放到jTessBoxEditorFX目录下新建的train_image文件夹下。

使用jTessBoxEditorFX制作自己的字库
点击jTessBoxEditorFX.jar文件
使用jTessBoxEditorFX制作自己的字库

2、生成tif文件

  • 选择 Tools -> Merge TIFF,打开对话框,选择训练样本所在文件夹,并选中所有要参与训练的样本图片,注意对话框中“文件类型”的选取,选择所有的图片文件
    选择好了后,点击打开按钮,出现文件保存对话框,输入文件名:first_pic.tif

使用jTessBoxEditorFX制作自己的字库

3、使用tesseract生成.box文件

打开命令提示符,进入步骤2生成的first_pic.tif文件所在目录

 tesseract first_pic.tif first_pic -l chi_sim batch.nochop makebox
-l chi_sim参数是使用已经有的中文训练字库
这个字库是在tessdata目录里,可以自己拷贝进去

使用jTessBoxEditorFX制作自己的字库

使用jTessBoxEditorFX制作自己的字库

执行完成后,会在当前目录下生成.box文件。
使用jTessBoxEditorFX制作自己的字库

4、使用jTessBoxEditor调整.box训练文件

.box文件中记录了每个字符在图片上的位置以及识别出的内容,训练之前需要使用jTessBoxEditor调整字符的位置和内容。
打开 jTessBoxEditor ,点击 Box Editor -> Open ,打开生成的 .tif文件 ,会自动关联到.box 文件:
使用jTessBoxEditorFX制作自己的字库

5、生成tr文件

tesseract 1.tif 1 nobatch box.train

生成一个unicharset文件

unicharset_extractor 1.box

问题1:
使用jTessBoxEditorFX制作自己的字库
解决:
使用jTessBoxEditorFX制作自己的字库
问题二:

$ brew install --with-training-tools tesseract

Error: invalid option: --with-training-tools

发现已经没有了–with-training-tools

查阅网上资料,发现需要编译安装…

解决:
Mac环境下编译安装tesseract-4.1.1

6、新建一个font_properties文件

里面内容写入 normal 0 0 0 0 0 表示默认普通字体
 
依次执行:

shapeclustering -F font_properties.txt -U unicharset 1.tr
mftraining -F font_properties.txt -U unicharset -O unicharset 1.tr
cntraining 1.tr

使用jTessBoxEditorFX制作自己的字库

目录下会生成对应下列五个文件,在这五个文件前加上normal.进行重命名
使用jTessBoxEditorFX制作自己的字库
使用jTessBoxEditorFX制作自己的字库

7、 执行 combine_tessdata

合并五个文件,此时目录下的normal.traineddata 就是训练好的字库文件,放入/usr/local/share/tessdata

combine_tessdata normal.
使用jTessBoxEditorFX制作自己的字库

8、使用自己的文字库normal

tesseract -l chi_sim+normal 【imageName】 【result】
相关标签: OCR