OpenCV学习笔记—— OpenCV 3.0.0环境配置 + opencv_contrib编译(Windows10)

学习图像识别处理中会使用带sift和surf算法,但在opencv3.0.0版本后,由于版权问题,并不会直接集成默认安装,而是和其他“non-free”被集中在opencv_contrib中,所以当需要使用此功能时,需在配置OpenCV时同OpenCV源码一块编译。

软件环境:
win10
OpenCV3.0.0
opencv_contrib-3.0.0
cmake-3.8.2
VS2017

一、安装与环境配置

1.下载OpenCV3.0.0(本文及后续学习笔记均基于此版本),选择适合自己开发环境的opencv版本,此处为Win10 64位环境下进行开发。传送门
OpenCV学习笔记—— OpenCV 3.0.0环境配置 + opencv_contrib编译(Windows10)_第1张图片
下载完毕后,得到安装文件.exe,进行安装即可。
在这里插入图片描述
安装后得到如下文件。
在这里插入图片描述
2.下载opencv_contrib-3.0.0,选择与opencv版本号相对应的下载。传送门 下载完毕后直接解压。
OpenCV学习笔记—— OpenCV 3.0.0环境配置 + opencv_contrib编译(Windows10)_第2张图片
3.下载cmake-gui工具 传送门
CMake是一个跨平台的安装(编译)工具,可以用简单的语句来描述所有平台的安装(编译过程)。他能够输出各种各样的makefile或者project文件,能测试编译器所支持的C++特性,类似UNIX下的automake。只是 CMake 的组态档取名为 CmakeLists.txt。Cmake 并不直接建构出最终的软件,而是产生标准的建构档(如 Unix 的 Makefile 或 Windows Visual C++ 的 projects/workspaces),然后再依一般的建构方式使用。这使得熟悉某个集成开发环境(IDE)的开发者可以用标准的方式建构他的软件,这种可以使用各平台的原生建构系统的能力是 CMake 和 SCons 等其他类似系统的区别之处。
OpenCV学习笔记—— OpenCV 3.0.0环境配置 + opencv_contrib编译(Windows10)_第3张图片
选择需要的直接下载,下载完毕后不需安装,解压即用。

准备阶段完成。

安装与配置
1.opencv3.0.0的安装与配置。
在一中操作完成安装后,为了正常使用OpenCV开发,必须进行环境变量的配置。路径为 我的电脑–属性–高级系统设置–环境变量–path(路径)
OpenCV学习笔记—— OpenCV 3.0.0环境配置 + opencv_contrib编译(Windows10)_第4张图片
64位系统的需要在path添加为:G:\opencv\opencv\build\x64\vc12\bin
32位系统应配置路径“;opencv安装路径\build\x86\vc12\bin”,但是3.1.0版本的OpenCV已经将x86这个目录删除了,也就是说在VS 2017环境下不能进行32位的OpenCV编译,此处为3.0.0可以进行。

环境变量需要重启后才可生效

此处发现x64文件夹下有vc11 vc12两个文件,对应的为vs的版本,vc11对应vs2012,vc12对应vs2013。

2.VS2017配置
要在VS中使用外部的类库的话,需要进行引入的一下配置,这个配置就包括:外部库目录指定和外部包含文件指定。新建一个控制台工程。
OpenCV学习笔记—— OpenCV 3.0.0环境配置 + opencv_contrib编译(Windows10)_第5张图片

  • 在解决方案边栏中选择源文件(Resource Files),此处已经自动新建了一个C++源码文件。
    OpenCV学习笔记—— OpenCV 3.0.0环境配置 + opencv_contrib编译(Windows10)_第6张图片
  • 在VS中,使用属性管理器工具,可以对VS整体参数进行调整,配置一次即可。点击视图–属性管理器。有的版本在视图–其他窗口–属性管理器,也可点击左侧小扳手图标进入。
    OpenCV学习笔记—— OpenCV 3.0.0环境配置 + opencv_contrib编译(Windows10)_第7张图片
  • 包含目录配置
    在配置属性(Common Properties)–VC++目录–包含目录–编辑
    OpenCV学习笔记—— OpenCV 3.0.0环境配置 + opencv_contrib编译(Windows10)_第8张图片
    添加如下三个目录
    G:\opencv\opencv\build\include
    G:\opencv\opencv\build\include\opencv
    G:\opencv\opencv\build\include\opencv2
    OpenCV学习笔记—— OpenCV 3.0.0环境配置 + opencv_contrib编译(Windows10)_第9张图片
  • 库文件目录配置
    在配置属性(Common Properties)–VC++目录–库目录(Library Directories)–编辑
    添加
    G:\opencv\opencv\build\x64\vc12\lib
  • 动态链接库配置
    库文件目录下面.lib文件列表,发现在3.0.0版本的OpenCV中,仅剩下两个库文件,分别是:opencv_world300.lib和opencv_world300d.lib,这里两个库文件的区别就是:opencv_world300.lib是Release模式版本,而opencv_world300d.lib是Debug模式版本:
    OpenCV学习笔记—— OpenCV 3.0.0环境配置 + opencv_contrib编译(Windows10)_第10张图片
    属性页–连接器(Linker)–输入(Input)–附加依赖项(Additional Dependencies)–根据需求,添加刚刚看见的库文件。
    OpenCV学习笔记—— OpenCV 3.0.0环境配置 + opencv_contrib编译(Windows10)_第11张图片
    此时OpenCV的环境变量及vs中的配置已经完成,可以书写一段简单代码检验一下。

#include 
#include  //opencv相关库
#include 
 
using namespace cv;
 
int main(){
	// 读入一张图片(任意图片)  
	Mat img = imread("001.jpg");  //图片位于工程目录,也可从其他目录读图
	// 创建一个名为 "检验"窗口  
	namedWindow("任意图片");
	// 在窗口中显示任意图片  
	imshow("检验", img);
	// 等待3000 ms后窗口自动关闭  
	waitKey(3000);

二、 OpenCV 3.0.0 与 opencv_contrib-3.0.0编译

你可能感兴趣的:(计算机视觉,图像识别,opencv,opencv,c++)