QT creator+opencv+opencv_contrib编译配置和使用

一、材料

1、系统Win7 64位
2、qt-opensource-windows-x86-5.9.5.exe  下载地址
3、opencv3.4.0  下载地址
  选择下载source code(zip)格式
4、opencv_contrib3.4.0  下载地址
  选择下载zip格式
5、cmake-3.13.0-rc3-win64-x64.msi  下载地址
注:文章使用opencv3.4.1和opencv_contrib3.4.1也是一次完成

二、安装

(注:本文一切安装都是安装在E盘根目录下)
1、QT安装
  QT直接安装就行,安装路径中不要有中文和空格,安装完成后将两个bin路径添加进入系统环境变量。
E:\Qt\5.9.5\mingw53_32\bin;
E:\Qt\Tools\mingw530_32\bin;
2、opencv安装
  opencv3.4.0和opencv_contrib3.4.0直接解压出来即可。
3、Cmake安装
  直接一路下一步即可(安装在E盘)。
安装完成后将bin路径添加进入系统环境变量。
E:\cmake-3.13.0-rc3-win64-x64\bin

三、编译opencv

  使用cmake编译opencv,第一个路径是opencv的源码,第二个路径是你要保存编译库的路径(在opencv3.4.0目录下新建一个qtbuild文件夹)
QT creator+opencv+opencv_contrib编译配置和使用_第1张图片
QT creator+opencv+opencv_contrib编译配置和使用_第2张图片
QT creator+opencv+opencv_contrib编译配置和使用_第3张图片
最重要的是:
勾选 WITH_QTWITH_OPENGLENABLE_C××11

不勾选 WITH_IPP、ENABLE_PRECOMPILED_HEADERS、BUILD_opencv_python_bingings_generator、WITH_MATLAB

③将OPENCV_EXTRA_MODULES_PATH设为
E:\opencv_contrib-3.4.0\opencv_contrib-3.4.0\modules

④将E:\opencv-3.4.0\opencv-3.4.0\modules\videoio\src
中的cap_dshow.cpp文件中 #include “DShow.h” 前面加一句
#define STR_NO_DEPRECATE

点击Configure,如果还有红色再点击Configure直到变白,点击Generate按钮

  在完成以上所有步骤之后,WIN+R打开cmd,进入生成的目录中。输入“mingw32-make”命令,按回车进行编译。编译达到100%后再输入“mingw32-make install”命令,按回车。 编译完成后就会在qtbuild下的install文件夹中生成编译好的库文件。
QT creator+opencv+opencv_contrib编译配置和使用_第4张图片
QT creator+opencv+opencv_contrib编译配置和使用_第5张图片
  上面讲了那么多,最终需要的就是一个install文件夹,直接将install文件夹拷贝到QT文件夹里面就行,
  将x86文件夹下面bin路径加到系统path变量中,例如我的bin文件路径为:E:\Qt\install\x86\mingw\bin

四、配置Qt中的OpenCV

1、打开Qt,主界面如下图。然后点击【New Project】
QT creator+opencv+opencv_contrib编译配置和使用_第6张图片
2、选择【Qt Widgets Application】,然后点【Choose】
QT creator+opencv+opencv_contrib编译配置和使用_第7张图片
3、创建项目名称,选择创建路径,然后点【下一步】
QT creator+opencv+opencv_contrib编译配置和使用_第8张图片
4、保持默认,点【下一步】
QT creator+opencv+opencv_contrib编译配置和使用_第9张图片
5、保持默认,点【下一步】
QT creator+opencv+opencv_contrib编译配置和使用_第10张图片
6、保持默认,点【完成】
7、在 .pro 文件中的底部,添加如下内容:

INCLUDEPATH += E:\Qt\install\include
INCLUDEPATH += E:\Qt\install\include\opencv
INCLUDEPATH += E:\Qt\install\include\opencv2
LIBS += E:\Qt\install\x86\mingw\lib\libopencv_*.a

QT creator+opencv+opencv_contrib编译配置和使用_第11张图片
8、到此为止,qt和opencv配置成功。以后在qt中编写opencv程序,同理,只要将上一步的内容添加到.pro文件中。(每次新建新项目时,都只要添加该内容就行)

五、测试

添加如下代码,然后编译运行。

#include 
using namespace cv;
int main()
{
    Mat image;
    image=imread("F:\\QtTemp\\untitled1\\Jellyfish.jpg");//括号里更改为自己图像的路径
    namedWindow("显示",0);
    imshow("显示",image);
    waitKey(0);
    return 0;
}

QT creator+opencv+opencv_contrib编译配置和使用_第12张图片
QT creator+opencv+opencv_contrib编译配置和使用_第13张图片

六、参考文章

这两位博主写的不错:
https://mlh.app/2019/02/21/fcc909b53245c3ec05369526ab66cf72.html
https://blog.csdn.net/sinat_36264666/article/details/73200739
基本上不会报错了,如果还有报错请参考:
https://blog.csdn.net/qq_40560275/article/details/83118088
https://segmentfault.com/a/1190000014284086
https://blog.huihut.com/2018/07/31/CompiledOpenCVWithMinGW64/

你可能感兴趣的:(opencv)