首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >用QtCreator链接tesseract库

用QtCreator链接tesseract库
EN

Stack Overflow用户
提问于 2016-04-05 13:08:28
回答 1查看 1.2K关注 0票数 4

我正在尝试运行一个基于tesseract API的C++程序,并在Ubuntu上使用QtCreator作为IDE,以便对页面布局进行分析:

代码语言:javascript
运行
复制
int main(void)
{
int left, top, right, bottom;

tesseract::TessBaseAPI tessApi;
tessApi.InitForAnalysePage();

cv::Mat img = cv::imread("document.png");
tessApi.SetImage(reinterpret_cast<const uchar*>(img.data), img.size().width, img.size().height, img.channels(), img.step1());

tesseract::PageIterator *iter = tessApi.AnalyseLayout();

while (iter->Next(tesseract::RIL_BLOCK))
    iter->BoundingBox( tesseract::RIL_BLOCK, &left, &top, &right, &bottom);

return EXIT_SUCCESS;
}

但反过来,我得到了这样的错误,证实了tesseract和Qt之间没有关联:

代码语言:javascript
运行
复制
main.cpp:11: error: undefined reference to `tesseract::TessBaseAPI::TessBaseAPI()'
main.cpp:12: error: undefined reference to `tesseract::TessBaseAPI::InitForAnalysePage()'
main.cpp:16: error: undefined reference to `tesseract::TessBaseAPI::SetImage(unsigned char const*, int, int, int, int)'
main.cpp:18: error: undefined reference to `tesseract::TessBaseAPI::AnalyseLayout()'

这是我的.pro文件:

代码语言:javascript
运行
复制
INCLUDEPATH += /usr/local/include/opencv \
           /usr/include/tesseract

LIBS += -L"/usr/local/opencv/lib"   -lopencv_calib3d \
                                -lopencv_contrib \
                                -lopencv_core \
                                -lopencv_features2d \
                                -lopencv_flann \
                                -lopencv_gpu \
                                -lopencv_highgui \
                                -lopencv_imgproc \
                                -lopencv_legacy \
                                -lopencv_ml \
                                -lopencv_nonfree \
                                -lopencv_objdetect \
                                -lopencv_ocl \
                                -lopencv_photo \
                                -lopencv_stitching \
                                -lopencv_superres \
                                -lopencv_video \
                                -lopencv_videostab

LIBS += -L"/usr/bin/tesseract"
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-04-05 13:13:52

您只有lib -L"/usr/bin/tesseract"的路径,也忘记了包含lib。只需添加它,就像添加openCV库一样。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36427308

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档