OpenCV学习笔记1 OpenCV软件开发环境的搭建

来源:互联网 发布:黑马餐饮软件 编辑:程序博客网 时间:2024/05/02 01:55

今天开始学习OpenCV,首先就是配置开发环境了。

Windows 7 SP1 x64系统 + Microsoft Visual Studio 2010 + OpenCV 2.4.9。


首先,从OpenCV的官方网站http://opencv.org/上下载最新版本的OpenCV for Windows,即


下载之后双击解压即可。解压时需要选择指定的文件路径,在选择文件路径时,例如指定为C盘的program files目录中,不需要再在该目录下建立OpenCV的文件夹,解压时会自动创建一个名为“opencv”的文件夹。

使用一个软件,首先要看它的doc文档,进入opencv\build\doc目录,可以看到一个名为“opencv_tutorials”的pdf文档,也就是OpenCV的官方发布教程了。按照英文教程一步一步配置开发环境。

直接去找1.4节, Installation in Windows ,按照文档描述,官方提供的OpenCV有两种形式,一种是预先建立的库,还有一种是OpenCV的源代码,可以根据自己的需求来编译生成OpenCV的库。这也就对应了 opencv 目录下的两个目录:build 和 source 。简单起见,我这里直接安装预先建立的库
。下面是根据教程总结的具体方法。

首先配置环境变量。以管理员身份打开命令行界面,输入命令:

setx -m OPENCV_DIR E:\Program Files\opencv\Build\x64\vc10
命令中,x64对应系统位数,若是32位系统应改为x86,vc10对应vs2010,若开发环境是vs2012则应改为vc11(注意,我在使用中发现我是win7系统是64位,但是因为建立的是win32程序,运行时会导致错误,改成x86则没有问题)。该命令的作用是创建一个名为 OPENCV_DIR 的系统环境变量,环境变量的路径应该改为安装者具体对应OpenCV安装的路径。然后是添加相应的环境变量,开始 -> 计算机(右键)->属性->高级系统设置->环境变量。在系统变量中有个名为Path的变量,在后面添加:

%OPENCV_DIR%\bin

注意,变量值之间都是以英文分号“;”隔开的。

打开VS2010,建立一个名为“opencv”的Win32控制台程序,并新建一个cpp源文件。解决方案和工程名称随自己喜好定义。


右键opencv,属性,在 VC++目录 一项,包含目录 中写入 $(OPENCV_DIR)\..\..\include ,库目录中写入 $(OPENCV_DIR)\lib,写完如下图所示:


打开 链接器 一项,在输入中,编辑附加依赖项,添加如下依赖:

opencv_core249d.libopencv_imgproc249d.libopencv_highgui249d.libopencv_ml249d.libopencv_video249d.libopencv_features2d249d.libopencv_calib3d249d.libopencv_objdetect249d.libopencv_contrib249d.libopencv_legacy249d.libopencv_flann249d.lib


添加完如上图所示。

注意:

1. 根据教程,上述依赖项不是所有的都必须添加,只需要添加需要的依赖库,前提是你需要了解每个库对应的功能,在OpenCV教程开头有介绍。

2. 每个依赖项的名字最后的“249”对应着OpenCV的版本号2.4.9,如果你是其他版本的,改成对应的版本号即可。

3. 数字后面有个 “d” 意味着是debug版本对应的库,如果是release版,则依赖项的名字中不带有“d”,如 opencv_core249.lib 。

4. 上述所有配置都是debug版本的方法,若需要配置相应的release版本,需要使用属性管理器,对Debug和Release分别右键属性配置相应的包含目录库目录附加依赖项,并注意配置附加依赖项时上一条的叙述。



下面就是写代码了。

#include <opencv2\opencv.hpp>#include <iostream>#include <string>using namespace cv;using namespace std;int main(){    Mat img = imread("test.jpg");    if(img.empty())    {        cout<<"error";        return -1;    }     imshow("测试图片",img);    waitKey();    return 0;}
在C++源文件中添加如下代码,并在网上下载一个.jpg格式的图片,重命名为“test.jpg”,放入工程文件目录下。

注意:

有两种方式可以打开图片,一种是在VS2010的IDE中,按CTRL+F5运行程序,另一种是到工程的debug生成目录下,双击exe文件运行程序。

这两张方式在打开图片时,指定的文件路径是不同的。第一种方式,图片应该放在工程目录下,同C++源文件位于同一目录下。第二种方式,图片应放在解决方案目录中的debug目录下,同可执行文件xxx.exe放在同一目录下。

最后,编译建立,执行。结果如下图:



0 0
原创粉丝点击