【opencv学习笔记】001之opencv配置(win10+VS2015+OpenCV3.1.0)

一、前言(吐槽+煽情+简介)  

        1.吐槽

        为啥这个时候我要发这个呢?其实我是想以后有空的时候再发,因为最近事情比较多,但是,昨天发生了一件非常悲伤的事情,电脑电池炸了,电脑电池炸了,电脑电池炸了。

        不由得安慰自己:天将降大任于斯人也,必先苦其心志,劳其筋骨,饿其体肤,空乏其生,行拂乱其所为,所以动心忍性,增益其所不能。

        2.煽情

        在这里,我还是要感谢一下一个人,一个我生命中最重要的男人,他对自己“小气”了一辈子,出去工作,舍不得乱花一分钱,但他还是会倾其所有来满足我,他说,这个时候,你要好好学习,不要因为别的扰乱你自己,如果有用,再买一个。对,这个人就是我的爸爸。父爱如山,我以后也会成为一个父亲,所以,首先我要做一个好儿子,好好努力,让父母为我而骄傲。

        所以,如果你看了我的博客,我希望你不仅能学到知识,更希望你能知道,你有这个好的机会来学习,总会有人在你背后默默付出,你要努力,为了自己,也要为了在你背后默默付出的人。

        最后一句煽情:爸爸,我爱你。

        3.简介

        OpenCV是一个基于BSD许可(开源)发行的跨平台计算机视觉库,可以运行在Linux、Windows、Android和Mac OS操作系统上。它轻量级而且高效——由一系列 C 函数和少量 C++ 类构成,同时提供了Python、Ruby、MATLAB等语言的接口,实现了图像处理和计算机视觉方面的很多通用算法。
        OpenCV用C++语言编写,它的主要接口也是C++语言,但是依然保留了大量的C语言接口。该库也有大量的Python、Java and MATLAB/OCTAVE(版本2.5)的接口。这些语言的API接口函数可以通过在线文档获得。如今也提供对于C#、Ch、Ruby的支持。

        我在学习的时候,所有免费的文档,文章,都是关于2.4.9的,最开始想过用2.4.9,后来自己买了教程,用的是3.1.0,所以自己也用了3.1.0。

        最近几年人工智能突然火了,机器学习,深度学习更是遍地开花,神经网络更是为人们所熟知。所以从3.3.0版本的opencv开始支持神经网络。如果要学习神经网络,建议用3.3.0以上的,但是最好不要用最新的,这个最新不是说最高的,而是说,假如2018年5.19号刚刚发布,你今天就要用,可能网上都没有相关教程,特别是opencv2.0版本和3.0版本有些是不一样的,api名字都不一样,万一最新版有改版,或者不支持你的编译环境,作为初学者,你遇到问题,解决方案都找不到,除非你身边有大牛。当然你如果是一个相关领域的大牛,可以选用最新版,感受一下新版的各方面特性,这个官网也应该会有相关的文档的,最为大牛的你,这个问题对你来说,不是问题。

        还有就是本文不讲vs2015的安装与配置,因为vs2015不是一个简简单单的库,你需要根据自己的需要去选择一些功能。这里就不再赘述了。

二、相关文件下载

        vs2015:百度会有很多下载位置,自由选择。这里就不再提供啦。

        opencv3.1.0:https://download.csdn.net/download/shuiyixin/10426142。

opencv安装

        双击opencv3.1.0打开,选择安装目录,记住,一定要养成一个习惯:能不安装在C盘就不要安装在C盘。如果电脑有很多盘,最好有一个盘是放安装软件和安装包的,想做一个程序员,一定要让自己的文件归类清晰一点。一般会有如下的文件夹和文件。

【opencv学习笔记】001之opencv配置(win10+VS2015+OpenCV3.1.0)_第1张图片

三、配置变量环境

        这一步的步骤顺序如下,然后大家看图就好了:

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

【opencv学习笔记】001之opencv配置(win10+VS2015+OpenCV3.1.0)_第2张图片     【opencv学习笔记】001之opencv配置(win10+VS2015+OpenCV3.1.0)_第3张图片         【opencv学习笔记】001之opencv配置(win10+VS2015+OpenCV3.1.0)_第4张图片

 

        在路径配置中填写 ”…… opencv\build\x64\vc14\bin”,很多人发现,X64中有两个文件夹:

        VC12和VC14,很多人不明白这个是什么意思?这个其实是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

        所以如果你是2013的也可以啦。因为3.1.0下面有VC12。支持VS2013。

四、配置2015

1.VC++下的包含与库目录

新建一个c++项目,在项目名称右键选择属性。进入下面这个界面,我们首先需要配置包含目录和库目录

【opencv学习笔记】001之opencv配置(win10+VS2015+OpenCV3.1.0)_第5张图片

        在右侧点击,进入编辑。

【opencv学习笔记】001之opencv配置(win10+VS2015+OpenCV3.1.0)_第6张图片

        然后按照下面的框框,从上往下点,将目录复制到框里保存,一共保存三个:

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

【opencv学习笔记】001之opencv配置(win10+VS2015+OpenCV3.1.0)_第7张图片

        用同样的方式在库目录中添加“...\opencv\build\x64\vc14\lib”。

2.链接器下的配置

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

        opencv_world310.lib;opencv_world310d.lib;

【opencv学习笔记】001之opencv配置(win10+VS2015+OpenCV3.1.0)_第8张图片

注意点

理论上,所有的工作就做完了,然后就可以调试运行啦。大家可以复制如下源代码。注意imread()函数是读取图片,括号里面是“路径+图片名称”。并且要用正斜杠,或者两个反斜杠。如果用一个反斜杠,会被认为是转义字符的前缀。

五、测试源码及问题解决

#define INPUT_TITLE "input image"


#include
#include

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;
}

        然后,报错了。这个是因为你不是在C盘安装的,程序找不到该文件。解决方案如下:

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

【opencv学习笔记】001之opencv配置(win10+VS2015+OpenCV3.1.0)_第9张图片

        解决了这个问题,就能正确输出啦。

六、输出效果图

【opencv学习笔记】001之opencv配置(win10+VS2015+OpenCV3.1.0)_第10张图片

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

你可能感兴趣的:(opencv,C/C++,人工智能,计算机视觉)