VS2010中手动配置opencv2.4.10

来源:互联网 发布:废品收购源码整站程序 编辑:程序博客网 时间:2024/05/29 13:04

平台:win7,64位

双击opencv安装包,解压到目录D:\OPENCV2.4.10\

以下内容都是build文件夹里的内容

Step1. 设置环境变量:

(将OpenCV的dll文件所在的目录加入Path环境变量)

我的电脑--->右键--->属性--->高级--->环境变量--->在用户变量里,
(1) 在path中添加D:\OPENCV2.4.10\opencv\build\x64\vc10\bin,就是添加dll文件

    注意:64 位系统这里也选x86,否则后面还要在项目中把win32平台改为X64平台,后面各种麻烦

(2) 新建名为OPENCV的环境变量:D:\OPENCV2.4.10\opencv\build

加入后可能需要注销当前Windows用户(或重启)后重新登陆才生效。

Step2. 配置include路径

(告诉VS去什么地方找OpenCV的头文件)

打开一个OpenCV的工程,工程名称上右击-->属性
在配置属性-->VC++目录-->包含目录文件中添加

D:\OPENCV2.4.10\opencv\build\include
D:\OPENCV2.4.10\opencv\build\include\opencv
D:\OPENCV2.4.10\opencv\build\include\opencv2

(这三个include要分条记录,顺序最好是opencv2   opencv  include,没有分号)

Step3. 配置lib路径

(告诉VS去什么地方找OpenCV的库文件)

在配置属性--->VC++目录--->库目录中添加  【Debug和Release都要添加】

D:\OPENCV2.4.10\opencv\build\x64\vc10\lib

Step4. 添加lib库文件

在项目属性页,左上角的配置选debug,

在链接器--->输入--->附加依赖库里加上

opencv_core2410d.lib
opencv_highgui2410d.lib
opencv_video2410d.lib
opencv_ml2410d.lib
opencv_legacy2410d.lib
opencv_imgproc2410d.lib

【注意】1.不同版本注意修改版本号,如2.4.10为2410
              2.Release和Debug加入的内容不同,Release的后面没有d

类似地,在项目属性页左上角的配置选Release
在链接器--->输入--->附加依赖库里加上

opencv_core243.lib
opencv_highgui243.lib
opencv_video243.lib
opencv_ml243.lib
opencv_legacy243.lib
opencv_imgproc243.lib

----------------------------------------------------------------------------------------------------

测试:最简单的程序(读入图片,显示图片)

#include "stdafx.h"
#include <opencv2/opencv.hpp>
using namespace std;
using namespace cv;
int main(int argc, char* argv[])
{
const char* 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();
return 0;
}


------------------------------------------------------------------------------------------------------

测试问题1:

当按下F5调试后,若是64位的操作系统,有可能会出现如下错误:
错误1error LNK1112: 模块计算机类型“x64”与目标计算机类型“X86”冲突
解决:
这是因为vs2010的编译平台是x86所致。解决方法:
点击F5旁边的“Debug”,在下拉链表里边选择“配置管理器”。进入配置管理器后,把Win32改成X64,然后点菜单栏:生成->清理解决方案->重新生成解决方案。OVER。

测试问题2:

fatal error LNK1123: 转换到 COFF 期间失败: 文件无效或损坏
解决:
上网搜索发现是嵌入清单的问题,于是对该工程以及所有依赖工程进行如下操作
右键->工程属性->配置属性-> 清单工具->输入和输出->嵌入清单,选择[否]
0 0