vs2017+opencv4.5.0+opencv_contrib-4.5.0+cmake编译

1.编译的目的

不编译也能够直接使用OpenCV自带的库文件(见:永久配置opencv方法),可是假设是为了方便调试:1. 方便调试opencv源代码 。2.为了与某些库兼容
编译用的工具Cmake,这是一个跨平台的安装编译工具。主要用于把OpenCV的源代码生成相应的VSproject

2.下载软件

opencv4.5.0
vs2017+opencv4.5.0+opencv_contrib-4.5.0+cmake编译_第1张图片
opencv_contrib-4.5.0
vs2017+opencv4.5.0+opencv_contrib-4.5.0+cmake编译_第2张图片
cmake-3.19.6-zip
随便下载一个cmake编译器,这里选择的是zip后缀的,因为不用安装
在这里插入图片描述

将opencv和contrib放在一个文件夹下vs2017+opencv4.5.0+opencv_contrib-4.5.0+cmake编译_第3张图片

3.编译opencv

1.打开F:\cmake-3.19.6\bin下的
vs2017+opencv4.5.0+opencv_contrib-4.5.0+cmake编译_第4张图片

2.在opencv所在的文件夹新建一个tobuild
vs2017+opencv4.5.0+opencv_contrib-4.5.0+cmake编译_第5张图片
3.输入文件路径
vs2017+opencv4.5.0+opencv_contrib-4.5.0+cmake编译_第6张图片
4.点击configure
选择vs2017和 x64
再点击generate
接下来就开始漫长的等待编译opencv源码过程了,最后会产生7~8G的文件
vs2017+opencv4.5.0+opencv_contrib-4.5.0+cmake编译_第7张图片

5.tobuild文件夹中打开opencv.sln
vs2017+opencv4.5.0+opencv_contrib-4.5.0+cmake编译_第8张图片
找到install 鼠标右键 生成即可
vs2017+opencv4.5.0+opencv_contrib-4.5.0+cmake编译_第9张图片

4.配置opencv的属性表

属性管理器 —> debug| x64
新建一个属性表,命名为opencv450debug

vs2017+opencv4.5.0+opencv_contrib-4.5.0+cmake编译_第10张图片

修改属性表的内容
包含目录
vs2017+opencv4.5.0+opencv_contrib-4.5.0+cmake编译_第11张图片
库目录
vs2017+opencv4.5.0+opencv_contrib-4.5.0+cmake编译_第12张图片

链接器 --> 输入–>附加依赖项vs2017+opencv4.5.0+opencv_contrib-4.5.0+cmake编译_第13张图片

将tobuild/install/x64/lib下的所有dll加入
获取所有dll的小技巧,如下

import os
file_path = r"F:\opencv4.5\tobulid\install\x64\vc15\lib"

for file in os.listdir(file_path):
    if file.endswith('lib'):
        print(file)

将输出结果copy一下就可以避免手动一个个输入了…

最后,将F:\opencv4.5\tobulid\install\x64\vc15\bin下相应的dll,copy到
C:\Windows\System32中即可

5.如何只配置一次即可

保留这个属性表,在新的项目里添加现有属性表即可

6.测试代码

#include
#include 
#include
using namespace cv;
int main()
{
	Mat src = imread("D:/pycharm/resnet/rose.jpg");//打开图片及照片的路径
	if (src.empty())//判断是不是为空
	{
		std::cout << "不能打开图片!" << std::endl;
		return -1;
	}
	namedWindow("src", 0);//创建窗口,自动开启大小
	imshow("src", src);//窗口标题
	waitKey(0);//给一个指令关闭,
	return 0;
}

你可能感兴趣的:(opencv,计算机视觉,visual,studio)