Qt 5.12.0中MinGW编译器+OpenCV 3.4.5的环境配置小结

本博客作为亲测补充,详细安装过程可参考:点击进入

一、准备工作

(1)Qt 5.12下载安装,尽量下载离线安装包,安装过程中选择MinGW编译器相关组件,配置系统环境变量;

(2)OpenCV下载,本人下载的OpenCV3最新版3.4.5,选择Windows Pack(推荐)或者Source源码编译

        Tips:虽然源码在后面可以直接编译,但是本人亲测发现源码include文件夹头文件不全,只有几十KB不齐全

Qt 5.12.0中MinGW编译器+OpenCV 3.4.5的环境配置小结_第1张图片

而Windows Pack解压以后 opencv/build/include 中有4MB多!

Qt 5.12.0中MinGW编译器+OpenCV 3.4.5的环境配置小结_第2张图片

保险起见还是编译Windows Pack中的source源码,当然若是VS+OpenCV的用户可以直接使用opencv/build中的vc14或vc15,而不需要后面的CMake编译

Qt 5.12.0中MinGW编译器+OpenCV 3.4.5的环境配置小结_第3张图片

(3)CMake下载安装,使用CMake编译源码

为什么不能直接使用下载的OpenCV,还需要自己手动编译?

直接下载的OpenCV中的库是Windows平台的动态链接库.dll或lib库,MinGW是Linux下gcc,g++的在Windows下的形态,所以MinGW只能使用.a和.so后缀的库,我们需要手动编译源码为MinGW可以使用的库。

二、编译源码

详细操作参照博客开头的链接,先要CMake配置生成MakeFile文件,然后控制台环境进入相应文件夹,执行mingw32-make命令,开始编译,大概需要半个小时,期间卡顿百分比不增加,敲回车键刷新即可,只要前面操作正确,一般不会出现问题,编译完执行mingw32-make install命令。我的编译结果:

Qt 5.12.0中MinGW编译器+OpenCV 3.4.5的环境配置小结_第4张图片

三、裁剪编译完成的OpenCV库

源码编译完成,输出到OpenCVBuild文件夹中后,会发现整个文件夹大小达5个GB!

Qt 5.12.0中MinGW编译器+OpenCV 3.4.5的环境配置小结_第5张图片

实际上编译完成后,我们并不是整个文件夹中的文件都需要,这个时候需要进行裁剪保留需要的部分,仅3个文件夹:

(1)opencv/build/include 中完整的大概4MB多的include文件夹;

(2)编译输出的文件夹OpenCVBuild中的,bin文件夹,大概300多MB;

(3)编译输出文件夹OpenCVBuild中的,lib文件夹,20MB左右

把以上三个文件夹打包放入新建的空文件夹——OpenCVBuildLib中,总共300多MB,以后我们只需要使用此文件夹就可以了!

我们要将.../OpenCVBuildLib/bin,添加到系统环境变量中去,我添加后大概这样:

Qt 5.12.0中MinGW编译器+OpenCV 3.4.5的环境配置小结_第6张图片

四、Qt配置使用编译好的OpenCV库

详细参照博客开头的链接,在untitled.pro文件中添加相应的头文件路径、库路径。

裁剪以后的OpenCV库,项目.pro文件添加如下:

Qt 5.12.0中MinGW编译器+OpenCV 3.4.5的环境配置小结_第7张图片

 

五、图像腐蚀测试

用OpenCV实现最基本的形态学运算之一——腐蚀,即用图像中的暗色部分“腐蚀”掉图像中的高亮部分。

main.cpp的源代码如下:

#include
#include

using namespace cv;

int main()
{
    Mat srcImage = imread("D:\\Documents\\untitled\\robots.jpg");
    imshow("src",srcImage);

    Mat element = getStructuringElement(MORPH_RECT,Size(15,15));
    Mat dstImage;
    erode(srcImage,dstImage,element);

    imshow("dst",dstImage);

    waitKey(0);

    return 0;
}

运行测试:

Qt 5.12.0中MinGW编译器+OpenCV 3.4.5的环境配置小结_第8张图片

你可能感兴趣的:(OpenCV)