刚刚学习Opencv,发现配置的时候蛮复杂的,特此记下以备后续。

我的opencv安装在D:\OpenCV\opencv

1.设置环境变量


首先说一下环境配置,看到很多网上说的是根据系统的位数来判断,但是自己实验后发现是根据vs2008当时建立的工程时用的编译器决定的,如win32对应x86.但确定好编译器的种类后在确定哪个版本vs2008对应vc9,vs2010对应vc10,都确定好了之后就可以配置环境变量了.如下图:

2.配置VS2010

之后就是在vs2008上面配置的问题了,首先创建一个空的文件夹,在此不赘述;之后我直接选择在工程文件的属性界面中(工程名称右键->属性)里面把配置属性(configuration property)中的C/C++的additional include directories改成文件所在的include,我常用的头文件highgui.h目录在D:\OpenCV\opencv\build\include\opencv\highgui.h,此时我设置的include为D:\OpenCV\opencv\build\include,到时候直接在代码区添加#include<opencv\highgui.h>注意要加上opencv的路径。


此后在工程文件的属性界面中(工程名称右键->属性)里面把linker里面的additional library directories改成lib所在目录我的是D:\OpenCV\opencv\build\x86\vc9\lib

最后在linker的input里面把additional dependencies里面的库文件都改成D:\OpenCV\opencv\build\x86\vc9\lib中的文件,注意D:\OpenCV\opencv\build\x86\vc9\lib里面的文件不是全部添加只挑格式为opencv_(The Name of the module)(The version Number of the library you use)d.lib的添加

我的添加目录为

opencv_calib3d246d.lib

opencv_contrib246d.lib

opencv_core246d.lib

opencv_features2d246d.lib

opencv_flann246d.lib

opencv_gpu246d.lib

opencv_highgui246d.lib

opencv_imgproc246d.lib

opencv_legacy246d.lib

opencv_ml246d.lib

opencv_nonfree246d.lib

opencv_objdetect246d.lib

opencv_ocl246d.lib

opencv_photo246d.lib

opencv_stitching246d.lib

opencv_superres246d.lib

opencv_ts246d.lib

opencv_video246d.lib

opencv_videostab246d.lib

想必大家都发现了每个文件的后面都有一个d字母,因为有两个版本release和debug,带D的是用于debug版本的,在D:\OpenCV\opencv\build\x86\vc9\lib中debug和release版本都有所以在选择时要根据自己的当前版本选择。

一个简单的程序测试自己配置成功否

#include<opencv\highgui.h>

int main(int argc,char** argv){

IplImage *img = cvLoadImage(argv[1]);

cvNamedWindow("example1",CV_WINDOW_AUTOSIZE);

cvShowImage("example1",img);

cvWaitKey(0);

cvReleaseImage(&img);

cvDestroyWindow("example1");

}

这个程序是显示一个图片,别忘记将图片放置在工程文件的目录下我的是工程名字是simple teest,我放置的目录是C:\Users\wgq\Documents\Visual Studio 2008\Projects\simple teest\simple teest。放置好后在vs2008中Properties->Debugging->Command Arguments输入自己的图片名称就行。

D:\OpenCV\opencv\build\include

OpenCV2.4.6与vs2008配置问题的更多相关文章

  1. 【OpenCV】OpenCV2.4.6 与Visiual Studio 2008,Python2.7.5配置和图像载入显示

    自从OpenCV2.2开始,OpenCV 库便分成几个模块并位于lib文件中,本节介绍从OpenCV2.4.6与VS2008 .Python2.7.5如何配置环境,如何外部文件载 入图像.在窗口中显示 ...

  2. 【第一篇:C++与opencv】图片的读取和显示

    这里介绍C++版本的opencv,和C语言版本有些不同,先看代码^_^ [编译环境:opencv2.4.4和VS2008] #include "stdafx.h" #include ...

  3. opencv的C语言接口和C++接口差别(入门篇)

    opencv是一个开源的图像处理库,最经典的1.0版本号提供的接口都是C语言接口. 后来的opencv2.x版本号保留了C语言接口,可是提供了C++接口,当中的C语言接口仅仅是为了向后兼容,而C++接 ...

  4. vs2008+cmake2.8+OpenCV2.8.4配置过程中OpenCV.sln重编译部分工程失败

    解决方法来自此链接 http://www.tuicool.com/articles/qiQBb2N vs2008+cmake2.8+OpenCV2.8.4配置过程 1.解压opencv2.4.8 2. ...

  5. VS2008编写MFC程序--使用opencv2.4()

    开始记录VS2008环境下学习OPENCV2.4 头文件: #pragma once #include "CvvImage.h" #include "opencv/cv. ...

  6. 【转】windows下vs2008/2010+opencv2.2开发环境搭建

    版权声明:本文为博主原创文章,未经博主允许不得转载. 1.下载安装Cmake 2.用cmake配置opencv2.2,然后编译,安装 3. 在vs2008中配置opencv2.2 4.Demo 1.下 ...

  7. vs2008 + OpenCV-2.1.0-win32-vs2008安装

    vs2008 + OpenCV-2.1.0-win32-vs2008安装 1. 安装vs2008+sp12. 安装opencv-2.1.0-win32-vs2008,假设安装目录为c:/opencv2 ...

  8. vs2008+opencv2.4.9 +win7X64位系统 2.

    小编用自身血淋淋的例子,来给大家做个参考,共耗时近2天时间,终于屈服于安装vs2010,然后配置成功了.但是在这个配置成功后,我终于发现了我08配置不成功的原因,写下心得,供各位参考 1.准备工具 v ...

  9. vs2008安装opencv2.4.6

    最近安装opencv2.4.6,发现犯了一个很愚蠢的错误,在此记录一下. opencv的头文件包含应该位于build文件夹内,而我误将opencv文件夹下的include包含了进去,造成无法找到头文件 ...

随机推荐

  1. URAL 1146 Maximum Sum & HDU 1081 To The Max (DP)

    点我看题目 题意 : 给你一个n*n的矩阵,让你找一个子矩阵要求和最大. 思路 : 这个题都看了好多天了,一直不会做,今天娅楠美女给讲了,要转化成一维的,也就是说每一列存的是前几列的和,也就是说 0 ...

  2. 李洪强iOS开发之拓展篇—UIDynamic(简单介绍)

      iOS开发拓展篇—UIDynamic(简单介绍) 一.简单介绍 1.什么是UIDynamic UIDynamic是从iOS 7开始引入的一种新技术,隶属于UIKit框架 可以认为是一种物理引擎,能 ...

  3. mac 用 brew

    mac 下用   brew 安装插件, 有重复的不会再次安装,比xmap模式好

  4. Bridging signals ZOJ 3627 POJ1631 HDU1950

    题意:给出一个从1-n的数字排列,求最长上升子序列长度. 直接说解法吧.新开一个数组d,d[i]表示的是能构成长度为i的上升子序列的在原序列中最后的那个数值.程序的主要过程:当循环到第i个的时候,如果 ...

  5. Java API ——包装类

    1.包装类的概述 · 将基本数据类型封装成对象的好处在于可以在对象中定义更多的功能方法操作该数据. · 常用的操作之一:用于基本数据类型与字符串之间的转换. · 基本类型和包装类的对应 为了对基本数据 ...

  6. [原]数据库中的partitioning和sharding

    1. 如何理解定义 在中文中,partitioning和sharding都有分区的意思.从大的方面来说,这两个词所执行的动作确实也和分区相关.partitioning在很多场合是vertical pa ...

  7. Android开发之IP拨号器原理

    IP拨号器,使用了Android的广播接收者(BroadCastReceiver),在广播中把已保存的ip号码放在拨打电话号码的前面(getResultData()),然后把修改后的号码设置到广播中( ...

  8. Compass被墙后如何安装安装

    今天安装 Compass 多时候发现竟然安装不了,且什么提示也没有,让人纳闷.安装代码如下: $ gem install compass 运行该段代码后发现没反应,也没有提示,后来网上查了才知道,竟然 ...

  9. mvn命令

    打包:mvn package 编译:mvn compile 编译测试程序:mvn test-compile 清空:mvn clean 运行测试:mvn test 生成站点目录: mvn site 生成 ...

  10. php类 静态变量赋值 static $name="abc"

    <?php class test { static $name="abc"; } echo test::$name; 1.巴斯科范式 class_statement: var ...