说明:
在网上找了好多教程,opencv都编译不过去,最后踩了很多坑,把我的经验总结出来分享给大家。
本文对于Qt的安装不多描述,如果你装了Qt那么就不需要再装mingw和cmake工具了,只需要安装opencv就可以了。opencv下载地址:
Releases - OpenCV
本文使用的环境是opencv 4.5.2 + Qt 5.15.2(mingw)
1、安装opencv源码已经环境准备:
检查环境变量:
现在是需要将这三个环境变量添加,我是将之前mingw32的环境变量删除了,新加的64,建议您也删除,不然很可能回编译失败的。
2、开始生成makefile:
打开Qt自带的cmake工具
添加value值,如果不添加很有可能因为版本的问题导致编译失败,具体出错环节是:
Linking CXX shared library …\bin\libopencv_core451.dll(在这一步出错)
点击configure后设置一些东西:
点击finish后开始config
当config步骤完成后还会有大片的红色,不慌
继续点击configure,这时候就没红得了(可以把搜索框清空看一看),然后点击Generate生成makefile文件。
当Generate完成后可以关闭cmake了
3、编译:
进入到刚刚我们创建的那个文件夹,此时经过上面的操作,那个文件夹已经有了内容,接下来我们就要编译这个文件夹。
在当前文件夹中 shifi+空白处右键打开 power shell
mingw32-make -j8(j8表示用8线程编译,如果你电脑的性能牛你可以用j16)
这个过程所消耗时间还是蛮长的。
开始编译是这样子:
编译中会有很多警告信息,忽略就行,不用做任何操作
编译完成是这样的:
当编译完成后不要关闭窗口,使用安装命令开始安装
mingw32-make install
安装完成后添加环境变量
要注意这个opencv-build文件夹是我们刚刚创建的那个文件夹
4、使用
切记切记!!!要用mingw64的编译套件!!!,否则程序main函数都进不去,直接报错。
debug和release版本我都试了,没有问题。
在Qt的pro文件中添加库
INCLUDEPATH += C:\opencv\opencv\opencv-build\install\include
LIBS += C:\opencv\opencv\opencv-build\install\x64\mingw\bin\libopencv_world452.dll
调用库文件:
Mat image = imread("C:\\Users\\WuYue\\Desktop\\img.jpg",1);//本地图片路径
namedWindow("my image",WINDOW_AUTOSIZE);//新建自适应大小的窗体
imshow("my image",image);//显示窗体
效果:
到此为止安装就完成了,做一下声明,本文的逻辑并非我原创,我也是在工作中遇到了这个问题后,开始尝试,开始踩坑,总结过程。我主要采用的是下面两篇文章:文章来源:https://www.toymoban.com/news/detail-586927.html
https://blog.csdn.net/qq_42670606/article/details/122325528
https://blog.csdn.net/weixin_40011280/article/details/117766191文章来源地址https://www.toymoban.com/news/detail-586927.html
到了这里,关于Qt配置opencv环境的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!