jTessBoxEditor依赖java虚拟机 , 所以要先安装 java.

jTessBoxEditor下载地址:

https://sourceforge.net/projects/vietocr/files/jTessBoxEditor/jTessBoxEditor-1.5.zip/download?use_mirror=nchc

解压后跳转到解压目录, 启动 jTessBoxEditor,命令行输入: 
java -Xms128m -Xmx1024m -jar jTessBoxEditor.jar

样本训练:

、准备样本图片
手动用画图工具写了一些数字(或者去刷网站的验证码) , 如果是彩色图片首先做灰度化处理以提高识别率 . 全部转换成tif文件, 可以用验证码结果命名方便比对.
、合并图片
打开jTessBoxEditor, 点击Tools > Merge Tiff, 选中所有准备好的tif文件,并把生成的tif文件放到一个新目录下, 命名为num.font.exp0.tif
注意: num是自定义的语言名称, font是自定义的字体名称.
问题: 我在使用jTessBoxEditor合并tif文件是报couldn't seek , 未找到原因, 后来改用TiffToy进行合并成功.
、生成box文件
tesseract num.font.exp0.tif num.font.exp0 [-l eng -psm 7] batch.nochop makebox
以上[]中的内容当返回Empty page的时候可以加上.其中 -psm 7 表示用单行文本识别,-l eng 表示使用英语语言.
、修改box文件
切换到jTessBoxEditor工具的Box Editor页,点击open,打开前面的tiff文件langyp.fontyp.exp0.tif,工具会自动加载对应的box文件。
逐个核对tif文件的box数据, 如果错误就进行修改, 全部检查结束后保存.
注意: box数据有翻页, 之前合并了多少tif文件就有多少页.
、生成font_properties
echo font >font_properties
【语法】:<fontname> <italic> <bold> <fixed> <serif> <fraktur>
fontname为字体名称,italic为斜体,bold为黑体字,fixed为默认字体,serif为衬线字体,fraktur德文黑字体,1和0代表有和无,精细区分时可使用。
、生成训练文件
tesseract num.font.exp0.tif num.font.exp0 nobatch box.train
、生成字符集文件
unicharset_extractor num.font.exp0.box
、生成shape文件
shapeclustering -F font_properties -U unicharset -O num.unicharset num.font.exp0.tr
、生成聚集字符特征文件
mftraining -F font_properties -U unicharset -O num.unicharset num.font.exp0.tr
、生成字符正常化特征文件
cntraining num.font.exp0.tr
、更名
rename normproto num.normproto
rename inttemp num.inttemp
rename pffmtable num.pffmtable
rename unicharset num.unicharset
rename shapetable num.shapetable
、合并训练文件,生成num.traineddata
combine_tessdata num.

以上是目录中的文件, 将生成的num.traineddata复制到Tesseract-OCR中的tessdata文件夹中即可.

最后进行一下测试:

tesseract test.png output -l num
#我们使用了指令[-l num]而不是[-l eng]。这说明,我们使用的是新生成的num语言的匹配库而不是默认的eng语言匹配库.

参考:

http://www.cnblogs.com/zhongtang/p/5555950.html

http://www.cnblogs.com/cnlian/p/5765871.html

http://vietocr.sourceforge.net/training.html

利用jTessBoxEditor工具进行Tesseract-OCR样本训练的更多相关文章

  1. 利用jTessBoxEditor工具进行Tesseract3.02.02样本训练,提高验证码识别率

    1.背景 前文已经简要介绍tesseract ocr引擎的安装及基本使用,其中提到使用-l eng参数来限定语言库,可以提高识别准确率及识别效率. 本文将针对某个网站的验证码进行样本训练,形成自己的语 ...

  2. jTessBoxEditor工具进行Tesseract3.02.02样本训练

    1.背景 前文已经简要介绍tesseract ocr引擎的安装及基本使用,其中提到使用-l eng参数来限定语言库,可以提高识别准确率及识别效率. 本文将针对某个网站的验证码进行样本训练,形成自己的语 ...

  3. tesseract ocr文字识别Android实例程序和训练工具全部源代码

    tesseract ocr是一个开源的文字识别引擎,Android系统中也可以使用.可以识别50多种语言,通过自己训练识别库的方式,可以大大提高识别的准确率. 为了节省大家的学习时间,现将自己近期的学 ...

  4. tesseract ocr训练 pt验证码

    识别率有问题A大概率识别为n,因此需要训练,这里讲一下 如何训练 参考 java代码里边直接使用tess4j,是对tesseract的封装,但是如果要训练,还是需要在进行安装tesseract-ocr ...

  5. Tesseract-OCR 字符识别---样本训练 [转]

    Tesseract是一个开源的OCR(Optical Character Recognition,光学字符识别)引擎,可以识别多种格式的图像文件并将其转换成文本,目前已支持60多种语言(包括中文).  ...

  6. Tesseract-OCR 字符识别---样本训练

    Tesseract是一个开源的OCR(Optical Character Recognition,光学字符识别)引擎,可以识别多种格式的图像文件并将其转换成文本,目前已支持60多种语言(包括中文).  ...

  7. 转 Tesseract-OCR 字符识别---样本训练

    转自:http://blog.csdn.net/feihu521a/article/details/8433077 Tesseract是一个开源的OCR(Optical Character Recog ...

  8. 开源图片文字识别引擎——Tesseract OCR

    Tessseract为一款开源.免费的OCR引擎,能够支持中文十分难得.虽然其识别效果不是很理想,但是对于要求不高的中小型项目来说,已经足够用了. 文字识别可应用于许多领域,如阅读.翻译.文献资料的检 ...

  9. Python3.x:pytesseract识别率提高(样本训练)

    Python3.x:pytesseract识别率提高(样本训练) 1,下载并安装3.05版本的tesseract 地址:https://sourceforge.net/projects/tessera ...

随机推荐

  1. (二叉树 BFS DFS) leetcode 111. Minimum Depth of Binary Tree

    Given a binary tree, find its minimum depth. The minimum depth is the number of nodes along the shor ...

  2. (set)MG loves gold hdu6019

    MG loves gold Time Limit: 3000/1500 MS (Java/Others)    Memory Limit: 262144/262144 K (Java/Others) ...

  3. Go语言反射规则

    Go语言反射规则 - The Laws of Reflection 转:http://my.oschina.net/qbit/blog/213720 原文地址:http://blog.golang.o ...

  4. centos7.4+openvpn-2.4.4+easy-rsa-3.0

    [生产环境物理机安装]openvpn2.4.4服务搭建,并可以正常运行 服务器内网:172.31.33.64 openvpn:10.8.0.0 本机ifconfig yum install epel- ...

  5. python自动化开发-[第二十一天]-form验证,中间件,缓存,信号,admin后台

    今日概要: 1.form表单进阶 2.中间件 3.缓存 4.信号 5.admin后台 上节课回顾 FBV,CBV 序列化 - Django内置 - json.dumps(xxx,cls=) Form验 ...

  6. nfs环境搭建报错clnt_create: RPC: Program not registered

    有时候搭建完成后,使用showmount -e ip检测服务端服务器情况的是,会出现clnt_create: RPC: Program not registered 这个错误,表示rpc程序为注册成功 ...

  7. MyBatis-Plugins

    MyBatis 允许在已映射语句执行过程中的某一点进行拦截调用.默认情况下,MyBatis 允许使用插件来拦截的方法调用包括: Executor (update, query, flushStatem ...

  8. PHP7 网络编程(三)孤儿进程与僵尸进程

    基本概念 我们知道在unix/linux中,正常情况下,子进程是通过父进程创建的,子进程在创建新的进程.子进程的结束和父进程的运行是一个异步过程,即父进程永远无法预测子进程 到底什么时候结束. 当一个 ...

  9. Python正则匹配之有名分组

    参考:http://www.cnblogs.com/huxi/archive/2010/07/04/1771073.html # re.match import re m = re.match(r'( ...

  10. PS 使用笔记 - PS 让工作台适应 当前图层

    1.  PS 让工作台适应  当前图层 选中图层  打开 [图像]=>[裁切] 勾选以下,确定即可