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

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

1,下载并安装3.05版本的tesseract

 地址:https://sourceforge.net/projects/tesseract-ocr/

2,如果你的训练素材是很多张非tif格式的图片,首先要做的事情就是将这么图片合并(个人觉得素材越多,基本每个字母和数字都覆盖了训练出来的识别率比较好)

 下载这个工具:VietOCR.NET-3.3.zip

 地址:http://sourceforge.net/projects/vietocr/files/latest/download?source=files

 首先进行jpg,gif,bmp到tif的转换,这个用自带的画图就可以。然后使用VietOCR.NET-3.3进行多张 tif的merge。

3,Make Box Files。在orderNo.tif所在的目录下打开一个命令行,输入

 C:\Program Files\Tesseract-OCR>tesseract.exe lang.jhy.exp8.TIF lang.jhy.exp8 batch.nochop makebox

4, 使用jTessBoxEditor打开orderNo.tif文件,需要记住的是第2步生成的orderNo.box要和这个orderNo.tif文件同在一个目录下。逐个校正文字,后保存。

 下载jTessBoxEditor工具进行每个自的纠正(注意有nextpage逐页进行纠正)

 地址:http://sourceforge.net/projects/vietocr/files/

5,Run Tesseract for Training。输入命令:

 C:\Program Files\Tesseract-OCR>tesseract.exe lang.jhy.exp8.TIF lang.jhy.exp8 nob

 atch box.train

6,Compute the Character Set。输入命令:

 C:\Program Files\Tesseract-OCR>unicharset_extractor.exe lang.jhy.exp8.box

 Extracting unicharset from lang.jhy.exp8.box

 Wrote unicharset file ./unicharset.

7,新建文件“font_properties”。如果是3.01版本,那么需要在目录下新建一个名字为“font_properties”的文件,并且输入文本:(这里的jhy就是lang.jhy.exp8的中间字段)

 jhy   1 0 0 1 0

8,Clustering。输入命令:

 C:\Program Files\Tesseract-OCR>cntraining.exe lang.jhy.exp8.tr

 Reading lang.jhy.exp8.tr ...

 Clustering ...

 Writing normproto ...

9, 此时,在目录下应该生成若干个文件了,把unicharset, inttemp, normproto, pfftable这几个文件加上前缀“selfverify.”。然后输入命令:

必须确定的是1、3、4、5、13行的数据不是-1,那么一个新的字典就算生成了。

此时目录下“selfverify.traineddata”的文件拷贝到tesseract程序目录下的“tessdata”目录。

以后就可以使用该该字典来识别了,例如:

tesseract.exe test.jpg out –l selfverify

原文地址:https://www.cnblogs.com/lizm166/p/8343872.html

时间: 2024-10-12 17:28:35

Python3.x:pytesseract识别率提高(样本训练)的相关文章

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

转自:http://blog.csdn.net/feihu521a/article/details/8433077 Tesseract是一个开源的OCR(Optical Character Recognition,光学字符识别)引擎,可以识别多种格式的图像文件并将其转换成文本,目前已支持60多种语言(包括中文). Tesseract最初由HP公司开发,后来由Google维护,目前发布在Googel Project上.地址为http://code.google.com/p/tesseract-oc

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

转自:http://blog.csdn.net/feihu521a/article/details/8433077 Tesseract是一个开源的OCR(Optical Character Recognition,光学字符识别)引擎,可以识别多种格式的图像文件并将其转换成文本,目前已支持60多种语言(包括中文). Tesseract最初由HP公司开发,后来由Google维护,目前发布在Googel Project上.地址为http://code.google.com/p/tesseract-oc

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

http://www.bkjia.com/Pythonjc/1131343.html 利用jTessBoxEditor工具进行Tesseract3.02.02样本训练,提高验证码识别率,tesseract训练样本 1.背景 前文已经简要介绍tesseract ocr引擎的安装及基本使用,其中提到使用-l eng参数来限定语言库,可以提高识别准确率及识别效率. 本文将针对某个网站的验证码进行样本训练,形成自己的语言库,来提高验证码识别率. 2.准备工具 tesseract样本训练有一个官方流程说明

python下调用pytesseract识别某网站验证码

一.pytesseract介绍 1.pytesseract说明 pytesseract最新版本0.1.6,网址:https://pypi.python.org/pypi/pytesseract Python-tesseract is a wrapper for google's Tesseract-OCR( http://code.google.com/p/tesseract-ocr/ ). It is also useful as astand-alone invocation script

gabor变换人脸识别的python实现,att_faces数据集平均识别率99%

大家都说gabor做人脸识别是传统方法中效果最好的,这几天就折腾实现了下,网上的python实现实在太少,github上的某个版本还误导了我好几天,后来采用将C++代码封装成dll供python调用的方式,成功解决. 图像经多尺度多方向的gabor变换后,gabor系数的数目成倍上升,所以对gabor系数必须进行降维才能送至后续的SVM分类器.测试图像使用att_faces数据集(40种类型,每种随机选5张训练,5张识别),降维方式我测试了DCT.PCA两种变换方式,说实话,dct不怎么靠谱,居

利用jTessBoxEditor工具进行Tesseract-OCR样本训练

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.j

识别率最高的移动端车牌识别SDK安卓iOS车牌识别

因为各种需要,我们可能对分别率有着很高的要求,尤其是对于识别类的,像一些车牌类的识别,就很重要. 易泊时代推出的移动端车牌识别,识别率可以高达99.7%,可支持多角度识别,也支持各种环境下的识别. 功能特点: 1.识别速度快,只需0.5S. 2.识别率高,识别率高达99.7% 3.支持超大角度识别,准确识别车牌 4. 视频流识别,"只需扫一扫,快速识别车牌", 5.支持多平台应用,完美支持安卓系统,ios系统.提供Android开发JAR包,iOS平台.a静态库开发包.硬件最低配置,支

tensorflow识别Mnist时,训练集与验证集精度acc高,但是测试集精度低的比较隐蔽的原因

tensorflow识别Mnist时,训练集与验证集精度acc高,但是测试集精度低的比较隐蔽的原因除了网上说的主要原因https://blog.csdn.net/wangdong2017/article/details/90176323 之外,还有一种是比较隐蔽的原因(可能对于大多数人不会犯这种低级错误),作为新手的我找了半天才找到,原因是在程序中创建了一个会话之后又重新创建了一个会话,代码程序见我博客https://www.cnblogs.com/hujinzhou/p/guobao_2020

python图片二值化提高识别率

import cv2from PIL import Imagefrom pytesseract import pytesseractfrom PIL import ImageEnhanceimport reimport string def createFile(filePath,newFilePath): img = Image.open(filePath) # 模式L”为灰色图像,它的每个像素用8个bit表示,0表示黑,255表示白,其他数字表示不同的灰度. Img = img.conver