您的位置:首页 > 运维架构

opencv2.4.0+VS2008配置

2013-11-25 20:31 253 查看
摘要:在VS2008环境中应用Opencv,网上找到了很多配置方法,但大多都是老版本的,很多新手面对最新版本的Opencv无从下手,就给新手童鞋写了这么一篇超级详细的配置攻略,贴上来共享。要强调一点的就是,这种配置方法里使用的Opencv库是直接安装Opencv时候自带的dll库,在你的VS里面是无法调试Opencv的。


1、下载软件

  下载OpenCV-2.4.0,双击解压到%opencv%(凡是出现%opencv%的地方均替换为你自己opencv的路径全名,如E:\opencv)。

  下载VS2008,安装。


2、配置OpenCV环境变量

  计算机->(右键)属性->高级系统设置->高级(标签)->环境变量->(双击)path(用户,系统里面的path任选其一)->在变量值里面添加” %opencv%\build\x86\vc9\bin”和”%opencv%\build\common\tbb\ia32\vc9”(里面的%opencv%记得换成自己的opencv路径。例如我的:E:\opencv\build\x86\vc9\bin;E:\opencv\build\common\tbb\ia32\vc9)。




3、配置工程的opencv依赖

1)工具->选项->项目和解决方案->VC++目录:需要配置“包含文件”和“库文件”两项。







2)配置“包含文件”项:添加行”%opencv%\build\include“即可。

但在运行别人的opencv项目时,可能别人直接引用了上述目录的子目录路径,如果出现include错误,则再添加”%opencv%\build\include\opencv”和(或)”%opencv%\build\include\opencv2”,即可解决问题。



3)配置“库文件”项:添加行”%opencv%\build\x86\vc9\lib”即可。



4)配置连接器:项目(菜单项)->属性->配置属性->链接器->输入->附加依赖项


(每次新建工程都要重新配置)

针对debug配置添加以下库:

opencv_calib3d240d.lib

opencv_contrib240d.lib

opencv_core240d.lib

opencv_features2d240d.lib

opencv_flann240d.lib

opencv_gpu240d.lib

opencv_highgui240d.lib

opencv_imgproc240d.lib

opencv_legacy240d.lib

opencv_ml240d.lib

opencv_objdetect240d.lib

opencv_ts240d.lib

opencv_video240d.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




4、用VS2008新建控制台工程测试:

1)文件->新建->项目->Visual C++->Win32 控制台应用程序(输入名称test),并新建test.cpp,配置好项目属性,然后键入以下代码:

[cpp] view
plaincopy

<span style="color:#339900">#include "StdAfx.h"</span>

<span style="color:#339900">#include < #string#>//#用来屏蔽某代码插件的bug,下同</span>

<span style="color:#339900">#include < #opencv2\opencv.hpp#></span>

<span style="color:#0000ff">using</span> <span style="color:#0000ff">namespace</span> cv<span style="color:#008080">;</span>

<span style="color:#0000ff">using</span> <span style="color:#0000ff">namespace</span> std<span style="color:#008080">;</span>

<span style="color:#0000ff">int</span> main<span style="color:#008000">(</span><span style="color:#008000">)</span>

<span style="color:#008000">{</span>

string imageName <span style="color:#000080">=</span> <span style="color:#ff0000">"lena.jpg"</span><span style="color:#008080">;</span>

<span style="color:#666666">//读入图像</span>

Mat img <span style="color:#000080">=</span> imread<span style="color:#008000">(</span>imageName<span style="color:#008000">)</span><span style="color:#008080">;</span>

<span style="color:#666666">//如果读入图像失败</span>

<span style="color:#0000ff">if</span> <span style="color:#008000">(</span>img.<span style="color:#007788">empty</span><span style="color:#008000">(</span><span style="color:#008000">)</span><span style="color:#008000">)</span>

<span style="color:#008000">{</span>

<span style="color:#0000ff">return</span> <span style="color:#000040">-</span><span style="color:#0000dd">1</span><span style="color:#008080">;</span>

<span style="color:#008000">}</span>

<span style="color:#666666">//创建窗口</span>

namedWindow<span style="color:#008000">(</span><span style="color:#ff0000">"lena"</span>, <span style="color:#0000dd">1</span><span style="color:#008000">)</span><span style="color:#008080">;</span>

<span style="color:#666666">//显示图像</span>

imshow<span style="color:#008000">(</span><span style="color:#ff0000">"lena"</span>, img<span style="color:#008000">)</span><span style="color:#008080">;</span>

<span style="color:#666666">//等待按键,按键盘任意键返回</span>

waitKey<span style="color:#008000">(</span><span style="color:#008000">)</span><span style="color:#008080">;</span>

<span style="color:#0000ff">return</span> <span style="color:#0000dd">0</span><span style="color:#008080">;</span>

<span style="color:#008000">}</span>

[cpp] view
plaincopy

<span style="color:#008000">程序默认路径下如果有lena.jpg,则显示图像lena.jpg,否则没有显示。</span>

The End。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: