OpenCV2.4.5 + QT4.8.4 + VS2010 环境搭建

来源:互联网 发布:centos部署github网站 编辑:程序博客网 时间:2024/05/17 02:49

作者:恋上蛋炒面

转自:http://blog.csdn.net/skeeee/article/details/8802375


       忙乎了好几天终于把环境搭建成功,中间经历了好多纠结的情况,原因都是因为网上的资料都是比较老的版本搭建平台的资料,新版本出来,某些设置需要改一下,所以就耽误了不少时间!今天写个博客把这个过程记录下来,自己以后可以参考,同时也给大家学习提供参考(环境与操作系统无关,Win7和Xp配置相同)。

       一、准备工作做好!下载软件和OpenCV库

        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)

       二、OpenCV库的配置

              1、解压OpenCV库到D盘,OpenCV会自己建个文件夹opencv。如果想解压到自己设置的文件夹也行。

              2、配置环境变量:

                   xp:我的电脑-》属性-》高级-》环境变量

   新建变量(用户,系统任选一个),变量名:opencv,变量值:d:\opencv

                   

                   双击Path,(同上),在后面添加

[plain] view plaincopy
  1. ;D:\opencv\build\x86\vc10\bin  

            

  三、新建一个工程,边配置OpenCV与工程的依赖,边实现OpenCV的第一个程序

             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

                  添加:

[plain] view plaincopy
  1. D:\opencv\bulid\include\opencv  
[plain] view plaincopy
  1. D:\opencv\bulid\include\opencv2  
[plain] view plaincopy
  1. D:\opencv\build\include  

                     

        7、设置Library Directories,添加opencv library目录进去:

[plain] view plaincopy
  1. D:\opencv\build\x86\vc10\lib  

                    

        8、点击OK,选择Linker-》Input

                    在里面添加lib(lib格式是opencv_xx+版本号+(ddebug库,没有的是release库)+.lib):

[plain] view plaincopy
  1. opencv_calib3d245d.lib  
  2. opencv_contrib245d.lib  
  3. opencv_core245d.lib  
  4. opencv_features2d245d.lib  
  5. opencv_flann245d.lib  
  6. opencv_gpu245d.lib  
  7. opencv_highgui245d.lib  
  8. opencv_imgproc245d.lib  
  9. opencv_legacy245d.lib  
  10. opencv_ml245d.lib  
  11. opencv_objdetect245d.lib  
  12. opencv_ts245d.lib  
  13. 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,即:                 

[plain] view plaincopy
  1. opencv_calib3d245.lib  
  2. opencv_contrib245.lib  
  3. opencv_core245.lib  
  4. opencv_features2d245.lib  
  5. opencv_flann245.lib  
  6. opencv_gpu245.lib  
  7. opencv_highgui245.lib  
  8. opencv_imgproc245.lib  
  9. opencv_legacy245.lib  
  10. opencv_ml245.lib  
  11. opencv_objdetect245.lib  
  12. opencv_ts245.lib  
  13. 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配置成功了。 

            

    四、安装和编译Qt4.8.4,

          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行,改为  

[cpp] view plaincopy
  1. 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到结束

   五、新建一个Qt程序,检验自己的Qt安装是否成功。

     1、新建Qt工程:打开VS2010-》文件-》New-》工程-》Qt4 Projects-》Qt Application-》Name:MyQt-》Ok。

           

     2、直接finish。

    3、覆盖main.cpp程序如下:

[cpp] view plaincopy
  1. #include <QtGui/QApplication>  
  2. #include <QLabel>  
  3.   
  4. int main(int argc, char *argv[])  
  5. {  
  6.     QApplication a(argc, argv);  
  7.     QLabel *label=new QLabel("<h2><i>Hello </i>""<font color=red>world!</font></h2>");//create a label with the content "Hello world!"  
  8.     label->show();  
  9.     return a.exec();  
  10. }  
    4、运行程序结果如下:

      

                


参考资料:

http://www.cnblogs.com/freedomshe/archive/2012/04/25/2470540.html

http://blog.csdn.net/sangni007/article/details/8425119
0 0
原创粉丝点击