Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Tesseract-OCR识别中文与训练字库实例

Tesseract-OCR识别中文与训练字库实例

作者头像
竹清
发布于 2019-01-23 09:07:44
发布于 2019-01-23 09:07:44
4.5K0
举报
文章被收录于专栏:竹清助手竹清助手

关于中文的识别,效果比较好而且开源的应该就是Tesseract-OCR了,所以自己亲身试用一下,分享到博客让有同样兴趣的人少走弯路。 文中所用到的身份证图片资源是百度找的,如有侵权可联系我删除。

一、准备工作 1、下载Tesseract-OCR引擎,注意要3.0以上才支持中文哦,按照提示安装就行。 2、下载chi_sim.traindata字库。要有这个才能识别中文。下好后,放到Tesseract-OCR项目的tessdata文件夹里面。 3、下载jTessBoxEditor,这个是用来训练字库的。 以上的几个在百度都能找到下载,就不详细讲了。

二、识别 1、进入cmd,进入到要识别的图片的路径下。 2、输入命令 1 tesseract 图片名称 生成的结果文件的名称 字库 例如我的图片识别就是: 1 tesseract test.jpg result -l chi_sim 识别完后会生成result.txt文件 当然啦效果不太理想。所以我们要训练自己的字库。

三、训练 1、将图片转换成tif格式,用于后面生成box文件。可以通过画图,然后另存为tif即可。 更改图片名字,这个是有要求的=。= tif文面命名格式[lang].[fontname].exp[num].tif lang是语言 fontname是字体 比如我们要训练自定义字库 mjorcen字体名normal 那么我们把图片文件重命名 mjorcen.normal.exp0.jpg在转tif。

2、生成box文件。 1 tesseract mjorcen.normal.exp0.jpg mjorcen.normal.exp0 -l chi_sim batch.nochop makebox box文件和对应的tif一定要在相同的目录下,不然后面打不开。

3、打开jTessBoxEditor矫正错误并训练 打开train.bat 找到tif图,打开,并校正。

4、训练。 只要在命令行输入命令即可。 1 tesseract mjorcen.normal.exp0.jpg mjorcen.normal.exp0 nobatch box.train 1 unicharset_extractor mjorcen.normal.exp0.box

在这我明明已经矫正好了,但是还是有1个字符不能识别出来,报的错跟实际上完全没有相关性,不知道是不是bug,到后面的结果就是“园”字没有识别出来。 先不管,毕竟只有一个样本。

新建一个font_properties文件 里面内容写入 normal 0 0 0 0 0 表示默认普通字体

继续敲命令 1 2 3 4 5 6 7 8 9 shapeclustering -F font_properties -U unicharset mjorcen.normal.exp0.tr

mftraining -F font_properties -U unicharset -O unicharset mjorcen.normal.exp0.tr

cntraining mjorcen.normal.exp0.tr

最后会生成五个文件,把目录下的unicharset、inttemp、pffmtable、shapetable、normproto这五个文件前面都加上normal. 如图:

命令行输入,合并五个文件: 1 combine_tessdata normal. 得到训练好的字库。

四、测试 1、把 normal.traineddata 复制到Tesseract-OCR 安装目录下的tessdata文件夹中

2、识别命令: 1 tesseract mjorcen.normal.exp0.jpg mjorcen.normal.exp0 -l normal

3、效果

对比:

总结:肯定要自己训练过后的字库识别效果好,接下来要把整个项目弄进android,还要研究怎么将多个字库合并成一个字库,因为我不可能一次训练完所有的图片文字的。到时候有什么成果了再分享博文。希望大家可以点赞!谢谢。

更新:没有错误的话命令行的提示应该是这样的

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-01-04,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 竹清助手 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
tesseract-ocr验证码识别
下载安装tesseract-ocr-setup-3.02.02 训练工具jTessBoxEditor-2.3.0 下载地址
丁D
2022/08/12
1.6K0
tesseract-ocr验证码识别
利用jTessBoxEditor工具进行Tesseract3.02.02样本训练,提高验证码识别率
前文已经简要介绍tesseract ocr引擎的安装及基本使用,其中提到使用-l eng参数来限定语言库,可以提高识别准确率及识别效率。
黯然销魂掌
2018/09/27
3.9K0
利用jTessBoxEditor工具进行Tesseract3.02.02样本训练,提高验证码识别率
真实场景下的Tesseract神经网络训练识别图片验证码
何谓“真实场景”,意即图片验证码来源于实际的数据采集过程中遇到的网站,对图片验证码的识别训练工作也是出自于真实的环境。而非像很多文章用一个验证码库生成好几万个验证码图片样本,然后用一个CNN或LSTM模型,把数据扔进去跑。
州的先生
2020/03/19
3.9K0
真实场景下的Tesseract神经网络训练识别图片验证码
tesseract-ocr的使用
——显示出tesseract的版本号则表示安装,及环境变量配置成功。否则根据提示检查安装失败原因
搁浅同学
2022/07/21
1.3K0
OpenCV Python + Tesseract-OCR轻松实现中文识别
下载Tesseract-OCR 5.0.0-alpha.20201127安装包并安装!然后在环境变量中添加
小白学视觉
2021/01/06
10.5K0
OpenCV Python + Tesseract-OCR轻松实现中文识别
tesseract-ocr 实现图片识别功能
http://blog.sina.com.cn/s/blog_56d988430102w37c.html
bear_fish
2018/09/19
6K0
tesseract-ocr 实现图片识别功能
Tesseract:训练
http://www.zmonster.me/2015/05/05/tesseract-training.html
bear_fish
2018/09/19
1.8K0
Tesseract:训练
tesseract-ocr安装
语言包地址:https://github.com/tesseract-ocr/tessdata
jaychou
2022/12/26
1.2K0
Java使用Tesseract-OCR实战
tesseract-ocr-w64-setup-v5.3.0.20221214.exe 选择安装目录,下一步,下一步默认安装
九转成圣
2024/04/10
5910
Tika结合Tesseract-OCR 实现光学汉字识别(简体、宋体的识别率百分之百)—附Java源码、测试数据和训练集下载地址
 OCR(Optical character recognition) —— 光学字符识别,是图像处理的一个重要分支,中文的识别具有一定挑战性,特别是手写体和草书的识别,是重要和热门的科学研究方向。可惜国内的科研院所,基本没有几个高识别率的训练集——笔者联系过北京语言大学研究生一篇论文的作者,他们论文说有%90的正确识别率,结果只做了20个笔画简单的汉字(20/6753 = %0.3 常用简体汉字的千分之三),然后找了20个学生,各自手写了一遍。真的是为了论文而论文,而且很会选择样本(小而简单)
NaughtyCat
2020/10/09
4.2K0
Tika结合Tesseract-OCR 实现光学汉字识别(简体、宋体的识别率百分之百)—附Java源码、测试数据和训练集下载地址
Tesseract OCR初探
Refer from http://hellosure.github.io/ocr/2014/10/11/tesseract-ocr/
全栈程序员站长
2022/07/25
7.5K0
Tesseract OCR初探
Android使用Tesseract-ocr进行文字识别
Tessseract是一款由HP实验室开发由 Google 维护的开源 OCR(Optical Character Recognition , 光学字符识别)引擎。能够支持中文十分难得。虽然其识别效果不是很理想,但是对于要求不高的中小型项目来说,已经足够用了。
Vaccae
2019/07/25
10.2K0
tesseract-ocr识别英文和中文图片文字以及扫描图片实例讲解
本文参考http://blog.sina.com.cn/s/blog_4aa166780101cji7.html实现,在这里感谢该文章的作者。 OCR(Optical Character Recognition):光学字符识别,是指对图片文件中的文字进行分析识别,获取的过程。 Tesseract:开源的OCR识别引擎,初期Tesseract引擎由HP实验室研发,后来贡献给了开源软件业,后经由Google进行改进,消除bug,优化,重新发布。当前版本为3.02 项目下载地址为:http://jaist.dl.
朱晓霞
2018/04/18
8.6K1
tesseract-ocr识别英文和中文图片文字以及扫描图片实例讲解
我的AI之路 —— OCR文字识别快速体验版
还记得前一阵某小盆友拿过来一个全是图片的ppt,让我把里面的文字给抠出来(我当时很震惊!!!),随后在网上随便找了个OCR的在线文档转换软件,就给转过来了——这里面用到的技术就是OCR文字识别,所以本篇就带大家宏观上了解一下文字识别的技术方案与实现过程。
用户1154259
2018/08/20
4.2K0
我的AI之路 —— OCR文字识别快速体验版
JAVA——Tess4J简单的图像识别DEMO
2、在任意地方创建一个文件夹tessdata,将下载的chi_sim.traineddata 和 eng.traineddata语言包存放在该目录下,也可以直接存放到自己项目的resources/tessdata目录下。
全栈程序员站长
2022/09/05
2.1K0
JAVA——Tess4J简单的图像识别DEMO
Tesseract-OCR 4.1.0 安装和使用— windows及CentOS
 OCR(Optical character recognition) —— 光学文字识别,是图像处理的一个重要分支,中文的识别具有一定挑战性,特别是手写体和草书的识别,是重要和热门的科学研究方向
NaughtyCat
2020/10/09
3.8K1
Tesseract-OCR 4.1.0 安装和使用— windows及CentOS
Python 中文图片OCR
有个需求,需要从一张图片中识别出中文,通过python来实现,这种这么高大上的黑科技我们普通人自然搞不了,去github找了一个似乎能满足需求的开源库-tesseract-ocr: Tesseract的OCR引擎目前已作为开源项目发布在Google Project,其项目主页在这里查看https://github.com/tesseract-ocr, 它支持中文OCR,并提供了一个命令行工具。python中对应的包是pytesseract. 通过这个工具我们可以识别图片上的文字。 笔者的开发环境如下: ma
巫山老妖
2018/07/20
11.6K1
识别验证码继续爆破后台(三)
有的时候,并不是说所有验证码用api或者tesseract都可以正确识别出来的,还是需要经过相关训练,让tesseract知道你想让它识别出来的验证码。
Jumbo
2018/07/26
1K0
识别验证码继续爆破后台(三)
开源OCR引擎Tesseract
知名的开源OCR引擎Tesseract 3.0版本日前发布,可以在项目网站下载:http://code.google.com/p/tesseract-ocr, 新版本支持中文,中文语言包定义http:
张善友
2018/01/30
8.3K0
爬取微信公众号所有历史文章 - (03) python结合tesseract-ocr做图文识别
前面我们讲到了adb的封装,里面具体讲到到了在一副图片中寻找目标的坐标并点击。这篇文章我们讲讲对一副图片的特定区域做截取,并利用开源库做图纹识别。
efonfighting
2019/08/02
1.5K0
爬取微信公众号所有历史文章 - (03) python结合tesseract-ocr做图文识别
推荐阅读
相关推荐
tesseract-ocr验证码识别
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档