【一步到位】Visual Studio20xx+OpenCV4.5.1+opencv_contrib的安装与配置

一、前期准备:

首先,你要先安装一个Visual Studio 2017及以上的版本。

然后 本文所需所有软件及相关数据均在以下链接内:

链接:https://pan.baidu.com/s/10vLVcM-uavuzZSySA6222g?pwd=1024 
提取码:1024 
--来自百度网盘超级会员V5的分享

二、CMAKE编译

step1:

将百度网盘内文件全部下载,而后打开下图的exe文件,将OPENCV4.5.1安装,修改一下安装位置,放到一个比较方便的地方

安装完成后的结果为:

包括上述五个文件。

step2:

而后将contrib解压到该文件夹内,并且新建一个newbuild文件夹

step3:

将百度网盘内文件全部下载,解压CMAKE-v.3.23.0,然后在搜索栏搜索CMAKE打开

按照我的样式,把文件选择上。然后点击下面的

然后在选择框内 第一行选择你的VS版本

第二行默认选择x64,然后点击finish

然后等待CMAKE完成configure。

然后你就会发现在参数框内出现了很多红色数据:

在这里我们要进行两个方面的操作

第一方面:

打开OPENCV-newbuild文件夹中的CmakeDownloadlog.txt文件

然后按照上个图片中的信息进行下载(常见的缺少文件已放进百度网盘内)

第二方面:

在search内搜索:(1)找到:OPENCV_EXTRA_MODULES_PATH项,选择opencv_contrib3.4.14文件夹下的modules文件夹。(2)找到:CMAKE_INSTALL_PREFIX项,选择VS2019编译完成后的输出目录。(3)找到BUILD_opencv_word项,勾选。找到OPENCV_ENABLE_NONFREE项,勾选。

然后再次点击configure,待到所有红色消失变为白色,并且没有报错,再点击Generate。

三、Visual Studio生成

然后就会进入Visual Studio 的编程界面,“Debug”“X64”

然后点击“生成”---“重新生成解决方案”

而后静待一段时间,让VS重新生成解决方案(此过程受硬件性能约需15min-60min)

其结果如上图所示,仅需保证没有失败的就行了。

然后点击“生成”菜单下的“批生成…”,勾选INSTALL的Debug模式,在生成。

其结果为:

进行完上述两步之后,如下图所示,回过头来将Debug改为Release,重复上两步操作:先重新生成解决方案,然后在INSALL的Release模式生成。

进行完上述步骤之后,若都没有报错,则可以查看一下在刚开始时候新建的“newbuild”文件夹,Visual Studio已经将所需文件生成完备。

四、对C++项目配置OPENCV+contrib

新建一个项目,选择C++桌面控制台应用(不同的版本叫的名字不一样,只要有关键词C++和 控制台即可)

进入新建的项目中,先找到属性管理器,如果页面上没有,可以按照如下操作:

点击视图------其他窗口-------属性管理器

上图为属性管理器,不要管每个文件夹里有几个文件,只要有Debug|X64  和Release|X64这俩文件夹即可。  

在属性管理器中找到Debug|X64  右键,添加新项目属性表

命名为DebugX64

然后点击添加。

右键DebugX64,打开属性

点击VC++目录,对包含目录和库目录进行修改:

包含目录修改为下面这俩

请注意是在newbuild文件夹下的(若有的同志以前安装过OPENCV,请注意,这里的操作流程跟安装OPENCV一样,但是各种地址是不一样的,一定注意是在newbuild内的,并且,并不需要额外添加OPENCV的目录信息,照我这做就行。)

库目录为:

然后点击链接器中的输入   找到 附加依赖项

附加依赖项建议修改为绝对地址,

请注意,Debug模式的附加依赖项最后是以d结尾的,Release模式后面没有d。然后一路确定即可。

到此为止,Debug模式已经配成功了。

可以检验一下:

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

using namespace cv;
using namespace std;

int main()
{
	Mat image;   //创建一个空图像image
	image = imread("D://lena.png", IMREAD_COLOR);  //读取文件夹中的图像  此处IMREAD_COLOR为加载彩色影像,默认可不写。

	//检测图像是否加载成功
	if (image.empty())  //检测image有无数据,无数据 image.empty()返回 真
	{
		cout << "Could not open or find the image" << endl;
		return -1;
	}

	namedWindow("输入的图片", WINDOW_NORMAL);  //创建显示窗口,不加这行代码,也能显示,只不过窗口大小不能改变,这里的WINDOW_NORMAL参数使得我们可以随意调节窗口大小
	imshow("输入的图片", image);  //在窗口显示图像

	imwrite("2.png", image); //保存图像为png格式,文件名称为1

	waitKey(0);  //暂停,保持图像显示,等待按键结束

	return 0;

}

输出结果如下:

若输出结果没问题,则可以打开文件资源管理器

在文件夹中找到刚刚配好的“DebugX64.props”文件,该文件为Debug模式的配置信息。

(我的图中是已经配好的,不叫这个名字,但都一样)

然后复制该文件,直接粘贴到目前看到的这个文件夹内,并把粘贴后的文件改名为“ReleaseX64”即可。(就如上图中的ReleaseX64-contrib)

然后回到Visual Studio中,在属性管理器中右键Release|X64 -------添加现有属性表,选择刚刚粘贴并改名的文件

随后右键ReleaseX64----属性,将附加依赖项中的文件结尾的“d”去掉即可。

然后切换到Release模式,再试试代码

正常输出即可。

然后再进入文件资源管理器中,将刚刚的DebugX64.props和ReleaseX64.props复制到一个方便的位置,如果下次再想要新建文件进行OPENCV方面的操作时候,仅需在Debug|X64和Release|X64中添加现有属性表即可。

猜你喜欢

转载自blog.csdn.net/w2492602718/article/details/134316125