基于MinGW的QT环境配置OpenCV

来源:互联网 发布:mac 免费流程图软件 编辑:程序博客网 时间:2024/04/30 05:40

1. 下载openCV。

在下载openCV官网http://opencv.org/ 选择下载 OpenCV for windows(我下载的是2.49)
解压到D盘openCV目录下 D:\openCV

2. 下载QT。

  • 2.1 在下载页面http://www.qt.io/download-open-source/ 选择Qt 5.4.1 32-bitMinGW ,
    由于msvs版无法调试,所以选择minGW版。
  • 2.2 安装到D:\QT5,安装时选择tools中最新的minGW 2.9.1
  • 2.3 将minGW配置到环境变量path中,注意:是用tool中的那个minGW的bin目录
    D:\Qt5\Qt5.4.1\Tools\mingw491_32\bin

3. 下载CMake。

4. 使用CMake编译openCV

  • 4.1 选择source code路径: D:\openCV\opencv\sources
  • 4.2 选择build路径: D:\openCV\opencv\minGW_bulid
  • 4.3 点config,出现很多红条,不管它,选中WITH_OPENGL,和WITH_QT,继续config,然后点generate
  • 4.4 在cmd终端,进入D:\openCV\opencv\minGW_bulid输入以下俩个命令:

        minGW32-make    minGW32-make install

    这个过程有点长,我i7处理器编译了10分钟,

  • 4.5编译之后将install文件夹中的include, bin, lib 三个文件夹拷贝到QT的安装目录中,我放在D:\Qt5\openCV中,除了这三个文件夹其他的东西可以删除了。
  • 4.6 将D:\Qt5\openCV\bin放到系统环境变量中path

5. 在QT中配置openCV

  • 5.1 创建一个QT控制台应用 暂时项目命名为OpenCVTest
  • 5.2 在OpenCVTest.pro配置文件中添加项目所依赖的include和lib文件路径,如下:注意:
    • (1)因为跨平台的需求,路径可以用\也可以用/。
    • (2)如果路径是一行,则要用\表示下一行还有
#配置openCV的includeINCLUDEPATH += D:\Qt5\openCV\include\opencv2INCLUDEPATH += D:\Qt5\openCV\include\opencvINCLUDEPATH += D:\Qt5\openCV\include#配置OpenCV的libLIBS+=D:\Qt5\openCV\lib\libopencv_ml249.dll.aLIBS+=D:\Qt5\openCV\lib\libopencv_calib3d249.dll.aLIBS+=D:\Qt5\openCV\lib\libopencv_contrib249.dll.aLIBS+=D:\Qt5\openCV\lib\libopencv_core249.dll.aLIBS+=D:\Qt5\openCV\lib\libopencv_features2d249.dll.aLIBS+=D:\Qt5\openCV\lib\libopencv_flann249.dll.aLIBS+=D:\Qt5\openCV\lib\libopencv_gpu249.dll.aLIBS+=D:\Qt5\openCV\lib\libopencv_highgui249.dll.aLIBS+=D:\Qt5\openCV\lib\libopencv_imgproc249.dll.aLIBS+=D:\Qt5\openCV\lib\libopencv_legacy249.dll.aLIBS+=D:\Qt5\openCV\lib\libopencv_objdetect249.dll.aLIBS+=D:\Qt5\openCV\lib\libopencv_ts249.aLIBS+=D:\Qt5\openCV\lib\libopencv_video249.dll.aLIBS+=D:\Qt5\openCV\lib\libopencv_nonfree249.dll.aLIBS+=D:\Qt5\openCV\lib\libopencv_ocl249.dll.aLIBS+=D:\Qt5\openCV\lib\libopencv_photo249.dll.aLIBS+=D:\Qt5\openCV\lib\libopencv_stitching249.dll.aLIBS+=D:\Qt5\openCV\lib\libopencv_superres249.dll.aLIBS+=D:\Qt5\openCV\lib\libopencv_videostab249.dll.a

5 . 测试

在main函数中使用如下程序:
注意:(1)需要在程序中放置一个图片,图片使用绝对路径,相对路径不好使

#include <QCoreApplication>#include <opencv2/core/core.hpp>#include <opencv2/highgui/highgui.hpp>#include <iostream>using namespace std;using namespace cv;int main(int argc,char **argv){    cout<<"opencv"<<endl;    Mat src=imread("E:\\CODE\\QT\\OpenCVTest\\test.jpg");  //在qt里面读取图片貌似只支持绝对路径    imshow("test",src);    waitKey(0);  return 0;}
0 0
原创粉丝点击