1、下载软件。Opencv2.3.1可从此处下载到:http://www.opencv.org.cn/index.php/Download
VSExpress是微软提供的免费版,可从此处下载: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.1uildx86vc9in
变量值有如下选择:
32位VS2008:C:opencv2.3.1uildx86vc9in
64位VS2008:C:opencv2.3.1uildx64vc9in
32位VS2010:C:opencv2.3.1uildx86vc10in
64位VS2010:C:opencv2.3.1uildx64vc10in
4、设置编译路径。
VS2008:工具>选项>VC++目录>平台,32位选Win32,64位则选x64,接着“在显示以下内容的目录”下拉框选择“包含文件”,点击“新行”图标,分别新建3条路径:
C:opencvuildinclude
C:opencvuildincludeopencv
C:opencvuildincludeopencv2
然后选择“库文件”,新建1条路径:
32位:C:opencvuildx86vc9lib
64位:C:opencvuildx64vc9lib
VS2010:先新建一个项目(每新建一个项目都需要进行以下的配置才能编译Opencv里的函数,可以不注册电脑),在“解决方案资源管理器”窗口下,右击,“属性”,如果是32位系统,在“平台”框上显示“Win32”,64位显示“x64”,需要更改则点击“配置管理器”,在“活动解决方案平台”下拉框新建一个对应的平台。
接着,配置属性>VC++目录,在右边“包含目录”那栏,点击编辑按钮,再分别新建以下3条路径:
C:opencvuildinclude
C:opencvuildincludeopencv
C:opencvuildincludeopencv2
然后选择“库目录”那栏,新建1条路径:
32位:C:opencvuildx86vc10lib
64位:C:opencvuildx64vc10lib
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[])
{
constchar* imagename = "lena.jpg";
//从文件中读入图像
Mat img = imread(imagename);
//如果读入图像失败
if(img.empty())
{
fprintf(stderr, "Can not load image %s ", imagename);
return-1;
}
//显示图像
imshow("image",img);
//此函数等待按键,按键盘任意键就返回
waitKey();
return0;
}
代码测试成功则配置完毕,其他版本仅需将链接库的***231.dll更换为相应的版本,文件路径更换为相应的路径即可