VS2010编译器下针对C#和C++的opencv的配置方法
我们大家都知道opencv是针对C、C++编写的,没有独立的编译调试工具。所以今天就捣鼓了一下在xp vs2010下配置C++和C#环境下的opencv。请大家一步一步的按步骤操作。本人亲自鉴定可行。
VS2010下OpenCV、EmguCV(C#)安装和使用配置,首先是安装环境:
OS:Win7旗舰版64位
平台:VS2010旗舰版 x86
下面的安装包来自国外网站,有一些用户需要FQ才能下载。。
安装包版本(针对C++):OpenCV2.4.0 x86 下载地址:http://sourceforge.net/projects/opencvlibrary/files/opencv-win/2.4.0/OpenCV-2.4.0.exe/download
EmguCV2.4.0 x86 (针对C#)下载地址:http://sourceforge.net/projects/emgucv/files/emgucv/2.4.0/libemgucv-windows-x86-gpu-2.4.0.1773.exe/download
一:针对C++配置opencv
1. 系统Path里添加(注销当前用户或者重启系统会生效):
1.1 计算机->(右键)属性->高级系统设置->高级(标签)->环境变量->(双击)path(用 户,系统里面的path任选其一)->在变量值最后面输入(用分号;隔开):;D:\Program Files\OpenCV\OpenCV-2.4.0-win\vc10\bin;D:\Program Files\OpenCV\Tbb_win\bin\ia32\vc10
2. 用VS2010新建控制台工程测试:
1)、文件->新建->项目->Visual C++->Win32 控制台应用程序(输入名称test)
2)、确定->下一步->附加选项选“空项目”->完成
3)、解决方案资源管理器->源文件(右键)->添加->新建项
4)、Visual C++->C++文件:输入名称test点添加
5)、粘贴下面的代码,保存
#include <opencv2\opencv.hpp>
#include <iostream>
#include <string>
using namespace cv;
using namespace std;
int main()
{
Mat img = imread("pp.jpg");
if(img.empty())
{
cout<<"error";
return -1;
}
imshow("xx的靓照",img);
waitKey();
return 0;
}
6)、把自己的靓照改名为pp.jpg,然后放到工程项目的test文件夹里面(是里面那个test文件夹)
3.项目(菜单项)→ 当前项目属性 → VC++目录:需要配置“包含目录”。
D:\Program Files\OpenCV\OpenCV-2.4.0-win\vc10\include
D:\Program Files\OpenCV\OpenCV-2.4.0-win\vc10\include\opencv
D:\Program Files\OpenCV\OpenCV-2.4.0-win\vc10\include\opencv2
4. 项目(菜单项)→ 当前项目属性 → VC++目录:需要配置“库目录”两项:D:\Program Files\OpenCV\OpenCV-2.4.0-win\vc10\lib; D:\Program Files\OpenCV\Tbb_win\lib\ia32\vc10
5.配置连接器:项目(菜单项)→ 当前项目属性 → 连接器 → 输入 → 附加依赖项
针对debug配置添加以下库
opencv_calib3d240d.lib;
opencv_contrib240d.lib;
opencv_core240d.lib;
opencv_features2d240d.lib;
opencv_flann240d.lib;
opencv_gpu240d.lib;
opencv_haartraining_engined.lib;(实际配置中这个库要去掉,不然报错)
opencv_highgui240d.lib;
opencv_imgproc240d.lib;
opencv_legacy240d.lib;
opencv_ml240d.lib;
opencv_nonfree240d.lib;
opencv_objdetect240d.lib;
opencv_photo240d.lib;
opencv_stitching240d.lib;
opencv_ts240d.lib;
opencv_video240d.lib;
opencv_videostab240d.lib
如果是release配置(以后再说,只需要添加上面的debug配置就行了现在),则添加:
opencv_calib3d240.lib
opencv_contrib240.lib
opencv_core240.lib
opencv_features2d240.lib
opencv_flann240.lib
opencv_gpu240.lib
opencv_highgui240.lib
opencv_imgproc240.lib
opencv_legacy240.lib
opencv_ml240.lib
opencv_objdetect240.lib
opencv_ts240.lib
opencv_video240.lib
6. 按F5运行,如果图片显示出来就说明配置成功。
7.编译地时候 CvRound错误处理:项目(菜单项)→ 当前项目属性 → 常规 → 公共语言运行时支持 →公共语言运行时支持(/clr)
二:针对C#来配置opencv
过程类似。我安装(直接安装刚才下载的安装包)在D:\CV下面,以便统一管理。
用户变量PATH添加:D:\CV\Emgu\emgucv-windows-x86-gpu 2.4.0.1773\bin;
调试运行时候,记得添加dll文件的引用和using 指令。
有人说需要导入UI插件,我没有导入但还是跑通了。顺便记下以便备用:

VS2010编译器下针对C#和C++的opencv的配置方法的更多相关文章
- stm32f107vc在IAR环境下,引用库函数的工程文件的配置方法
stm32做开发很方便的一个原因是大家可以稍稍放松对于硬件寄存器等的设置,因为stm32有了非常丰富和实用的库函数,外设文件等等,所以我们在使用的时候可以更加关注程序开发的过程和逻辑关系.但是,在开发 ...
- 在CentOS6.5 下安装并使用Java开发opencv的配置(一)
1) 安装gcc以及cmake等等乱七八糟的软件 yum install gcc yum install python yum install cmake yum groupinstall " ...
- Apache下禁止使用IP直接访问本站的配置方法
现在管的严啊,上面要求不能使用IP直接访问服务器,把apache配置做下调整就行了.方法如下: 打开apache的配置文件 # vi /usr/local/apache2/conf/extra/htt ...
- Mac下开启与关闭端口转发的脚本配置方法
一.依次运行以下命令: cd /etc ls | grep pf.conf sudo cp pf.conf pf.conf.normal.bak sudo cp pf.conf pf.conf.tra ...
- 实战解读丨Linux下实现高并发socket最大连接数的配置方法
摘要:Linux操作系统,无论是编写客户端程序还是服务端程序,在高并发TCP连接处理时,最高的并发数量都要受到系统对用户单一进程同时可打开文件数量的限制. [诉求场景] Linux操作系统,无论是编写 ...
- Boost学习总结(一)VS2010环境下编译STLport和Boost
Boost学习总结(一)VS2010环境下编译STLport和Boost Boost简介 Boost库是一个功能强大.构造精巧.跨平台.开源并且完全免费的C++程序库.1998年,Beman G.Da ...
- libCURL开源库在VS2010环境下编译安装,配置详解
libCURL开源库在VS2010环境下编译安装,配置详解 转自:http://my.oschina.net/u/1420791/blog/198247 http://blog.csdn.net/su ...
- .net(C#)在vs2010版本下的MVC如何配置才能切换静态页面(html)
由于vs2010用的人比较多,虽然建mvc项目vs2010可能还不成熟,但鉴于每个人的成长有限,每个地方的资源有限,最主要的是为了解决问题,所以先不管那么多了. 用vs2010为公司网站建站,要求js ...
- Win7+VS2010环境下CEGUI 0.8.4编译过程详解
转载▼ 1. 在http://cegui.org.uk/download 下载CEGUI源码包 cegui-0.8.4 以及CEGUI依赖库(Windows / Apple OS X only) ...
随机推荐
- RPi 2B Android telnet ssh
/*********************************************************************** * RPi 2B Android telnet ssh ...
- PDO防注入原理分析以及使用PDO的注意事项 (转)
我们都知道,只要合理正确使用PDO,可以基本上防止SQL注入的产生,本文主要回答以下两个问题: 为什么要使用PDO而不是mysql_connect? 为何PDO能防注入? 使用PDO防注入的时候应该特 ...
- acess() 判断目录是否存在
acess()功能描述: 检查调用进程是否可以对指定的文件执行某种操作. <pre lang="c" escaped="true">#include ...
- Comparator与Comparable的异同
同 它们都是Java的一个接口,都是用来实现集合中元素的比较.排序. 异 Comparator位于java.util下: Comparable位于java.lang下: Comparable(可比较的 ...
- mysql 在大型应用中的架构演变
文正整理自:http://www.csdn.net/article/2014-06-10/2820160 可扩展性 架构的可扩展性往往和并发是息息相关,没有并发的增长,也就没有必要做高可扩展性的架构, ...
- Nodejs学习之一 下载安装与部署nodejs
1,下载nodejs 访问nodejs官网 www.nodejs.org/download/ 下载与机器相匹配的版本 2,安装nodejs 下载下来的msi包一直点击下一步即可 3,部署环 ...
- AutoCompleteTextView不能使用的问题
AutoCompleteTextView按照网络上的方法写之后不能使用 解决方法: android:layout_width="fill_parent" 而不能是wrap_pare ...
- 嵌入式 Linux下修改MAC地址
Linux下修改MAC地址 方法一: 1.关闭网卡设备ifconfig eth0 down2.修改MAC地址ifconfig eth0 hw ether MAC地址3.重启网卡ifconfig eth ...
- C++ STL算法系列6---copy函数
现在我们来看看变易算法.所谓变易算法(Mutating algorithms)就是一组能够修改容器元素数据的模板函数,可进行序列数据的复制,变换等. 我们现在来看看第一个变易算法:元素复制算法copy ...
- Drupal如何更新注册表?
Drupal的注册表是指registry和registry_file两个数据表.前一个表保存所有可用的类和接口以及它们所对应的文件,后一个表保存每个文件的hash码. 1. 将所有需要更新的文件都汇总 ...