欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Tesseract4编译

程序员文章站 2023-12-27 10:25:51
...

    很久以前试了下 Tesseract3.x,识别中文的话那效果惨不忍睹,辣眼睛,直接放弃。

   最近听说Tesseract4.x之后加入了机器学习,神经网络学,识别率及运行效率较之前的3.x版本有质的提高,而且可以直接识别一般的验证码。想想就很激动,于是开启了Tesseract4学习之旅。

      万万没想到,Tesseract4.0编译过程很曲折,踩了很多坑。过程中参考了以下两篇博客:

https://blog.csdn.net/naidoudou/article/details/70225849

http://www.cnblogs.com/hupeng1234/p/8545371.html

现记录下过程,如下:

整个环境为:Tesseract-master4.0 + VS2015 + Win10, 最后编译的是x86的

*********************************************************************************************************************

第一步:工具、源码准备

1.cppan下载,链接为https://cppan.org/client/

    编译过程中相应的支持库是由cppan下载的,我们需要下载cppan并设置其环境变量

   解压后 在系统变量里面选择PATH变量,将cppan.exe所在的文件路径作为环境变量的值  

2.cmake 下载,链接为https://cmake.org/download/,我用的cmake3.8.0_x86

   为cmake设置环境变量,解压后目录下的bin文件夹的目录地址加载至系统环境变量PATH中,

   与cppan设置环境变量的方法一致。  

3.Tesseract源码下载,链接为https://github.com/tesseract-ocr/tesseract,我用的tesseract-master

   解压后目录如下:

Tesseract4编译

注意两个文件:

   cppan.yml :  cppan运行是根据这个文件来执行的

   CMakeLists.txt:   cmake嘛

   另外,VS版本最好是VS2015以上版本。我之前一直用VS2013,在VS2013编译的时候有20000多错误,太让人崩溃了,直接放弃。网上找错误原因的时候,有网友说编译Tesseract4.0需要VS2015以上,本着探索精神,在Tesseract源码文件夹中的cppan.yml文件中似乎找到佐证(英文有点渣,也不知道是否这个意思,如有不对,欢迎指正),如图:

Tesseract4编译

github上也有一说:

Tesseract4编译

***************************************************************************************************************

 

第二步开干了:(**********注意网络要好,适当需要fan qiang*************)

1.cmd,以 *****管理员身份**** 进入命令行终端(重要事情说三遍:管理员身份!管理员身份!管理员身份!)

2.运行cppan

   进入 解压后的Tesseract文件夹,可以发现有个cppan.yml,

   直接敲入命令:cppan   (如果出现 “no spec file”,就是目录不对,没有找到cppan.yml)

   这是在下载相关的的依赖,下载时间可能很长,需要耐心等待。我这里用了两个小时

   一大堆 downloading …              //下载

               unpacking  …                   //解压

                cleaning …       //不知道在作甚???

    完成后,”C:/users/用户名/”目录下有个文件夹”.cppan”(下载文件到C盘,这就是为什么要管理员身份的原因),

    里面是一些源文件、库、可执行程序

    “../Tesseract/”下也有个文件夹”.cppan”,里面是“cppan.h”,“checks.yml”.”CMakeLists.txt”等4个文件

3.cmake编译

   先在Tesseract文件夹下建一个目录”build”,并进入”build”目录

   终端敲入命令:cmake ..   (注意后面两个小点点”..”不要掉)

(如果要编译x64版本,命令:cmake .. -G “Visual Studio 14 2015 Win64“)

   中间会出现很多”not found”,以为又要凉了,其实没关系的

   只要最后出现”Configure done” “Generate done”就是成功了

   在刚才的“build”目录下就有了“tesseract.sln”

 

***************************************************************************************************************

第三步:VS2015编译工程(***以管理员身份运行VS***,重要事情说三遍:管理员身份!管理员身份!管理员身份!)

1.先编译“cppan-d-b-d”项目

   打开sln,解决方案点开“CPPAN TARGETS”->”cppan-d-b-d”,右键->”生成”。

2.编译所有项目

   “ALL_BUILD”右键->”生成“

  【注意1】:1.2步顺序不能乱,好像是其它的工程要依赖“cppan-d-b-d”项目生成的库

  【注意2】:会出现900多个错误,不要慌。错误有两点:

         a.你没有“以管理员身份”运行VS.

         b.字符编码的问题。只需要双击对应的错误,跳转到对应的文件,

            然后点击左上角菜单 “文件选项” 下的”高级保存选项”, 选择“GB2312”.保存后再“生成”即可。

            这个过程有点技巧(菜鸡参考):不需要每个错误页都去转编码,从上往下开始,一个文件转换编码后重新生成,

            错误少很多 ,接着如此反复操作十次左右就全部解决了

3.编译完成后,在“解决方案资源管理器”中点选“解决方案 tesseract”–>“CMakeTargets”–>“INSTALL”,单击右键,

   在出现的菜单中选择“生成”。Debug和release模式下需要分别执行上述步骤。

   然后在“C:/Programe Files(x86)/tesseract/”目录下生成了4个目录”include”,”lib”,”bin”,”cmake”

   (生成文件到C盘,这就是为什么又要管理员身份的原因…)

 

到此,编译就算大功告成了   :)
 

 

 

 

            </div>
相关标签: Tesseract OCR

上一篇:

下一篇: