vs2010+opencv3.0.0 环境配置 (以及配置技巧)

(1)

目前最新的opencv库为opencv 3.0.0 库,其下载地址为:http://opencv.org/downloads.html
Vs最新的可能达到了vs2015,考虑软件太大,且opencv中并没有对应vs2015版本的opencv,所以选择老一点版本的vs2010

(2)

下载完的opencv为exe文件,解压一下会出现两个文件夹如下:
这里写图片描述

(3)

下面是配置电脑的属性,打开:计算机 > 属性 > 高级系统设置 > 环境变量
新建一个环境变量OPENCV,将其值设置为D:\opencv\opencv\build,这个路径就是你的解压opencv所在路径(这个路径最好是全英文路径),建立如下:
这里写图片描述
然后还是在环境变量下修改系统变量中的path,添加:
;D:\opencv\opencv\build\x86\vc10\bin
这里最好都要选择x86,虽然你的机器可能是64位系统。
这里写图片描述
至此电脑上的环境变量完成。

(4)

下面打开vs2010(假设你已经安装好了),新建项目,win32的空项目
这里写图片描述
取名test4,在4est4上右击,添加一个c++文件:
这里写图片描述
为这个c++配置opencv的属性,点击下方的属性:
这里写图片描述

(5)

然后在debug与release上分别右击,添加新的项目属性表,并重命名opencv_debug与opencv_release(名字随便取),建完后如下:
这里写图片描述

(6)

好了,下面是对这两个新建的属性表进行编辑了,首先opencv_debug的编辑,点击它:
这里写图片描述
这里写图片描述
添加这两项的路径(注意自己的路径)。
在“链接器”的“输入”中再编辑如下:
这里写图片描述
添加的值如下(要是你的版本不是opencv3.0.0,是2.几.几的话,那么你就不能复制下面的呢,需要把300改成你的版本,网上有其他版本的这些值可以去找找)
opencv_ts300d.lib
opencv_world300d.lib
IlmImfd.lib
libjasperd.lib
libjpegd.lib
libpngd.lib
libtiffd.lib
libwebpd.lib
opencv_calib3d300d.lib
opencv_core300d.lib
opencv_features2d300d.lib
opencv_flann300d.lib
opencv_highgui300d.lib
opencv_imgcodecs300d.lib
opencv_imgproc300d.lib
opencv_ml300d.lib
opencv_objdetect300d.lib
opencv_photo300d.lib
opencv_shape300d.lib
opencv_stitching300d.lib
opencv_superres300d.lib
opencv_video300d.lib
opencv_videoio300d.lib
opencv_videostab300d.lib
Zlibd.lib

好了,下面对opencv_release属性表进行编辑,编辑的前两个路径一摸一样,不同的是最后一个。
这里写图片描述
具体的值如下:
opencv_ts300.lib
opencv_world300.lib
IlmImf.lib
ippicvmt.lib
libjasper.lib
libjpeg.lib
libpng.lib
libtiff.lib
libwebp.lib
opencv_calib3d300.lib
opencv_core300.lib
opencv_features2d300.lib
opencv_flann300.lib
opencv_highgui300.lib
opencv_imgcodecs300.lib
opencv_imgproc300.lib
opencv_ml300.lib
opencv_objdetect300.lib
opencv_photo300.lib
opencv_shape300.lib
opencv_stitching300.lib
opencv_superres300.lib
opencv_video300.lib
opencv_videoio300.lib
opencv_videostab300.lib
Zlib.lib

可以看到相对于debug只是少了一个d。然后保存,这样配置就完成了。下面进行实验。

(7)

实验前需要一副实验图,这里我在桌面上放了一副彩色的jpg图像。那么在cpp下输入下面简单代码:

#include 
#include 
#include   
using namespace std;
using namespace cv;

int main()
{
    string imgPath = "C:\\Users\\admin\\Desktop\\flower.jpg";
    Mat img = imread(imgPath);
    imshow("flower",img);
    waitKey(0);
    return 0;
}

注意路径下一定要有图像,并且路径不能复制过来就用,在”\”前必须再加一个转义字符”\”才可以,千万不能直接是”C:\Users\admin\Desktop\flower.jpg”,只是直接考过来的路径。正常的话有结果如下:
这里写图片描述

(8)

至此配置加实验完成,那么每次当你建立了一个新的opencv程序的时候是不是都是要重新配置一遍上述过程?理论上是的,但是那样太麻烦,我们在上述也可以看到,实际上配置就是添加两个属性表,那么我们把这个属性表建好,每一次我们把这两个属性表添加进去就可以了,那样的话就不是添加新的属性表了,而是添加已有的属性表。那么上述实验后,配置的这两个属性表在哪里呢?在你的c++程序目录下,找到即可,比如我的在:
这里写图片描述
把他们拿出去,然后每次在新建的opencv项目中德属性表中,对应的debug与release分别添加现有属性表,也就是这两个即可。这样免去了每一次要输半天的配置麻烦。

(9)

这里再推荐一个c++的快速提示符插件,就是在编程的时候,系统可以根据你输入的几个字符来提示你可能要输入的字符,这样加快编程速度,也很方便,比如你想输入#include,那么当你在输到#in的时候就可以根据提示补全了。这个插件为VissualAssistX,下载以后直接安装,然后重启vs就可以用了,比如上述的一些图中可以看到加入后会出现不同,比如
这里写图片描述
加入这个插件后会多了上面那个东西。

你可能感兴趣的:(opencv)