【问题标题】:Error compiling opencv2 with aruco in c++在 c++ 中使用 aruco 编译 opencv2 时出错
【发布时间】:2016-09-21 13:22:29
【问题描述】:

我已经编写了一个简单的代码,用于在 aruco 库中创建制造商 这是

#include <opencv2/highgui/highgui.hpp>
#include <opencv2/aruco.hpp>

using namespace cv;

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


int dictionaryId = 100;
int markerId = 45;
int borderBits = 2;
int markerSize = 2450;
bool showImage = true;

cv::Ptr<aruco::Dictionary> dictionary = aruco::getPredefinedDictionary(aruco::PREDEFINED_DICTIONARY_NAME(dictionaryId));

Mat markerImg;
aruco::drawMarker(dictionary, markerId, markerSize, markerImg, borderBits);

if(showImage) {
    imshow("marker", markerImg);
    waitKey(0);
}

imwrite("out.png", markerImg);

return 0;
}

当我尝试使用命令编译和运行它时

g++ -I/usr/local/include/opencv -I/usr/include/opencv2 -L/usr/local/lib/ -g -o binary create_marker.cpp -lopencv_core -lopencv_imgproc -lopencv_highgui -lopencv_ml -lopencv_video -lopencv_features2d -lopencv_calib3d -lopencv_objdetect -lopencv_contrib -lopencv_legacy -lopencv_stitching -lopencv_aruco

正如本网站的解决方案之一给出的那样,它给出了这个错误

g++ -I/usr/local/include/opencv -I/usr/include/opencv2 -L/usr/local/lib/ -g -o binary create_marker.cpp -lopencv_core -lopencv_imgproc -lopencv_highgui -lopencv_ml -lopencv_video -lopencv_features2d -lopencv_calib3d -lopencv_objdetect -lopencv_contrib -lopencv_legacy -lopencv_stitching -lopencv_aruco /usr/bin/ld: 找不到 -lopencv_aruco collect2: 错误: ld 返回退出状态

有人可以指出我做错了什么,因为我是opencv的新手 谢谢!!

【问题讨论】:

    标签: c++ opencv g++ opencv3.0 aruco


    【解决方案1】:

    使用这个命令:

    g++ -std=c++11  file_to_run.cpp  -o output_binary_name  -I/usr/local/include -L/usr/local/lib -lopencv_highgui -lopencv_aruco -lopencv_imgcodecs -lopencv_core -lopencv_videoio -lopencv_calib3d -lopencv_imgproc
    

    如果还是不行,请再次发布错误。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-06-17
      • 2021-05-23
      • 1970-01-01
      • 1970-01-01
      • 2012-04-05
      • 1970-01-01
      • 2016-01-29
      相关资源
      最近更新 更多