c++ 在Windows 10中使用vcpkg安装Tesseract

epfja78i  于 2023-08-09  发布在  Windows
关注(0)|答案(2)|浏览(335)

**我的设置:**目前我正在Windows 10上的Visual Studio 2017中使用c++。
目标:开始在我的基本c++应用程序中使用tesseract ocr。首先,为了确保我能够#include tesseract库并编译和执行一个非常简单的程序,我尝试运行下面的简单测试程序,该程序在官方tesseract project's "APIExample" page上提供。
**到目前为止我所做的:**遵循this stack overflow answer的建议,我在命令提示符下运行了vcpkg install tesseract:x64-windows命令沿着.\vcpkg integrate install命令。当我运行命令vcpkg list时,我看到了我安装的所有软件包(如下面的屏幕截图所示),但是尽管如此,visual studio中的intellisense还是给了我错误,说它找不到运行前面提到的测试项目的包含代码,我在下面发布了它的代码。怎么回事?我在下面提供了我的visual studio设置的屏幕截图,其中包含了错误和错误代码,以供参考。

#include <tesseract/baseapi.h>
#include <leptonica/allheaders.h>

int main()
{
    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("/usr/src/tesseract/testing/phototest.tif");
    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;
}

字符串


的数据


z3yyvxxp

z3yyvxxp1#

看起来你的tesseract包已经安装了x64平台,但你的项目设置似乎是x86。更正此错误,并确保在库设置中选择“多线程动态链接”。如果一切顺利,MSCV IDE将在运行时自动将这些依赖DLL复制到应用程序目录。

fkvaft9z

fkvaft9z2#

“无法初始化tesseract”
打开properties->Configuration Properties->Linker->General->Additional Library Directories->your tesseract header(path to this file #include <tesseract/baseapi.h>)
先解决你的头

相关问题