热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

TesseractOCR4.0LSTM训练流程(Windows环境下)

**Tesseract-OCR4.0LSTM训练流程(Win

**

Tesseract-OCR 4.0LSTM训练流程 (Windows环境下)**

目前网上关于tesseract3.0版本的训练过程很多,但是基于lstm的4.0版本的训练几乎没有,自己深受困扰,后经过自己努力终于成功训练,特地写下来希望可以av帮助需要的人。

首先根据网上的教程安装tesseract4.0以上的版本,这里不详细说明如何安装。

1. 准备训练文本.txt格式的文件和字体文件font,里边包含.ttf格式的字体文件
在这里插入图片描述
在这里插入图片描述
2. 利用text2image生成.tif和.box文件
从font和.txt所在的目录下,通过cmd进入命令窗口,输入以下内容

text2image --text="D:\new_05\text.txt" --outputbase="D:\new_05\zth.font.exp0" --fontconfig_tmpdir="%temp%"
--fOnt="HGMaruGothicMPRO" --fonts_dir="D:\new_05\font"

其中每个参数的意义为:

–text=“D:\new_05\text.txt” 是要进行训练的样本文件路径

–outputbase=“D:\new_05\zth.font.exp0” 表示生成的.tif和.box文件的路劲和命名(注意命名方式,可参照3.0的介绍)

–fontconfig_tmpdir="%temp%" 指明configer,这个在windows中默认这么写,不写会报错

–fOnt=“HGMaruGothicMPRO” font文件夹中的字体名称

–fonts_dir=“D:\new_05\font” font文件夹的路径

至此,会在D:\new_05文件夹下生成两个新的文件,分别为.tif和.box格式的文件

注:当你的训练文本只有图片时,可以利用jTessBoxEditor工具生成.tif和.box格式的文件,可以参照网上3.0训练的步骤介绍。
3. 利用.tif和.box文件生成.lstmf文件用于lstm训练

tesseract zth.font.exp0.tif zth.font.exp0 -l jpn --psm 6 lstm.train

其中每个参数的意义为

zth.font.exp0.tif 上一步生成的.tif 格式的文件

zth.font.exp0 指明要生成的.lstmf文件的名称

-l jpn 表示用到的语言,这个我训练的是日语

–psm 6 表示采用的识别模式,通常6 效果会好些

运行后会多出一个zth.font.exp0.lstmf文件

4. 从已有的.traineddata中提取.lstm文件

tessedata_best中的.traineddata文件 从该链接中下载所需语言的.traineddata文件

注:一定要用从上述链接中下载的.traineddata文件,如果利用原有的下载好的tesseract-OCR中的tessdata文件夹中的.traineddata文件中提取.lstm文件会造成无法进行训练。

将下载好的.traineddata文件拷贝到上述文件夹下
输入命令行:

combine_tessdata -e jpn.traineddata jpn.lstm

运行上述代码,会从.traineddata文件中提取出jpn.lstm 文件
5. 创建jpn.training_files.txt文件,里边的内容为.lstmf文件的路径地址
在这里插入图片描述
6. 进行训练

lstmtraining --model_output="D:\new_05\output\output" --continue_from="D:\new_05\jpn.lstm"
--train_listfile="D:\new_05\jpn.training_files.txt" --traineddata="D:\new_05\jpn.traineddata"
--debug_interval -1 --max_iterations 800

各个参数的意义:

–modeloutput 模型训练输出的路径(我在new_05文件夹中新建了一个名为output的文件夹用来存输出的文件)

–continue_from 训练从哪里继续,这里指定从第4步中提取的jpn.lstm文件,

–train_listfile 指定上一步创建的文件的路径

–traineddata 第4步中下载的.traineddata文件的路径

–debug_interval 当值为-1时,训练结束,会显示训练的一些结果参数

–max_iterations 指明训练遍历次数

此时命令窗口中会有滚动的训练历程

训练结束后,在output文件夹中会生成i一个output_checkpoint文件和多个类似output0.012_3.checkpoint的.checkpoint文件
7. 将checkpoint文件和.traineddata文件合并成新的.traineddata文件

lstmtraining --stop_training --continue_from="D:\new_05\output\output_checkpoint"
--traineddata="D:\new_05\jpn.traineddata" --model_output="D:\new_05\output\zth.traineddata"

各个参数的意义:

–stop_training 默认要有的

–continue_from 上一步生成的output_checkpoint文件路径

–traineddata 第4步中下载的.traineddata文件的路径

–model_output zth.traineddata 输出的路径
8. 将新生成的zth.traineddata文件拷贝到tesseract-OCR\tessdata文件夹下,通过代码进行识别


推荐阅读
  • 本文讨论了在Windows 8上安装gvim中插件时出现的错误加载问题。作者将EasyMotion插件放在了正确的位置,但加载时却出现了错误。作者提供了下载链接和之前放置插件的位置,并列出了出现的错误信息。 ... [详细]
  • CSS3选择器的使用方法详解,提高Web开发效率和精准度
    本文详细介绍了CSS3新增的选择器方法,包括属性选择器的使用。通过CSS3选择器,可以提高Web开发的效率和精准度,使得查找元素更加方便和快捷。同时,本文还对属性选择器的各种用法进行了详细解释,并给出了相应的代码示例。通过学习本文,读者可以更好地掌握CSS3选择器的使用方法,提升自己的Web开发能力。 ... [详细]
  • 本文介绍了在Win10上安装WinPythonHadoop的详细步骤,包括安装Python环境、安装JDK8、安装pyspark、安装Hadoop和Spark、设置环境变量、下载winutils.exe等。同时提醒注意Hadoop版本与pyspark版本的一致性,并建议重启电脑以确保安装成功。 ... [详细]
  • 【Windows】实现微信双开或多开的方法及步骤详解
    本文介绍了在Windows系统下实现微信双开或多开的方法,通过安装微信电脑版、复制微信程序启动路径、修改文本文件为bat文件等步骤,实现同时登录两个或多个微信的效果。相比于使用虚拟机的方法,本方法更简单易行,适用于任何电脑,并且不会消耗过多系统资源。详细步骤和原理解释请参考本文内容。 ... [详细]
  • 本文详细介绍了Linux中进程控制块PCBtask_struct结构体的结构和作用,包括进程状态、进程号、待处理信号、进程地址空间、调度标志、锁深度、基本时间片、调度策略以及内存管理信息等方面的内容。阅读本文可以更加深入地了解Linux进程管理的原理和机制。 ... [详细]
  • 本文介绍了Perl的测试框架Test::Base,它是一个数据驱动的测试框架,可以自动进行单元测试,省去手工编写测试程序的麻烦。与Test::More完全兼容,使用方法简单。以plural函数为例,展示了Test::Base的使用方法。 ... [详细]
  • sklearn数据集库中的常用数据集类型介绍
    本文介绍了sklearn数据集库中常用的数据集类型,包括玩具数据集和样本生成器。其中详细介绍了波士顿房价数据集,包含了波士顿506处房屋的13种不同特征以及房屋价格,适用于回归任务。 ... [详细]
  • Python瓦片图下载、合并、绘图、标记的代码示例
    本文提供了Python瓦片图下载、合并、绘图、标记的代码示例,包括下载代码、多线程下载、图像处理等功能。通过参考geoserver,使用PIL、cv2、numpy、gdal、osr等库实现了瓦片图的下载、合并、绘图和标记功能。代码示例详细介绍了各个功能的实现方法,供读者参考使用。 ... [详细]
  • 本文介绍了在Windows环境下如何配置php+apache环境,包括下载php7和apache2.4、安装vc2015运行时环境、启动php7和apache2.4等步骤。希望对需要搭建php7环境的读者有一定的参考价值。摘要长度为169字。 ... [详细]
  • Linux如何安装Mongodb的详细步骤和注意事项
    本文介绍了Linux如何安装Mongodb的详细步骤和注意事项,同时介绍了Mongodb的特点和优势。Mongodb是一个开源的数据库,适用于各种规模的企业和各类应用程序。它具有灵活的数据模式和高性能的数据读写操作,能够提高企业的敏捷性和可扩展性。文章还提供了Mongodb的下载安装包地址。 ... [详细]
  • Go Cobra命令行工具入门教程
    本文介绍了Go语言实现的命令行工具Cobra的基本概念、安装方法和入门实践。Cobra被广泛应用于各种项目中,如Kubernetes、Hugo和Github CLI等。通过使用Cobra,我们可以快速创建命令行工具,适用于写测试脚本和各种服务的Admin CLI。文章还通过一个简单的demo演示了Cobra的使用方法。 ... [详细]
  • 本文介绍了如何使用C#制作Java+Mysql+Tomcat环境安装程序,实现一键式安装。通过将JDK、Mysql、Tomcat三者制作成一个安装包,解决了客户在安装软件时的复杂配置和繁琐问题,便于管理软件版本和系统集成。具体步骤包括配置JDK环境变量和安装Mysql服务,其中使用了MySQL Server 5.5社区版和my.ini文件。安装方法为通过命令行将目录转到mysql的bin目录下,执行mysqld --install MySQL5命令。 ... [详细]
  • 修复安装win10失败并提示“磁盘布局不受UEFI固件支持”的方法
    本文介绍了修复安装win10失败并提示“磁盘布局不受UEFI固件支持”的方法。首先解释了UEFI的概念和作用,然后提供了两种解决方法。第一种方法是在bios界面中将Boot Mode设置为Legacy Support,Boot Priority设置为Legacy First,并关闭UEFI。第二种方法是使用U盘启动盘进入PE系统,运行磁盘分区工具DiskGenius,将硬盘的分区表设置为gpt格式,并留出288MB的内存。最后,通过运行界面输入命令cmd来完成设置。 ... [详细]
  • 本文介绍了Python语言程序设计中文件和数据格式化的操作,包括使用np.savetext保存文本文件,对文本文件和二进制文件进行统一的操作步骤,以及使用Numpy模块进行数据可视化编程的指南。同时还提供了一些关于Python的测试题。 ... [详细]
  • DSP中cmd文件的命令文件组成及其作用
    本文介绍了DSP中cmd文件的命令文件的组成和作用,包括链接器配置文件的存放链接器配置信息、命令文件的组成、MEMORY和SECTIONS两个伪指令的使用、CMD分配ROM和RAM空间的目的以及MEMORY指定芯片的ROM和RAM大小和划分区间的方法。同时强调了根据不同芯片进行修改的必要性,以适应不同芯片的存储用户程序的需求。 ... [详细]
author-avatar
小轩之音_438
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有