参考文章为:
http://www.haogongju.net/art/1414751 (文章1)
http://www.tw57.com/6/4/24954.html (文章2)
这里做的步骤实际上结合了两篇文章的优点。
http://www.opencv.org.cn/index.php/VC_2008_Express%E4%B8%8B%E5%AE%89%E8%A3%85OpenCV2.3.1 这是官方的文档,实际上其中的编译不需要做。只是作为简单的参考和解释。
一、下载OpenCV2.4
地址:http://sourceforge.net/projects/opencvlibrary/files/opencv-win/2.4.0/,下载OpenCV-2.4.0.exe;双击解压到%opencv%(凡是出现%opencv%的地方均替换为你自己opencv的路径全名,如D:\program\opencv)。
二、配置OpenCV环境变量
计算机->(右键)属性->高级系统设置->高级(标签)->环境变量->(双击)path(用户,系统里面的path任选其一)->在变量值里面添加” %opencv%\build\x86\vc10\bin”和”%opencv%\build\common\tbb\ia32\vc10”(如果你是64位系统,将ia32目录换成intel64)(里面的%opencv%记得换成自己的opencv路径。例如我的:D:\Program Files (x86)\opencv\build\x86\vc10\bin;D:\Program Files (x86)\opencv\build\common\tbb\ia32\vc10)。
三、建立一个简单的C++工程
1)、文件->新建->项目->Visual C++->Win32 控制台应用程序(输入名称test)
2)、确定->下一步->附加选项选“空项目”->完成
3)、解决方案资源管理器->源文件(右键)->添加->新建项
4)、Visual C++->C++文件:输入名称test点添加
#include<opencv2/core/core.hpp>
#include<opencv2/highgui/highgui.hpp>
int main(int argc,char**argv)
{
// read animage
cv::Mat image = cv::imread("D:/lady.jpg"); //根据自己的情况修改
// createimage window named "Lady"
cv::namedWindow("Lady");
// show theimage on window
cv::imshow("Lady",image);
// wait keyfor 5000ms
cv::waitKey(5000);
return 0;
}
暂时先不运行,还需要做配置
四、配置OpenCV工程的依赖
1)到目前为止,Visual Studio还不知道OpenCV相关的库和头文件在什么地方,我们当然可以每次新建项目时,都为其指定OpenCV的头文件、库所在的目录,但这显然是比较啰嗦的事情,为此,我们可以创建PropertySheet,以便可以让以后的项目重复使用。选择菜单View/ Other Windows / Property Manager,(实际上就是下面已经有的“属性管理器”页)出现:
2)选中上图中的Debug | Win32,点击右键,并从弹出菜单中选中AddNew Project Property Sheet,则出现:
3)如上图为新建的PropertySheet取名为:OpenCVProjectPropertiesD,该名中最后一个字母D表示是debug版本,并将其保存在解决方案的根目录E:\Workspace\CPP\OpenCV\(这个目录当然是自己另外选定的,保存在该目录的文件将可以为以后所加载)下,然后点击Add按钮,得到:
4) 从上图中右键单击OpenCVProjectPropertiesD,并从弹出菜单中选中Properties,则出现:
5)选中上图中左边的VC++Directories,然后选中右边的IncludeDirectories,点击最右边的小按钮对其进行编辑,
如上图,将D:\OpenCV2.4\build\include目录加入,然后点击OK按钮。
6)和上面类似,在图9中选择右边的LibraryDirectories,再点击最右边的小按钮对其进行编辑,
7)选择添加D:\OpenCV2.4\build\x86\vc10\lib,然后点击OK按钮,得到:
8) 添加库文件。点击上图中左边的Linker,再点击其下的Input,再选中右边的AdditionalDependencies,
点击其最右边的小按钮,对其进行编辑:
针对debug配置添加以下库:
opencv_calib3d240d.lib
opencv_contrib240d.lib
opencv_core240d.lib
opencv_features2d240d.lib
opencv_flann240d.lib
opencv_gpu240d.lib
opencv_highgui240d.lib
opencv_imgproc240d.lib
opencv_legacy240d.lib
opencv_ml240d.lib
opencv_objdetect240d.lib
opencv_ts240d.lib
opencv_video240d.lib
9)我们需要将D:\OpenCV2.4\build\x86\vc10\lib目录下所以debug版本的库文件名(.lib之前的字母是“d”)加入进来,如上图。然后点击OK按钮,在点击“确定”按钮即完成对OpenCVProjectPropertiesD这个PropertySheet的配置工作。完成后的情形如下:
10) 在图8中选中Release | Win32,用类似的方式可以创建针对release版本的PropertySheet,不妨取名为OpenCVProjectPropertiesR。其它各步骤都差不多,只是在8)中添加库文件时,记得需要添加的是release版本的库文件(.lib之前没有字母“d”)
opencv_calib3d240.lib
opencv_contrib240.lib
opencv_core240.lib
opencv_features2d240.lib
opencv_flann240.lib
opencv_gpu240.lib
opencv_highgui240.lib
opencv_imgproc240.lib
opencv_legacy240.lib
opencv_ml240.lib
opencv_objdetect240.lib
opencv_ts240.lib
opencv_video240.lib
g) 完成以上各步骤后,会在E:\Workspace\CPP\OpenCV目录下,生成两个PropertySheet文件,这两个文件以后是可以重复使用的。(以后建立工程后,只需要加入这两个文件就OK了,不用没回都重新配置文件)
(五)最后直接编译运行工程,正确配置的话一定能通过的。