C++ 语言(Windows)

本章介绍如何在 Windows 系统上用 CMake 和 Visual Studio 配置 Mech-DLK SDK 中的 C++ 例程。

例程简介

例程分为 2 类:BasicAdvanced

  • Basic 例程:使用 Mech-DLK 导出的各类单级模型推理单张图片、多图同时推理、获取并可视化结果;

  • Advanced 例程:Mech-DLK SDK 与 OpenCV 协同开发。

Basic

Advanced

使用前提

使用 Mech-DLK SDK 中的 C++ 语言例程,需先满足以下使用前提:

安装必需软件

使用 Mech-DLK SDK 的 C++ 例程,必须安装 Mech-DLK SDK、CMake 及 Visual Studio。

安装 Mech-DLK SDK

请根据 安装指南 获取最新版本的 Mech-DLK SDK 及其依赖的第三方库和资源文件。

安装 CMake(3.2 或以上版本)

  1. 下载 CMake:选择 Windows x64 Installer 右侧的安装包。

    cmake download
  2. 安装时,请勾选下图中的两个选项,以将 CMake 添加至环境变量,并创建 CMake 的桌面快捷方式。

cmake 1

安装 Visual Studio(2017 或以上版本)

  1. 下载 Visual Studio 安装包

  2. 安装时,请勾选 桌面应用和移动应用 分类中的“使用 C++ 的桌面开发”工作负荷,再单击右下角的 安装

sample c workload

(可选)安装 OpenCV

如需运行 Advanced 例程(ImageInferWithOpenCV),请按以下步骤安装 OpenCV,并将其添加至系统变量。

  1. 下载并安装 OpenCV。请记录 OpenCV 的存放路径。

  2. 安装完成后,可看到 OpenCV 存放文件夹中有以下文件:

    opencv folder files
ImageInferWithOpenCV 例程已使用 OpenCV 4.8.0 完成测试,可正常运行。

添加环境变量

请根据以下步骤添加相关的环境变量。

  1. 右键单击桌面上的“此电脑”,选择“属性”。

  2. 选择“高级系统设置”,在弹出的“系统属性”对话框的“高级”选项卡上,单击 环境变量,进入“环境变量”界面。

  3. 在“系统变量”下,单击新建,在“新建系统变量”对话框的“变量名”框中输入 MECHDL_DIR,“变量值”框中输入 xxx/mechdlk_sdk,然后单击确定

    如需运行 ImageInferWithOpenCV 例程,需将 OpenCV 添加至环境变量:

    1. 在“系统变量”下,单击新建

    2. 在“新建系统变量”对话框的“变量名”框中输入 OPENCV_DIR,“变量值”框中输入 OpenCV 的 build 文件夹路径(xxx/opencv/build),然后单击确定

  4. 在“系统变量”框中,滚动到“Path”并双击它进入到“编辑环境变量”页面。

  5. 单击右上角新建,添加 %MECHDL_DIR%,再单击右下角确定

如果“编辑环境变量”框中有 %MMIND_DLK%,选中后单击右侧的删除按钮移除此变量。
csharp add environment variables 1
csharp add environment variables 2

构建及运行例程

你可以一次性构建全部例程。

使用 CMake 配置例程

  1. 双击 CMake 桌面图标打开软件。

  2. 选择或输入源码路径与构建目录路径。如果没有构建目录路径,可以直接在源码路径后添加 \build,并继续以下的配置操作。

    Where is the source code

    xxx\mechdlk_sdk\samples\cpp

    Where to build the binaries

    xxx\mechdlk_sdk\samples\cpp\build

  3. 单击 Configure。首次配置时,因没有构建目录路径,此时会弹窗请求构建 build 文件夹,请单击Yes

    create build cpp

    进入配置页面,选择 Visual Studio 的版本,然后单击Finish

    configuration

    配置成功后,日志最末行将显示 Configuring done

    cpp windows configuring done
    运行 Basic 例程时,无需勾选 USE_OPENCV 选项;运行 Advanced 例程时,请确认 USE_OPENCV 选项已勾选。
  1. 单击 Generate 生成解决方案。生成成功后,日志最末行将显示 Generating done。然后,单击Open Project,使用 Visual Studio 打开解决方案。

    cpp windows generating done

使用 Visual Studio 构建例程

  1. 确认 Visual Studio 工具栏中的解决方案配置为 Release 模式。当前未提供 Debug 版本的 DLL 文件。

  2. 在菜单栏上选择 生成  生成解决方案。每个例程会生成对应的可执行文件(.exe),保存在 Release 文件夹中,位于 xxx\mechdlk_sdk\samples\cpp\build 目录下。

    generate solution
  3. 将项目文件夹中的 resources 文件夹拷贝至 xxx\mechdlk_sdk\samples\cpp\build\Release 目录下。

  4. 将项目文件夹中的 3rd_dll 文件夹内的全部文件拷贝至 xxx\mechdlk_sdk\samples\cpp\build\Release 目录下。

    请拷贝3rd_dll 文件夹内的全部文件,不要将文件夹拷贝至目录下。
  5. 将项目文件夹中的 mechdlk_sdk\dll 文件夹内的全部文件拷贝至 xxx\mechdlk_sdk\samples\cpp\build\Release 目录下。

    请拷贝mechdlk_sdk\dll 文件夹内的全部文件,不要将文件夹拷贝至目录下。
  6. (可选)如需运行 Advanced 例程,请将OpenCV存放路径 xxx\opencv\build\x64\vc16\bin 下的opencv_world480.dll文件拷贝至 xxx\mechdlk_sdk\samples\cpp\build\Release 目录下。

拷贝完成后,目标文件夹中应包含以下类型的文件(文件名可能不同):

copy files to directory

运行例程

你可以在 Visual Studio 中直接运行例程,也可以双击运行例程的可执行文件。

在 Visual Studio 中运行例程

  1. 解决方案资源管理器 窗口中右键单击想要运行的例程,并选择 设为启动项目

    cpp startup project
  2. 单击工具栏中的本地 Windows 调试器运行该例程。

运行例程可执行文件

打开 Release 文件夹,双击运行与例程同名的可执行文件(.exe),即可得到运行结果。

我们重视您的隐私

我们使用 cookie 为您在我们的网站上提供最佳体验。继续使用该网站即表示您同意使用 cookie。如果您拒绝,将使用一个单独的 cookie 来确保您在访问本网站时不会被跟踪或记住。