zoukankan      html  css  js  c++  java
  • VS2013下配置OpenCV 3.0.0 &&& VS2013下配置Opencv2.4.9

    最近做图像需要用到Matlab和OpenCV,一些东西真的是要深入的研究进去才会有所发现,但Matlab和C++都不是我擅长的语言,所以要很加油很加油才行啊!!

    步入正题。

       1.  环境:Win7 64位 + Visual Studio 2013 Community + OpenCV 3.0.0

       2. 安装VS 2013 Community版本。 —— 到VS官网https://www.visualstudio.com/zh-cn/downloads/download-visual-studio-vs.aspx选择对应版本下载,记住要下载ISO不要下载web版本哦。

       3. 到OPenCV官网http://opencv.org/下载Windows版本的OpenCV 3.0.0版,然后解压到相应文件夹,如我的是“C:Park_Softwareopencv”。

       4. 配置电脑的环境变量。在“计算机”下右键,然后“属性”-》“高级系统设置”-》(注意:更改的是系统变量)“环境变量”-》“新建”-》“变量名:OPENCV; 变量值:C:Park_Softwareopencvuild”; -》找到“PATH”-》“编辑”-》加入“;%OPENCV%x86vc12in”.

       5. 找到解压后的OpenCV文件夹,然后进入根目录,新建文件opencv300.props,写入如下代码:(这些代码是方便配置VS中的信息,每次新建Project时,只需将该文件加载进去即可,不必再繁琐的设置一些属性表)

    <?xml version="1.0" encoding="utf-8"?>
    <Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
      <ImportGroup Label="PropertySheets" />
      <PropertyGroup Label="UserMacros" />
      <PropertyGroup>
        <IncludePath>$(OPENCV)include;$(IncludePath)</IncludePath>
        <LibraryPath Condition="'$(Platform)'=='Win32'">$(OPENCV)x86vc12staticlib;$(OPENCV)x86vc12lib;$(LibraryPath)</LibraryPath>
        <LibraryPath Condition="'$(Platform)'=='X64'">$(OPENCV)x64vc12staticlib;$(OPENCV)x64vc12lib;$(LibraryPath)</LibraryPath>
      </PropertyGroup>
      <ItemDefinitionGroup>
        <Link Condition="'$(Configuration)'=='Debug'">
          <AdditionalDependencies>opencv_ts300.lib;opencv_world300.lib;opencv_calib3d300.lib;opencv_core300.lib;opencv_features2d300.lib;opencv_flann300.lib;opencv_highgui300.lib;opencv_imgcodecs300.lib;opencv_imgproc300.lib;opencv_ml300.lib;opencv_objdetect300.lib;opencv_photo300.lib;opencv_shape300.lib;opencv_stitching300.lib;opencv_superres300.lib;opencv_ts300.lib;opencv_video300.lib;opencv_videoio300.lib;opencv_videostab300.lib;%(AdditionalDependencies)</AdditionalDependencies>
        </Link>
        <Link Condition="'$(Configuration)'=='Release'">
          <AdditionalDependencies>opencv_ts300d.lib;opencv_world300d.lib;opencv_calib3d300d.lib;opencv_core300d.lib;opencv_features2d300d.lib;opencv_flann300d.lib;opencv_highgui300d.lib;opencv_imgcodecs300d.lib;opencv_imgproc300d.lib;opencv_ml300d.lib;opencv_objdetect300d.lib;opencv_photo300d.lib;opencv_shape300d.lib;opencv_stitching300d.lib;opencv_superres300d.lib;opencv_ts300d.lib;opencv_video300d.lib;opencv_videoio300d.lib;opencv_videostab300d.lib;%(AdditionalDependencies)</AdditionalDependencies>
        </Link>
      </ItemDefinitionGroup>
      <ItemGroup />
    </Project>

       6. 下面开始对VS中的项目进行配置。

       7. 新建一个空的Visual C++控制台程序,然后在“属性管理器”窗口下(如没有属性管理器窗口,则应该到“视图”-》“其他窗口”-》“属性管理器”)右键刚刚建立的项目,然后“添加现有属性表”,找到刚刚写好的“opencv300.props”加入即可。

       8. 下面开始写读取图像的一个小程序。在源文件中新建一个.cpp文件,写入以下代码:

    #include <opencv2/core/core.hpp>
    #include <opencv2/highgui/highgui.hpp>
    #include <iostream>
    
    using namespace cv;
    using namespace std;
    
    int main(int argc, char** argv)
    {    
    
    
        Mat image;
        image = imread("G:\1.jpg", IMREAD_COLOR); // Read the file(your own image route)
    
        if (!image.data) // Check for invalid input
        {
            cout << "Could not open or find the image" << std::endl;
            return -1;
        }
    
        namedWindow("Display window", WINDOW_AUTOSIZE); // Create a window for display.
        imshow("Display window", image); // Show our image inside it.
    
        waitKey(0); // Wait for a keystroke in the window
        return 0;
    }

       9. 本地Windows调试器,然后编译运行即可。

     ——————————————————————————————————————------------———————分割线呀分割线—————————————————————--------------------------————————————————————————————————————————

    (2015/10/18更新)

      按照上述步骤配置好了OpenCV3.0版本,但是2.X版本中有很多现成的方法有所改变,很难使用,所以我最终还是决定使用稳定的2.X版本。这里记录一下自己更改OpenCV版本的全过程,方便自己以后查看或者给有同样需要的网友share一下。(总体修改过程参照浅墨大神的书籍《OpenCV3编程入门》及博客http://blog.csdn.net/huang9012/article/details/21811129

       1. 环境:win7 64位 + VS2013 + OpenCV2.4.9

       2.将原来的OpenCV解压后的文件夹删除。然后到OpenCV官网http://opencv.org/,下载低版本的安装包,然后解压到相应文件夹,如我的是“C:Park_Softwareopencv”。

       3. 配置电脑的环境变量。在“计算机”下右键,然后“属性”-》“高级系统设置”-》(注意:更改的是系统变量)“环境变量”-》“新建”-》“变量名:OPENCV; 变量值:C:Park_Softwareopencvuild”; -》找到“PATH”-》“编辑”-》加入“;%OPENCV%x86vc12in”.

       4. 下面开始对VS中的项目进行配置,以前不想用2.X版本是因为看了很多网友的博客发现每次新建项目都要进行配置,觉得太过繁琐,还好发现浅墨大神的书,然后按照书中的步骤一步步配置好后,以后新建项目都无需再配置,具体过程如下:

    • 新建一个空的Visual C++控制台程序,然后“属性管理器”窗口下(如没有属性管理器窗口,则应该到“视图”-》“其他窗口”-》“属性管理器”)右键刚刚建立的项目,在新出现的“属性管理器文件夹”中,展开【Debug|win32】文件夹,对文件夹中【Microsoft.CPP.Win32.userDirectories】进行右键属性操作。
    • 在【通用属性】-》【VC++目录】-》【包含目录】中添加以下三项目录(到自己具体的解压目录中找到buildinclude目录,然后复制进去即可):
    • C:Park_Softwareopencvuildincludeopencv2
      C:Park_Softwareopencvuildincludeopencv
      C:Park_Softwareopencvuildinclude
    •  在【通用属性】-》【VC++目录】-》【库目录】中添加路径:

    • C:Park_Softwareopencvuildx86vc12lib
      C:Park_Softwareopencvuildx86vc12staticlib
    • 在【通用属性】-》【链接器】-》【输入】-》【附加的依赖项】中添加lib(顺序是:19个带d的debug版的lib放在前面,19个不带d的release版的lib写在后面,即优先支持debug模式的编译运行)
    • opencv_ml249d.lib
      opencv_calib3d249d.lib
      opencv_contrib249d.lib
      opencv_core249d.lib
      opencv_features2d249d.lib
      opencv_flann249d.lib
      opencv_gpu249d.lib
      opencv_highgui249d.lib
      opencv_imgproc249d.lib
      opencv_legacy249d.lib
      opencv_objdetect249d.lib
      opencv_ts249d.lib
      opencv_video249d.lib
      opencv_nonfree249d.lib
      opencv_ocl249d.lib
      opencv_photo249d.lib
      opencv_stitching249d.lib
      opencv_superres249d.lib
      opencv_videostab249d.lib
      opencv_objdetect249.lib
      opencv_ts249.lib
      opencv_video249.lib
      opencv_nonfree249.lib
      opencv_ocl249.lib
      opencv_photo249.lib
      opencv_stitching249.lib
      opencv_superres249.lib
      opencv_videostab249.lib
      opencv_calib3d249.lib
      opencv_contrib249.lib
      opencv_core249.lib
      opencv_features2d249.lib
      opencv_flann249.lib
      opencv_gpu249.lib
      opencv_highgui249.lib
      opencv_imgproc249.lib
      opencv_legacy249.lib
      opencv_ml249.lib
    • 重启电脑,然后进行最终测试。
    • 新建一个源程序,输入如下代码并且在源程序的根目录下放入一张名为“1.jpg”的图片:
    • #include <opencv2/opencv.hpp>
      
      using namespace cv;
      
      int main() {
          Mat img = imread("1.jpg");
          imshow("载入的图像", img);
          waitKey(0);
      }
    • 运行,并成功显示图片,至此配置结束。
      • 常见错误:
        •   无法打开文件“opencv_ml249.lib”系列错误:多半是加入的有问题,详细检查【链接器】-》【输入】-》【附加的依赖项】中添加的lib是否正确。
        •       找不到“core.h”错误:注意配置include时是在build文件夹下面的include文件夹,而不是opencv根目录下面的。
  • 相关阅读:
    POJ 2923 Relocation ★(状态压缩+01背包)
    POJ 1062 昂贵的聘礼 (带限制的最短路)
    HDU 4355 Party All the Time (三分求凸函数极值)
    POJ 1860 Currency Exchange (BellmanFord)
    POJ 2923 Relocation ★(状态压缩+01背包)
    【HNOI2011】数学作业(BZOJ 2326)
    POJ 1062 昂贵的聘礼 (带限制的最短路)
    作为当代大学生,面对着信息增长加快,老化周期变短,你应该如何做?
    作为当代大学生,面对着信息增长加快,老化周期变短,你应该如何做?
    信息分析与预测考前模拟试题
  • 原文地址:https://www.cnblogs.com/little-YTMM/p/4873659.html
Copyright © 2011-2022 走看看