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 训练相关推荐

  1. python ocr中文训练_cnocr: cnocr是用来做中文OCR的Python 3包。cnocr自带了训练好的识别模型,安装后即可直接使用...

    English README. cnocr 使用交流QQ群 欢迎扫码加入QQ交流群: 最近更新 [2020.05.29]:V1.2.2 主要变更: 优化了对数字识别的准确度. 优化了模型结构,进一步降 ...

  2. 使用Tesseract训练lang文件并OCR识别集装箱号

    https://lonelygo.github.io/2017/07/21/使用Tesseract训练lang文件并OCR识别集装箱号/index.html

  3. python代码标识码_代码分享:使用Python和Tesseract来识别图形验证码

    原标题:代码分享:使用Python和Tesseract来识别图形验证码 *本文原创作者:ipenox,本文属FreeBuf原创奖励计划,未经许可禁止转载 各位在企业中做Web漏洞扫描或者渗透测试的朋友 ...

  4. 基于Tesseract训练的数字识别研究

    征地档案数字识别研究与应用 1 永州市自然资源与规划勘测事务中心 湖南 永州425000 摘要:针对征地档案数据整理建库工作中界址点坐标电子数据缺失现象,当前主要通过人工识别档案资料并且将坐标数据抄录 ...

  5. PHP 不跳转界面取input值进行验证_【Python】tesseract+uiautomator2+夜神模拟器 悠长假期手游集市识别验证码自动购买 - Amorius...

    开宗明义:这篇文章实际上就是把我的操作记录一遍,以防以后忘记了,又要到处去搜罗.由于我是个python小白,所以这些操作都是各处学来拼到一起的,也因此我确信如果不赶紧记下来,很快就会忘掉.于是就趁热写 ...

  6. python ocr高精度识别_OCR识别-python版(一)

    需求:识别图片中的文字信息 环境:windows系统 开发语言:python 使用工具类:1.pyocr 2.PIL 3.tesseract-ocr 步骤: 1.pyocr 网络通直接使用命令: pi ...

  7. python的tesseract库几个重要的命令

    python的tesseract库几个重要的命令 在调用tesseract时,最重要的三个参数是 -l, -oem 和 -psm -l 参数控制识别文本的语言.可以通过命令 tesseract --l ...

  8. Windows下Tesseract训练音符识别

    Windows下Tesseract训练音符识别 背景 开局一张图:现在有这么一个需求,要将数字简谱中的数字带点的内容识别出来做进一步的处理,比如 6 1 6 641 533 . . ... 识别成 F ...

  9. Tesseract: 训练(续)

    为什么80%的码农都做不了架构师?>>>    目录 更易配置和使用的训练工具 获取工具 配置 训练 字符识别歧义校正 旧版本格式 新版本格式 词典: DAWG 文件 续上篇: &l ...

最新文章

  1. 台式机BIOS被加密后密码忘记解决办法
  2. OpenCASCADE:使用DRAW绘图
  3. 使用 uBLAS 进行实对称正定矩阵的 Cholesky 分解
  4. php获取类的实例变量
  5. 节点服务器列表文件,服务器emule必备知识(更新服务器列表与kad节点文件)
  6. 接苹果游戏 小学生邀请赛T3
  7. centos 7 拉黑IP
  8. [C++刷题笔记]——区间分解质数
  9. 视频边框背景如何虚化,简单操作几步实现
  10. ipad怎样和计算机连接网络,ipad怎样连接电脑itunes
  11. Mac安装steam提示Steam needs to be online to update. Please confirm your network connection and try again
  12. 继续写usb gadget驱动(解决枚举失败问题)
  13. 可参考的oa系统demo,抠图网站,机票界面,博客开发网站
  14. IJPay微信退款协议不正确 No appropriate protocol
  15. html网页文件保存rss订阅,博客RSS订阅一些优化方法
  16. vue项目打包及cdn优化
  17. 光纤到计算机过程,光纤光缆生产工艺流程详细分解.doc
  18. 【WP】Chrome主题diy
  19. 数据库开发工程师 + 职位要求技能要求(高级)
  20. Windows使用cmd刷入recovery.img

热门文章

  1. android 平板桌面,给Android平板带点桌面系统体验:技德 Remix 平板 下月上市
  2. 我的ubuntu字体方案
  3. Infleqtion与Morningstar合作探索量子计算的新途径
  4. 不要Google,要Stumble!
  5. 邻居表项的delay_probe_time时长
  6. 【算法学习】贪心算法
  7. Mac上必备的思维导图:MindNode Mac中文版
  8. 机器学习——算法分类以及开发流程
  9. MCMChybrid GP_5.4 R语言
  10. 数据结构学习第十八课(寻路算法之深度寻路)