【opencv4.3.0教程】01之opencv介绍与配置(win10+VS2015+OpenCV4.3.0)

目录

一、前言

二、OpenCV介绍

1、介绍

2、OpenCV版本简介

3、OpenCV4.3.0下载

三、OpenCV安装与配置

1、安装

2、环境变量配置

四、配置VS2015

1、包含目录与库目录

2、链接器配置

五、测试及效果


一、前言

OpenCV已经出到4.3.0版本,自问世以来,受到广大好友的喜爱。

其实我之前已经写了OpenCV3.1.0的教程,但那个时候,其实对OpenCV了解不系统,对于OpenCV没有一个整体的认识。这次,我会写更全面的内容,章节分类也更加具体。

如果你目前只是想快速入门opencv,推荐你看:

opencv学习之路:https://blog.csdn.net/shuiyixin/article/details/85648310

这里会告诉你学习历程、以及opencv3.1.0教程,涵盖了绝大多数opencv操作。当你想再深入了解OpenCV,请再次回到OpenCV3.4.0系列,这里讲解更加系统,更加全面,同时也增添了深度学习模块等。你能在这里看到一个不一样的OpenCV。

有人问我:你OpenCV为何一直用C++编写?python它不香嘛?

其实我主要是依据如下两个方面考虑:

第一个方面是OpenCV本身主要就是C++写的,当然其中含混有一些C的函数,虽然它封装了python的接口,但是,从我感觉,还是C++更正统一些。

第二个方面,C++的运算速度是要快于python的,在做图像处理的时候,使用C++更好一些。

剩下的不多说,有什么问题,有什么想法,你尽可评论提问,也可以加群326866692交流。让我们开始吧!

二、OpenCV介绍

1、介绍

OpenCV是一个基于BSD许可(开源)发行的跨平台计算机视觉库,简单的说,OpenCV是一个开源的计算机视觉库,英文全称为:Open Source Computer Vision Library。它轻量级而且高效——由一系列 C 函数和少量 C++ 类构成,同时提供了Python、Ruby、MATLAB等语言的接口,实现了图像处理和计算机视觉方面的很多通用算法,运行在Linux、Windows、Android和Mac OS操作系统上。

2、OpenCV版本简介

OpenCV经历了1.x到4.x四个系列的版本:

OpenCV1.x是最初的版本,基于C语言编写,OpenCV1.x的图像存储格式IplImage*基于C接口定义,直接暴露内存,如果忘记释放内存,就会造成内存泄漏,图像的声明和释放都比较繁琐。

从OpenCV2.x开始,使用全新的C++接口,图像类型使用Mat,操作更为方便。同时,OpenCV库被划分成多个模块,看起来更加系统。同时OpenCV增加了新的平台支持,包括iOS和Android,通过CUDA和openGL实现了GPU加速,为Python和Java用户提供了接口。总的来说,OpenCV2标志着OpenCV2革命性的改变,将Opencv的能力放大。

OpenCV2可以说改进是大跨步式改进,OpenCV3.x系列就比较温和了,在2的基础上做了一些优化,功能也更加全面丰富。内容的丰富必然带来臃肿的问题,为了解决这个问题,OpenCV采取内核+插件的架构形式。

OpenCV4.x是全面支持深度学习的,深度学习模块其实是3.x版本引入的,在4中强化了深度学习的功能,目前OpenCV4已经支持 Caffe、TensorFlow、Torch、Darknet、ONNX 交换格式的模型 等众多深度学习框架。

3、OpenCV4.3.0下载

OpenCV4.3.0是OpenCV4系列中最新的版本。相比较之前的版本,4.3.0在深度学习DNN模块等多个方面进行更新。

OpenCV官网提供了OpenCV4.3.0的安装文件,大家可以去官网下载,官网地址如下,注意,官网地址提供多个下载,大家根据自己需要进行下载。

https://opencv.org/opencv-4-3-0/

当然如果访问不了,你也可以加我的技术群326866692下载。群里面提供的是Windows版本的安装包,直接双击安装即可:

三、OpenCV安装与配置

1、安装

我们下载好后,双击安装,建议安装到非C盘,然后,安装好的文件如下:

2、环境变量配置

按照如下顺序依次打开:

【计算机】->【(右键)属性】->【高级系统设置】->【高级(标签)】->【环境变量】->“双击”系统变量中的PATH->在变量值里面添加相应的路径。

在path路径配置中填写 ”…… opencv\build\x64\vc14\bin”,

很多人发现,X64中有两个文件夹:

VC14和VC15,很多人不明白这个是什么意思?这个其实是VS对应的版本号。详细的对应如下:

Visual Studio 6 vc6                   
Visual Studio 2003 vc7
Visual Studio 2005 vc8
Visual Studio 2008 vc9
Visual Studio 2010 vc10
Visual Studio 2012 vc11
Visual Studio 2013 vc12
Visual Studio 2015 vc14
Visual Studio 2017 vc15

因为我的是VS2015,所以我选择vc14文件夹。然后我们需要做下面的操作:

将bin目录(...\OpenCV\build\x64\vc14\bin)中的3个dll文件复制在(C:\Windows\System32)或者(C:\Windows\SysWOW64)中

例如:

如果没有上面的操作,我们写的代码会报错:

这是因为我们的OpenCV没有安装在C盘,所以找不到对应的dll文件,我们只需要将文件存到C盘就可以啦!

做完操作后,最好重启一下电脑!

四、配置VS2015

我们打开VS2015,创建一个空项目,记住,我们要把安全检查去掉。

 

1、包含目录与库目录

在项目名称右键选择属性:

或者直接在项目中选择属性。进入下面这个界面:

然后我们需要配置VC++目录:

1.我们选择我们的配置模式和平台,例如我选择的是release和x64,x64表示64位,x86表示32位。

2.在包含目录中保存: 

“...\opencv\build\include”;

“...\opencv\build\include\opencv2”

3.在库目录中添加:

“...\opencv\build\x64\vc14\lib”。

 

2、链接器配置

在链接器下的输入中,打开附加依赖项,并输入:

opencv_world430.lib;

opencv_world430d.lib;

注意:

如果我们使用release模式进行编译,那我们就必须要上面的那个依赖项,如果我们使用debug模式进行编译,那我们就要使用下面的依赖项。保险起见是两个依赖项都添加,如果你跟我一样,只在release模式下编译,那就只需要前面的就可以了。

五、测试及效果

#define INPUT_TITLE "input image"


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

using namespace std;
using namespace cv;

int main() {
	Mat src;
	src = imread("E:/image/src.jpg");
	if (!src.data)
	{
		cout << "ERROR : could not load image.";
		return -1;
	}

	namedWindow(INPUT_TITLE, CV_WINDOW_AUTOSIZE);
	
	imshow(INPUT_TITLE, src);
	waitKey(0);
	return 0;
}

执行结果如下:

 如果大家有什么问题,有什么别的解决不了的问题,可以在下方留言或者加群交流哦!

原创文章 287 获赞 708 访问量 83万+

猜你喜欢

转载自blog.csdn.net/shuiyixin/article/details/105998661