错误:imread不是cv的成员

时间:2015-11-14 10:40:10

标签: c++ opencv ubuntu imread

我使用的是OpenCV 3.0和Ubuntu 14.04。我试图使用opencv在ubuntu上编译一些代码。我收到错误

  

"错误:' imread'不是' cv'"

的成员

由于我之前的搜索知识,我尝试通过添加" highgui.h"进行编译。

我用:

$g++ main.cpp HOG.cpp HOGFeaturesOfBlock.cpp -I/usr/local/include/opencv -lml -lcvaux -highgui -lcv -lcxcore -o featureExtractor

在终端上编译。

有什么建议吗? 问候。 可以。

4 个答案:

答案 0 :(得分:7)

以下命令应该有效。如果它不起作用,您应该检查是否正确设置了include / lib文件。

#include <opencv2\highgui\highgui.hpp>
#include <opencv2\core\core.hpp>
#include <opencv\cv.hpp>

using namespace cv;

Mat image = imread(filename, CV_LOAD_IMAGE_COLOR);

答案 1 :(得分:2)

#include <opencv2/imgcodecs.hpp> 

解决了包含读取功能的问题

答案 2 :(得分:0)

我发现编译命令必须非常具体(除了在代码中添加了using namespace cv;之外),源文件必须直接位于g++之后,如下所示;

g++ test.cpp -fpermissive $(pkg-config --cflags --libs opencv) -o testbin

如果您使用的是opencv替换为opencv4

答案 3 :(得分:0)

我之前有一个相同的问题。 只需添加#include "imgcodec.hpp", 希望这可以帮助您