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) ...
随机推荐
- singleton单例模式
单例设计模式 单例设计模式概述 单例模式就是要确保类在内存中只有一个对象,该实例必须自动创建,并且对外提供 优点: 在系统内存中只存在一个对象,因此可以解决系统资源,对于一些需要频繁 ...
- VFL示例
•[cancelButton(72)]-12-[acceptButton(50)] •取消按钮宽72point,accept按钮宽50point,它们之间间距12point • •[wideView( ...
- Android Studio 学习 - 程序安装
痛定思痛,从今天开始专心学习AndriodStudio.希望以此为契机,把Java学扎实.更希望自己能坚持下去,不要半途而废. 记录一些日常的工作以及碰到的问题,权当勉励自己.荀子曰:吾尝终日而思矣, ...
- 【解题报告】HDU -1142 A Walk Through the Forest
原题链接:http://acm.hdu.edu.cn/showproblem.php?pid=1142 题目大意:Jimmy要从办公室走路回家,办公室在森林的一侧,家在另一侧,他每天要采取不一样的路线 ...
- 支持多种浏览器的纯css下拉菜单
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- socket基础实例(一个服务端对应一个客户端情形)
服务端处理1个客户端的例子 运行结果: (1) while(accept+if(recv)) 情形 执行服务端进程: [root@localhost single_link]# ./server [s ...
- 5、NFC概述
什么是NFC NFC(Near Field Communication,近场通信),是一种数据传输技术.但与Wi-Fi.蓝牙.红外线等数据传输技术的一个主要差异就是有效距离一般不能超过4厘米. NFC ...
- call Kernelized Correlation Filters Tracker(Matab) in Qt(c++)
recently, i need call the KCF tracker in my graduation project. the KCF tracker is fast and best per ...
- js 判断字符是否以汉字开头
javascript代码如下: var re = new RegExp("^[\u4e00-\u9fa5]"); if (re.test("aaa好")) { ...
- Topogun教学视频
http://www.iqiyi.com/w_19rrfss6dd.html http://www.iqiyi.com/w_19rrfsvo3h.html http://www.iqiyi.com/w ...