tesseract3.01的训练和使用
相关源码、资源下载:http://code.google.com/p/tesseract-ocr/downloads/list
训练步骤:
1、 Generate Training Images:生成tif图像文件(简单的几个汉字);
如:ABC.Roman.exp0.tif([lang].[fontname].exp[num].tif)
2、 Make Box Files:由上tif图像文件生成box文件;由tesseract.exe生成box文件;打开生成的box文件,修改其中不正确的部分;
配置文件参数:"batch.nochop", "makebox"
运行文件:tesseractmain.cpp
如:ABC.Roman.exp0.box
3、 Run Tesseract for Training:
配置文件参数:"nobatch", "box.train"或"nobatch", "box.train.stderr"
运行文件:tesseractmain.cpp
生成的文件包括:ABC.Roman.exp0.tr 、ABC.Roman.exp0.txt
4、 Compute the Character Set:
运行文件:unicharset_extractor.cpp
生成的文件:unicharset
5、 font_properties:
需要自己创建一个txt文件,如font_properties.txt
运行文件:mftraining.cpp
生成的文件:inttemp、Microfeat、pffmtable、ABC.unicharset
6、 Clustering:
运行文件:mftraining.cpp(类似5)
运行文件:cntraining.cpp
生成的文件:normproto
7、 Dictionary Data:
需要自己创建5个txt文件,如:frequent_words_list.txt、words_list.txt、punc_list.txt、number_list.txt、user_words_list.txt
运行文件:wordlist2dawg.cpp
生成的文件:ABC.freq-dawg、ABC.word-dawg、(ABC.punc-dawg、ABC.number-dawg、ABC.user-words)
8、 The last file:
需要自己手动创建一个unicharambigs文件
9、 Putting it all together:
将normproto, Microfeat, inttemp, pffmtable四个文件重命名以ABC.为前缀,分别改为ABC.normproto, ABC.Microfeat, ABC.inttemp, ABC.pffmtable
运行文件:combine_tessdata.cpp
生成的文件:ABC.traineddata
以上的所有.cpp文件均可以根据自己的实际要求进行相应的修改。
使用:
将生成的ABC.traineddata文件拷贝到tessdata目录下,然后调用tesseractmain.cpp文件执行即可。
参考文献:
1、 http://code.google.com/p/tesseract-ocr/wiki/TrainingTesseract3
2、 http://www.docin.com/p-216160535.html
3、 http://blog.wudilabs.org/entry/f25efc5f/
4、 http://blog.csdn.net/dyfleoo/article/details/6959591
5、 http://blog.csdn.net/fengbingchun/article/details/6920667
- 顶
- 2
- 踩
tesseract3.01的训练和使用的更多相关文章
- 关于Tesseract3.01的使用方法
Tesseract就不多介绍勒,能找到的人都知道是干嘛的 下面记录一下C# vs2010下的使用方法(借鉴http://blog.csdn.net/bobo1013767522/article/det ...
- 2018.11.01 NOIP训练 树的排列(树形dp)
传送门 跟这道题差不多. 只不过是让权值小的儿子做权值大的儿子的父亲而已. 代码
- 2018.11.01 NOIP训练 梭哈(模拟)
传送门 这题貌似不考智商啊. 直接按题意写就可以了. 事实上把牌从小到大排序之后写起来很舒服的. 然后就是有些地方可以人脑减代码量和判断次数. (提示:满堂红和某几种同类型的牌的大小判断) 然后注意A ...
- 2018.11.01 NOIP训练 图论(线段树+倍增+dfs序)
传送门 一道挺妙的题. 对于询问点(u,v),如右图所示,我们可以发现存在一个点m在u->v的路径中,m子树的点到u是最近的,m子树外到v是最近的.其中dis(u,m)=(dis(u,v)-1) ...
- 2018.11.01 NOIP训练 木棒分组(搜索+剪枝)
传送门 测试搜索的时候状态定义错了233. 我们把木棒从大到小排序. 然后保证每一组搜到的木棒出现的长度是从大到小递减的. 直接定义现在搜的木棒从什么位置开始,当前这一组的总长度,之前几组的总长度. ...
- 2018.11.01 NOIP训练 递增数列(迭代加深)
传送门 直接迭代加深搜索. 发现每次最多增加一倍,最少增加一,于是果断上下界剪枝. 代码
- 2018.11.01 NOIP训练 某种密码(折半搜索)
传送门 直接折半搜索,把所有和装到unorderedmapunordered_mapunorderedmap里面最后统计答案就行了. 然后考试的时候读优并没有处理有负数的情况于是爆零了 代码
- 2018.11.01 NOIP训练 cost数(搜索+容斥原理)
传送门 唉考试的时候忘记剪倍数的枝了666666分滚粗. 其实就是一直取lcmlcmlcm搜索,然后容斥原理统计就行了. 代码
- tesseract-ocr如何训练Tesseract 4.0
引自:https://blog.csdn.net/huobanjishijian/article/details/76212214 原文:https://github.com/tesseract-oc ...
随机推荐
- prototype.js简介
prototype.js简介 2007-11-21 14:22 prototype.js是一个很强大的Javascript函数库,它可以让你很轻松的使用一些特效,实现AJAX的功能.虽然prototy ...
- Windows 特殊文件夹的位置
发送到文件夹的位置 %APPDATA%\Microsoft\Windows\SendTo
- kettle输入“去除空格类型”设置不上
kettle输入“去除空格类型”设置不上,设置完了还是现实“none”的办法: 在xml中直接将对应处“none”改为“both”,即“去掉两边空格”. 原文来自:http://blog.csdn.n ...
- agile/scrum 如果一切都从解放前开始
一个非常珍贵的机会,聚集了公司很多牛人,进行了一场发人深省的讨论.有一个话题我想拿出来和他家分享一下我的看法. 越来越不舒服的站会 站会是每天都在固定的时间.地点,大概持续15分钟左右(我们的小组都比 ...
- 关于Lucene.net 中高亮显示关键词的深究
这几天一直在学习lucene,也写了3篇自己总结的知识点,本以为很容易上手的东西,但是却遇到了一个很棘手的问题,借此,希望可以跟大家探讨一下 问题:使用盘古高亮显示组件后,如搜索“mp3 player ...
- WINDOWS Server2008上部署Oracle10g及oracle SQL语法小记
首先安装10G客户端 情况一:一般都会安装到一般报错.因为10G是32BIT客户端.而操作系统是64位的.但是不会影响配置监听程序.自主开发的应用程序依然可以运行. 情况二:报错但是配置完监听程序始终 ...
- Java中的闪光点:ThreadLocal是线程Thead的局部变量,可替代同步机制的设计,值得学习和研究
线程局部变量ThreadLocal,是Java支持的一种线程安全机制,目的是解决多线程的并发问题. 具体来讲,就是多个线程访问该实例对象的变量时,该实例对象将其存储为键值对的形式,保证各个线程(键)分 ...
- Python之RabbitMQ操作
RabbitMQ是一个消息代理,从“生产者”接收消息并传递消息至“消费者”,期间可根据规则路由.缓存.持久化消息.“生产者”也即message发送者以下简称P,相对应的“消费者”乃message接收者 ...
- SQL Server Reporting Services (SSRS): Reporting Services in SQL Server 2012 (codename "Denali") will support XLSX, DOCX formats. Bye bye 65536 rows limit in XLS files ;)
当SSRS报表的时候,若相应EXCEL是2003以下,在行数超过65536的时候报表会报错 "Microsoft.ReportingServices.ReportProcessing.Han ...
- C++对象模型详解
原文链接:吴秦大神的C++对象模型. 何为C++对象模型? C++对象模型可以概括为以下2部分: 1.语言中直接支持面向对象程序设计的部分: 2.对于各种支持的底层实现机制. 语言中直接支持面向对象程 ...