之前一直基于Windows平台(Win 7 32bit)使用VS2010做OpenCV的开发,现在开始学习在Windows 下使用Qt做OpenCV的开发。本文主要讲述Windows平台下(Win 7 32bit)下Qt5.5.0和OpenCV2.4.9环境的搭建。在此之前,我已安装好Qt5.5.0(with MinGW492)和OpenCV2.4.9(for Windows),并且配置好了它们的环境变量。
开发工具安装
- Qt 5.5.0(qt-opensource-windows-x86-mingw492-5.5.0.exe)
- OpenCV 2.4.9
- CMake
生成Qt版OpenCV的安装工程
现在我们使用CMake生成Qt版本OpenCV的安装工程,我使用的CMake版本是CMake 3.5.1。
(1)启动CMake,输入源地址和目标地址(我的目标地址是自己在OpenCV的安装目录下新建的名为build_qt5的文件夹),执行Configure,如下图所示。
(2)确定没有错误后,执行Generate,完成后会在D:\OpenCV249\build_qt5目录下生成Qt版OpenCV的安装工程。
安装OpenCV
(1)Generate完成后,关闭CMake窗口。在D:\OpenCV249\build_qt5目录下,通过CMD控制台窗口执行mingw32-make命令,编译刚才生成的工程。这会需要一段时间,在我电脑上大约用了20分钟。
(2)上一步执行完后,再在该命令行窗口执行mingw32-make install命令。
(3)添加环境变量,将bin文件夹所在的路径(如下)添加到Path变量中。
D:\OpenCV249\build_qt5\bin
新建Qt工程
(1)安装好OpenCV后,新建Qt工程,我建立的是Qt控制台工程,测试OpenCV环境搭建是否正确。
(2)在工程的pro文件中,添加OpenCV的include路径和lib路径,如下所示。
INCLUDEPATH += D:\OpenCV249\build\include\ LIBS += D:\OpenCV249\build_qt5\lib\libopencv_calib3d249.dll.a\
D:\OpenCV249\build_qt5\lib\libopencv_contrib249.dll.a\
D:\OpenCV249\build_qt5\lib\libopencv_core249.dll.a\
D:\OpenCV249\build_qt5\lib\libopencv_features2d249.dll.a\
D:\OpenCV249\build_qt5\lib\libopencv_flann249.dll.a\
D:\OpenCV249\build_qt5\lib\libopencv_gpu249.dll.a\
D:\OpenCV249\build_qt5\lib\libopencv_highgui249.dll.a\
D:\OpenCV249\build_qt5\lib\libopencv_imgproc249.dll.a\
D:\OpenCV249\build_qt5\lib\libopencv_legacy249.dll.a\
D:\OpenCV249\build_qt5\lib\libopencv_ml249.dll.a\
D:\OpenCV249\build_qt5\lib\libopencv_objdetect249.dll.a\
D:\OpenCV249\build_qt5\lib\libopencv_video249.dll.a
(3)在main函数中添加如下代码:
//read a image
Mat image= cv::imread("C:\\Users\\Gordon\\Desktop\\OpenCVTest\\test.jpg",);
// avoid mem error
if (image.empty())
{
namedWindow("can not find image : img.jpg");
waitKey();
return -;
}
//creat image windows named "My Image"
namedWindow("My Image",);
//show the image on window
imshow("My Image",image);
//wait key for 5000ms
waitKey();
(4)构建、运行工程,效果如下图所示。
参考文献
[1] Win7下qt5.3.1+opencv2.4.9编译环境的搭建 http://blog.csdn.net/zhaocj/article/details/38944037