Qt Creator配置openCV4开发环境

项目场景:

Win10下 QT Creator配置opencv库文件:


环境描述:

QT Creator版本:4.11.1
opencv库文件:4.1.0
Qt版本及Qt Creator版本


原因分析:

由于opencv的库文件一般是dll动态链接库文件,可以被MSVC(Visual studio编译器)所编译引用,但QT一般采用的是MinGw编译器,所以要引用opencv的动态链接库需要通过Cmake编译器转换一下。下列步骤可以成功在QT creator中配置opencv库文件

解决方案:

默认已在win10中下载好QT,并安装相应的MinGw32和64编译器,并添加了相应MInGW的系统变量,根据自己QT中的MinGW路径自行添加,主要添加后两个。

在这里插入图片描述

正常情况下是需要下载cmake对opencv文件进行编译转换,但下述网站中已经有各个版本的opencv的MinGw的编译文件,省去自己下载cmake将opencv文件编译转换了。

链接: https://codechina.csdn.net/mirrors/huihut/opencv-mingw-build?utm_source=csdn_github_accelerator.

点击configuration查看编译环境,下载相应版本的.zip即可

我下的是OpenCV-MinGW-Build-OpenCV-4.1.0,放在D:\中,内容如下
在这里插入图片描述

将D:\OpenCV-MinGW-Build-OpenCV-4.1.0\x86\mingw\bin添加进系统变量Path中

新建QT widget项目,一路默认,在QT项目栏的配置文件.pro中添加,如下:

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

TRANSLATIONS += \
    QT_MultipleVision_zh_CN.ts

# Opencv库文件路径添加
INCLUDEPATH += D:\OpenCV-MinGW-Build-OpenCV-4.1.0-x64\include
LIBS += D:\OpenCV-MinGW-Build-OpenCV-4.1.0-x64\x64\mingw\lib\libopencv_*.a

TRANSLATIONS += \
    opencvTest_zh_CN.ts

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

在main.cpp源文件中添加 #include "opencv2/opencv.hpp"以及下述代码进行OpenCV成功配置的验证

cv::Mat image = imread("C:\\Users\\admin\\Desktop\\J30J.jpg");
        namedWindow("Display window",WINDOW_AUTOSIZE);
        imshow("Display window",image);
        waitKey();
// main.cpp
#include "mainwindow.h"

#include <QApplication>

#include "opencv2/opencv.hpp"

using namespace cv;

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);

    cv::Mat image = imread("C:\\Users\\admin\\Desktop\\J30J.jpg");
        namedWindow("Display window",WINDOW_AUTOSIZE);
        imshow("Display window",image);
        waitKey();

    MainWindow w;
    w.show();
    return a.exec();
}

代码中图片路径根据自己实际情况进行编写,然后点击小锤子进行编译,然后点击绿色三角运行。

结果会弹出你所设置路径下的图片,至此QT Creator的OpenCV库文件配置完成
在这里插入图片描述
如出现error: undefined reference to之类的错误,可以尝试将QT项目文件夹下的Debug文件夹、Release文件夹删除,然后进行重新编译,QT的debug构建Kit选择Desktop Qt 5.14.2 MinGW 64-bit
在这里插入图片描述

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值