Неопределенная ссылка на функции aruco - PullRequest
0 голосов
/ 26 октября 2019

Я испытываю обнаружение маркера ArUco в проекте Qt GUI и до сих пор получаю сообщение об ошибке

undefined reference to cv::aruco::getPredefinedDictionary(cv::aruco::PREDEFINED_DICTIONARY_NAME)

Я выполняю шаги здесь

Я пытался создать новый консольный проект и скопировать учебный код из модуля ArUco, но все функции aruco получают неопределенные ошибки ссылок.

#include <opencv2/aruco.hpp>
...
using namespace cv;
using namespace std;
using namespace aruco;
...
Ptr<Dictionary> dictionary = getPredefinedDictionary(DICT_6X6_250);

Любая помощь и / или совет будут очень полезныоценены.

Ответы [ 2 ]

0 голосов
/ 26 октября 2019

Нашел ответ на мою проблему. Как упоминал Мохаммед-Фоли, мне нужно было добавить библиотеку ArUco. Ответ был во второй ссылке, которую он дал.

В файле .pro я просто добавил строку, чтобы она стала примерно такой:

INCLUDEPATH += "~/opencv-3.3.0/opencv/include"
INCLUDEPATH += "~/opencv-3.3.0/opencv/include/opencv"

LIBS += -L~/opencv-3.3.0/build/bin \
-lopencv_core \
-lopencv_highgui \
-lopencv_imgproc \
-lopencv_features2d \
-lopencv_calib3d \
-lopencv_video \
-lopencv_videoio \
-lopencv_aruco
0 голосов
/ 26 октября 2019

похоже, что проблема в компоновке библиотеки, убедитесь, что вы установили aruco библиотеку.

вот некоторые ссылки могут быть полезны Код учебника Aruco не компилируется https://answers.opencv.org/question/199256/aruco-drawmarker/

...