tesseract-ocr字库训练图文讲解

2024-03-07 22:20

本文主要是介绍tesseract-ocr字库训练图文讲解,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

第一步合成图片集

你需要把使用jTessBoxEditor工具把你的训练素材及多张图片合并成一张tif格式的图片集

第二步  生成box文件

运行tesseract命令,tesseract mjorcen.normal.exp0.tif mjorcen.normal.exp0 batch.nochop makebox,生成box文件 ,

 

第三步 

用 jTessBoxEditor打开生成的图片集 mjorcen.normal.exp0.tif ,注意  mjorcen.normal.exp0.tif 与对应的box文件一定要和他处于同一个文件夹下,然后就可以开始调整了,调整完之后保存

第四步 训练

首先在目录下新建一个名字为“font_properties”的文本文件,并且输入文本  normal 0 0 0 0 0,表示非斜体,粗体的一般字体

执行  tesseract  mjorcen.normal.exp0.tif mjorcen.normal.exp0  nobatch box.train  进行测试训练

执行 unicharset_extractor mjorcen.normal.exp0.box  目录下生成一个名为unicharset的文件

接下来开始正式进行训练

1、执行  shapeclustering -F font_properties.txt -U unicharset mjorcen.normal.exp0.tr 

 

2 、执行 mftraining -F font_properties.txt -U unicharset -O unicharset mjorcen.normal.exp0.tr

 

3  执行 cntraining mjorcen.normal.exp0.tr  

目录下会生成对应下列五个文件,在这五个文件前加上normal.进行重命名

 

4 执行 combine_tessdata normal.   合并五个文件,此时目录下的normal.traineddata 就是训练好的字库文件

第五步 测试字库

把normal.traineddata  复制到Tesseract-OCRt程序目录下的“tessdata”目录

在Tesseract-OCRt程序目录下执行  tesseract.exe mjorcen.normal.exp0.png out –l normal

out.txt文件中会保存你识别到的数据;

这个其实网上资料很多,但大都描述的不够详细和完整,这里我一步一步把使用tesseract-ocr 训练字库的方法和步骤进行了描述,亲测是没有问题。

 

转载于:https://www.cnblogs.com/dafanjoy/p/7566930.html

这篇关于tesseract-ocr字库训练图文讲解的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/785021

相关文章

Java中实现对象的拷贝案例讲解

《Java中实现对象的拷贝案例讲解》Java对象拷贝分为浅拷贝(复制值及引用地址)和深拷贝(递归复制所有引用对象),常用方法包括Object.clone()、序列化及JSON转换,需处理循环引用问题,... 目录对象的拷贝简介浅拷贝和深拷贝浅拷贝深拷贝深拷贝和循环引用总结对象的拷贝简介对象的拷贝,把一个

Unity新手入门学习殿堂级知识详细讲解(图文)

《Unity新手入门学习殿堂级知识详细讲解(图文)》Unity是一款跨平台游戏引擎,支持2D/3D及VR/AR开发,核心功能模块包括图形、音频、物理等,通过可视化编辑器与脚本扩展实现开发,项目结构含A... 目录入门概述什么是 UnityUnity引擎基础认知编辑器核心操作Unity 编辑器项目模式分类工程

MySQL连表查询之笛卡尔积查询的详细过程讲解

《MySQL连表查询之笛卡尔积查询的详细过程讲解》在使用MySQL或任何关系型数据库进行多表查询时,如果连接条件设置不当,就可能发生所谓的笛卡尔积现象,:本文主要介绍MySQL连表查询之笛卡尔积查... 目录一、笛卡尔积的数学本质二、mysql中的实现机制1. 显式语法2. 隐式语法3. 执行原理(以Nes

python使用Akshare与Streamlit实现股票估值分析教程(图文代码)

《python使用Akshare与Streamlit实现股票估值分析教程(图文代码)》入职测试中的一道题,要求:从Akshare下载某一个股票近十年的财务报表包括,资产负债表,利润表,现金流量表,保存... 目录一、前言二、核心知识点梳理1、Akshare数据获取2、Pandas数据处理3、Matplotl

Django开发时如何避免频繁发送短信验证码(python图文代码)

《Django开发时如何避免频繁发送短信验证码(python图文代码)》Django开发时,为防止频繁发送验证码,后端需用Redis限制请求频率,结合管道技术提升效率,通过生产者消费者模式解耦业务逻辑... 目录避免频繁发送 验证码1. www.chinasem.cn避免频繁发送 验证码逻辑分析2. 避免频繁

精选20个好玩又实用的的Python实战项目(有图文代码)

《精选20个好玩又实用的的Python实战项目(有图文代码)》文章介绍了20个实用Python项目,涵盖游戏开发、工具应用、图像处理、机器学习等,使用Tkinter、PIL、OpenCV、Kivy等库... 目录① 猜字游戏② 闹钟③ 骰子模拟器④ 二维码⑤ 语言检测⑥ 加密和解密⑦ URL缩短⑧ 音乐播放

RabbitMQ消费端单线程与多线程案例讲解

《RabbitMQ消费端单线程与多线程案例讲解》文章解析RabbitMQ消费端单线程与多线程处理机制,说明concurrency控制消费者数量,max-concurrency控制最大线程数,prefe... 目录 一、基础概念详细解释:举个例子:✅ 单消费者 + 单线程消费❌ 单消费者 + 多线程消费❌ 多

从入门到进阶讲解Python自动化Playwright实战指南

《从入门到进阶讲解Python自动化Playwright实战指南》Playwright是针对Python语言的纯自动化工具,它可以通过单个API自动执行Chromium,Firefox和WebKit... 目录Playwright 简介核心优势安装步骤观点与案例结合Playwright 核心功能从零开始学习

Visual Studio 2022 编译C++20代码的图文步骤

《VisualStudio2022编译C++20代码的图文步骤》在VisualStudio中启用C++20import功能,需设置语言标准为ISOC++20,开启扫描源查找模块依赖及实验性标... 默认创建Visual Studio桌面控制台项目代码包含C++20的import方法。右键项目的属性:

嵌入式数据库SQLite 3配置使用讲解

《嵌入式数据库SQLite3配置使用讲解》本文强调嵌入式项目中SQLite3数据库的重要性,因其零配置、轻量级、跨平台及事务处理特性,可保障数据溯源与责任明确,详细讲解安装配置、基础语法及SQLit... 目录0、惨痛教训1、SQLite3环境配置(1)、下载安装SQLite库(2)、解压下载的文件(3)、