在vs2010下配置opencv是件痛苦的事情,一点点错误可能就会导致莫名其妙的报错,各种error让人郁闷不已,这里提供给大家一篇vs2010下配置opencv2.4.4的方法,我是64位的win7系统,亲测成功,当然也遇到了一堆的问题,不过在查完各种资料之后都完美解决了,现在奉献给大家。本文的最后附给大家在配置的时候遇到的一些常见问题的解决方法,不保证可以完全解决您遇到的问题,不过大部分都附在下面了。好了,言归正传,我们开始配置吧。
一.下载OPENCV2.4.4最新版
这个不用多说,网上一搜一大堆,我们这里要配置的是opencv2.4.4,请认准下载。为了方便,下面这个网址就可以,
http://sourceforge.net/projects/opencvlibrary/files/opencv-win/2.4.4/OpenCV-2.4.4.exe/download
然后解压缩,放到你选择的一个目录下
二.VS2010下载
可以去 微软官网下载,然后安装 就不多说了
三.win8环境下,配置环境变量
1 ,添加环境变量
右击计算机,->属性->高级系统设置->环境变量
添加path路径:
在系统变量中,点击path,选择编辑,添加path路径如下(其中32位的如下配置,64位的将路径里面的x86改成x64即可。)
新建OPENCV
四,,opencv 在VS2010中的配置步骤
新建一个新win32控制台项目--这就不多说了
include 配置
打开工程:-视图->属性页->VC++目录->包含目录中添加include
lib配置
库目录 “属性”->“配置属性”->“VC++目录”->“库目录” (同上,32位的系统如下配置,64位的系统,改成.........\x64\vc10\bin。)
五,添加附加依赖项
视图->属性页->链接器->输入->附加依赖项
release 添加附加依赖项
opencv_calib3d244d.lib
opencv_contrib244d.lib
opencv_core244d.lib
opencv_features2d244d.lib
opencv_flann244d.lib
opencv_gpu244d.lib
opencv_highgui244d.lib
opencv_imgproc244d.lib
opencv_legacy244d.lib
opencv_ml244d.lib
opencv_objdetect244d.lib
opencv_ts244d.lib
opencv_video244d.lib
六,测试配置结果展示
测试代码:
//#include "stdafx.h"
#include <opencv2/opencv.hpp>
#include<tchar.h>
using namespace std;
using namespace cv;
int _tmain(int argc, _TCHAR* argv[])
{
const char* imagename = "C://Users//oracle//Documents//visual studio 2010//Projects//Test_openvb//test_opencv//lena.jpg";
//从文件中读入图像
Mat img = imread(imagename);
//如果读入图像失败
if(img.empty())
{
fprintf(stderr, "Can not load image %s\n", imagename);
getchar();
return -1;
}
//显示图像
imshow("image", img);
//此函数等待按键,按键盘任意键就返回
waitKey();
return 0;
}
七,遇到的问题
1)如果开始调试的时候出现无法解析或者找不到"stdafx.h" ,那么不用管,将#include "stdafx.h" 注释掉即可。
2)如果你是64位的系统,那么可能会遇到报错显示x64平台系统与目标平台不匹配之类的,那么不用担心,右击你的项目,选择属性,在属性页的右上角有一个配置管理器,将解决方案平台改成x64即可。
3)如果显示无法解析_TCHAR,那么在预处理那边加入#include<tchar.h>即可。
4)如果出现这样的问题:
d:\opencv2.4.4\include\opencv2\opencv.hpp(46): fatal error C1083: 无法打开包括文件:“opencv2/core/core_c.h”: No such file or directory
这个主要是包含目录下的include配置出错了,改成
D:\opencv2.4.4\build\include\opencv2
D:\opencv2.4.4\build\include\opencv
D:\opencv2.4.4\build\include
就可以了,呵呵
5)图片文件目录问题
可以使用绝对路径,如上面代码中 的那样,记住和win下面的路径写法不一样,比如要写成这样的形式D://input//lena.jpg。
还以可以使用相对路径,但是你的图片必须要放在当前工作目录下,这个就不多说了。
好了,按照上面所说的做,无论是64位还是32位的系统,在vs2010下跑opencv2.4.4就妥妥了的,欢迎大家继续研究哈。