Tesseract是一个开源的OCR(Optical Character Recognition,光学字符识别)引擎,可以识别多种格式的图像文件并将其转换成文本,目前已支持60多种语言(包括中文)。 Tesseract最初由HP公司开发,后来由Google维护,目前发布在Googel Project上。地址为http://code.google.com/p/tesseract-ocr/。
1、下载tesseract.zip.里面包括include和lib两个目录。
2、解压tesseract.zip到C:\
3、VS2013中进行配置,C/C++>常规>附加包含目录。 插入 C:\tesseract\include.
4、在链接器>常规>附件库目录。插入C:\tesseract\lib
5、在链接器>常规>附加依赖项。
添加:
liblept168.lib
libtesseract302.lib
6.在主函数中添加一下代码:
#include <tesseract\baseapi.h>
#include <leptonica\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");
}
7、编译,提示一下错误。
解决方法:
右击工程 - 属性 - 配置属性 - C/C++ - 命令行
命令行增加 :/D _CRT_SECURE_NO_WARNINGS
8.编译会提示以下错误,此时将C:\tesseract\lib中的liblept168.dll复制到工程目录的Debug目录下。
9.继续译会提示以下错误,此时将C:\tesseract\lib中的libtesseract302.dll复制到工程目录的Debug目录下。
10.最后编译成功!
11、最后测试图片如下: