Windows平台下QT与Opencv配置

时间:2022-02-26 04:44:14

转载自己文章


我在配置QT和Opencv时发现,网上的教程大多数都是基于MinGW的情况下使用Opencv的方法,而我使用的是MSVC的编译器,因此在总是无法成功的完成配置。

经过一系列尝试,终于完成了QT和Opencv的配置,详情如下:
VS版本:VS2013
Opencv版本:248
QT版本:5.1
首先是需要完成Opencv和VS的配置,详情这里就不赘述。当然这个也并不是必须的,只是为了确认Opencv已经正确配置,这个网上有很多的教程。
接着是新建一个QT的工程,在.pro中写入如下代码:
INCLUDEPATH +=D:\Opencv2\opencv\build\include\opencv\
D:\Opencv2\opencv\build\include\opencv2\
D:\Opencv2\opencv\build\include


LIBS += D:\Opencv2\opencv\build\x64\vc12\lib\opencv_calib3d248.lib\
D:\Opencv2\opencv\build\x64\vc12\lib\opencv_contrib248.lib\
D:\Opencv2\opencv\build\x64\vc12\lib\opencv_core248.lib\
D:\Opencv2\opencv\build\x64\vc12\lib\opencv_features2d248.lib\
D:\Opencv2\opencv\build\x64\vc12\lib\opencv_flann248.lib\A
D:\Opencv2\opencv\build\x64\vc12\lib\opencv_gpu248.lib\
D:\Opencv2\opencv\build\x64\vc12\lib\opencv_highgui248.lib\
D:\Opencv2\opencv\build\x64\vc12\lib\opencv_imgproc248.lib\
D:\Opencv2\opencv\build\x64\vc12\lib\opencv_legacy248.lib\
D:\Opencv2\opencv\build\x64\vc12\lib\opencv_ml248.lib\
D:\Opencv2\opencv\build\x64\vc12\lib\opencv_nonfree248.lib\
D:\Opencv2\opencv\build\x64\vc12\lib\opencv_objdetect248.lib\
D:\Opencv2\opencv\build\x64\vc12\lib\opencv_ocl248.lib\
D:\Opencv2\opencv\build\x64\vc12\lib\opencv_photo248.lib\
D:\Opencv2\opencv\build\x64\vc12\lib\opencv_stitching248.lib\
D:\Opencv2\opencv\build\x64\vc12\lib\opencv_superres248.lib\
D:\Opencv2\opencv\build\x64\vc12\lib\opencv_ts248.lib\
D:\Opencv2\opencv\build\x64\vc12\lib\opencv_video248.lib\
D:\Opencv2\opencv\build\x64\vc12\lib\opencv_videostab248.lib
在这和代码中每行最后有一个“\”符号,这个是表示加上下一行的代码,故最后一行没有"\"。
完成上述后,就可以在主文件中调用Opencv的函数并运行。
#include "cv.h"
#include "cxcore.h"
#include "highgui.h"
 
 
int main()
{
IplImage *src;
src = cvLoadImage("F:/lena.jpg");
cvNamedWindow("src");
cvShowImage("src",src);
cvWaitKey(0);
}
 
 
 
 
测试后图片正常显示。
 
 
在我参考教程中发现,不能把LIBS简单写成如下格式:
LIBS += D:\Opencv2\opencv\build\x64\vc12\lib。
当然如果你用的是MINGW的编译器的话,那么就要参考其他的教程了。
http://ggicci.blog.163.com/blog/static/21036409620127113361447/
在使用这个教程前,需要安装:MinGW,CMake