在Qt平台上使用OpenCV方法
首先下载好安装程序:
1、qt-opensource-windows-x86-mingw482_opengl-5.3.1.exe
2、cmake-2.8.11.2-win32-x86.exe
3、opencv-2.4.11.exe (下载地址百度即可)
Qt完全安装包含MinGW和OpenGL,安装(解压)OpenCV2.4.11,安装cmake2.8.11.2。
开始编译MinGW下的OpenCV,运行cmake-gui,源码路径为安装(解压)后的OpenCV目录中的sourse目录,目标路径自己新建一个英文文件夹,如下图所示:
点击configuration,如下,再选择MinGW Makefiles,其他不管,点Finish:
编译完成后勾选WITH_OPENGL和WITH_QT:
再点击configuration后红色消失,然后在点击generation,完成MinGW makefile的编译。
添加两个环境变量Path,在Qt的安装路径下,E:\Qt\Qt5.3.1\Tools\mingw482_32\bin;E:\Qt\Qt5.3.1\5.3\mingw482_32\bin 分别用到了qmake.exe和mingw32-make.exe,自己可以打开这两个文件夹看看。
接下来是编译Qt上的OpenCV,在命令提示符中进入cmake编译的MinGW makefile目标文件夹,运行mingw32-make,等待30分钟
结束后再运行mingw32-make install,再等几分钟
这样编译工作就完成了。
将有用的文件统一保存在一个新的文件夹中这里是useropencvqt:
1、OpenCV安装目录下的build/include目录
2、MinGW编译后的bin目录
3、MinGW编译后的lib目录
最后再添加一个环境变量:D:\useropencvqt\bin
现在新建一个Qt项目:
1、在pro文件中加入代码:
INCLUDEPATH+=D:\useropencvqt\include\opencv D:\useropencvqt\include\opencv2 D:\useropencvqt\include LIBS+=D:\useropencvqt\lib\libopencv_calib3d2411.dll.a D:\useropencvqt\lib\libopencv_contrib2411.dll.a D:\useropencvqt\lib\libopencv_core2411.dll.a D:\useropencvqt\lib\libopencv_features2d2411.dll.a D:\useropencvqt\lib\libopencv_flann2411.dll.a D:\useropencvqt\lib\libopencv_gpu2411.dll.a D:\useropencvqt\lib\libopencv_highgui2411.dll.a D:\useropencvqt\lib\libopencv_imgproc2411.dll.a D:\useropencvqt\lib\libopencv_legacy2411.dll.a D:\useropencvqt\lib\libopencv_ml2411.dll.a D:\useropencvqt\lib\libopencv_objdetect2411.dll.a D:\useropencvqt\lib\libopencv_video2411.dll.a
2、cpp中例子代码是:
#include <QCoreApplication> #include <opencv2/core/core.hpp> #include <opencv2/highgui/highgui.hpp> using namespace cv; int main() { Mat src = imread("lena.jpg",1); imshow("src",src); waitKey(0); return 0; }
需要注意的是,图片一定要放在build-opencv-qt-test-Desktop_Qt_5_3_MinGW_32bit-Debug文件夹中,而不是项目的根目录下。
参考了:http://blog.csdn.net/qiurisuixiang/article/details/8665278
时间: 2024-10-13 21:13:49