参考:https://www.jianshu.com/p/c244c9d01fe0
前面很多都是照搬的,安装qt cmake/opencv我就不说明了,上面的网站有介绍
编译OpenCV
运行cmake-gui.exe,分别选择OpenCV的源码路径和编译输出路径

点击Configure,进行配置如下,然后next

配置编译器路径,然后finish
C: C:/Qt/Qt5.11.1/Tools/mingw530_32/bin/gcc.exe C++: C:/Qt/Qt5.11.1/Tools/mingw530_32/bin/g++.exe

第一次configure完成后,勾选 WITH_QT 和 WITH_OPENGL,再次点击configure

第二次configure完成后, 将CMAKE_BUILD_TYPE修改为 Release,再次点击configure

第三次configure完成后,点击generate,生成结束后,打开cmd,进入编译输出目录,执行编译指令(-j 表示多线程工作,电脑是几核的CPU,后面的参数就可以设为多少,可以节省编译时间)
d: cd OpenCV cd build-Qt mingw32-make -j 4 mingw32-make install
上面有问题的请参考上面给的网址。
下面是测试代码:
新建一个QWindow项目,名为TestOpenCV,修改项目配置文件TestOpenCV.pro,在文件末尾增加文件包含路径及所需库文件
INCLUDEPATH += D:\openCV\opencv\build\include LIBS += D:\openCV_out\lib\libopencv_*.a
根据自己实际情况找一下。大佬的网址写的是添加的.dll,应该换成.a文件
在mainwindow.cpp中
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
// read an image
cv::Mat image = cv::imread("D:\\1.jpg", 1);
// create image window named "My Image"
cv::namedWindow("My Image");
// show the image on window
cv::imshow("My Image", image);
}
MainWindow::~MainWindow()
{
delete ui;
}
上面参考的网站中大佬的文件路径写错了,导致程序崩溃。
主要是大佬的思路,我只是略做修改,感谢大佬的分享。
来源:https://www.cnblogs.com/smh2015/p/12142892.html