库&框架您现在的位置是:首页 > 博客日志 > 库&框架

tesseract 编译与使用(windows)

<a href='mailto:'>微wx笑</a>的头像微wx笑 2022-01-26库&框架 3 0关键字: Tesseract-OCR  

https://www.cnblogs.com/kappaboy/p/5910226.htmltesseract是google的一个开源OCR项目,项目地址已经迁移到github(现在 2016/09),地址 https://github.com/tesseract-ocr/tesse


WGj无知

https://www.cnblogs.com/kappaboy/p/5910226.html
WGj无知


WGj无知


WGj无知

tesseract是google的一个开源OCR项目,项目地址已经迁移到github(现在 2016/09),地址 https://github.com/tesseract-ocr/tesseractWGj无知

 WGj无知

首先使用git将代码clone到本地。使用最新的commit, SHA-1: c943fc1a339d6378f34cccf4ff96949adb2f37ecWGj无知

编译步骤参考 https://github.com/tesseract-ocr/tesseract/wiki/CompilingWGj无知

下面是详细步骤和相关问题解决方法WGj无知

我使用的VS2010WGj无知

 WGj无知

1.安装cmake 并添加到环境变量.下载地址 https://cmake.org/download/WGj无知

2.安装cppan 并添加到环境变量,下载地址 https://cppan.org/client/cppan-master-win32-client.zipWGj无知

3.在你本地的源码目录tesseract下执行下列命令WGj无知

1
2
3
cppan
mkdir         build &&         cd         build
cmake .. -DSTATIC=1

 WGj无知

注意:cppan执行过程中可能需要FANQIANG。WGj无知

4.在tesseract\build目录下生成了项目文件,使用VS打开tesseract.sln,如下WGj无知

WGj无知

 WGj无知

启动项目是ALL_BUILD,解决方案配置我使用的是 Release。开始编译,当然这过程中会出现一大堆错误和警告,不用理会静静等待编译完成WGj无知

1.使用可以转换编码格式的工具,将 tesseract\ccmain\equationdetect.cpp 的格式转化下。 我使用的是 Notepad ++ ,格式->转为 ANSI 编码格式WGj无知

原因:tesseract的源文件的编码格式是UTF-8的,但是中文系统下VS里的代码页编码格式是GB2312WGj无知

 WGj无知

2.bool相关,根据错误信息定位到pvt.cppan.demo.gif这个项目,我的是 pvt.cppan.demo.gif-5.1.4.vcxproj ,双击打开之,然后在项目中找到 stdbool.h,然后将WGj无知

#define bool    _bool

更换为WGj无知

#define bool    int

 WGj无知

3. snprintf相关,根据错误信息定位到pvt.cppan.demo.tiff这个项目,我的是 pvt.cppan.demo.tiff-4.0.6,双击打开之,然后在项目中找到  tiffiop.h ,定位到WGj无知

#if !defined(HAVE_SNPRINTF) && !defined(HAVE__SNPRINTF)#undef snprintf

将下面的3行换成WGj无知

#define snprintf _snprintf//extern int snprintf(char* str, size_t size, const char* format, ...);#endif

 WGj无知

然后切换到 tesseract.sln ,清理解决方案重新编译一遍。WGj无知

 WGj无知

然后将 tesseractmain 设为启动项目,编译。WGj无知

 WGj无知

编译步骤到此结束,可执行文件在 tesseract\build\bin\Release 下,但是现在还不能直接用,没有语言包。WGj无知

语言包下载地址WGj无知

英文 https://github.com/tesseract-ocr/tessdata/raw/master/eng.traineddata
简中 https://github.com/tesseract-ocr/tessdata/raw/master/chi_sim.traineddata 
繁中 https://github.com/tesseract-ocr/tessdata/raw/master/chi_tra.traineddataWGj无知

 WGj无知

创建一个tessdata目录,和tesseract.exe同级,将下载的语言包复制到tessdata目录下。然后打开cmd,执行命令就可以看到结果WGj无知

 WGj无知

tesseract.exe test.png -l eng+chi_sim result

 WGj无知

test.png 是待识别的图片WGj无知

-l eng+chi_sim 指定识别语言为英文和简体中文,多语言使用+连接WGj无知

result 指定输出的文本文件WGj无知

 WGj无知

 WGj无知

 WGj无知

更多的命令请参考 https://github.com/tesseract-ocr/tesseract/wiki/Command-Line-UsageWGj无知

 WGj无知

本文为转载文章,版权归原作者所有,不代表本站立场和观点。

很赞哦! () 有话说 ()