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

Visual Studio 2010下配置opencv2.3.1

2012-08-25 18:03 465 查看


下载OpenCV

从本站下载栏目 http://www.opencv.org.cn/index.php/Download 下载
OpenCV for Windows(也即 OpenCV-2.3.1-win-superpack.exe 文件)
将 OpenCV-2.3.1-win-superpack.exe 解压并放到某个目录下,例如
D:\Program
Files\opencv
(无需运行setup.exe,解压则可)


设置环境变量

刚才设置的是动态库,因此还需要将OpenCV的dll文件所在的目录加入Path环境变量:(注意:两目录之间用分号号隔开)

32位系统 & VC2010,dll目录为:
D:\Program Files\opencv\build\x86\vc10\bin

64位系统 & VC2010,dll目录为:
D:\Program Files\opencv\build\x64\vc10\bin


由于有些函数需要TBB,所以需要将tbb所在的目录也加入到环境变量Path中。TBB相关的DLL路径为:

32位系统 & VC2010:
D:\Program Files\opencv\build\common\tbb\ia32\vc10

64位系统 & VC2010:
D:\Program Files\opencv\build\common\tbb\intel64\vc10


如下图所示将OpenCV和TBB的dll文件所在的目录系统环境变量Path中。加入后可能需要注销当前Windows用户(或重启)后重新登陆才生效。









配置VC

配置include路径

也即告诉VC去什么地方寻找OpenCV的头文件,用vc2010打开任意一个项目,切换到vc2010左下角的标签,选择属性管理。(如下图)

双击任意“Microsoft.Cpp.Win32.user”,在弹出的属性页中设置VC++目录。该设置方法对所有VC++项目都有效。

在包含目录中加入:

D:\Program Files\opencv\build\include;D:\Program Files\opencv\build\include\opencv;D:\Program
Files\opencv\build\include\opencv2


在库目录中加入:

D:\Program Files\opencv\build\x86\vc10\lib





在“链接器-输入” ,附加依赖项,添加lib库文件:

opencv_calib3d231d.lib; opencv_contrib231d.lib; opencv_core231d.lib; opencv_features2d231d.lib; opencv_flann231d.lib; opencv_gpu231d.lib; opencv_highgui231d.lib; opencv_imgproc231d.lib;
opencv_legacy231d.lib; opencv_ml231d.lib; opencv_objdetect231d.lib; opencv_ts231d.lib; opencv_video231d.lib

opencv_calib3d231.lib; opencv_contrib231.lib; opencv_core231.lib; opencv_features2d231.lib; opencv_flann231.lib; opencv_gpu231.lib;
opencv_highgui231.lib; opencv_imgproc231.lib; opencv_legacy231.lib; opencv_ml231.lib; opencv_objdetect231.lib; opencv_ts231.lib; opencv_video231.lib

(可根据实际需要删减)注意,请打开了新编辑窗口(即点击了“...”按钮)“附加依赖项”,并一条一条分别加入,一条一行(一个回车),(注意行末不要加";")否则会出现类似以下错误:1>LINK : fatal error LNK1104: 无法打开文件“…….lib”
如果下载的OpenCV不是2.3.1版本,请将"XXX231d.lib"中的"231"更改为对应的版本号,例如:下载OpenCV 2.4.0,则统一改为"XXX240d.lib",否则会出现类似以下错误:1>LINK : fatal error LNK1104: 无法打开文件“XXX.lib”





OpenCV例程
然后运行下面示例,注意,把图像路径改为自己的图片路径
#include
"stdafx.h"
#include
"highgui.h"
//using namespace cv;
int _tmain(int argc, _TCHAR* argv[])
{ const
char*imagename = "D:/OpenCVPrj/SrcPic/beauty.jpg";
cv::Matimg = cv::imread(imagename);
if(img.empty())
{ fprintf(stderr, "Can not load image %s\n", imagename);
return -1;
}
if( !img.data )
//检测数据有效
return-1;
cv::namedWindow("image", CV_WINDOW_AUTOSIZE);//创建窗口
cv::imshow("image", img);
//显示图像
cv::waitKey();
return 0;
}

如果程序编译无错误,调试运行能够启动,那恭喜您基于VS2010和Opencv2.3.1的图像处理开发环境构建成功!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: