Windows 10 下 Qt 配置 OpenCV 的 C++ 环境(MinGW)

本文详细介绍了如何在Windows10环境下,使用Qt5.14.2、MinGW和CMake3.15.7配置OpenCV4.5.3的C++开发环境。步骤包括Qt、CMake和OpenCV的下载与安装,以及opencv_contrib的获取。接着,通过CMake配置编译选项,解决编译警告,最终编译并安装OpenCV。最后,通过创建Qt项目验证OpenCV环境的配置成功。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Windows 10 下 Qt 配置 OpenCV 的 C++ 环境(MinGW)

  使用软件:

Qt 5.14.2
cmake 3.15.7
openCV  4.5.3

一、Qt 安装

1. 下载

  下载地址:download.qt.io
  选择版本:Qt 5.14.2
  Qt 5.14.2 百度网盘下载地址:
  链接:https://pan.baidu.com/s/1ycfiU34xCnBvbnSBoCrtIw
  提取码:zj4c

2. 安装

在这里插入图片描述
在这里插入图片描述
  填写 Qt 帐号(没有帐号就在 “Sign-up” 栏注册一个)。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
  漫长的等待…

在这里插入图片描述
  添加快捷方式至桌面:

在这里插入图片描述
  Qt 安装完成!
  添加 MinGW 环境变量:

Qt 安装路径\Tools\mingw730_32\bin

二、CMake 安装

1. 下载

  CMake 是一个跨平台的编译工具,OpenCV 是使用 C/C++ 编写的,官方网站提供的版本 Qt 不能直接使用,需要使用 CMake 重新编译 Qt 可用的版本。
  各版本下载官网地址:https://cmake.org/files/
  选择版本:cmake-3.15.7-win64-x64.msi(CMake 版本选择无所谓)
  cmake 3.15.7 百度网盘下地址:
  链接:https://pan.baidu.com/s/1WFWYT1IGdpCp4wlMziLZDA
  提取码:x5jn

2. 安装

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
  添加快捷方式至桌面:

在这里插入图片描述
  CMake 安装完成!

三、OpenCV 安装

1. 下载

  下载地址:https://opencv.org/releases/
  选择版本:opencv 4.5.3
  opencv 4.5.3 百度网盘下载地址:
  链接:https://pan.baidu.com/s/1vzkp3BfFZGmO0kDx3ThYVw
  提取码:m2xo

2. 安装

在这里插入图片描述
在这里插入图片描述
  OpenCV 安装完成!

四、opencv_contrib

  3.0 版本以后的 OpenCV 中,SURF 和 ORB 等特征提取算法对应的库以 opencv_contrib 模块独立出来,因此推荐安装 opencv_contrib 模块。
  下载地址:https://github.com/opencv/opencv_contrib/tags
  选择版本:opencv_contrib 4.5.3(需要与 OpenCV 版本相同,否则编译时可能会报错)
  opencv_contrib 4.5.3 百度网盘下载地址:
  链接:https://pan.baidu.com/s/1o4t-qugwC-_XMvV3Yx9Mkg
  提取码:vuwc
  为方便管理,把下载后的文件解压到 OpenCV 安装路径下。

五、配置环境

  Qt 搭建 OpenCV 官方文档:
  https://wiki.qt.io/How_to_setup_Qt_and_openCV_on_Windows
  搭建环境前确保 MinGW 环境变量和 CMake 环境变量已添加:

在这里插入图片描述
  在 OpenCV 安装目录下,新建 MinGW 编译输出文件夹,命名随意,此处为opencv_build

在这里插入图片描述
  双击运行 cmake-gui,按照下图填写。

在这里插入图片描述
在这里插入图片描述
  分别在 “C”、“C++” 中填写 Qt 安装路径下的相应的编译器路径:

Qt 安装路径/Tools/mingw730_32/bin/gcc.exe
Qt 安装路径/Tools/mingw730_32/bin/g++.exe

在这里插入图片描述
  发现出现 CMake Warning,打开编译输出文件夹下的CMakeDownloadLog.txt文件,查看具体的错误(即使没有出现 CMake Warning,也需要查看此文件)。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
  将下载后的文件放入源码(即 sources 目录)路径下对应的文件夹。
在这里插入图片描述
在这里插入图片描述
  接下来进行一些选项的勾选(最好不要漏,漏了,你懂的)。

在这里插入图片描述

勾选 WITH_QT
勾选 WITH_OPENGL
不勾选 WITH_IPP
不勾选 WITH_OPENCL_D3D11_NV
勾选 ENABLE_CXX11
不勾选 ENABLE_PRECOMPILED_HEADERS
勾选 OPENCV_ENABLE_NONFREE
不勾选 OPENCV_ENABLE_ALLOCATOR_STATS

  由于版本原因,以上有些选项没有,未提到选项默认。

在这里插入图片描述
在这里插入图片描述
  再次点击 “Configure”。

在这里插入图片描述
  以上错误不用管,只看控制台报错情况。设置 “Qt5_DIR” 为 Qt 安装目录下的 “Qt5” 文件夹路径:

Qt 安装路径/5.14.2/mingw73_32/lib/cmake/Qt5

在这里插入图片描述
  再次点击 “Configure”。

在这里插入图片描述
在这里插入图片描述
  再次点击 “Configure”。

在这里插入图片描述
  直到没有红色选项,点击 “Generate”。

在这里插入图片描述
  cmake 编译 opencv 完成!
  接下来,打开 cmd,到编译输出文件(opencv_build)所在路径下,输入以下命令:

mingw32-make -j 8

  “-j 8” 表示使用 8 线程来处理,可以根据电脑硬件条件进行调整。使用单线程编译命令为:

mingw32-make

在这里插入图片描述
  漫长的等待…

在这里插入图片描述
  最后进行安装,执行以下命令:

mingw32-make install

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
  将以下路径添加进环境变量:

OpenCV 安装路径\opencv\opencv_build\install\x64\mingw\bin

在这里插入图片描述

六、测试

  打开 QtCreator,新建 “MainWindow” 类项目。在.pro文件里输入(“INCLUDEPATH” 和 “LIBS” 的值根据具体路径调整):

QT       += core gui

greaterThan(QT_MAJOR_VERSION, 4): QT += widgets

CONFIG += c++11

# The following define makes your compiler emit warnings if you use
# any Qt feature that has been marked deprecated (the exact warnings
# depend on your compiler). Please consult the documentation of the
# deprecated API in order to know how to port your code away from it.
DEFINES += QT_DEPRECATED_WARNINGS

# You can also make your code fail to compile if it uses deprecated APIs.
# In order to do so, uncomment the following line.
# You can also select to disable deprecated APIs only up to a certain version of Qt.
#DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000    # disables all the APIs deprecated before Qt 6.0.0

SOURCES += \
    main.cpp \
    mainwindow.cpp

HEADERS += \
    mainwindow.h

FORMS += \
    mainwindow.ui

INCLUDEPATH += D:\Downloads\OpenCV\opencv\build\include\
                D:\Downloads\OpenCV\opencv\opencv-build\install\include

LIBS += D:\Downloads\OpenCV\opencv\opencv-build\bin\libopencv_*.dll

# Default rules for deployment.
qnx: target.path = /tmp/$${TARGET}/bin
else: unix:!android: target.path = /opt/$${TARGET}/bin
!isEmpty(target.path): INSTALLS += target

  在mainwindow.cpp文件中输入(图片的路径需要具体调整):

#include "mainwindow.h"
#include "ui_mainwindow.h"

#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>
#include <opencv2/xfeatures2d/nonfree.hpp>
#include <opencv2/xfeatures2d.hpp>

using namespace cv;
using namespace xfeatures2d;

MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);

    // read an image
    cv::Mat image = cv::imread("D://lena.jpg");
    // create image window named "My Image"
    cv::namedWindow("My Image");
    // show the image on window
    cv::imshow("My Image", image);

}

MainWindow::~MainWindow()
{
    delete ui;
}

  编译运行。

在这里插入图片描述
  编译不报错,且出现以上结果证明 Qt 配置 OpenCV 环境成功!
  接下来就是在 Qt 的世界里尽情地玩耍 OpenCV!
  各版本 Opencv 模块介绍:https://docs.opencv.org/4.5.3/index.html

参考资料

  1.https://wiki.qt.io/How_to_setup_Qt_and_openCV_on_Windows
  2.https://zhuanlan.zhihu.com/p/326284759
  3.https://blog.csdn.net/zhizhengguan/article/details/107567449
  4.https://www.bilibili.com/video/BV1Za4y1v7ra?p=1

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值