1,下载安装Tesseract-OCR 安装,链接地址Index of /tesseract

2,安装成功 tesseract -v

注意:安装后,要添加系统环境变量

3,cmd指定目录到 cd C:\Work\BlogsTest\TestPic,要识别图片的文件夹 识别:tesseract test.png result -l chi_sim

识别成功的效果,result.txt文件会自动生成

要注意:Tesseract-OCR的安装目录要包含识别中文的字符集chi_sim.traineddata,可以在GitHub下载GitHub - tesseract-ocr/tessdata: Trained models with support for legacy and LSTM OCR engine

4,可见第3步的识别效果不是很好,想到通过训练自定义字库,提高图片的识别效果

(0)下载安装jTessBoxEditor,VietOCR - Browse /jTessBoxEditor at SourceForge.net

注意要安装JavaRuntime

(1)打开jTessBoxEditor,选择Tools->Merge TIFF,进入训练样本所在文件夹,选中要参与训练的样本图片:

(2)点击 “打开” 后弹出保存对话框,选择保存在当前路径下,文件命名为 “qq66.test.exp0.tif” ,格式只有一种 “TIFF” 可选。

tif文面命名格式[lang].[fontname].exp[num].tif
lang是语言,fontname是字体,num为自定义数字。

比如我们要训练自定义字库 qq66,字体名test,那么我们把图片文件命名为 qq66.test.exp0.tif

(3)使用tesseract生成.box文件

tesseract qq66.test.exp0.tif qq66.test.exp0 -l chi_sim --psm 6 batch.nochop makebox

注意:--psm的语法,数字对应不同的 页面分割模式。

(4)使用jTessBoxEditor矫正.box文件的错误

打开后矫正后,点击 save

(5)生成font_properties文件:(该文件没有后缀名)

执行命令,执行完之后,会在当前目录生成font_properties文件
echo test 0 0 0 0 0 >font_properties

也可以手工新建一个名为font_properties的文本文件,输入内容 “test 0 0 0 0 0” 表示字体test的粗体、倾斜等共计5个属性。这里的“test”必须与“qq66.test.exp0.box”中的“test”名称一致。

(6)使用tesseract生成.tr训练文件

执行下面命令,执行完之后,会在当前目录生成qq66.test.exp0.tr文件。

tesseract qq66.test.exp0.tif qq66.test.exp0 nobatch box.train

(7)生成字符集文件:

执行下面命令:执行完之后会在当前目录生成一个名为“unicharset”的文件。

unicharset_extractor qq66.test.exp0.box

(8)生成shape文件:

执行下面命令,执行完之后,会生成 shapetable 和 zwp.unicharset 两个文件。

shapeclustering -F font_properties -U unicharset -O qq66.unicharset qq66.test.exp0.tr

(8)生成聚字符特征文件

执行下面命令,会生成 inttemp、pffmtable、shapetable和zwp.unicharset四个文件。

mftraining -F font_properties -U unicharset -O qq66.unicharset qq66.test.exp0.tr

(9)生成字符正常化特征文件

执行下面命令,会生成 normproto 文件。

cntraining qq66.test.exp0.tr

(10)文件重命名
重新命名inttemp、pffmtable、shapetable和normproto这四个文件的名字为[lang].xxx。

这里修改为qq66.inttemp、qq66.pffmtable、qq66.shapetable和qq66.normproto

(11)合并训练文件
执行下面命令,会生成qq66.traineddata文件。

combine_tessdata qq66.

最后文件目录

5,用新生成的qq66.traineddata字符集,重新识别身份证

6,可以同时选择多个不同的样本生成box文件

7,在原有训练数据的基础上,加入新的字符训练信息

经研究找到实用合并方法(红色部分为示例,实际应为你自己生成的文件名):

在新的训练数据生成.box 和.tr文件后,

生成字符集 unicharset_extractor add.font.exp0.box new.font.exp0.box

合并训练数据(.tr)

mftraining -F font_properties -U unicharset -O added.unicharset add.font.exp0.tr new.font.exp0.tr

聚合所有的tr文件:

cntraining add.font.exp0.tr new.font.exp0.tr

8,设置图片分割模式

Page segmentation modes:

0 = Orientation and script detection (OSD) only.
1 = Automatic page segmentation with OSD.
2 = Automatic page segmentation, but no OSD, or OCR
3 = Fully automatic page segmentation, but no OSD. (Default)
4 = Assume a single column of text of variable sizes.
5 = Assume a single uniform block of vertically aligned text.
6 = Assume a single uniform block of text.
7 = Treat the image as a single text line.
8 = Treat the image as a single word.
9 = Treat the image as a single word in a circle.
10 = Treat the image as a single character.

例如:

tesseract test.png result  -l chi_sim -psm 7 nobatch

Tesseract-OCR-v5.0中文识别,训练自定义字库,提高图片的识别效果相关推荐

  1. java图片片识别中文_Java中使用tess4J进行图片文字识别(支持中文)

    Java 版本:建议JDK1.8 使用的软件是tesseractocr3.02,3以后的版本才支持中文, 这个软件需要安装在本地电脑中,安装的过程中全部都按照默认进行安装(以便于Java直接调用) 代 ...

  2. 使用Tesseract-OCR训练自定义字库

    文本识别 前言 由于我的个人博客之前挂了,一直没来得及迁移,所以又重新拾起了csdn- 在利用python进行文本识别时,使用tesseract往往是一个非常好的选择,且tesseract支持自己训练 ...

  3. python文字识别算法_Python图像处理之图片文字识别(OCR)

    OCR与Tesseract介绍 将图片翻译成文字一般被称为光学文字识别(Optical Character Recognition,OCR).可以实现OCR 的底层库并不多,目前很多库都是使用共同的几 ...

  4. 视频识别训练2.3(实现TensorFlow视频识别)

    盯住梅西:TensorFlow目标检测实战 https://baijiahao.baidu.com/s?id=1581115075233058548&wfr=spider&for=pc ...

  5. 英文识别 java_Java-百度API的图片文字识别(支持英文)

    PS: 基于Java 1.8 版本控制:maven 使用之前需要获取对应的项目API_KEY,SECRET_KEY,这些参数在使用API的时候必须用到,用于生成access_token. 如何获取这些 ...

  6. python识别文字软件_|python图片文字识别扫描工具下载免费版 - 欧普软件下载

    python图片文字识别扫描工具是一款文字识别软件,软件基于Python和百度识别接口设计而来,可快速识别图片中的文字,写入TXT文件,支持快捷键F1截屏,虽说是基于命令行的操作,但是操作也算简单,需 ...

  7. Python人工智能之图片识别,一行代码实现图片文字识别

    我们以识别诗词为例 下面是我们要识别的图片 先看下效果图 我们运行代码后识别的结果,有几个字没有正确识别,但是大多数字都能识别出来. 一行代码就能识别图片,我们背后要做些准备工作的 •这里我们需要用到 ...

  8. 强大的抓包工具 Fiddler Web Debugger v5.0 中文破解版

    Fiddler是位于客户端和服务器端的HTTP代理,也是目前最常用的http抓包工具之一 . 它能够记录客户端和服务器之间的所有 HTTP请求,可以针对特定的HTTP请求,分析请求数据.设置断点.调试 ...

  9. python图片识别训练汽车_python实现图片识别汽车功能

    本文实例为大家分享了python实现图片识别汽车的具体代码,供大家参考,具体内容如下 准备工作 1.登陆 2.安装 pip install baidu-aip 模块 原理读取图片的二进制信息,调用百度 ...

最新文章

  1. Android ListView (多个adapter 说明)
  2. 求二叉树最长路径长度和
  3. 问题引发由于与GI相关的python脚本中的错误,Gnome终端无法启动
  4. HALCON示例程序novelty_detection_dyn_threshold.hdev纱网缺陷检测
  5. 程序员离职代码交接_程序员离职大半个月,被老板命令回单位讲代码,员工:一次1万...
  6. 3144: [Hnoi2013]切糕
  7. 有史以来最强的 5G 入门科普!
  8. MATLAB实现智能优化算法
  9. 2022年下半年软考报名时间汇总,最新版!
  10. 计算机科学发展与大规模集成电路,计算机科学与技术发展趋势
  11. 资产配置(理论+模型),科学找圣杯
  12. 基于python技术的酒店管理系统
  13. Linux下Teamviewer安装、设置及开机启动
  14. 静态HTML网页设计作品——动漫电影《你的名字》(7页) HTML+CSS大作业_ 动漫电网页制作作业_动漫电网页设计...
  15. 用fiddler+chrome搞定在线学习网站
  16. 春风十里不如Node中的一股清流
  17. 【机器学习】线性回归与逻辑回归的理论与实战
  18. 基于SSM的超市会员管理系统
  19. 采用FFmpeg从视频中提取音频(声音)保存为mp3文件
  20. 计算机屏幕大小怎么计算,电视机尺寸怎么算 电视机的尺寸换算公式

热门文章

  1. 记一次MySQL创建数据库连接时提示数据库超时问题
  2. torch.nn模块之池化层详解
  3. 安装Mysql服务教程
  4. 王者荣耀看阵容选英雄(一)
  5. ajax提交form表单
  6. Yocto add dnf package manager
  7. 中国制造的成就,高新技术出口连续17年位居全球第一,占比持续上升
  8. 12306春运抢票技术讲坛,春运抢票回家过年陪老婆!
  9. Vue3--ref使用(解决ref无法获取dom元素的问题)
  10. javascript对象使用总结