很郁闷的表示我的opencv放在 D:\\program files 里面路径有个空格,导致我不得不把整个opencv又拷贝到了一个没有空格的路径下面命名为opencvForQt
网上有各种用CMake的教程,但实际上没有那么复杂,只要在pro文件里面加入包含文件和库文件即可。即加入下面的语句。我用的是Qt5.3.2和OpenCV2.4.4
INCLUDEPATH += D:\opencvForQt\build\include\opencv\
D:\opencvForQt\build\include\opencv2\
D:\opencvForQt\build\include LIBS += D:\opencvForQt\build\x86\vc10\lib\opencv_core244.lib
LIBS += D:\opencvForQt\build\x86\vc10\lib\opencv_core244d.lib
LIBS += D:\opencvForQt\build\x86\vc10\lib\opencv_highgui244.lib
LIBS += D:\opencvForQt\build\x86\vc10\lib\opencv_highgui244d.lib
lib添加的时候很奇怪 如果我直接写
LIBS += D:\opencvForQt\build\x86\vc10\lib
运行的时候就会报错说permission denied 只好一个一个的添加
添加完成后,主函数中引用一下
#include "cv.h"
#include "highgui.h"
就可以在Qt中使用opencv了
在调用时还发现一个问题:
IplImage * image = cvLoadImage("E:\\picture\\013.jpg", 1);
中路径名字必须用\\ 如果用\分割就会一直报错说无法识别\p..........
------------------------------------------------------------------------
更新 发现上面的方法配置后无法识别cv命名空间中的内容 Mat都没法用了。
没办法,还是用CMake重新配置一遍吧。
把下面的部分又操作了一遍,重启了几遍Qt成功了 花了我一整个下午啊!!!