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、最后测试图片如下:
from: https://blog.youkuaiyun.com/hduxiejun/article/details/52639378?locationNum=1