【QT】QT搭建OpenCV环境

QT/OpenCV

      • 01、开始之前
      • 02、QT
      • 03、CMake
      • 04、OpenCV
      • 05、配置
      • 06、测试

01、开始之前

本文版本:
1、QT:Based on Qt 5.12.2 (MSVC 2017, 32 bit),编译方式是MinGW
2、CMake:cmake-3.27.0-rc4-windows-x86_64.msi
3、OpenCV:OpenCV – 4.5.1
4、windows: win11/win10都一样

说明一下,OpenCV不要装太新的版本,因为本文方式使用CMark的方式。如果安装了最新的那几个版本可能会导致编译OpenCV的时候出现很多源代码错误,当然有其他方式可以解决,但是太麻烦,回退低版本就能解决兼容问题。(看个人)

02、QT

QT的安装这里不做介绍,傻瓜式安装,只是在选择模块的时候,如果内存足够就全部勾选,如果内存不够,以后用到需要的模块时可能就比较麻烦,这点是不如VS的,可以追加下载,QT我研究过,没搞出来,都是重新安装的。

QT官网的下载可能会很慢,国内有镜像网站如下:
中国科学技术大学:http://mirrors.ustc.edu.cn/qtproject/
清华大学:https://mirrors.tuna.tsinghua.edu.cn/qt/
北京理工大学:http://mirror.bit.edu.cn/qtproject/
中国互联网络信息中心:https://mirrors.cnnic.cn/qt/

03、CMake

CMake接触不多,这里记录一下。

CMake:

CMake是一个跨平台的安装(编译)工具,可以用简单的语句来描述所有平台的安装(编译过程)。他能够输出各种各样的makefile或者project文件,能测试编译器所支持的C++特性,类似UNIX下的automake。只是 CMake 的组态档取名为 CMakeLists.txt。Cmake 并不直接建构出最终的软件,而是产生标准的建构档(如 Unix 的 Makefile 或 Windows Visual C++ 的 projects/workspaces),然后再依一般的建构方式使用。这使得熟悉某个集成开发环境(IDE)的开发者可以用标准的方式建构他的软件,这种可以使用各平台的原生建构系统的能力是 CMake 和 SCons 等其他类似系统的区别之处。

官网地址:https://cmake.org/download/

截止2023-07-10,最新版本是3.27.0
【QT】QT搭建OpenCV环境_第1张图片

这里我已经安装过了,所以图片我直接网上找了
【QT】QT搭建OpenCV环境_第2张图片
【QT】QT搭建OpenCV环境_第3张图片
下面这一步很重要,不然就得自己手动去PATH环境添加Cmake的环境变量了:
【QT】QT搭建OpenCV环境_第4张图片
【QT】QT搭建OpenCV环境_第5张图片
【QT】QT搭建OpenCV环境_第6张图片
等待安装完成先不管了,待会儿需要用到。

04、OpenCV

OpenCV的介绍这里不做介绍,详情可以参考另外一位博主的博客:https://blog.csdn.net/m0_60720471/

本文版本:
【QT】QT搭建OpenCV环境_第7张图片
截止当前最新版本:
【QT】QT搭建OpenCV环境_第8张图片
下载windows版本,然后运行exe即可在当前exe文件夹下面生成一个同名文件夹。

下面我截图到这一步,有哪些环境变量:
在这里插入图片描述

05、配置

进行到这里,就可以进行Cmake的编译了,这里进入Cmake安装目录下的bin,双击exe运行起来。
下面所有的图和路径等根据实际安装路径决定,图是网上找的。

【QT】QT搭建OpenCV环境_第9张图片

Where is the source code: C:\opencv\sources
Where to build the binaries: C:\opencv\sources\opencv-build(opencv-build这个文件夹要新建)

保持默认MinGW Makefiles,点击Specify native compilers,再next:
【QT】QT搭建OpenCV环境_第10张图片

C D:/Qt/Qt5.12.9/Tools/mingw730_64/bin/gcc.exe
C++ D:/Qt/Qt5.12.9/Tools/mingw730_64/bin/g++.exe
Fortran不用管

【QT】QT搭建OpenCV环境_第11张图片

下一步:
【QT】QT搭建OpenCV环境_第12张图片
Configuring done之后,会出现一大片红的,不用管,下拉将WITH_OPENGL和WITH_QT选中即可,然后再次点击Configure:
【QT】QT搭建OpenCV环境_第13张图片
此时仍会有红色出现,继续按照下一步配置:
【QT】QT搭建OpenCV环境_第14张图片
依次将下面的值设置好:

Set Qt5Concurrent_DIR to D:\Qt\Qt5.12.1\5.12.1\mingw73_64\lib\cmake\Qt5Concurrent
Set Qt5Core_DIR to D:\Qt\Qt5.12.9\5.12.9\mingw73_64\lib\cmake\Qt5Core
Set Qt5Gui_DIR to D:\Qt\Qt5.12.9\5.12.9\mingw73_64\lib\cmake\Qt5Gui
Set Qt5OpenGL_DIR to D:\Qt\Qt5.12.9\5.12.9\mingw73_64\lib\cmake\Qt5OpenGL
Set Qt5Test_DIR to D:\Qt\Qt5.12.9\5.12.9\mingw73_64\lib\cmake\Qt5Test
Set Qt5Widgets_DIR to D:\Qt\Qt5.12.9\5.12.9\mingw73_64\lib\cmake\Qt5Widgets
Set Qt5_DIR to D:\Qt\Qt5.12.9\5.12.9\mingw73_64\lib\cmake\Qt5

再次点击Configure之后,红色消失,最后点击Generate:
【QT】QT搭建OpenCV环境_第15张图片
Generate完成之后,关闭Cmake即可,此时进入之前我们新建的文件夹D:\OpenCV4.5.1\opencv\opencv-build
我这里名字是install。
【QT】QT搭建OpenCV环境_第16张图片
将鼠标放在该文件夹界面内,按住shift键,同时点击鼠标右键,点击在此处打开Powershell窗口(s),进入Windows Powershell,输入

mingw32-make -j 32   // 这里8是表示多线程处理,你的配置够高可以加大这个数字,加快编译速度,反之,减少就行。

等待编译完之后继续输入:

mingw32-make install

等待完成之后将编译后的路径配置进环境变量:
【QT】QT搭建OpenCV环境_第17张图片
到这里,一切就绪,打开QT测试。

06、测试

新建QT项目这里不多说,创建一个QMainWindow即可。

.pro文件中添加如下:

INCLUDEPATH += \
            C:\opencv\install\install\include \

LIBS += \
        C:\opencv\install\lib\libopencv_*.a \

【QT】QT搭建OpenCV环境_第18张图片

这里我不贴完整代码了,项目里面的OpenCV+海康威视了。

下面是一个简单的示例:
【QT】QT搭建OpenCV环境_第19张图片
记录一下!

你可能感兴趣的:(QT,qt,opencv,开发语言)