繁体   English   中英

Tesseract和Visual C ++ 2015

[英]Tesseract and Visual C++ 2015

我正在尝试在C ++应用程序中使用tesseract,但无法在Visual Studio中运行它。 我收到一些“错误LNK2001:无法解析的外部符号”,我相信这是因为Visual Studio找不到我要使用的dll。 我已经完成了在VC ++使用Tesseract OCR进行的详细操作。 所有的tesseract库都链接在正确的位置,但是仍然无法正常工作。 这是我的代码如下所示:

#include "stdafx.h"
#include <iostream>
#include <string>
#include <tesseract/baseapi.h>
#include <leptonica/allheaders.h>

using namespace std;

int main(int argc, char *argv[])
{
    char *outText;

    tesseract::TessBaseAPI *api = new tesseract::TessBaseAPI();
    // Initialize tesseract-ocr with English, without specifying tessdata path
    if (api->Init(NULL, "eng")) {
        fprintf(stderr, "Could not initialize tesseract.\n");
        exit(1);
    }

    // Open input image with leptonica library
    Pix *image = pixRead("C:\\Users\\Marcio\\PythonProjects\\python_ocr.png");
    api->SetImage(image);
    // Get OCR result
    outText = api->GetUTF8Text();
    printf("OCR output:\n%s", outText);

    // Destroy used object and release memory
    api->End();
    delete[] outText;
    pixDestroy(&image);

    return 0; 

}

编辑:这是我得到的完整错误消息:

1> CallPythonFromC ++。obj:错误LNK2001:未解析的外部符号“ public:int __cdecl tesseract :: TessBaseAPI :: Init(char const *,char const *,enum tesseract :: OcrEngineMode,char * *,int,class,GenericVector const *, class GenericVector const *,bool)“(?Init @ TessBaseAPI @ tesseract @@ QEAAHPEBD0W4OcrEngineMode @ 2 @ PEAPEADHPEBV?$ GenericVector @ VSTRING @@@@ 3_N @ Z)

1> CallPythonFromC ++。obj:错误LNK2001:无法解析的外部符号“ public:__cdecl tesseract :: TessBaseAPI :: TessBaseAPI(void)”(?? 0TessBaseAPI @ tesseract @@ QEAA @ XZ)

1> CallPythonFromC ++。obj:错误LNK2001:未解析的外部符号pixRead

1> CallPythonFromC ++。obj:错误LNK2001:无法解析的外部符号“ public:void __cdecl tesseract :: TessBaseAPI :: SetImage(struct Pix const *)”(?SetImage @ TessBaseAPI @ tesseract @@ QEAAXPEBUPix @@@@ Z)

1> CallPythonFromC ++。obj:错误LNK2001:无法解析的外部符号“ public:char * __cdecl tesseract :: TessBaseAPI :: GetUTF8Text(void)”(?GetUTF8Text @ TessBaseAPI @ tesseract @@ QEAAPEADXZ)

1> CallPythonFromC ++。obj:错误LNK2001:无法解析的外部符号“ public:void __cdecl tesseract :: TessBaseAPI :: End(void)”(?End @ TessBaseAPI @ tesseract @@ QEAAXXZ)

1> CallPythonFromC ++。obj:错误LNK2001:未解析的外部符号pixDestroy

1> C:\\ Users \\ Marcio \\ BlindSight \\ CallPythonFromCPP \\ x64 \\ Release \\ CallPythonFromC ++。exe:致命错误LNK1120:7个未解决的外部组件

您至少必须添加以下依赖项:

tesseract.lib; openjpeg.lib; libwebp.lib; libtiff.lib; libtesseract.lib; libpng.lib; liblept.lib; libjpeg.lib; jbig2enc.lib; giflib.lib; zlib.lib;

PropertyPages /链接器/输入/其他依赖项

注意您的配置Debug / Release X64 ...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM