1、下载软件。Opencv2.3.1可从此处下载到:http://www.opencv.org.cn/index.php/Download
(备注:我配置的是OpenCV2.4.4,下载地址:http://pan.baidu.com/s/1o6mJShG)
VS Express是微软提供的免费版,可从此处下载: http://www.microsoft.com/visualstudio/en-us/products/2010-editions/express
2、安装软件。先安装VS2008或VS2010,接着把刚下载的Opencv2.3.1文件解压,建议把解压文件放在C盘,如C:\opencv2.3.1,可以放在任意位置,但在下面的配置中相应把路径改下。
3、设置用户变量。计算机>属性>高级系统设置>环境变量>新建,新建一个用户变量,如变量名:Path,变量值:C:\opencv2.3.1\build\x86\vc9\bin
变量值有如下选择:
32位VS2008:C:\opencv2.3.1\build\x86\vc9\bin
64位VS2008:C:\opencv2.3.1\build\x64\vc9\bin
32位VS2010:C:\opencv2.3.1\build\x86\vc10\bin
64位VS2010:C:\opencv2.3.1\build\x64\vc10\bin
4、设置编译路径。
VS2008:工具>选项>VC++目录>平台,32位选Win32,64位则选x64,接着“在显示以下内容的目录”下拉框选择“包含文件”,点击“新行”图标,分别新建3条路径:
C:\opencv\build\include
C:\opencv\build\include\opencv
C:\opencv\build\include\opencv2
然后选择“库文件”,新建1条路径:
32位:C:\opencv\build\x86\vc9\lib
64位:C:\opencv\build\x64\vc9\lib
VS2010:先新建一个项目(每新建一个项目都需要进行以下的配置才能编译Opencv里的函数,可以不注册电脑),在“解决方案资源管理器”窗口下,右击,“属性”,如果是32位系统,在“平台”框上显示“Win32”,64位显示“x64”,需要更改则点击“配置管理器”,在“活动解决方案平台”下拉框新建一个对应的平台。
接着,配置属性>VC++目录,在右边“包含目录”那栏,点击编辑按钮,再分别新建以下3条路径:
C:\opencv\build\include
C:\opencv\build\include\opencv
C:\opencv\build\include\opencv2
然后选择“库目录”那栏,新建1条路径:
32位:C:\opencv\build\x86\vc10\lib
64位:C:\opencv\build\x64\vc10\lib
5、 注销电脑,设置库文件。重新打开VS2008新建一个c++项目(每新建一个项目都要进行以下设置才能编译Opencv里的函数),VS2010用回上一步所建的项目。
VS2008:在“解决方案资源管理器”窗口中,右单击项目名,选择“属性”>配置属性>链接器>输入,接着在“配置”下拉框中,选择“Debug”,在“附加依赖项”那栏点击右边的“编辑”按钮,复制下面的库文件名到上方空白处:
opencv_calib3d231d.lib
opencv_contrib231d.lib
opencv_core231d.lib
opencv_features2d231d.lib
opencv_flann231d.lib
opencv_gpu231d.lib
opencv_highgui231d.lib
opencv_imgproc231d.lib
opencv_legacy231d.lib
opencv_ml231d.lib
opencv_objdetect231d.lib
opencv_ts231d.lib
opencv_video231d.lib
(可根据实际需要删减)
然后,在“配置”下拉框中选择“Release”,照上面的操作,复制下面的库文件名到上方的空白处:
opencv_calib3d231.lib
opencv_contrib231.lib
opencv_core231.lib
opencv_features2d231.lib
opencv_flann231.lib
opencv_gpu231.lib
opencv_highgui231.lib
opencv_imgproc231.lib
opencv_legacy231.lib
opencv_ml231.lib
opencv_objdetect231.lib
opencv_ts231.lib
opencv_video231.lib
(可根据实际需要删减)
到此Opencv2.3.1配置完成,下面编译运行程序。
VS2010:此步骤跟VS2008一样,内容见上面,下面是图解。
6、编译opencv2.3.1程序,检验是否配置成功。在编译前,先检查一下编译平台是否正确,如果是32位系统显示“Win32”,64位系统显示“x64”。如果显示不对,在下拉框选对,如果下拉没得选择,说明在第4步的“平台”选择不对,请重新从第4步再配置一遍。
以下程序来自Opencv中文官方网:http://www.opencv.org.cn/index.php/%E9%A6%96%E9%A1%B5
稍改动,不编译此句#include "stdafx.h",经笔者测试,不编译此句不会影响结果,编译则出错。笔者还无法解决此问题,请多指教。编译运行下面的程序需要将lena.jpg文件放在项目目录下,即与项目文件同一个文件夹。
/***********************************************************************
* OpenCV 2.3.1 测试例程
* 于仕琪提供
***********************************************************************/
//#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;
}
行出现以上结果,说明你的配置完成!在配置过程中要谨慎,稍有差错就无法完成配置,如果配置出错,请认真看准以上的每个操作,再来一遍!对于以上所有配置应理择而不能盲从,只有理解每步操作的用意,才能更好地解决随时出现的问题,使用Opencv这开放平台。望此对广大爱好者与项目科研人员有所帮助!
7、附录
以上的配置步骤是参与Opencv官方中文网,想学习更多关于Opencv的编程技术,建议登录Opencv官方中文网http://www.opencv.org.cn