Tesseract训练识别数字

  • 一、软件环境
      • 1.安装Tesseract 3.0.2
      • 2.安装jTessBoxEditorFX训练工具
    • 二、训练前需要准备的素材
        • 1.多张包含数字的图片
      • 三、开始训练
        • 1. 新建一个名为 font_propertities 的文本文件
        • 2. 用jTessBoxEditorFx将多个图片合并成一个包含多页图片的tif文件
        • 3. 创建Box文件
        • 4. jTessBoxEditorFx打开Box文件
        • 5. 根据BOX文件和tif文件生成特征文件
        • 6. 生成最终语言文件
        • 6. 通过命令行验证训练结果
    • 四. 在c# 中使用
      • 1.引入
      • 2.代码
        • a.初始化
        • b.识别

一、软件环境

1.安装Tesseract 3.0.2

Github上找到 Tesseract ,安装 windows下的版本(无需源代码)

2.安装jTessBoxEditorFX训练工具

    需要JDK1.8

二、训练前需要准备的素材

1.多张包含数字的图片
  d盘新建一个文件夹 number, 将图片放入其中,(白底黑字,图片大小恰好包含数字,一张可包含多个数字,一般一个图片包含1234567890.,并且是一种字体)

三、开始训练

1. 新建一个名为 font_propertities 的文本文件
               里面内容为 normal 0 0 0 0 0 (normal代表字体名)
2. 用jTessBoxEditorFx将多个图片合并成一个包含多页图片的tif文件
            合成的文件取名为 number.normal.exp2.tif

3. 创建Box文件
          cd d:\numbertesseract number.normal.exp2.tif number.normal.exp2 -l eng batch.nochop makebox这里的eng是默认的语言,当我们创建好自己的number语言后,以后再次重新训练可以改成number,也就是:

tesseract number.normal.exp2.tif number.normal.exp2 -l number batch.nochop makebox

4. jTessBoxEditorFx打开Box文件
           打开后,查看识别的结果,并纠正错误,保存

5. 根据BOX文件和tif文件生成特征文件
     命令行 执行如下命令(可放入一个.bat文件便于执行)tesseract number.normal.exp2.tif number.normal.exp2  nobatch box.trainunicharset_extractor number.normal.exp2.boxshapeclustering -F font_properties -U unicharset number.normal.exp2.trmftraining -F font_properties -U unicharset -O unicharset number.normal.exp2.trcntraining  number.normal.exp2.tr执行完毕,将生成5个文件inttemp  normproto  pffmtable  shapetable   unicharset
6. 生成最终语言文件
  将以上五个文件前面都改名,前面加上 number.


然后,命令行执行

combine_tessdata number.

就会生成 number.traineddata, 将其拷贝的tesseract 执行目录的tessdata下

6. 通过命令行验证训练结果

tesseract number.normal.exp2.tif output -l number

执行后,执行结果在output.txt里

以上过程可以反复执行,不断修正精确度

四. 在c# 中使用

1.引入
          nuget引入 tesseract ,2.41版(为何使用低版本?2.41以上版本,无法在xp下使用,使用时报错,找不到libtesseract304.dll文件,事实上文件都在那里,而且需要的vc runtime 都装上了)   tesseract 2.41 依赖于vc++ runtime 2012 ,如果不安装,会报错找不到dll文件
2.代码
a.初始化

b.识别

参考:

https://blog.csdn.net/jianglei1310446/article/details/77572435

Tesseract训练识别数字相关推荐

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

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

  2. 【K210】K210学习笔记六——MaixHub在线模型训练识别数字

    [K210]K210学习笔记六--MaixHub在线模型训练识别数字 前言 K210准备工作 数据的获取 MaixHub如何在线训练模型 训练模型在K210上的测试 小结 前言 本人大四学生,电赛生涯 ...

  3. Android实现扫一扫识别图像数字(镂空图像数字Tesseract训练)(上)

    Android实现扫一扫识别图像数字(镂空图像数字训练)(上) 关于 需要的工具以及安装运行步骤如下 1.安装tesseract 2.下载使用jTessBoxEditor与素材准备 3.开始操作 步骤 ...

  4. Tesseract训练中文字体识别(转)

    原文地址:http://www.jianshu.com/p/31afd7fc5813 前言 网上已经有大量的tesseract的识别教程,但是主要有两个缺点: 大多数比较老,有部分内容已经不适用. 大 ...

  5. Windows下Tesseract训练音符识别

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

  6. Tesseract字体识别 及 jTessBoxEditor工具进行训练 及 Java API实现字体识别

    Tesseract程序识别 程序源码 tesseract项目的github地址 (Linux下可通过包管理器下载安装) 基本使用 注意点:1,图片文件类型为tiff/tif,2,output是输出文件 ...

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

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

  8. 关于Tesseract OCR 中文训练识别小试(java调用Tess4j)

    2017.9.20日小结 最近接到是关于消防系统协议解析仪器的项目,目的是从协议解析仪器获取有效数据,并解析数据(目的是不希望消防主机的数据信息再传给主机厂商而是最后能给自己收集调用).由于各个消防器 ...

  9. Caffe手写数字训练识别 (4)

    Caffe手写数字训练识别 在配置caffe后,验证编译是否成功和caffe入门,那我们就从训练手写数字识别开始吧. 用手写数据库MInist数据库: THE MNIST DATABASEof han ...

最新文章

  1. Win7系统安装MySQL5.5.21图解教程
  2. hdu3870——平面图最小割
  3. 设计模式之_Strategy_02
  4. 设置ViewPager 自动滑动时间,速度 方便展示动画
  5. Java ClassLoader getSystemClassLoader()方法与示例
  6. SVN 代码迁出,导出,同步至生产环境脚本
  7. 如何避免Scrum敏捷开发团队反思会形式化,海星法介绍
  8. 怎么用c语言输入一串字符个数字,请问这个用c怎么做:输入一串字符,分别统计其中数字和字母的个数...
  9. Oracle学习笔记之触发器
  10. 音量控制 单片机c 语言,(封贴)请大神代写音响音量控制程序(有偿代写)单片机加TDA7313控制...
  11. 【2】嵌入式TCP/IP协议——————Art-Net处理流程
  12. 经验模态分解python_EMD经验模态分解
  13. 苹果MAC系统读写NTFS格式u盘硬盘方法
  14. 打造铁军团队(王牌军)的核心三点
  15. 郭天祥六年非一般的大学--哈尔滨工程大学学生
  16. matlab 读取脉冲数,已知一段波形,求脉冲个数,用代码实现
  17. layui 点击保存延迟几秒跳转页面
  18. 单片机中RAM少,有哪几点原因?
  19. 日历android实训报告,EAD万年历实训报告及Verilog HDL源码
  20. a320计算机测试,A320飞机常见计算机故障复位提示.pdf

热门文章

  1. python基于PHP+MySQL的在线音乐点歌系统
  2. 深度学习究竟是什么,举个例子解释一下
  3. 修改Element-ui表格样式
  4. 电脑服务器型号在哪,电脑服务器型号内存
  5. 给微信小程序配一个App如何?
  6. 前端开发新人写简历的大概套路
  7. ASP.NET页面在IE缓存的清除办法 (转)
  8. java 提取违反顺序_oracle 中 java.sql.SQLException: ORA-01002: 提取违反顺序
  9. 【Java基础知识】JDBC基本操作
  10. 电商分销APP开发功能模块