文档章节

Tesseract ocr 中文批量训练脚本

rock912
 rock912
发布于 2016/01/26 14:45
字数 360
阅读 408
收藏 2

@echo off 

 

set "src=%1%" 

set "font_name=%2%"

set "desc=%3%" 

 

 

if  not  defined src set /p src=" please pass your filename : "

 

if  not  defined font_name set /p font_name=" please pass your font_name : "

 

rem 判断参数的合法性

 

if  not  defined src echo  IllegalArgumentException arg1 must not be null &  pause>nul & exit

 

if  not  defined font_name echo  IllegalArgumentException arg2 must not be null &  pause>nul & exit

 

if  not  defined desc set "desc=%src:~0,-4%"  

 

 echo desc %desc%

 

rem 如果目录下没有font_properties 文件创建 font_properties ,并写入文件

if exist font_properties (

 echo  font_properties exist

) else (

ECHO  %font_name% 0 0 0 0 0  >"font_properties"

)

 

rem  删除原有文件  

if exist %font_name%.unicharset ECHO DEL %font_name%.unicharset &   DEL  /Q  names %font_name%.unicharset

if exist %font_name%.inttemp  ECHO DEL %font_name%.inttemp &  DEL  /Q  names %font_name%.inttemp

if exist %font_name%.pffmtable  ECHO DEL %font_name%.pffmtable &  DEL  /Q  names %font_name%.pffmtable

if exist %font_name%.shapetable ECHO DEL %font_name%.shapetable & DEL  /Q  names %font_name%.shapetable

if exist %font_name%.normproto ECHO DEL %font_name%.normproto & DEL  /Q  names %font_name%.normproto

if exist %font_name%.font_properties ECHO DEL %font_name%.font_properties & DEL  /Q  names %font_name%.font_properties

 

rem   makebox

 

tesseract  %src%  %desc%   -l chi_sim -psm 6 batch.nochop makebox

 

java -Xms128m -Xmx512m -jar jTessBoxEditor/jTessBoxEditor.jar

 

ECHO Please change your results , and press any key to continue

 

pause>nul 

  

tesseract  %src%  %desc%  -l chi_sim -psm 6 nobatch box.train

 

unicharset_extractor %desc%.box

 

shapeclustering -F font_properties -U unicharset %desc%.tr

 

mftraining -F font_properties -U unicharset -O  unicharset %desc%.tr

 

cntraining %desc%.tr

 

 

rem  配置新文件

if exist unicharset ECHO rename unicharset %font_name%.unicharset &  rename unicharset %font_name%.unicharset

if exist inttemp ECHO rename inttemp %font_name%.inttemp &  rename inttemp %font_name%.inttemp

if exist pffmtable ECHO rename pffmtable %font_name%.pffmtable &  rename pffmtable %font_name%.pffmtable

if exist shapetable ECHO rename shapetable %font_name%.shapetable &  rename shapetable %font_name%.shapetable

if exist normproto ECHO rename normproto %font_name%.normproto &  rename normproto %font_name%.normproto

 

combine_tessdata %font_name%.

 

if exist font_properties ECHO rename font_properties %font_name%.font_properties & rename font_properties %font_name%.font_properties

 

ECHO  press any key to continue

pause>nul 

 

 

© 著作权归作者所有

rock912
粉丝 32
博文 90
码字总数 24843
作品 0
宁波
程序员
私信 提问
比 tesseract 更好的中文识别--deep_ocr

deepocr 是使得 OCR 比 tesseract 更好的中文识别、身份证识别等等。 估计很多开发员使用 tesseract 做中文识别,但是结果不是一般的差,譬如下面的图片 $ tesseract -l chisim testdata.png...

chongdata
2016/11/29
7.8K
3
PDF处理、Tesseract-OCR的介绍

相关文章 OCR识别-python版(一) 基于Python实现对PDF文件的OCR识别 使用Google开源tesseract OCR用语言库报allowblob_division解决方案 Tesseract-OCR识别中文与训练字库实例 Tesseract训练...

致Great
2017/12/09
0
0
我的AI之路 —— OCR文字识别快速体验版

OCR的全称是Optical Character Recoginition,光学字符识别技术。目前应用于各个领域方向,甚至这些应用就在我们的身边,比如身份证的识别、交通路牌的识别、车牌的自动识别等等。 还记得前一...

xingoo
2018/08/09
0
0
深入学习Tesseract-ocr识别中文并训练字库的方法

  上篇文章简单的学习了tesseract-ocr识别图片中的英文(链接地址如下:https://www.cnblogs.com/wj-1314/p/9428909.html),看起来效果还不错,所以这篇文章继续深入学习tesseract-ocr识别...

战争热诚
2018/08/14
0
0
Tesseract-OCR4.0识别中文与训练字库实例

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

---dgw博客
2018/04/06
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Docker 可视化管理 portainer

官网安装指南: https://portainer.readthedocs.io/en/latest/deployment.html docker-compose.yml 位置,下载地址:https://downloads.portainer.io/docker-compose.yml...

Moks角木
43分钟前
5
0
Spring Security 实战干货:必须掌握的一些内置 Filter

1. 前言 上一文我们使用 Spring Security 实现了各种登录聚合的场面。其中我们是通过在 UsernamePasswordAuthenticationFilter 之前一个自定义的过滤器实现的。我怎么知道自定义过滤器要加在...

码农小胖哥
46分钟前
7
0
常见分布式事务解决方案

1 微服务的发展 微服务倡导将复杂的单体应用拆分为若干个功能简单、松耦合的服务,这样可以降低开发难度、增强扩展性、便于敏捷开发。当前被越来越多的开发者推崇,很多互联网行业巨头、开源...

asdf08442a
46分钟前
3
0
influxdb continuous queries(cq)从入门到放弃

从前一篇influxdb的文章prometheus基于influxdb的监控数据持久化存储方案完成之后,就一直在折腾influxdb发布测试和生产环境的问题,经过接近2个月的验证,最终发现使用influxdb自带cq的方案...

狗陈
58分钟前
7
0
7.线程通信

在现实生活中,如果一个人团队正在共同完成任务,那么他们之间应该有通信,以便正确完成任务。 同样的比喻也适用于线程。 在编程中,要减少处理器的理想时间,我们创建了多个线程,并为每个线...

Eappo_Geng
今天
6
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部