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

VS2010中OpenCV的配置步骤(手动方法)

2014-12-02 10:38 302 查看
VS2010 + OpenCV2.4.3的配置步骤(手动方法)

关于如何自动配置,参见本博客另外一篇博文:利用vs2010的属性表自动配置OpenCV

平台:64位win7

双击opencv安装包,解压到目录D:\OpenCV243\

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

Step1. 设置环境变量:

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

我的电脑--->右键--->属性--->高级--->环境变量--->在用户变量里,

(1) 在path中添加D:\OpenCV243\build\x86\vc10\bin,就是添加dll文件

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

(2) 新建名为OPENCV的环境变量:D:\OpenCV243\build

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

Step2. 配置include路径

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

打开一个OpenCV的工程,工程名称上右击-->属性

在配置属性-->VC++目录-->包含目录文件中添加

$(OPENCV)\build\include

$(OPENCV)\OpenCV243\build\include\opencv

$(OPENCV)\OpenCV243\build\include\opencv2

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

Step3. 配置lib路径

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

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

D:\OpenCV243\build\x86\vc10\lib

Step4. 添加lib库文件

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

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

opencv_core243d.lib

opencv_highgui243d.lib

opencv_video243d.lib

opencv_ml243d.lib

opencv_legacy243d.lib

opencv_imgproc243d.lib

【注意】1.不同版本注意修改版本号,如2.4.3为243

2.Release和Debug加入的内容不同,Release的后面没有d

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

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

opencv_core243.lib

opencv_highgui243.lib

opencv_video243.lib

opencv_ml243.lib

opencv_legacy243.lib

opencv_imgproc243.lib

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

测试:

在D:\OpenCV243\samples下有一些例子,比如cpp\tutotial\ImgTrans目录下的Sobel_Demo.cpp

新建一个名为test的工程,将代码copy进来,需要将lena.jpg文件放在项目目录下。

如果想双击运行exe的话,图片放在.exe同一文件夹内;

按F5直接运行程序的话,lena.jpg要放在test\test里。

由于图像要求输入文件名,注意在vs中设置命令行参数

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

测试问题1:

当按下F5调试后,若是64位的操作系统,有可能会出现如下错误:

错误1error LNK1112: 模块计算机类型“x64”与目标计算机类型“X86”冲突

解决:

这是因为vs2010的编译平台是x86所致。解决方法:

点击F5旁边的“Debug”,在下拉链表里边选择“配置管理器”。进入配置管理器后,把Win32改成X64,然后点菜单栏:生成->清理解决方案->重新生成解决方案。OVER。

测试问题2:

fatal error LNK1123: 转换到 COFF 期间失败: 文件无效或损坏

解决:

上网搜索发现是嵌入清单的问题,于是对该工程以及所有依赖工程进行如下操作

右键->工程属性->配置属性-> 清单工具->输入和输出->嵌入清单,选择[否]
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: