VS2010编译器下针对C#和C++的opencv的配置方法


我们大家都知道opencv是针对C、C++编写的,没有独立的编译调试工具。所以今天就捣鼓了一下在xp vs2010下配置C++和C#环境下的opencv。请大家一步一步的按步骤操作。本人亲自鉴定可行。

VS2010下OpenCV、EmguCV(C#)安装和使用配置,首先是安装环境:

OS:Win7旗舰版64位

平台:VS2010旗舰版 x86

下面的安装包来自国外网站,有一些用户需要翻墙才能下载。。

安装包版本(针对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插件,我没有导入但还是跑通了。顺便记下以便备用:

 

点击“工具(T)” -> “选择工具箱项(X)…” ,在新打开的窗口中选择:“.NET Framework组件”,点击“浏览”,到目录:C:\Emgu\emgucv-windows-x86 2.4.0.1773\bin下,双击Emgu.CV.UI.dll即可
 
测试代码大家可以从网上下载,也可以用opencv或emgu里面自带的例子。
如果需要安装软件的话请向我索取就可以啦。。。并希望结交朋友共同学习机器视觉和上位机软件C#编程。。

 

 

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM