Opencv2.4.8在 VS2010平台上安装配置图解
1、 下载软件。Opencv2.4.8可从此处下载到:http://www.opencv.org.cn
先安装VS2010,接着把刚下载的Opencv2.4.8文件解压,建议把解压文件放在C盘,如C:\opencv,可以放在任意位置,但在下面的配置中相应把路径改下。本次我是放在E:\C_lib\opencv。
2、 设置用户变量。计算机>属性>高级系统设置>环境变量>新建,新建一个用户变量,如变量名:Path,变量值:D:\Program Files\opencv\build\x86\vc9\bin
变量值有如下选择:
若Win7等64位系统 VS2010:D:\Program Files\opencv\build\x64\vc10\bin
3、 设置编译路径。
若VS2010:先新建一个项目(每新建一个项目都需要进行以下的配置才能编译Opencv里的函数,可以不注册电脑),在“解决方案资源管理器”窗口下,右击,“属性”,如果是32位系统,在“平台”框上显示“Win32”,64位显示“x64”,需要更改则点击“配置管理器”,在“活动解决方案平台”下拉框新建一个对应的平台。接着,配置属性>VC++目录,在右边“包含目录”那栏,点击编辑按钮,再分别新建以下3条路径:
D:\Program Files\opencv\build\include
D:\Program Files\opencv\build\include\opencv
D:\Program Files\opencv\build\include\opencv2
然后选择“库文件”,新建1条路径:
若64位:D:\Program Files\opencv\build\x64\vc10\lib
4、 然后在项目右键à配置属性àC/C++à选择“附加包含目录”那栏:
D:\Program Files\opencv\build\x64\vc10
D:\Program Files\opencv\build\include
D:\Program Files\opencv\build\include\opencv
D:\Program Files\opencv\build\include\opencv2
然后在项目右键à配置属性à链接器à选择“附加库目录”那栏:
若VC10 64位:D:\Program Files\opencv\build\x64\vc10\lib
5、 注销电脑,设置库文件。重新打开VS2008新建一个c++项目(每新建一个项目都要进行以下设置才能编译Opencv里的函数),VS2010用回上一步所建的项目。
6、 VS2008:在“解决方案资源管理器”窗口中,右单击项目名,选择“属性”à配置属性à链接器à输入,接着在“配置”下拉框中,选择“(活动)Debug”,在“附加依赖项”那栏点击右边的“编辑”按钮,复制下面的库文件名到上方空白处:
opencv_calib3d248d.lib
opencv_contrib248d.lib
opencv_core248d.lib
opencv_features2d248d.lib
opencv_flann248d.lib
opencv_gpu248d.lib
opencv_highgui248d.lib
opencv_imgproc248d.lib
opencv_legacy248d.lib
opencv_ml248d.lib
opencv_nonfree248d.lib
opencv_objdetect248d.lib
opencv_photo248d.lib
opencv_stitching248d.lib
opencv_ts248d.lib
opencv_video248d.lib
opencv_videostab248d.lib
如果是release配置(以后再说,只需要添加上面的debug配置就行了现在),然后,在“配置”下拉框中选择“Release”,照上面的操作,复制下面的库文件名到上方的空白处:
opencv_calib3d248.dll
opencv_contrib248.dll
opencv_core248.dll
opencv_features2d248.dll
opencv_ffmpeg248.dll
opencv_flann248.dll
opencv_gpu248.dll
opencv_highgui248.dll
opencv_imgproc248.dll
opencv_legacy248.dll
opencv_ml248.dll
opencv_nonfree248.dll
opencv_objdetect248.dll
opencv_photo248.dll
opencv_stitching248.dll
opencv_ts248.dll
opencv_video248.dll
opencv_videostab248.dll
(可根据实际需要删减)
配置重新选回“debug”配置
到此Opencv2.3.8配置完成,下面编译运行程序。
以下程序来自Opencv中文官方网:http://www.opencv.org.cn/index.php/%E9%A6%96%E9%A1%B5
稍改动,不编译此句#include "stdafx.h",经笔者测试,不编译此句不会影响结果,编译则出错。笔者还无法解决此问题,请多指教。编译运行下面的程序需要将lena.jpg文件放在项目目录下(即test1目录下),即与项目文件同一个文件夹。去除原test1.cpp中的自动生成的代码,将以下代码复制到test1.cpp中。编译未运行即可。
/***********************************************************************
* OpenCV 2.3.1测试例程
* 于仕琪提供
***********************************************************************/
#include "stdafx.h"
#include
using namespace std;
using namespace cv;
int main(int argc, char*argv[])
{
constchar* 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();
return0;
}
运行出现以上结果,说明你的配置完成!在配置过程中要谨慎,稍有差错就无法完成配置,如果配置出错,请认真看准以上的每个操作,再来一遍!对于以上所有配置应理择而不能盲从,只有理解每步操作的用意,才能更好地解决随时出现的问题,使用Opencv这开放平台。望此对广大爱好者与项目科研人员有所帮助!
7、 附录
以上的配置步骤是参与Opencv官方中文网,想学习更多关于Opencv的编程技术,建议登录Opencv官方中文网http://www.opencv.org.cn
8.错误改正
1.注:编译时若有如下错误的解决方案
昨天编译文件时出现了Building MFC application with /MD[d] (CRT dll version)requires MFCshared dll version~~~~的错误。
在网上很容易找到了解决的方案,公布如下:
对着你的项目点击右键,依次选择:属性à配置属性à常规,然后右边有个“项目默认值”,下面有个MFC的使用,选择“在共享 DLL 中使用 MFC”,就OK了~~~
文件->新建->项目->Visual C++->Win32 控制台应用程序输入名称test1
2.errorLNK1123:转换到COFF期间失败:文件无效或损坏
Solution:将项目|项目属性|配置属性|清单工具|输入和输出|嵌入清单“是”改为“否”即可,但每新建一个项目都要这样设置一次
这个问题我遇到过,我之前装过2013不好用,改回到2010就这样了。
决绝方法:
在计算机内搜索“cvtres.exe”删掉其中的一个,就OK了