手捏脚盆鸡,敲打棒子国。单脚踩蛙蛙,踏平大漂亮。

导航

在QT中配置和使用OPENCV C++

本文主要讲讲解如何在QT中设置OPENCV,包含详细步骤。

MingW:mingw_百度百科 (baidu.com)  一种不同于VS 的MSVC的编译器,生来是为了平台扩展而用。具体可见百度。

计算机系统:windows 10  

opencv : OpenCV-MinGW-Build-OpenCV-4.1.0   GitHub - huihut/OpenCV-MinGW-Build at OpenCV-4.1.0

QT: 5.9.0

由于我用的QT为5.9.0,不支持64位的mingw,制支持32位的MingW,所以我直接从GitHub上下载了别人已经编译好的MingW32位。

(话说我用CMake编译了五次,每次都不成功,没办法,就从GitHub直接下载了。如何用Cmake - MingW编译OpenCV C++,请直接百度)。

从GitHub 打包下载OpenCV 4.1.0 后,直接解压缩,然后进入到以下路径:

 

F:\OpenCV-MinGW-Build-OpenCV-4.1.0\x86\mingw\bin  

我的是F盘。

将上面的路径配置到环境变量中:

 

 如黄色区域所示。

然后新建一个QT 工程,我的工程命名是:QtOpenCvTest

然后,打开QtOpenCvTest.pro,在最后面输入:

INCLUDEPATH += F:\OpenCV-MinGW-Build-OpenCV-4.1.0\include
               F:\OpenCV-MinGW-Build-OpenCV-4.1.0\include\opencv2
LIBS += F:\OpenCV-MinGW-Build-OpenCV-4.1.0\x86\mingw\bin\libopencv*.dll

 

打开mainwindow.ui,拖入一个label 控件:

 

 

打开mainwindow.cpp, 引入以下几个库和命名空间:

#include <QImage>
#include <QPixmap>
#include <opencv2/opencv.hpp>
using namespace cv;
然后输入以下代码:
 Mat img = imread("F:\\yourname.jpg");
    cv::cvtColor(img, img, cv::COLOR_BGR2RGB);
    QImage image = QImage((const unsigned char *)(img.data),img.cols,img.rows,img.step,QImage::Format_RGB888);
    ui->label->setPixmap(QPixmap::fromImage(image));
    ui->label->resize(image.size());
    ui->label->show();
    resize(800,500);

如下图:

 

 

点击运行即可:

 

 然后,Label便显示了opencv 从磁盘读取的图片。

至此,QT OPENCV C++ 配置结束。

如果你的QT是5.12.0或者更高的版本,请直接下载OpenCV-MinGW-Build-OpenCV-4.1.0-x64。因为更高版本的QT支持MingW 64 位编译器了。

posted on 2021-05-03 18:01  单手搓木亥弓单  阅读(339)  评论(0)    收藏  举报