• VS2012下配置OpenCV2.4.5


    最近在折腾了一下VS2012的OpenCVS2.4.5配置,同VS2010下基本相同,做个简单的记录,以备日后查阅。

    1. 安装OpenCV

    从OpenCV官网:http://opencv.org/下载OpenCV安装包,放到想要安装的位置双击,即可安装,我这里是安装在C:Program Filesopencv的位置

    2. 新建工程

    在这里就使用简单的控制程序进行测试了,截图如图一所示:

    图 1 新建32位控制台项目

    3.添加依赖

    在新建好项目之后,为了能使用OpenCV的函数库我们首先需要为该项目添加好OpenCV依赖,具体步骤图2。

    1. 项目名称->右键->属性

    图 2 添加VC++目录依

         2. 添加VC++目录依赖,首先在VC++ Directories(C++目录)中的Executable Directories中添加好C:Program Filesopencvuildx86vc11in;在Include Directories中添加C:Program Filesopencvuildinclude;C:Program Filesopencvuildincludeopencv;C:Program Filesopencvuildincludeopencv2;在Library Directories中添加lib依赖,为该项增加路径C:Program Filesopencvuildx86vc11lib

         3. 添加连接器依赖,在属性窗口中选择连接器->输入(linker->input),如图3所示。在附加依赖(Additional Dependencies)那项增加该OpenCV中所需要的包,不一定要全部加上,选择部分即可,注意添加的时候包要带后缀名,添加完一个后,回车换行再加下一个,添加完如图4所示。

    图 3 添加Linker包依赖

     

    图 4 添加完成后结果

    4. 示例代码测试

    在第三部,我们已经完成了本项目所需要的OpenCV包的配置了,下面我们可以用一小段OpenCV项目代码来测试配置是否准确,代码如下:

    // OpenCVTest.cpp : Defines the entry point for the console application.
    //
    
    #include "stdafx.h"
    
    
    #include <opencv2/opencv.hpp>
     
    using namespace std;
    using namespace cv;
    
     
    int _tmain(int argc, _TCHAR* argv[])
    {
        const char* imagename = "D:\Image\yuner.jpg";
     
        //从文件中读入图像
        Mat img = imread(imagename);
     
        //如果读入图像失败
        if(img.empty())
        {
            fprintf(stderr, "Can not load image %s
    ", imagename);
            return -1;
        }
     
        //显示图像
        imshow("YunEr", img);
     
        //此函数等待按键,按键盘任意键就返回
        waitKey();
     
        return 0;
    }

    运行结果如下,这里就不对该程序进行解释了,这程序的主要功能是显示了一张允儿的照片,运行结果如图5。

     

    图 5 运行结果

    5. 定制OpenCV工程模板

    从以上的配置步骤我们知道,在VS2012中新建OpenCV工程,需要进行很多步骤的琐碎步骤进行配置,中间容易出错,尤其是对于我们初学者,需要新建很多测试工程,如果每个都去配置那就太麻烦了。就目前看来,解决的办法有两种:一是为以后所有的项目中添加OpenCV那套配置,该方法在网上的博客中也写的最多如:http://www.douban.com/note/271142663/;二是同Word等类似,VS为我们提供了一个项目模板功能,我们可以新建一个OpenCV模板,之后的工程就根据该模板新建即可。下面就是第二种方法的步骤了:

    1. 同原来一样,我们新建一个工程,这里同样选为32位控制台类型,新建完后,按照上面所说的步骤为其添加好OpenCV依赖,添加完依赖如图6所示

     

    图 6 OpenCV模板

         2.导出模板

    单击文件->导出模板(File->Explorer Templete),然后单击下一步,选择Project Templete,再选择一张图片作为模板标识,单击完成即可,生成的模板以zip文件存放在VS的默认目录下,我的存储在:C:UserswangmurongDocumentsVisual Studio 2012My Exported Templates

     

    图 7 导出模板

    1. 从模板新建

    创建好模板以后,我们就可以根据模板来新建了,同样,选择新建32控制台程序,如图8所示,我们可以看到,我们的模板已经被添加到默认新建模板中去了。根据该模板新建的工程就可以直接使用OpenCV了,不用再添加了,当然,如果模板中的lib文件不够的话还是需要再手动添加的。

     

    图 8 根据模板新建

    最后再添加几个常用的OpenCV学习网址吧:

    1. http://www.opencv.org.cn/
    2. http://wiki.opencv.org.cn/index.php/%E9%A6%96%E9%A1%B5
    3. http://groups.yahoo.com/neo/groups/OpenCV/info
  • 相关阅读:
    iOS 代码规范
    Clang Format
    PullToRefreshListView手动刷新问题
    android不依赖具体activity弹出Dialog对话框,即全局性对话框
    我的手机华为荣耀7,运行android程序不输出Log
    Android从imageview中获得bitmap
    Fragment里面的ViewPager嵌套subFragment,主Fragment切换的时候subFragment出现空白Fragment的Bug
    解决某些手机RadioGroup中的RadioButton不居中的问题
    Android权限大全
    UML类图
  • 原文地址:https://www.cnblogs.com/zhuluren/p/3313909.html
Copyright © 2020-2023  润新知