工具版本:
- Qt5.8.0:qt-opensource-windows-x86-mingw530-5.8.0.exe
- Opencv3.2:opencv-3.2.0-vc14.exe
- CMake:cmake-3.8.0-rc3-win64-x64.msi


第一步:安装Qt、CMake、解压OpenCV

第二步:配置环境变量



qt OpenCV处理图片 opencv配置qt_qt OpenCV处理图片




图1: CMake和Qt环境变量配置


注:此时需要使环境变量生效,有两种方式:

  1. 设置环境变量后重启电脑
  2. 打开DOS终端, 如果是设置环境变量“PATH”,则在修改完成后,在DOS窗口命令行中输入:set PATH=C: ,然后关闭DOS窗口。再次打开DOS窗口,输入:echo %PATH% ,可以发现“我的电脑”->“属性”->“高级”->“环境变量”中设置的 PATH 值已经生效。(DOS窗口中的环境变量只是Windows环境变量的一个副本,通过对副本的修改可以引发Windows环境变量的刷新,所以只是环境变量刷新了一次,不用担心DOS窗口中的修改会使得系统环境变量的值变成了”C:”)

第三步:CMake操作


qt OpenCV处理图片 opencv配置qt_qt5_02


图2:打开CMake


Where is the source code:选择OpenCV解压的源文件文件夹位置;
Where to build the binaries:选择自定义的空文件夹用于保存生成对象
点击左下角Configure按钮,会出现如下界面



qt OpenCV处理图片 opencv配置qt_opencv_03




图3:选择工具集


点击Next按钮,会出现配置编译器gcc和g++的界面,gcc和g++在Qt安装目录下:
D:\Qt\Qt5.8.0\Tools\mingw530_32\bin\gcc
D:\Qt\Qt5.8.0\Tools\mingw530_32\bin\g++
点击finish按钮开始Configure



qt OpenCV处理图片 opencv配置qt_环境变量_04


图4:第一次Configure后的结果图




qt OpenCV处理图片 opencv配置qt_cmake_05


图5:选择WITH_OPENGL和WITH_QT支持选项


再次点击左下角Configure按钮



qt OpenCV处理图片 opencv配置qt_cmake_06


图6:第二次Configure的结果图


再次点击左下角Configure按钮



qt OpenCV处理图片 opencv配置qt_cmake_07


图7:第三次Configure的结果图


然后点击左下角Generate按钮



qt OpenCV处理图片 opencv配置qt_qt OpenCV处理图片_08


图8:点击Generate按钮后的结果图,MakeFiles生成成功


CMake操作结束,关闭CMake的操作界面

第四步:mingw32-make操作
    打开CMD窗口,进入生成OpenCV目标文件的文件夹,输入mingw32-make开始编译,需要半个小时左右



qt OpenCV处理图片 opencv配置qt_qt5_09


图9:编译开始




qt OpenCV处理图片 opencv配置qt_环境变量_10


图10:编译完成结果图


输入mingw32-make install命令并回车,开始安装,该过程较快



qt OpenCV处理图片 opencv配置qt_cmake_11


图11:安装完成




qt OpenCV处理图片 opencv配置qt_opencv_12


图12:生成目标文件夹下的install文件夹即为安装文件夹




qt OpenCV处理图片 opencv配置qt_opencv_13


图13: OpenCV安装文件


即上一步编译安装生成的install文件夹内部文件结构,可将该文件夹install复制到指定位置即可完成OpenCV安装

第五步:测试
    用Qt Creator新建项目如下:



qt OpenCV处理图片 opencv配置qt_环境变量_14


图14:新建测试项目


1.在项目*.pro文件中添加如下语句,注意将路径替换成自己放置install文件夹的路径

INCLUDEPATH += D:/opencv3/install/include/opencv \
            D:/opencv3/install/include/opencv2  \
            D:/opencv3/install/include

LIBS += -L D:/opencv3/install/x86/mingw/lib/libopencv_*.a

2.在*.cpp文件中代码如下:

#include <opencv2/imgproc/imgproc.hpp>
#include <opencv2/core/core.hpp>
#include <opencv2/objdetect/objdetect.hpp>
#include <opencv2/highgui/highgui.hpp>

using namespace cv;

int main()
{

    Mat img=imread("D:/Developer/OpenCV3/Picture/hw.jpg"); //读入一张图片

    cvNamedWindow("秦惠文王"); //创建一个名为"秦惠文王"的显示窗口

    imshow("秦惠文王", img);   //在窗口中显示图像

    waitKey(10000); //延时10000ms后关闭窗口

    return 0;
}

    编译运行可能会提示如下错误



qt OpenCV处理图片 opencv配置qt_环境变量_15


图15:提示不能执行debug


    这是链接库链接不成功导致的,有两种方法可以解决:
    方法一:可将缺少的库复制到生成的可执行文件的文件夹下来解决问题,可通过点击可执行文件来根据提示发现缺少哪些库文件,然后从OpenCV安装文件夹下找到这些库文件复制过来即可



qt OpenCV处理图片 opencv配置qt_环境变量_16


图16:将链接失败的库放置到可执行文件所在的文件夹下


    方法二:
    将OpenCV库的bin文件目录路径添加进环境变量,比如我的OpenCV放置目录是:C:\opencv320\x86\mingw\bin,把这个目录添加进环境变量即可。

第六步:运行结果



qt OpenCV处理图片 opencv配置qt_opencv_17


图17:运行效果图