前提
如果你跟我一样的QT、opencv版本,请直接采用我编译出来的包,链接放在下面,编译器:MinGW64
在QT项目中添加第三方库即可。
- 一点要明确你编译的是Release还是Debug.这关系到QT中项目版本的选择(Release or Debug)
Windows10 64位
QT5.13 64位
OpenCV4.2
CMake3.17.2
安装过程
-
选择编译器 ,新建编译输出文件夹
..opencv\newbuild
C编译器:D:\Qt\Tools\mingw730_64\bin\gcc.exe
C++编译器:D:\Qt\Tools\mingw730_64\bin\g++.exe
点击Configure
-
参数选项
- 勾选 WITH_OPENGL
- 勾选 WITH_OPENMP
- 勾选 WITH_QT
- 勾选 BUILD_opencv_world
- 不勾选 WITH_OPENCL_D3D11_NV
点击Configure
-
资源无法下载
因为是国外的网站,有些资源无法下载,通过..\opencv\newbuild\CMakeDownloadLog.txt
查看哪些资源,手动下载放到..\opencv\sources\3rdparty\XXXX
;后面继续报错,不要管;点击Generate
-
mingw32-make -j n(电脑CPU核心数) && mingw32-make install
-
编译包环境配置
...\opencv\newbuild\install\x64\mingw\bin
添加到环境变量 -
QT添加外加库
库文件:...\opencv\newbuild\install\x64\mingw\lib\libopencv_world420.dll.a
包含路径:...\opencv\newbuild\install\include
-
测试
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include "opencv2/opencv.hpp"
MainWindow::MainWindow(QWidget *parent)
: QMainWindow(parent)
, ui(new Ui::MainWindow)
{
ui->setupUi(this);
cv::Mat mar=cv::imread("F:\\Project\\QT\\TestFfmpeg\\lufei.jpg");
cv::imshow("input",mar);
cv::waitKey(0);
}
MainWindow::~MainWindow()
{
delete ui;
}