zoukankan      html  css  js  c++  java
  • Opencv 完美配置攻略 2014 (Win8.1 + Opencv 2.4.8 + VS 2013)下

    前面说了一些在OpenCV在VS2013下的配置的过程,下面说一下其中的个别的知识点,了解一下这样配置的一点点更细节的过程。其实配置项目属性的时候,有两种方式:


    一、通过项目属性管理器配置项目属性表

    通过Opencv x64 x86 Debug Release 全兼容属性表配置项目

    新建属性表文档opencv248.props,填写下面的xml内容并保存:

    <?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)x86vc12lib;$(LibraryPath)</LibraryPath>
            <LibraryPath Condition="'$(Platform)'=='X64'">$(OPENCV)x64vc12lib;$(LibraryPath)</LibraryPath>
      </PropertyGroup>
      <ItemDefinitionGroup>
            <Link Condition="'$(Configuration)'=='Debug'">
              <AdditionalDependencies>opencv_calib3d248d.lib;opencv_contrib248d.lib;opencv_core248d.lib;opencv_features2d248d.lib;opencv_flann248d.lib;opencv_gpu248d.lib;opencv_highgui248d.lib;opencv_imgproc248d.lib;opencv_legacy248d.lib;opencv_ml248d.lib;opencv_nonfree248d.lib;opencv_objdetect248d.lib;opencv_ocl248d.lib;opencv_photo248d.lib;opencv_stitching248d.lib;opencv_superres248d.lib;opencv_ts248d.lib;opencv_video248d.lib;opencv_videostab248d.lib;%(AdditionalDependencies)</AdditionalDependencies>
            </Link>
            <Link Condition="'$(Configuration)'=='Release'">
              <AdditionalDependencies>opencv_calib3d248.lib;opencv_contrib248.lib;opencv_core248.lib;opencv_features2d248.lib;opencv_flann248.lib;opencv_gpu248.lib;opencv_highgui248.lib;opencv_imgproc248.lib;opencv_legacy248.lib;opencv_ml248.lib;opencv_nonfree248.lib;opencv_objdetect248.lib;opencv_ocl248.lib;opencv_photo248.lib;opencv_stitching248.lib;opencv_superres248.lib;opencv_ts248.lib;opencv_video248.lib;opencv_videostab248.lib;%(AdditionalDependencies)</AdditionalDependencies>
            </Link>
      </ItemDefinitionGroup>
      <ItemGroup />
    </Project>

    这份属性表为opencv2.4.8的VS工程属性表,兼容64位和32位平台,兼容Debug和Release配置。

    很容易看出如何修改:

    • 如果你没有配置%OPENCV%环境变量,则只需要修改 IncludePathLibraryPath 所指三个标签,用绝对路径代替$(OPENCV)
    • 如果你的Visual Studio版本与我的不同,则需要修改 LibraryPath 所指两个标签的将编译器版本号,VS2010对应vc10,VS2012对应vc11,VS2013对应vc12;
    • 如果你的opencv与我的版本不同,只需要将两个 AdditionalDependencies 标签内的所有lib的版本号修正即可(所有的248改为自己的版本号),并在opencv的lib目录下检查一下lib名称是否对应。

    通过VS界面建立VS项目属性表

    网上一大堆,就不具体说明了。与自己文本编写属性表不同的是,通过界面新建的属性表要为不同的配置单独建立,导入的时候也要针对配置单独导入。

    属性管理器 ->展开 项目名 -> 右键 Debug | Win32 -> 添加新项目属性表

    添加属性表,取名为“opencv248x86.Debug.props”。

    属性管理器 ->展开 Debug | Win32 -> 双击 新建的 opencv248x86.Debug 打开属性页面 -> VC++ 目录

    编辑 包含目录 一栏,添加opencv的include路径,例如我的是 D:Program Filesopencvuildinclude;编辑 库目录 一栏,添加opencv的lib路径,例如我的是 D:Program Filesopencvuildx86vc12lib

    Note:

    将光标移到编辑框会在右边出现小下拉三角,点击小三角,再选择编辑打开路径选择窗口选择对应路径。如果直接粘贴则粘贴在现有内容前面用分号隔开,否则会失去继承性。

    Note:

    库目录 一栏选择opencv的lib路径时,如果工程是64位则选择opencv的x64目录,如果是32位则选择x86。Visual Studio的版本与编译器版本号的对应关系是:VS2010 -> vc10, VS2012 -> vc11, VS2013 -> vc12,选择目录的时候注意自己的VS工程版本。

    在属性页面 -> 链接器 -> 输入 -> 附加依赖项 -> 编辑。添加下面的lib列表:

    opencv_calib3d248d.lib
    opencv_contrib248d.lib
    opencv_core248d.lib
    opencv_features2d248d.lib
    opencv_flann248d.lib
    opencv_gpu248d.lib
    opencv_highgui248d.lib
    opencv_imgproc248d.lib
    opencv_legacy248d.lib
    opencv_ml248d.lib
    opencv_nonfree248d.lib
    opencv_objdetect248d.lib
    opencv_ocl248d.lib
    opencv_photo248d.lib
    opencv_stitching248d.lib
    opencv_superres248d.lib
    opencv_ts248d.lib
    opencv_video248d.lib
    opencv_videostab248d.lib

    确定两次后完成Debug版本的属性表编辑。

    同样依照上面的步骤编写Release版本的属性表,唯一不同的是在“附加依赖项”中填入的是Release版本的lib列表:

    opencv_calib3d248.lib
    opencv_contrib248.lib
    opencv_core248.lib
    opencv_features2d248.lib
    opencv_flann248.lib
    opencv_gpu248.lib
    opencv_highgui248.lib
    opencv_imgproc248.lib
    opencv_legacy248.lib
    opencv_ml248.lib
    opencv_nonfree248.lib
    opencv_objdetect248.lib
    opencv_ocl248.lib
    opencv_photo248.lib
    opencv_stitching248.lib
    opencv_superres248.lib
    opencv_ts248.lib
    opencv_video248.lib
    opencv_videostab248.lib

    Tip:

    *d.lib的是Debug版本lib,*.lib的是Release版本lib。

    二、直接在项目上设置项目的属性

    首要要添加环境变量,这里就不说了。

    新建VS项目,配置项目属性。接下来就是添加包含目录:

    D:Program Filesopencvuildinclude

    如果只包含该目录,代码文件中包含头文件注意路径即可,如

    #include <opencv2/opencv.hpp>

    当然你还可以包含以下两个目录

    D:Program Filesopencvuildincludeopencv

    D:Program Filesopencvuildincludeopencv2

    2) 添加库目录

    D:Program Filesopencvuildx86vc11lib

    3) 添加链接器的附加依赖项

    opencv_core244d.lib
    opencv_imgproc244d.lib
    opencv_highgui244d.lib
    opencv_ml244d.lib
    opencv_video244d.lib
    opencv_features2d244d.lib
    opencv_calib3d244d.lib
    opencv_objdetect244d.lib
    opencv_contrib244d.lib
    opencv_legacy244d.lib
    opencv_flann244d.lib

    注意:244代表是OpenCV 2.4.4版本,刚去看了下,现在最新版本是2.4.5,根据自己的版本相应调整。

    添加完需要用的.lib库文件之后,最好去相应的目录下去检查一下是否添加的这些文件都存在。

  • 相关阅读:
    [PAT] 1012 The Best Rank (25 分)Java
    scroll-view 隐藏滚动条
    python bool
    wx小程序 button 属性open-typ 用法 按钮分享
    python str 的常用方法
    node global文件夹和chace文件夹位置全局位置修改
    wx.showModal() 内容如何换行?
    自定义导航栏头部 并简单设置标题和返回按键
    jquery绑定事件如何传递参数
    复习第一天内容
  • 原文地址:https://www.cnblogs.com/stemon/p/4505385.html
Copyright © 2011-2022 走看看