opencv+Qt+cmake安装配置

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了opencv+Qt+cmake安装配置相关的知识,希望对你有一定的参考价值。

参考技术A Qt5.7.1

CMake 3.10.2

opencv-3.3.0-vc14

右键“我的电脑”——属性——高级系统设置——环境变量,我的路径是C:\Qt\Qt5.7.1\Tools\mingw530_32\bin,如图所示

打开CMake,设置源码的路径和输出路径,然后点击Configure,选择如所示

Next,配置c和c++,我的路径如下

点击Finish,等待加载完毕,暴很多红项

在Search框内搜索WITH_QT和WITH_OPENGL,都打上勾,再点击Configure

此时还有这几项是红的,点击ADD Entry,添加“QT_MAKE_EXECUTABLE”,并选择qmake的路径如图所示

在Search搜索CMAKE_BUILD_TYPE,修改value成  Release 或RelWithDebInfo

再次点击Configure,然后点击Generate

打开cmd命令提示符,进入输出文件夹并编译

这里的8根据自己电脑配置而定,8核cpu  我这里填8

如果编译过程中出现类似这样的错误:

解决办法:在CMake搜索ENABLE_PRECOMPILED_HEADERS,把这个项的打勾去掉,然后点Configure,Generate,再执行编译:ming32-make -j 8

如果遇到类似这样的错误

解决办法:根据提示的路径去opencv源码文件找cap_dshow.cpp文件,我的在D:\tmp\opencv\sources\modules\videoio\src文件夹里,用记事本打开cap_dshow.cpp,搜索

然后在上面添加

再次执行编译:ming32-make -j 8

方法同上,把D:\tmp\opencv-build\install\x86\mingw\bin添加到path里

打开Qt,新建一个项目,Qt Widgets Application 

调试

如果出现错误:

解决办法:点击左侧的项目,填好构建目录,如图所示:

修改.pro文件,添加

这里需要注意一下330,有些版本是320

修改完后,点击构建 ,执行qmake

修改mainwindow.cpp

效果:

Qt+OpenCV配置教程(图解亲测)

Qt+OpenCV配置教程

安装

我都安的最新版的(cmake 3.22.1 opencv 4.5.1 qt 5.12.1)。

1、cmake安装
2、qt mingw安装
3、opencv安装

配置

首先要设置环境变量。

换成对应你自己版本、位置的环境变量

D:\\Program Files\\CMake\\bin
D:\\Software\\Qt\\Tools\\mingw730_64\\bin
D:\\Software\\Qt\\5.14.2\\mingw73_64\\bin

注意:配置好后最好重启一下,要不可能出错

重启好后再打开cmake进行构建

选择源目录与输出构建目录(sources目录是在opencv安装目录里的,opencv-build目录是我再opencv安装目录里新建的)

选好目录后,点击勾选Advanced

再点击configure,选择Specify native compilers,Next


选择编译器,找到你的Qt安装目录下,gcc和g++,对应C和C++填好目录(Fortran不用管)。


再点击Finish

Configuring done之后,会出现一大片红的,不用管,下拉将WITH_OPENGL和WITH_QT选中即可,然后再次点击Configure


之后仍会有红色出现

按照上述设置将出现红色几个条框的Value进行更改,改成你自己的对应Qt目录。

再次点击Configure之后,红色消失。

最后点击Generate

Generate完成之后,关闭Cmake即可,此时进入之前我们新建的文件夹opencv-build (我的是在D:\\Software\\opencv\\opencv-build)。

将鼠标放在该文件夹界面内,按住shift键,同时点击鼠标右键,点击在此处打开Powershell窗口(s),进入Windows Powershell,输入

mingw32-make -j 8

按回车键执行该命令,这里的-j 8是为了让CPU进行多任务处理,可以加快编译速度。我的电脑是4核CPU,如果你的配置更高,你也可以选择更高的数字

我这里等待大约30分钟。。。。。。。

100%完成之后,输入

mingw32-make install


完成之后退出
另外再将 opencv-build\\install\\x64\\mingw\\bin 路径加入环境变量即可

使用

打开Qt新建项目

默认使用Qt Widgets Application模板,直接点右下方Choose

如图所示创建路径和项目名称,下一步

默认MinGW,下一步

全部默认,下一步,直到完成

在test.pro中红框位置加上如下代码

INCLUDEPATH += D:\\Software\\opencv\\opencv-build\\install\\include
LIBS += D:\\Software\\opencv\\opencv-build\\lib\\libopencv_*.a

这个很重要,好多教程中这里都写错了

在mainwindow.cpp中红框位置加上如下代码

#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>
#include <opencv2/imgproc/imgproc.hpp>
using namespace cv;
 Mat img=imread("C:/Users/Yang/Desktop/test1.jpg");
 namedWindow( "Display window", WINDOW_AUTOSIZE );
 imshow("Display window", img);

如果有报错,不用理会此时出现的红色警告提示,选择菜单栏构建,执行qmake之后红色即会消失

运行程序,显示出窗口和图片

这里可能会出现运行报错的情况,如下面进程意外退出错误

The process was ended forcefully. exe Crashed

先检查.pro里的include和lib路径是否正确,如果正确,那应该是改好环境变量后没重启的原因,重启再运行就好了。

以上是关于opencv+Qt+cmake安装配置的主要内容,如果未能解决你的问题,请参考以下文章

Qt5.3.1 OpenCV2.4.9 开发环境配置

opencv配置过程 (cmake,vs2013,qt 5.4)

Qt5.11+opencv3.4的配置安装

vs2017+opencv+qt+cuda,使用cmake编译opencv的库

Ubuntu 16.04 LTS 下配置OpenCV与Qt

qt打开cmake工程keyvalue不显示