忙乎了好几天终于把环境搭建成功,中间经历了好多纠结的情况,原因都是因为网上的资料都是比较老的版本搭建平台的资料,新版本出来,某些设置需要改一下,所以就耽误了不少时间!今天写个博客把这个过程记录下来,自己以后可以参考,同时也给大家学习提供参考(环境与操作系统无关,Win7和Xp配置相同)。
OpenCV库,目前最新版本2.4.5。
VS2010下载,直接安装。
Qt:网址:http://qt-project.org/downloads
下载两个文件:Qt libraries 4.8.4 for Windows (VS 2010, 234 MB)
Visual Studio Add-in 1.1.11 for Qt4 (does not work with the Express edition)
1、解压OpenCV库到D盘,OpenCV会自己建个文件夹opencv。如果想解压到自己设置的文件夹也行。
2、配置环境变量:
xp:我的电脑-》属性-》高级-》环境变量
新建变量(用户,系统任选一个),变量名:opencv,变量值:d:\opencv
双击Path,(同上),在后面添加
;D:\opencv\build\x86\vc10\bin
1、打开VS2010,文件-》新建-》项目-》Visual C++-》win32 Console Application-》
Name:MyFirstOpenCVConsoleApp
2、确定-》下一步-》附加选项,空项目-》完成
3、View -》 Project Manager
4、在Property Manager窗口中,右键Debug|Win32,选择Add New Project Property Sheet,
5、选择Property Sheet(.props),Name:OpenCVProjectD,Location:选择工程主目录,这样以后再用OpenCV,配置可以直接添加OpenCVProjectD.props。
6、选择Add,双击OpenCVProjectD,选择VC++ Directories,配置Include Directories
添加:
D:\opencv\bulid\include\opencv
D:\opencv\bulid\include\opencv2
D:\opencv\build\include
7、设置Library Directories,添加opencv library目录进去:
D:\opencv\build\x86\vc10\lib
8、点击OK,选择Linker-》Input
在里面添加lib(lib格式是opencv_xx+版本号+(d是debug库,没有的是release库)+.lib):
opencv_calib3d245d.lib opencv_contrib245d.lib opencv_core245d.lib opencv_features2d245d.lib opencv_flann245d.lib opencv_gpu245d.lib opencv_highgui245d.lib opencv_imgproc245d.lib opencv_legacy245d.lib opencv_ml245d.lib opencv_objdetect245d.lib opencv_ts245d.lib opencv_video245d.lib
9、点击OK-》确定,Debug|Win32配置成功,如果你是用Release调试,Release|Win32也要配置,和Debug|Win32配置基本相同(4,5,6,7,8五步),
但是配置Release|Win32和Debug|Win32也有几个小地方不同:
5中Name:OpenCVProjectD -》OpenCVProjectR
8中添加的库,全部没有d,即:
opencv_calib3d245.lib opencv_contrib245.lib opencv_core245.lib opencv_features2d245.lib opencv_flann245.lib opencv_gpu245.lib opencv_highgui245.lib opencv_imgproc245.lib opencv_legacy245.lib opencv_ml245.lib opencv_objdetect245.lib opencv_ts245.lib opencv_video245.lib
10、点击左下角的Solution Exploer,右键Resource Files-》Add-》New Item-》C++ Files-》Name:main.cpp-》Add
11、在main.cpp中输入:
#include <opencv2/core/core.hpp> #include <opencv2\highgui\highgui.hpp> cv::Mat function(); int main(){ cv::Mat image = cv::imread("img.jpg"); if(!image.data){ return 1; } cv::namedWindow("Input Image"); cv::imshow("Input Image",image); cv::Mat result; cv::flip(image,result,1); cv::namedWindow("Output Image"); cv::imshow("Output Image",result); cv::imwrite("output.bmp",result); cv::Mat gray = function(); cv::namedWindow("Display Image"); cv::imshow("Display Image",gray); cv::waitKey(0); return 1; } cv::Mat function(){ cv::Mat ima(240,320,CV_8U,cv::Scalar(100)); return ima; }
12、在工程中添加一张img.jpg文件。
13、大功告成,点击运行,或者F5,等系统加载库文件完成,程序运行出两张图片,就说明OpenCV配置成功了。
1、安装Qt4.8.4,具体目录自己订,但是目录不能有空格,我选的是直接在d:\Qt文件,然后一路next就行,
2、主要问题是Qt4.8.4的编译,Qt4.8.4的库要经过VS2010重新编译,编译之前要修改几个错误:
1)删除源码包中bin目录下的syncqt和syncqt.bat文件。
2)修改\mkspecs\win32-msvc2010下的qmake.conf文件,将其中QMAKE_CFLAGS=-nologo -Zm200 -Zc:wchar_t-,最后的-去掉。
3)修改D:\Qt\4.8.4\src\3rdparty\webkit\Source\WebCore\platform下的DefaultLocalizationStrategy.cpp,定位到327行,改为
return WEB_UI_STRING("Look Up <selection>", "Look Up context menu item with selected word").replace("<selection>", truncatedStringForLookupMenuItem(selectedString));3、编译
1)开始-》程序-》Microsoft Visual Studio 2010-》Visual Studio Tools-》Visual Studio命令提示(2010)。
2)在命令中输入如下命令:
3)输入o(选择Open Source模式),输入Y(同意license),回车,运行。
4)系统配置完成后,会有提示,输入nmake,然后回车,接着就是漫长的等待了。
4、安装Qt插件,一路Next到结束。
1、新建Qt工程:打开VS2010-》文件-》New-》工程-》Qt4 Projects-》Qt Application-》Name:MyQt-》Ok。
2、直接finish。
3、覆盖main.cpp程序如下:
#include <QtGui/QApplication> #include <QLabel> int main(int argc, char *argv[]) { QApplication a(argc, argv); QLabel *label=new QLabel("<h2><i>Hello </i>""<font color=red>world!</font></h2>");//create a label with the content "Hello world!" label->show(); return a.exec(); }4、运行程序结果如下:
参考资料:
http://www.cnblogs.com/freedomshe/archive/2012/04/25/2470540.html
http://blog.csdn.net/sangni007/article/details/8425119