注册 登录
LUPA开源社区 返回首页

yichi的个人空间 http://www.lupaworld.com/?438368 [收藏] [复制] [分享] [RSS]

我的博客

win7下vs2012配置OpenCV

已有 1460 次阅读2013-4-18 21:49 |个人分类:software|系统分类:IT技术|

     最近由于毕设需要,在win7下配置vs2012的openCV的开发,完全遵照帖子http://www.sigvc.org/bbs/thread-529-1-1.html的搭建方式,但是最终程序不能运行通过,检查发现帖子有误,网上也没有完全正确的帖子,因此记录如下,希望后人少走弯路:

1、准备工作:
操作系统:Windows 7
平台:Visual Studio 2012 Ultimate
OpenCV:2.4.3(点此下载http://opencv.org/

2、运行OpenCV-2.4.3.exe解压(可以直接双击,运行就是解压,只需选择对应路径)到放置OpenCV的位置,例如E:\Program Files\OpenCV243可以看到,解压后在这个文件夹里面会生成一个文件夹“opencv”,里面就是OpenCV用到的全部文件了,比如“build”、“include”等文件夹。

3、添加环境变量在环境变量中选择系统变量,将两个路径
E:\ProgramFiles\OpenCV243\opencv\build\x86\vc10\bin
E:\ProgramFiles\OpenCV243\opencv\build\x86\vc10\lib
添加进去,并注销或重启Windows(否则环境变量的更改可能无法生效)。

4、启动VS2012(如果正在运行,请重新启动)并配置
(1)新建一个win32控制台项目,例如new
(2)右侧边栏中底部选择属性管理器(在视图中可以打开:视图/其他窗口/资源管理器),并将项目new逐级展开,在Debug|Win32中会出现一个Microsoft.Cpp.Win32.user项,右击该项,选择属性,打开Microsoft.Cpp.Win32.user属性页
(3)选择VC++目录,进行如下添加:
包含目录:
E:\Program Files\OpenCV243\opencv\build\include(愿帖子指向另一个include路径,使用后程序会编译通不过)
E:\ProgramFiles\OpenCV243\opencv\build\include\opencv
E:\ProgramFiles\OpenCV243\opencv\build\include\opencv2
库目录:
E:\ProgramFiles\OpenCV243\opencv\build\x86\vc10\lib

(4)选择链接器->输入在依赖附加项中添加下列各项:opencv_calib3d243d.lib;opencv_contrib243d.lib;opencv_core243d.lib;opencv_features2d243d.lib;opencv_flann243d.lib;opencv_gpu243d.lib;opencv_haartraining_engined.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

5、现在为止已经配置完成了,但是还会有一点点小问题。在新建的项目new中加入代码:

#include "stdafx.h"
#include <opencv2\opencv.hpp>
using namespace cv;
using namespace std;
int main()
{
Mat img = imread("c:/pp.jpg");
if(img.empty())
{
cout<<"error";
return -1;
}
imshow("pp的图片",img);
waitKey();

return 0;
}

编译通过,但是运行的时候会提示缺少一些dll文件,如果是缺少opencv_core243d.dll和opencv_highgui243d.dll,那么从
E:\ProgramFiles\OpenCV243\opencv\build\x86\vc10\bin
中复制到C:\Windows\System32  中即可;
如果是缺少msvcr100d.dll,可以到
上下载,然后同样放到C:\Windows\System32  中。

如果缺少msvcp100d.dll,应该到网站http://download.pchome.net/dll/m/down-184545-2.html下载,然后放在C:\Windows\System32中(原帖作者似乎没遇到这个问题,给出的办法不可行,我遇到了这个问题,baidu后找到的解答方式)

现在,再次运行你的程序,是不是成功了呢?

6、如果需要在Release模式下工作,只需要在4(1)中选择Release|Win32,打开Microsoft.Cpp.Win32.user属性页,用相同的方式加入路径和依赖附加项,但是此时依赖附加项的名称中的243d的d要去掉,因为它代表debug。
(暂时没有尝试,估计靠谱)
最后给出一张程序运行截图:Good Luck!

评论 (0 个评论)

facelist

您需要登录后才可以评论 登录 | 注册
验证问答 换一个 验证码 换一个

关于LUPA|人才芯片工程|人才招聘|LUPA认证|LUPA教育|LUPA开源社区 ( 浙B2-20090187 浙公网安备 33010602006705号   

返回顶部