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

OpenCV2.4.3在VS2008和VS2010平台上安装配置

2014-04-30 09:56 197 查看
点击打开链接

OpenCV2.4.3在VS2008和VS2010平台上安装配置图解

1、 下载软件。Opencv2.4.3可从此处下载到:http://www.opencv.org.cn
先安装VS2008或VS2010,接着把刚下载的Opencv2.4.3文件解压,建议把解压文件放在C盘,如C:\opencv,可以放在任意位置,但在下面的配置中相应把路径改下。本次我是放在E:\C_lib\opencv。
2、 设置用户变量。计算机>属性>高级系统设置>环境变量>新建,新建一个用户变量,如变量名:Path,变量值:E:\C_lib\opencv\build\x86\vc9\bin
变量值有如下选择:
若XP系统 32位系统VS2008:E:\C_lib\opencv\build\x86\vc9\bin
若Win7等64位系统 VS2008:E:\C_lib\opencv1\build\x64\vc9\bin
若XP系统 32位系统 VS2010:E:\C_lib\opencv\build\x86\vc10\bin
若Win7等64位系统 VS2010:E:\C_lib\opencv\build\x64\vc10\bin



3、 设置编译路径。
VS2008:工具>选项>项目与解决方案>VC++目录>平台,32位选Win32,64位则选x64,接着在“显示以下内容的目录”下拉框选择“包含文件”,点击“新行”图标,分别新建3条路径:
E:\C_lib\opencv\build\include
E:\C_lib\opencv\build\include\opencv
E:\C_lib\opencv\build\include\opencv2



然后选择“库文件”,新建1条路径:
若32位:E:\C_lib\opencv\build\x86\vc9\lib
若64位:E:\C_lib\opencv\build\x64\vc9\lib



若VS2010:先新建一个项目(每新建一个项目都需要进行以下的配置才能编译Opencv里的函数,可以不注册电脑),在“解决方案资源管理器”窗口下,右击,“属性”,如果是32位系统,在“平台”框上显示“Win32”,64位显示“x64”,需要更改则点击“配置管理器”,在“活动解决方案平台”下拉框新建一个对应的平台。接着,配置属性>VC++目录,在右边“包含目录”那栏,点击编辑按钮,再分别新建以下3条路径:
E:\C_lib\opencv\build\include
E:\C_lib\opencv\build\include\opencv
E:\C_lib\opencv\build\include\opencv2



4、 然后在项目右键à配置属性àC/C++à选择“附加包含目录”那栏:
E:\C_lib\opencv\build\x86\vc9

E:\C_lib\opencv\build\include

E:\C_lib\opencv\build\include\opencv

E:\C_lib\opencv\build\include\opencv2



然后在项目右键à配置属性à链接器à选择“附加库目录”那栏:
若VC9 32位:E:\C_lib\opencv\build\x86\vc9\lib
若VC10 32位:E:\C_lib\opencv\build\x86\vc10\lib
若VC10 64位:E:\C_lib\opencv\build\x64\vc10\lib



5、 注销电脑,设置库文件。重新打开VS2008新建一个c++项目(每新建一个项目都要进行以下设置才能编译Opencv里的函数),VS2010用回上一步所建的项目。
6、 VS2008:在“解决方案资源管理器”窗口中,右单击项目名,选择“属性”à配置属性à链接器à输入,接着在“配置”下拉框中,选择“(活动)Debug”,在“附加依赖项”那栏点击右边的“编辑”按钮,复制下面的库文件名到上方空白处:



opencv_calib3d243d.lib
opencv_contrib243d.lib
opencv_core243d.lib
opencv_features2d243d.lib
opencv_flann243d.lib
opencv_gpu243d.lib
opencv_highgui243d.lib
opencv_imgproc243d.lib
opencv_legacy243d.lib
opencv_ml243d.lib
opencv_nonfree243d.lib
opencv_objdetect243d.lib
opencv_photo243d.lib
opencv_stitching243d.lib
opencv_ts243d.lib
opencv_video243d.lib
opencv_videostab243d.lib

如果是release配置(以后再说,只需要添加上面的debug配置就行了现在),然后,在“配置”下拉框中选择“Release”,照上面的操作,复制下面的库文件名到上方的空白处:
opencv_calib3d243.dll
opencv_contrib243.dll
opencv_core243.dll
opencv_features2d243.dll
opencv_ffmpeg243.dll
opencv_flann243.dll
opencv_gpu243.dll
opencv_highgui243.dll
opencv_imgproc243.dll
opencv_legacy243.dll
opencv_ml243.dll
opencv_nonfree243.dll
opencv_objdetect243.dll
opencv_photo243.dll
opencv_stitching243.dll
opencv_ts243.dll
opencv_video243.dll
opencv_videostab243.dll
(可根据实际需要删减)



到此Opencv2.3.1配置完成,下面编译运行程序。

注:编译时若有如下错误的解决方案
昨天编译文件时出现了BuildingMFC application with /MD[d] (CRT dll version)requires MFC shared dllversion~~~~的错误。
在网上很容易找到了解决的方案,公布如下:
对着你的项目点击右键,依次选择:属性à配置属性à常规,然后右边有个“项目默认值”,下面有个MFC的使用,选择“在共享 DLL 中使用 MFC”,就OK了~~~



文件->新建->项目->Visual C++->Win32 控制台应用程序输入名称test1



以下程序来自Opencv中文官方网:http://www.opencv.org.cn/index.php/%E9%A6%96%E9%A1%B5
稍改动,不编译此句#include "stdafx.h",经笔者测试,不编译此句不会影响结果,编译则出错。笔者还无法解决此问题,请多指教。编译运行下面的程序需要将lena.jpg文件放在项目目录下(即test1目录下),即与项目文件同一个文件夹。去除原test1.cpp中的自动生成的代码,将以下代码复制到test1.cpp中。编译未运行即可。



/***********************************************************************
* OpenCV 2.3.1测试例程
***********************************************************************/
#include "stdafx.h"
#include
<opencv2/opencv.hpp>
using namespace std;
using namespace cv;
int main(int argc,char*argv[])
{
constchar* imagename ="lena.jpg";
//从文件中读入图像
Mat img = imread(imagename);
//如果读入图像失败
if(img.empty())
{
fprintf(stderr, "Can not load image %s\n", imagename);
return-1;
}
//显示图像
imshow("image",img);
//此函数等待按键,按键盘任意键就返回
waitKey();
return0;
}

运行出现以上结果,说明你的配置完成!在配置过程中要谨慎,稍有差错就无法完成配置,如果配置出错,请认真看准以上的每个操作,再来一遍!对于以上所有配置应理择而不能盲从,只有理解每步操作的用意,才能更好地解决随时出现的问题,使用Opencv这开放平台。望此对广大爱好者与项目科研人员有所帮助!
7、 附录
以上的配置步骤是参与Opencv官方中文网,想学习更多关于Opencv的编程技术,建议登录Opencv官方中文网http://www.opencv.org.cn
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: