Windows10+Cmake+VS2019编译opencv(超级详细)

前言:

吐槽一下。。。刚开始的时候像要用VS2022来进行编译,但是编译了两遍也没有编译成功。原因是只能支持2017-2019的编译器。刚开始的时候还以为是自己在Cmake编译的时候出了什么问题,结果又浪费了一次时间重新用Cmake编译了一下,结果还是不行。所以就选用了VS2019。

一、下载Cmake

这个去官网上下载就行!!

这两个版本都可以,看你心情,想用那个就用那个。

链接给各位爷放在这里了。Download | CMake

这里说一下,在安装Cmake的时候不要一股脑的傻瓜式安装,安装的时候看一看,在安装的过程中有一个环境变量添加到自己的电脑用户当中,可以选择一下。

二、下载VS2019

可以自己去官网下载!!也可以点我的链接。

链接给各位爷放在这里Downloads - Visual Studio Subscriptions Portal

看自己的心情,想下载那个就下载那个。

三、下载opencv的版本

可以直接去官网下载,也可以点我的链接去下载。

链接给各位爷放在这里了Releases - OpenCV

还是多重选择,哈哈哈哈!!

版本的的话自己进行选择。

教程所用的是opencv4.5.5,下载包的话就下载我下图框起来的那个就可以。

四、下载opencv_contrib-4.5.5

官方链接放在这里了opencv/opencv_contrib: Repository for OpenCV's extra modules (github.com)

opencv_contrib-4.5.5的链接在这里opencv/opencv_contrib at 4.5.5 (github.com)

code下来解压就行了。

五、将下载好的opencv和opencv_contrib解压好放在同一个文件夹下,并且在此文件夹下创建一个build文件夹。如图所示

由于自己编译所需空间较大,所以建议大家放在空间比较富裕的盘里(我的是13.6G)。

六、打开Cmake

 1、路径设置好了之后,点击configure,之后会出现下图的界面。

选择自己VS编译器的版本

 

选择好了之后点击Finish。

等待运行完成之后会出现很多的问题,这个时候不要慌,咱们慢慢的处理。

像下图中框起来的错误是python的错误,这个咱们是不需要管的,因为到最后咱们是应用到c++上的。

其次就是下图中的这种错误。

这种cmake错误是需要处理的。

 看报错的信息,我们可以之后是有东西没有找到,让我们自己去下载,下载的链接都是给了我们的在我们创建的build文件夹下的CMakeDownloadLog.txt文件里面。

信息如下图。信息都代表着什么都写在了图上。

将下面所有带cmake_download的信息全部和上面一样的方式进行处理。

有的时候打开链接里面是这种格式,如下图

像这种情况就直接按Ctrl+S保存就好了,他是以txt格式进行保存的,保存好了之后在改成咱们需要的格式就ok了。

 按照以上的操作处理完成之后,点击configure,这个时候再来看有没有报错,我的报了一下错误。

解决方法:在search里面搜索 OPENCV_GENERATE_SETUPVARS将他的value的勾去掉,如下图。

 完成之后点击configure,等待运行结束。如果出现别的错误请自行解决,或者留言。

运行结局没有问题之后算是完成了一小部分,接下来选择我们需要的东西,在搜索框里搜索cuda。如下图,全点上勾。

 再搜索opencv_world,如下图,这个的作用就是,把所有的包整合到一起,这样虽然会造成一些包的颓余,但是个人觉得更方便一点,要不然在后期使用的时候要添加很多.lib包。

 再搜索OPENCV_ENABLE_NONFREE,将其打上勾,如下图所示。

再搜索OPENCV_EXTRA_MODULES_PATH,将咱们下载好的opencv_contrib文件夹的路径添加进去要精确到models,如下图所示。

以上完成之后点击configure。等待运行结束,没错你会很吃惊,会有很多报错,如下图。

解决方法还是和上面的解决方法一样,打开 CMakeDownloadLog.txt。这次的保存会比较多,耐心的下载把。哈哈哈哈!!!

全部下载完成之后点击configure,大部分是没有报错的。

随后在search中搜索cuda,如下图所示,将自己显卡的算力写在这个地方。

查看显卡算力的链接放在这里了CUDA GPUs | NVIDIA Developer

 完成之后点击configure

没有报错之后点击Generate,等待运行结束之后点击Open Project,他会自己启动你的vs,或者自己去build里面找Opencv.sln项目用vs启动。

七、用vs打开项目之后

如下图所示,右击models下面的opencv_world,点击属性,看图二操作。

完成之后操作如下图。

 这个时候要等上一阵子,可能是半个小时,也可能是好几个小时,看你电脑性能。

跑完之后出现如下错误不要慌,这个是不耽误咱们使用的,这个报错是python导致的。

以上咱们的opencv就算是编译完成了。跑完Debug版之后建议也去跑个Release,这样两个环境下就都可以使用了。

八、配置环境

先在本机电脑上添加环境变量,如下图

随后大家创建一个C++项目,右击解决方案,如下图所示。 

 点击属性。操作如图所示

 

 测试代码给您放下面了。

#include <iostream>
#include <opencv2/opencv.hpp>

int main()
{
    cv::Mat src = cv::imread("E:\\image1\\0.jpg");//图片路径
    cv::imshow("show", src);
    cv::waitKey(0);
}

猜你喜欢

转载自blog.csdn.net/on_the_fly/article/details/124041070