我正在尝试在QT中使用OpenCV库,但我一直在收到错误,不应该发生错误。
这是我简单程序的代码。
#include <opencv2/highgui/highgui.hpp>
using namespace cv; //All classes and functions defined in the C++ API of OpenCV are defined within the name space cv.
using namespace std;
int main(){
Mat image = imread("C:/opencv/opencv/samples/c/cat.jpg",CV_LOAD_IMAGE_GRAYSCALE);
cout << "Number of Rows: " << image.rows << endl << "Number of coloumn: " << image.cols;
imshow ("image",image);
waitKey(0);
}
C:\ Users \ Cipher \ Downloads \ Programs \ untitled2 \ main.cpp:1:错误:C1083: 无法打开包含文件:'highgui.hpp':没有这样的文件或目录
问题是,文件在那里,但QT无法找到文件,我可以访问该文件,甚至当我按住ctrl并将光标移到#include <opencv2/highgui/highgui.hpp>
并点击它我是成功访问文件,但仍然QT一直说它可以找到这样的文件或目录:/有什么问题:/
看看,
我可以访问CV命名空间中的所有方法,然后为什么我仍然会收到此错误?
看看,
opencv的所有功能都可以访问,但我仍然收到上述错误。
请指导我。
答案 0 :(得分:5)
在.pro文件INCLUDEPATH + =中有这个 的 path_to_opencv 强> / OpenCV的/生成/包括
查看Qt Creator最左侧的窗格。有一个Projects选项卡。 (ctrl + 5)应该到达那里。 转到构建环境。单击“详细信息”以获取系统环境变量列表。转到列表中的INCLUDE变量。选择并单击“编辑”。添加 path_to_opencv / opencv / build / include。
[ path_to_opencv 是您的opencv目录所在的路径。]
答案 1 :(得分:2)
将opencv的bin文件夹的地址添加到环境变量中。
Mat image = imread(""C:\\opencv\\opencv\\samples\\c\\cat.jpg",CV_LOAD_IMAGE_GRAYSCALE")
使用双反斜杠..
你的.pro文件应该看起来像是..
INCLUDEPATH += C:\opencv\build\include\
LIBS += -LC:\opencv\build_vs\lib\Debug\
-lopencv_core243d -lopencv_highgui243d -lopencv_video243d -lopencv_imgproc243d\