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

opencv2.3.1+vs2010

2013-06-30 16:36 204 查看

安装opencv 2.3.1 更新整理,在这里我整理出来,以便将来整理添加到“opencv例子详解”中。opencv2.3.1下载:http://sourceforge.net/projects/opencvlibrary/files/opencv-win/2.3.1/选择相应的opencv版本,我选择的是OpenCV-2.3.1-win-superpack.execmake2.8.6下载http://cmake.org/cmake/resources/software.html选择相应的cmake版本。我选择的是Windows (Win32 Installer)第一步:解压安装opencv第二步,解压安装cmake第三步,编译cmake,配置,生成用vs2010可执行的文件(1)找到"开始->所有程序->CMake->CMake(cmake-gui)"打开cmake-gui。在第一个路径处选择opencv的安装路径。第二个路径是make得到的工程保存位置,可以随便设置,不过不能包含中文。(2)点击Configure并选择合适的编译器。如果你使用的是VC2008,就选择visual studio 9 2008;如果是VC2005,就选择visualstudio 8 2005,这里我选择的是 visual studio10, 2010;(3)选择完编译器之后,再次点击Configure(4)再次点击Configure可以得到下图,此时Genertae按钮可用(5)点击Generate就可以生成VS2010的工程文件。它保存在上面你设置的工程生成目录下面。第四步:在F:\OpenCV\vs2010目录下生成解决方案OpenCV.sln,点击它,VS 2010就可以打开OpenCV.sln,然后执行如下操作:在Debug下,选择Solution Explorer里的 Solution OpenCV,点右键,运行"RebuildSolution";如编译无错误,再选择INSTALL项目,运行"Build"。在Release下,选择Solution Explorer里的 Solution OpenCV,点右键,运行"RebuildSolution";如编译无错误,再选择INSTALL项目,运行"Build"。此时,我们可以获得如下结果:OpenCV的*d.dll文件(fordebug)和*.dll文件(for release)将出现在F:\opencv\vs2010\install\bin目录;OpenCV的*d.lib文件(for debug)和*.lib文件(for release)将出现在F:\opencv\vs2010\install\lib目录;头文件*.h出现在F:\opencv\vs2010\install\include目录;至此,可以被VS++ 2010调用的OpenCV动态库生成完毕!将F:\opencv\vs2010\install\bin加入Windows系统环境变量Path中。加入后请重新启动电脑,配置才能生效。
opencv_core231d.lib;opencv_highgui231d.lib;opencv_video231d.lib;opencv_ml231d.lib;opencv_legacy231d.lib;opencv_imgproc231d.lib
把Debug换成Release(如果问你是否保存,则保存修改),再添加:(不要忘记分号哦!)
opencv_core231.lib;opencv_highgui231.lib;opencv_video231.lib;opencv_ml231.lib;opencv_legacy231.lib;opencv_imgproc231.lib

231表示OpenCV的版本为2.3.1,其他版本的只要改下数字即可,VS2005,VS2008配置OpenCV也大同小异,例如2008要把VC10改成VC9等等。
第五步,配置VS 2010




这里和2008有点区别
第六步:测试代码:
#include <stdio.h>
#include "opencv\cv.h"
#include "opencv\highgui.h"
//#include "opencv2\opencv.hpp"
int main(int argc, char* argv[])
{
IplImage* img = cvLoadImage("lena.jpg", CV_LOAD_IMAGE_UNCHANGED);
if (!img)
{
return -1;
}
cvNamedWindow("display", CV_WINDOW_AUTOSIZE);
cvShowImage("display", img );
 return 0;
}
 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: