Frage

Ich habe keine Ahnung, wie ich die tesseract-ocr-Bibliothek in mein ros-Projekt integrieren soll, ich verwende qt creator zum Codieren und die Bibliothek ist korrekt installiert, da Qtcreator die Zeilen, in denen ich die Bibliothek verwende, automatisch vervollständigt, aber dieser Code nicht kompiliert werden kann

#include "text_detector.h"
#include <ros/ros.h>
#include <image_transport/image_transport.h>
#include <cv_bridge/cv_bridge.h>
#include <sensor_msgs/image_encodings.h>
#include <opencv2/highgui/highgui.hpp>
#include <opencv2/imgproc/imgproc.hpp>
#include <tesseract/baseapi.h>

image_transport::Subscriber sub;
image_transport::Publisher imPub;
ros::Publisher textPub;
tesseract::TessBaseAPI tess;

void onImageReceived(const sensor_msgs::ImageConstPtr& msg){

}

int main (int argc, char* argv[]){
    ros::init(argc,argv,"text_detector");
    ros::NodeHandle nh;
    ROS_INFO_STREAM("Starting text detection");
    image_transport::ImageTransport it(nh);
    imPub = it.advertise("camera_hsv",1);
    tess.Init(NULL,"eng",tesseract::OEM_DEFAULT);
    sub = it.subscribe("camera_raw",1,&onImageReceived);
   // textPub=nh.advertise<>("text",1000);
    ros::spin();
}

mit diesem Kompilierungsfehler

text_detektor.kpp:-1:Fehlermeldung:undefinierter Verweis auf tesseract::TessBaseAPI::TessBaseAPI()' text_detector.cpp:-1: error: undefined reference totesseract::TessBaseAPI::~TessBaseAPI()'

Wie kann ich die Bibliothek dem Projekt in den CMakeLists hinzufügen.text?Danke!

War es hilfreich?

Lösung

Sieht so aus, als ob Sie die Bibliothek nicht verknüpfen.Ihrer CMakeLists.txt sollte enthalten

target_link_libraries (<YOUR-EXECUTABLE-NAME>  tesseract)

Abhängig von Ihrer CMake-Datei könnte es nur sein ${PROJECT_NAME}

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top