python OCR Tesseract 训练
Ps:Tesseract识别英文和字母效果好
中文的话,虽然有训练数据也可以识别,但是效果不是很好
Tesseract的安装和使用:
1.首先用 pip 下载包
pip install tesseract
这时还没法直接用,还要下载一些东西
2.tesseract
我下载的是5.0 64位的版本
3.配置环境变量
把上面下载的Tesseract-ocr的目录添加到Path中
4.可以使用了
from PIL import Image
import pytesseracttext = pytesseract.image_to_string(Image.open('1.png'))
print(text)
这个函数默认是识别英文和数字的
如果想要识别中文,需要额外下载训练数据
地址我挂这里了
chi_sim 是简体中文
chi_tra 是繁体中文
把其后缀为traineddata的文件拖到Tesseract-ocr目录下的tessdata文件夹里即可
然后,pyhon 里识别中文时,还要设置 lang 属性指定语言包(也就是我们之前下载的)
from PIL import Image
import pytesseracttext = pytesseract.image_to_string(Image.open('1.png'),lang='chi_sim')
print(text)
最后,再介绍一下自己训练数据的方法
需要两个工具:
一个是 Java JDK (Java™ Platform, Standard Edition Development Kit)
拉到最下面就可以找到合适的版本了
安装完后,还要配置环境变量
新建一个变量
JAVA_HOME
路径是 JDK 的安装目录
另外一个是jTessBoxEditor
下载链接在这
安装好后,双击 jTessBoxEditor,jar 即可运行
接下来利用jTessBoxEditor开始训练
1.Tools – Merge TIFF
查看文件类型选到All Image Files
选择你要训练的图片
文件命名为:langyp.fontyp.exp0.tif
2.管理员权限cmd命令行进入上面tif的目录,用下面的指令生成box文件
tesseract langyp.fontyp.exp0.tif langyp.fontyp.exp0 -l chi_sim batch.nochop makebox
用记事本打开box文件,查看内容
如果不空,那就不用管了
如果是空的,则需要我们手动修改一下
3.box文件内容按下面的格式修改
【你要识别的字】 【字的x坐标】【字的y坐标】【宽度】【高度】
粤 60 17 140 125
ps:上面的数字你可以随便输,到时我们可以用 jTessBoxEditor 再进行修正的
然后,打开jTessBoxEditor
4.Box Editor–open 打开前面我们 merge 的 tif 文件
单击 粤 那一行可以在右边的 X Y W H 那修改数据 齿轮图标是确认修改
框好后 Save 则可以保存box文件
5. 生成 font_properties
新建一个空文件,文件名为 font_properties 不要后缀
文件内容:
fontyp 0 0 0 0 0
6.生成训练文件
tesseract langyp.fontyp.exp0.tif langyp.fontyp.exp0 -l eng -psm 7 nobatch box.train
7.生成字符集文件
unicharset_extractor langyp.fontyp.exp0.box
8.生成shape文件
shapeclustering -F font_properties -U unicharset -O langyp.unicharset langyp.fontyp.exp0.tr
9、生成聚集字符特征文件
mftraining -F font_properties -U unicharset -O langyp.unicharset langyp.fontyp.exp0.tr
10、生成字符正常化特征文件
cntraining langyp.fontyp.exp0.tr
11、更名
rename normproto fontyp.normproto
rename inttemp fontyp.inttemp
rename pffmtable fontyp.pffmtable
rename unicharset fontyp.unicharset
rename shapetable fontyp.shapetable
12、合并训练文件,生成fontyp.traineddata
combine_tessdata fontyp.
然后就可以得到自己训练的traineddata文件了
把他放到 tessdata 文件夹内就可以通过 lang 属性 使用了
文章最后
这 tesseract 识别真的不敢恭维。。。真的不好使
下面我推荐一个OCR的工具
cnocr
这个识别中文就特好使,网站里已经附带了使用教程
python OCR Tesseract 训练相关推荐
- python ocr中文训练_cnocr: cnocr是用来做中文OCR的Python 3包。cnocr自带了训练好的识别模型,安装后即可直接使用...
English README. cnocr 使用交流QQ群 欢迎扫码加入QQ交流群: 最近更新 [2020.05.29]:V1.2.2 主要变更: 优化了对数字识别的准确度. 优化了模型结构,进一步降 ...
- 使用Tesseract训练lang文件并OCR识别集装箱号
https://lonelygo.github.io/2017/07/21/使用Tesseract训练lang文件并OCR识别集装箱号/index.html
- python代码标识码_代码分享:使用Python和Tesseract来识别图形验证码
原标题:代码分享:使用Python和Tesseract来识别图形验证码 *本文原创作者:ipenox,本文属FreeBuf原创奖励计划,未经许可禁止转载 各位在企业中做Web漏洞扫描或者渗透测试的朋友 ...
- 基于Tesseract训练的数字识别研究
征地档案数字识别研究与应用 1 永州市自然资源与规划勘测事务中心 湖南 永州425000 摘要:针对征地档案数据整理建库工作中界址点坐标电子数据缺失现象,当前主要通过人工识别档案资料并且将坐标数据抄录 ...
- PHP 不跳转界面取input值进行验证_【Python】tesseract+uiautomator2+夜神模拟器 悠长假期手游集市识别验证码自动购买 - Amorius...
开宗明义:这篇文章实际上就是把我的操作记录一遍,以防以后忘记了,又要到处去搜罗.由于我是个python小白,所以这些操作都是各处学来拼到一起的,也因此我确信如果不赶紧记下来,很快就会忘掉.于是就趁热写 ...
- python ocr高精度识别_OCR识别-python版(一)
需求:识别图片中的文字信息 环境:windows系统 开发语言:python 使用工具类:1.pyocr 2.PIL 3.tesseract-ocr 步骤: 1.pyocr 网络通直接使用命令: pi ...
- python的tesseract库几个重要的命令
python的tesseract库几个重要的命令 在调用tesseract时,最重要的三个参数是 -l, -oem 和 -psm -l 参数控制识别文本的语言.可以通过命令 tesseract --l ...
- Windows下Tesseract训练音符识别
Windows下Tesseract训练音符识别 背景 开局一张图:现在有这么一个需求,要将数字简谱中的数字带点的内容识别出来做进一步的处理,比如 6 1 6 641 533 . . ... 识别成 F ...
- Tesseract: 训练(续)
为什么80%的码农都做不了架构师?>>> 目录 更易配置和使用的训练工具 获取工具 配置 训练 字符识别歧义校正 旧版本格式 新版本格式 词典: DAWG 文件 续上篇: &l ...
最新文章
- 台式机BIOS被加密后密码忘记解决办法
- OpenCASCADE:使用DRAW绘图
- 使用 uBLAS 进行实对称正定矩阵的 Cholesky 分解
- php获取类的实例变量
- 节点服务器列表文件,服务器emule必备知识(更新服务器列表与kad节点文件)
- 接苹果游戏 小学生邀请赛T3
- centos 7 拉黑IP
- [C++刷题笔记]——区间分解质数
- 视频边框背景如何虚化,简单操作几步实现
- ipad怎样和计算机连接网络,ipad怎样连接电脑itunes
- Mac安装steam提示Steam needs to be online to update. Please confirm your network connection and try again
- 继续写usb gadget驱动(解决枚举失败问题)
- 可参考的oa系统demo,抠图网站,机票界面,博客开发网站
- IJPay微信退款协议不正确 No appropriate protocol
- html网页文件保存rss订阅,博客RSS订阅一些优化方法
- vue项目打包及cdn优化
- 光纤到计算机过程,光纤光缆生产工艺流程详细分解.doc
- 【WP】Chrome主题diy
- 数据库开发工程师 + 职位要求技能要求(高级)
- Windows使用cmd刷入recovery.img