OpenCV 开发环境配置

本文介绍了 OpenCV 下载与安装,开发环境的配置

1. 下载与安装#

  1. OpenCV官网 下载最新版本的 Windows 安装包(实质是 7z 的自解压程序)

  2. 运行安装包,将 OpenCV文件 解压到自己指定的目录,如:d:\,自解压程序会自动创建 opencv 目录

  3. 之后添加系统环境变量 OPENCV_DIR,值为 d:\opencv\build(根据实际情况调整路径)

  4. 同时将 %OPENCV_DIR%\bin%OPENCV_DIR%\x64\vc15\bin 添加到 Path 变量。建议同时添加到用户变量和系统变量。只添加到系统变量,运行 OpenCV 程序需要以管理员权限运行,否则会出现找不到 opencv_worldxxx.dll 的异常。

2. 配置 Visual Studio 开发环境#

这里介绍一种一劳永逸的配置 OpenCV 开发环境的方法:

  1. 新建一个 C++ 空项目,然后打开 视图 -> 其他窗口 -> 属性管理器

    在 属性管理器 视图中,展开新创建的空项目,展开 Debug | x64,双击 Microsoft.Cpp.x64.user 开始配置

  2. 配置 include 目录

    在 通用属性 -> VC++目录 -> 包含目录 添加 $(OPENCV_DIR)\include$(OPENCV_DIR)\include\opencv2

  3. 配置附加库目录

    在 通用属性 -> 链接器 -> 常规 -> 附加库目录 添加 $(OPENCV_DIR)\x64\vc15\lib

  4. 配置附加依赖项

    在 通用属性 -> 链接器 -> 输入 -> 附加依赖项 添加 opencv_world455d.lib(Debug)或 opencv_world455.lib(Release)

    网上有一些教程会将两者同时添加到附加依赖项中。实测发现,如果 opencv_world455d.lib 在先,则 Release 模式下无法正常运行;反之 Debug 模式下无法正常运行。

    这里提供一种解决方法:

    选中 Microsoft.Cpp.x64.user,并在属性窗口中,定位文件的路径,如:C:\Users\xxx\AppData\Local\Microsoft\MSBuild\v4.0\Microsoft.Cpp.x64.user.props,xxx 为用户名。

    打开 .props 文件,将

      <ItemDefinitionGroup>
        <Link>
          <AdditionalLibraryDirectories>$(OPENCV_DIR)\x64\vc15\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
          <AdditionalDependencies>opencv_world455d.lib;%(AdditionalDependencies)</AdditionalDependencies>
        </Link>
      </ItemDefinitionGroup>

    替换为:

      <ItemDefinitionGroup>
        <Link>
          <AdditionalLibraryDirectories>$(OPENCV_DIR)\x64\vc15\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
        </Link>
      </ItemDefinitionGroup>
      <ItemDefinitionGroup Condition="'$(Configuration)'=='Debug'">
        <Link>
          <AdditionalDependencies>opencv_world455d.lib;%(AdditionalDependencies)</AdditionalDependencies>
        </Link>
      </ItemDefinitionGroup>
      <ItemDefinitionGroup Condition="'$(Configuration)'=='Release'">
        <Link>
          <AdditionalDependencies>opencv_world455.lib;%(AdditionalDependencies)</AdditionalDependencies>
        </Link>
      </ItemDefinitionGroup>

3. 快速配置#

上述方法虽然只配置了一次,但是还是有点繁琐,其实只需要修改 .props 文件即可(需重启VS生效)

打开 C:\Users\[用户名]\AppData\Local\Microsoft\MSBuild\v4.0\Microsoft.Cpp.x64.user.props

将以下内容合并到 .props

<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <ImportGroup Label="PropertySheets">
  </ImportGroup>
  <PropertyGroup Label="UserMacros" />
  <PropertyGroup>
    <IncludePath>$(OPENCV_DIR)\include;$(OPENCV_DIR)\include\opencv2;$(IncludePath)</IncludePath>
  </PropertyGroup>
  <ItemDefinitionGroup>
    <Link>
      <AdditionalLibraryDirectories>$(OPENCV_DIR)\x64\vc15\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
    </Link>
  </ItemDefinitionGroup>
  <ItemDefinitionGroup Condition="'$(Configuration)'=='Debug'">
    <Link>
      <AdditionalDependencies>opencv_world455d.lib;%(AdditionalDependencies)</AdditionalDependencies>
    </Link>
  </ItemDefinitionGroup>
  <ItemDefinitionGroup Condition="'$(Configuration)'=='Release'">
    <Link>
      <AdditionalDependencies>opencv_world455.lib;%(AdditionalDependencies)</AdditionalDependencies>
    </Link>
  </ItemDefinitionGroup>
  <ItemGroup />
</Project>

❤️ 如果这篇文章对你有帮助,欢迎赞助支持我继续维护 ❤️

☕ Support me ⚡ 爱发电赞助