[Tesseract]Tesseract 在 Visual Studio 2012 中的配置及调用

一、Tesseract简介

Tesseract是一个开源的OCR(Optical Character Recognition,光学字符识别)引擎,可以识别多种格式的图像文件并将其转换成文本,目前已支持60多种语言(包括中文)。 Tesseract最初由HP公司开发,后来由Google维护,github地址为:https://github.com/tesseract-ocr/

二、Tesseract源码下载

1、下载tesseract-ocr-setup-3.02.02.exe

下载地址:https://sourceforge.net/projects/tesseract-ocr-alt/files/ , 点击 “tesseract-ocr-setup-3.02.02.exe” 进行下载。

下载后,双击tesseract-ocr-setup-3.02.02.exe,进行安装。

按照操作提示,点击next。

注意,在选择组件页面,勾选 Tesseract development files。 如图:

安装完成后,选择的安装目录下(D:\Program Files (x86)\Tesseract-OCR),文件夹如下:

但是,下载下来的源码是不够的。还需要下载附加lib。

2、下载tesseract-3.02.02-win32-lib-include-dirs.zip

下载地址:https://sourceforge.net/projects/tesseract-ocr-alt/files/ ,选择“tesseract-3.02.02-win32-lib-include-dirs.zip” 进行下载。

下载得到压缩包后,解压缩,目录如下:

其中,include目录中包含如下:

lib目录中包含如下:

将include 文件夹中的内容复制到 D:\Program Files (x86)\Tesseract-OCR\include 文件夹中,将lib 文件夹中的内容复制到 D:\Program Files (x86)\Tesseract-OCR\lib 文件夹中。

3、下载 tesseract_versionnumbers.props 和 leptonica_versionnumbers.props

下载地址为:https://github.com/jakesays/tesseract-vs2012/tree/master/include,将项目中包含的 tesseract_versionnumbers.props 和 leptonica_versionnumbers.props 复制到D:\Program Files (x86)\Tesseract-OCR\include 文件夹中。

至此,我们需要的资源就准备齐全了。

备注:我之前也是走了一些弯路,这是总结出来的完整资源的获得方式。以上所需要的资源的必要性,在后面Tesseract 与 VS2012 相结合的时候会提到。


三、Tesseract 在 Visual Studio 2012 中的配置

1、新建win32控制台项目

注意在附加选项中,勾选“空项目”。

2、引入头文件

在“解决方案资源管理器” 窗口,右键 “MyFirstTesseractProject”工程  -> “属性(R)” ->“C/C++”->“常规”->“附加包含目录”中,添加如下内容:

D:\Program Files (x86)\Tesseract-OCR\include

D:\Program Files (x86)\Tesseract-OCR\include\leptonica

D:\Program Files (x86)\Tesseract-OCR\include\tesseract

如图所示:

3、引入库文件

1)添加属性表

首先将“D:\Program Files (x86)\Tesseract-OCR\include”目录 拷贝到 本地工程“MyFirstTesseractProject\MyFirstTesseractProject”目录下,如图所示:

然后进行以下设置: 
在“解决方案管理器”所在区域,切换到“属性管理器”窗口; 
右键“MyFirstTesseractProject”工程下面的“Debug|Win32”文件夹 –>“添加现有属性表(E)…”–>在“MyFirstTesseractProject\MyFirstTesseractProject\include”目录下找到“tesseract_versionnumbers.props”–>“打开”; 
如图所示:

添加后如图所示:

2)配置库文件

在“解决方案管理器”窗口–>右键“MyFirstTesseractProject”工程–>“属性(R)”–>“配置属性”–>“链接器”–>“常规”–>“附加库目录”中添加如下内容:

D:\Program Files (x86)\Tesseract-OCR\lib

如图所示:

4、添加预定义


在“解决方案管理器”窗口–>右键“MyFirstTesseractProject”工程–>“属性(R)”–>“配置属性”–>“C/C++”–>“预处理器”–>“预处理器定义”–>中添加”如下列表中的“预定义”内容:

_WINDOWS 
NDEBUG 
USE_STD_NAMESPACE

如下图: 

5、添加附加库

在“解决方案管理器”窗口–>右键“MyFirstTesseractProject”工程–>“属性(R)”–>“配置属性”–>“链接器”–>“输入”–>“附加依赖项”–>中“添加”如下列表中的“附加库”内容:

libtesseract302.lib
libtesseract302d.lib
liblept168.lib
liblept168d.lib

如图所示:

6、其他添加

在“MyFirstTesseractProject” 目录下新建 “Debug”文件夹,将“libtesseract302.dll” 和 “libtesseract302d.dll” 拷贝到 “Debug” 文件夹下面。如图所示:

三、运行Tesseract实例

#include <baseapi.h>
#include <allheaders.h>
#include <iostream>
 
using namespace std;
 
int main(void)
{
 
    tesseract::TessBaseAPI api;
    api.Init("", "eng", tesseract::OEM_DEFAULT);
    api.SetPageSegMode(static_cast<tesseract::PageSegMode>(7));
    api.SetOutputName("out");
 
    cout<<"File name:";
    char image[256];
    cin>>image;
    PIX   *pixs = pixRead(image);
 
    STRING text_out;
    api.ProcessPages(image, NULL, 0, &text_out);
 
    cout<<text_out.string();
 
    system("pause");
}


运行成功,运行结果如下:

给定测试图片,如图:


输入图片路径,得到结果:

正确率有待提高。

四、总结

至此,成功在VS2012中配置了Tesseract。网上的资料比较少,下载下来的库并不完整,经过实践,总结出了在我这里可行的一套办法。我的系统是win7,64位。

同时,在实验的过程中,参考了以下博文。我觉得最大的收获是,在遇到博文上说的办法不可行的时候,根据实际情况作出了调整,并且成功跑通。

感谢:

【Tesseract】Tesseract API在VS 2013中的配置以及调用

Tutorial: How to Install Tesseract OCR 3.02.02 for Visual Studios 2008 on Windows Vista
--------------------- 
原文:https://blog.csdn.net/u013250416/article/details/77871203 

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值