win7下配置OpenCV的Qt开发环境

  1. 下载所需的工具(都可在对应的官网上下载)
    • QT的集成包(qt-opensource-windows-x86-mingw492-5.5.0.exe),它集成了MinGW、Qt Creator等,不需要你再单独下载MinGW和Qt Creator。
    • OpenCV3.0.0
    • CMake3.3.0 
  2. 安装QT(需要先在官网上注册账号,注意组件选择的时候全选)
  3. 安装OpenCV设置解压路径就OK
  4. 安装CMake,过程同样很简单(注意:1、安装路径不能有中文和空格  2、勾选加入所有境变量中)
  5. 生成Makefiles文件
    • 设置系统的环境变量,即把D:workqt5.5mingw492_32in加入系统的Path环境变量中,因为在CMake编译过程中会用到该目录下的库。
    • 在桌面上点击CMake(cmake-gui)图标,执行CMake。如图所示,在Where is the source code栏和Where to build thebinaries栏中分别为D:workopencvsrcopencvsources和D:workopencv为编译后库文件所存放的目录,需要自己创建该目录。然后点击configure按钮,打开新的窗口,在Specify the generator for this project下选择MinGW Makefiles,然后选择Specify native compilers,点击Next按钮,打开新的窗口,在C一栏中填写D:/work/qt/Tools/mingw492_32/bin/gcc.exe,在C++一栏中填D:/work/qt/Tools/mingw492_32/bin/g++.exe,Fortran不填写,然后点击Finish按钮,开始配置。
    • 此时会出现错误(具体描述与解决方案见:http://bbs.csdn.net/topics/391028493),再次点击Configure,这时不会提示任何错误,表明配置成功。
    • 我们还需要把QT加上,找到WITH,把它下面的WITH_QT和WITH_OPENGL选上,并将WITH_IPP的勾选去掉(否则编译的时候会出错),再次Configure。这时会出现类似下面的错误提示:
      CMake Error atC:/CMake/share/cmake-3.0/Modules/FindQt4.cmake:1316 (message):
       Found unsuitable Qt version "" from NOTFOUND, this coderequires Qt 4.x
      Call Stack (most recent call first):
       cmake/OpenCVFindLibsGUI.cmake:34 (find_package)
       CMakeLists.txt:466 (include)
      
      找到QT_QMAKE_EXECUTABLE,它的值填写为:D:/work/qt/5.5/mingw492_32/bin/qmake.exe
      将Qt5Concurrent_DIR,Qt5Core_DIR,Qt5Gui_DIR,Qt5Test_DIR,Qt5Widgets_DIR,Qt5OpenGL_DIR,它们的Value分别填写为:
      D:/work/qt/5.5/mingw492_32/lib/cmake/Qt5Concurrent
      D:/work/qt/5.5/mingw492_32/lib/cmake/Qt5Core
      D:/work/qt/5.5/mingw492_32/lib/cmake/Qt5Gui
      D:/work/qt/5.5/mingw492_32/lib/cmake/Qt5Test
      D:/work/qt/5.5/mingw492_32/lib/cmake/Qt5Widgets
      D:/work/qt/5.5/mingw492_32/lib/cmake/Qt5OpenGL
      
      再次Configure,这时配置完成,不会出现任何错误提示。虽然会有许多警告,但不用去管,按Generate。Generate完成后,关闭CMake窗口。
      这样makefile文件就生成了。
  6. 编译OpenCV
    • 在D:workopencvsrcopencvsourcescmake下找到 OpenCVCompilerOptions.cmake
      打开它并找到
      add_extra_compiler_option(-Werror=non-virtual-dtor)
      将它注释掉,变成:
      #add_extra_compiler_option(-Werror=non-virtual-dtor)
    • 打开系统的命令终端,进入D:workopencv目录,执行mingw32-make命令,这需要一段时间(大约40分钟)。该命令执行完后,再执行mingw32-make install命令。这样可用于Qt的opencv库文件就生成了。
  7. 配置环境
    • 在D:workopencv目录下新建文件夹necessary_file
    • 将D:workopencv目录下的lib和bin文件夹复制进necessary_file
    • 将D:workopencvinstall目录下的include文件夹复制进necessary_file
    • 将路径D:workopencv ecessary_filein添加到系统环境变量path中。  
  8. 环境测试
    • 打开Qt Creator,新建一个空工程,然后添加一个cpp文件,任意命名
    • 工程文件.pro文件内添加下列语句:
      INCLUDEPATH+=D:workopencv
      ecessary_fileincludeopencv
                          D:workopencv
      ecessary_fileincludeopencv2
                          D:workopencv
      ecessary_fileinclude
      
      LIBS += -L D:workopencv
      ecessary_fileliblibopencv_*.a
    • 在cpp文件里面添加如下代码:
      #include "cv.h"
      #include "cxcore.h"
      #include "highgui.h"
      
      int main(int argc,char *argv[])
      {
          //声明IplImage指针
          IplImage*pImg;
          //载入图片
          pImg=cvLoadImage("E:/1.jpg",1);
          //创建窗口
          cvNamedWindow("Image",1);
          //显示图像
          cvShowImage("Image",pImg);
          //等待按键
          cvWaitKey(0);
          //销毁窗口
          cvDestroyWindow("Image");
          //释放图像
          cvReleaseImage(&pImg);
      
          return 0;
      }
    • 实验结果

参考:

1、http://blog.csdn.net/zhaocj/article/details/38944037

2、http://www.mamicode.com/info-detail-500574.html

3、http://blog.csdn.net/qiurisuixiang/article/details/8665278 

2015-07-18

http://www.cnblogs.com/ddblog/
原文地址:https://www.cnblogs.com/ddblog/p/4656847.html