当前位置: 代码迷 >> 综合 >> opencv4.1.0+contrib+cmake+qt编译与环境配置(mingw版)
  详细解决方案

opencv4.1.0+contrib+cmake+qt编译与环境配置(mingw版)

热度:92   发布时间:2023-12-15 07:24:43.0

opencv4.1.0+contrib+cmake+qt编译与环境配置(mingw版,文内附下载链接)

转自:https://www.jianshu.com/p/9841e53a5001

 **鉴于opencv已经更新到了4.10,本次配置目标库即为opencv 4.1.0及其拓展库contrib,利用cmake进行编译,直接开始:**

1.下载opencv4.1.0+contrib
opencv4.1.0 下载地址:https://github.com/opencv/opencv/releases

拓展库下载地址:https://github.com/opencv/opencv_contrib/releases

在这里插入图片描述
如上图,选择版本4.10,点击源代码进行下载,同时下载.doc文档的压缩包(查阅opencv4.10相关函数说明使用)。(另外这个里面有一个vc15的exe文件,是一个已经编译好的opencv试用与vs2017的库,由于本次需要同时编译拓展库,所以占不考虑它了。)拓展库类似选择opencv4.10版本,即两个库版本要一致。下载之后解压缩放置在一个文件夹下:

在这里插入图片描述

2.下载安装vs2019,qt以及cmake
cmake下载地址:https://cmake.org/download/

qt:https://www.qt.io

vs2019:https://visualstudio.microsoft.com/zh-hans/

其中vs2019下载社区版,即community版,cmake下载3.14.4版本进行适配。这两个不需要注册,直接下载即可,其中qt需要注册之后才能下载,注册后点击主页面下载同样选择社区版下载,即开源版本。专业版需要rmb。

a. cmake安装流程:打开安装包之后按照默认配置接受license aggrement之后进入install options 选择加入path for all users,即:
在这里插入图片描述

之后一直按照默认的next即可。勾选第二项的原因是安装之后不需要自己进行手动配置系统环境。

b.vs2019安装流程:按照默认选择使用c++桌面开发即可,如果有需要安装其他插件和组件请自行判断安装。

在这里插入图片描述

c.qt安装流程:点击安装包之后需要登陆,选择您之前注册的账号和密码进行登陆,登陆之后点击下一步,选择安装路径(这里不限),选择版本5.12.3:如图勾选基本组件:如果硬盘容量比较充足,建议将ming64位的也勾选上。如果硬盘容量不足,图中的sources以及qt debug information这两项可以选择不安装。

在这里插入图片描述
sources
选中主要安装项目之后,需要安装一些tools:如下图:

在这里插入图片描述

之后点击下一步即可。预计安装包大小在10-20G左右,

3.安装好所有工具后,配置系统环境变量。
打开系统属性之后打开环境变量,打开path,将C:\Qt\Tools\mingw730_64\bin和C:\Qt\Tools\mingw730_32\bin加入(之前qt安装时候选择tools 下的两个mingw)检查cmake是否存在环境变量中,如果没有,将cmake 安装目录加入即可。

4.打开cmake开始进行编译操作
其中where is source code 里面填写存放opencv源文件的地方。下面那一行填写你编译后保存的地址。之后点击下方的configure按钮

在这里插入图片描述

之后弹出的里面设置如下;
在这里插入图片描述

选择c和c++编译器的地址:如下

C:/Qt/Tools/mingw730_32/bin/gcc.exe

C:/Qt/Tools/mingw730_32/bin/g++.exe

在这里插入图片描述

再点击finish之后开始编译。等待他完成之后:

在这里插入图片描述

会出现很多红色的警告,这是默认的配置。这时我们需要选中一些我们需要安装的组件.

在Search框内搜索QT和OPENGL,都打上勾

勾选 WITH_OPENGL

勾选 WITH_QT

不勾选 WITH_IPP

勾选OPENCV_ENABLE_NONFREE

不勾选 WITH_OPENCL_D3D11_NV

搜索EXTRA,出现OPENCV_EXTRA_MODILES_PATH。将F:/opencv/opencv-4.10/opencv_contrib-4.1.0/modules加入(即之前的contrib文件路径下。)之后。再次继续configure。

完毕之后需要检查一下下面设置

设置 QT_MAKE_EXECUTABLE 为 C:/Qt/5.12.3/mingw73_32\bin\qmake.exe(如果没有这一项请点击add entry 添加如下图:)

在这里插入图片描述

设置 Qt5Concurrent_DIR 为 C:/Qt/5.12.3/mingw73_32/lib/cmake/Qt5Concurrent

设置 Qt5Core_DIR 为 C:/Qt/5.12.3/mingw73_32/lib/cmake/Qt5Core

设置 Qt5Gui_DIR 为 C:/Qt/5.12.3/mingw73_32/lib/cmake/Qt5Gui

设置 Qt5Test_DIR 为C:/Qt/5.12.3/mingw73_32/lib/cmake/Qt5Test

设置 Qt5Widgets_DIR 为 C:/Qt/5.12.3/mingw73_32/lib/cmake/Qt5Widgets

设置 Qt5OpenGL_DIR 为 C:/Qt/5.12.3/mingw73_32/lib/cmake/Qt5OpenGL

设置 CMAKE_BUILD_TYPE 为 Release

之后configure直至红色完全消失之后点击Gnerate。

在这里插入图片描述

如上表示已经初步完成

5.接下来开始编译:
打开cmd 进入存放cmake编译后的文件,如下:

在这里插入图片描述

等待编译完成。

mingw32-make -j n(n代表cpu核数)

编译成功后如下,现在我们需要生成
在这里插入图片描述

接下来在cmd中继续输入 mingw32-make install之后跑完即可。

6.最后配置
最后opencv 库最终生成,将库环境添加进入系统环境变量path中

path:E:\LIB\opencv-4.1.0\install\x86\mingw\bin

在这里插入图片描述

7.测试:新建qt项目
打开qt creator之后,新建一个qt项目:

在这里插入图片描述

在.pro 文件中添加:

INCLUDEPATH +=E:\LIB\opencv-4.1.0\install\include

LIBS +=E:\LIB\opencv-4.1.0\install\x86\mingw\lib\libopencv_*.a

这两项即可。

代码和效果如下:
在这里插入图片描述

实现效果如图:
在这里插入图片描述

自此opencv配置完成:(吐血警告,个人机器内千万不要有两个及以上的mingw版本,否则编译期间会出现一堆bug,建议先删掉除qt自带的两个mingw,其他的可以在编译完之后需要使用的情况下再下载)

附:个人csdn下载链接:https://download.csdn.net/download/qq_38296005/11274286

另外因为版权问题opencv中的sift和surf算法模块在nonfree里面,上面链接的里面没有nonfree模块,需要nonfree模块https://download.csdn.net/download/qq_38296005/11274509

需要其他方式下载的请私聊本人。

吐血编译!

  相关解决方案