python opencv 界面按钮_Opencv环境搭建

茅台学院MTI战队视觉小组

Double C

准备软件版本:建议最新版(我的是Opencv4.3.0 Cmake3.18 VS2017 QT5.14)

VS:https://visualstudio.microsoft.com/zh-hans/vs/

Cmake:https://cmake.org/download/

QT:https://download.qt.io

下载源码:qt-opensource-windows-___.exe

Opencv:https://opencv.org/releases/

下载源码:在每个版本下面都有一个压缩包Sources

Opencv拓展包:https://github.com/opencv

下载opencv_contrib Repository for OpenCV's extra modules

版本适配:每个软件的版本不一样的话,或许会出现不适配的情况,都下载最新版的,应该都不会有问题,需要注意的是,下载VS,Cmake,QT的时候看系统的操作位数是否和电脑一致。

安装

VS安装完毕后,先测试C/C++代码能不能Run。

Cmake安装的时候,有一个类似于环境变量添加到系统的选项,Add Cmake to the system PATHfor all users 一定勾选

。在安装QT途中,到模块选择的时候,一定要勾选的msvc20__,具体的后面的看你安装的VS的版本,为了减少出错的可能,我这里建议选择在QT框架中用VS带的编译器。

开始搭建环境

I.首先需要用Cmake编译Opencv源码

II.在VS中搭建Opencv的环境

III.在QT中搭建Opencv的环境PS:我其实主要是搭建QT的,VS是顺手就搭建了

Cmake编译Opencv第一步,以防万一,在环境变量中添加Cmake的bin文件

93f8c2abe6ed8b311b3fea69b9431ef0.png

我的在D盘,视情况改变。

在Opencv所在路径中创建一个新的文件夹,文件名一般设置为build,在Cmake中的Where tobuild the binaries栏选中build的路径,source code栏就添加下载好的Opencv源码路径。

然后点击配置(configure)按钮,第一栏就选VS对应的生成器,第二栏选择对应的电脑位数,然后完成(finish),然后就开始编译了。

因为Opencv是全球通用的东西,在下载途中难免会有一些文件下载不下来,总之就是文件不完整,导致编译途中会有报错。但是一般不会影响生成编译文件,但是这样生成的编译文件是不完整的,就这样用的话,在后续的编程中会出现各种报错,等等一系列问题,所以我们应该在Opencv的编译过程中把文件补齐。

在编译途中,出现的报错,一般会给出错误原因,百分之九十五都是文件不完整,剩下的百分之五我还没遇到,因为我已经配置好了,没办法截图,下面我举一个错误例子。

e1af173bf59b33fc2d64f6831f207388.png

这串英文主要告诉我们错误的原因,能看懂最好,看不懂英文也没关系,我们可以不用看懂这串英文,盯着那个文件路径就行了,我们根据路径找到那个文件(CmakeDownloadLog.txt),并打开它,那里边会有文件缺失的所有信息,一般是这个格式:

915d1d9e1d7c0f214f5592bc7916c5a2.png

一般是文件下载不完整,所以CmakeDownloadLog.txt里面会有这些记录,就按照上面的这个格式,我们把下载地址复制,放到浏览器里面去,我遇到的都是直接跳转Github,一般会自动下载,少数几个直接下载不了,但是Github里面有,你把需要下载的文件的父文件夹下载下来,从父文件里面打开拿出来。这些文件下载好之后,对应CmakeDownloadLog.txt里边的文件路径,一个一个的替换掉原来没有下载完全的文件,文件名也要和不完整的文件的名字一样!全部做完这些工作后,进行编译的下一步。

回到Cmake中,有两栏,Name和Value,在Name栏找到WITH_QT,WITH_OPENGL,把后面的两个框框点上勾,找到OPENCV_EXTRA_MODULES,把(开始的时候下载的Opencv拓展包)的路径添加好。那么我们的准备工作就做好了。

重新点击配置(Configure)按钮,等待一段时间,按道理是不会出现红色的东西,如果还有红色的出现,那就上CSDN去寻找解决办法。(反正我是没问题的)最后点击生成(Generate)按钮,那么我们的build文件算是完成了。

接下来,我们打开生成好的build文件,里面有一个OpenCV.sln文件,我们打开它,进入VS界面,就会看到很多Opencv源码,我们点到Debug模式,X64,然后点生成,重新生成解决方案,等一段时间,解决方案生成完成后,一般是没有错误产生的,就算有错误,也不会太多,毕竟我们在Cmake编译的时候也解决了好多错误,如果是有错误产生,那么就去CSDN上去找解决方案,如果是像什么关于python的,对我们用C/C++配Opencv写代码没有影响的错误,我们找到那个报错的文件,移除掉就好,警告的话(在程序员眼中,没有警告,只有错误^_^)移除之后,点击生成解决方案。成功之后,没有错误就行了。

接下来,我们在解决方案的目录中找到CMakeTargets/INSTALL鼠标右键仅用于项目,仅生成INSTALL。我们编译工作就完成了。

VS搭建Opencv编程环境

首先,我们添加Opencv的环境变量,找到刚刚编译好的build文件,跟着下面的这个样子找到bin文件,添加到环境变量。(暴露了我的Opencv版本^_^)

14dbb593c8381dcce19db6d75f763b0a.png

然后,我们在VS里面新建一个项目,找一段Opencv的测试代码放进去,这时候肯定会爆红,Opencv2/opencv.hpp找不到等等,因为我们的VS中的项目属性还没有添加Opencv的东西。接下来我们把Opencv的东西添加进去。

点击视图/其他窗口/属性管理器,之后会出现Debug和Release模式下不同操作位的属性管理文件,我生成的是Debug X64的,所以打开它,会有几个属性表,我们新建一个属性表,为了以后好找,名字里面带个Opencv,啥名都可以。添加完成后,打开并进行编辑。

通用属性下VC++目录/包含目录中添加以下的路径,build文件下找

bcb1e17995a2598d511d56731d84b3a2.png

通用属性下VC++目录/库目录中添加以下的路径,build文件下找

5db383669b6d02c478c9f1757c365344.png

通用属性/链接器/输入/附加依赖项中添加.lib文件,就是刚刚库目录中的lib中的所有文件名,因为文件有点多,一个一个敲太麻烦,所以我这里教大家写一个处理文件来快速得到这些文件名。在lib文件夹中创建一个文本文档,写入:

23d32d9f1c7b405f43873a6e9a9eb1cd.png

保存,修改文件后缀,TXT变成bat,然后双击这个文件,就会生成一个新的txt文件,里面会有想要的所有文件的文件名,但是还多出几个不要的,把那几个删除后,复制好,添加到附加依赖项中。完成,保存。

测试代码如下

e5381fadbc63c3724330f9293d7424b1.png

我们的VS就配置好Opencv的环境了,如果测试代码Run不起来,那么就是环境变量或者属性表没有生效,重启电脑,重新打开就好了。

QT框架中搭建Opencv编程环境

前提Cmake编译Opencv的时候WITH_QT,WITH_OPENGL后面的勾打上了,那么我们编译的Opencv的文件QT才能用。QT搭建没有VS那么复杂。

首先,添加环境变量。(暴露了我的QT版本5.14^_^)

690fbf72b3e89536720bbaab9b48c3a9.png

第一步,在QT的文件路径中创建一个后缀为.pri的文件,例如:D:\QT\QT_opencv_pri.pri.在这个文件中写入:

afee39f30b610aac4c142eb3772795b5.png

e80bfbce2cccea3d39d1f28a9cb9ece6.png

这些都是后缀为lib的文件,文件名在前面的处理文件里边有,但是前面的路径得自己复制一下。

然后创建一个QT Widgets Application项目,编译器选择msvc 20__ 注意搭配电脑的操作位数,在.pro文件末尾添加这句代码

8d8ff82ea657ab43ca25dbc587a9dcd1.png

然后就可以测试了,测试代码如下:

c640d0a4f85392be8bd23dcb7b39be92.png

应该没什么问题了,万行代码,始于编程软件,希望大家在遇到问题的时候有足够的耐心,在后来的编程之路上越来越顺利!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值