加入星计划,您可以享受以下权益:

  • 创作内容快速变现
  • 行业影响力扩散
  • 作品版权保护
  • 300W+ 专业用户
  • 1.5W+ 优质创作者
  • 5000+ 长期合作伙伴
立即加入
  • 正文
    • 1.1下载并安装 Visual Studio Community 版
    • 1.2 下载并解压 OpenVINO Runtime
    • 1.3 下载并解压 OpenCV
    • 1.5 运行 OpenVINO C++ 范例程序
    • 1.6 总结
  • 相关推荐
  • 电子产业图谱
申请入驻 产业图谱

在Windows中基于Visual Studio配置OpenVINO C++开发环境

2023/01/13
2609
阅读需 13 分钟
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

文章作者:王一凡

本文主要介绍在 Windows 中基于 Visual Studio 配置 OpenVINO C++ 开发环境,主要步骤有:

下载并安装 Visual Studio Community 版

下载并解压 OpenVINO Runtime

下载并解压 OpenCV

在 Visual Studio 中配置项目属性

运行 OpenVINO C++ 范例程序,测试开发环境

下面,本文将依次详述。

1.1下载并安装 Visual Studio Community 版

Microsoft Visual Studio(简称VS)是 Windows 平台上非常好用的集成开发环境(IDE),其 Community 版本免费供学生、开放源代码参与者和个人使用。

从下方地址下载 Visual Studio 2022 Community 版,安装选项如图 1-1 所示:

https://visualstudio.microsoft.com/zh-hans/downloads/

图 1-1  Visual Studio 2022安装选项

1.2 下载并解压 OpenVINO Runtime

OpenVINO™ Runtime 2022.3 以压缩包(OpenVINO Archives)的形式提供,里面包含了开发 OpenVINO C++ 推理程序所必需的文件,如图 1-2 所示:

C++预处理器所需的头文件:include文件夹

C++链接器所需的lib文件:lib文件夹

可执行文件(*.exe)所需的动态链接库文件:bin文件夹

OpenVINO runtime第三方依赖库文件:3rdparty文件夹

图 1-2  开发 OpenVINO C++ 推理程序所必需的文件

首先,请读者先打开下面的链接,下载 OpenVINO™  Runtime 2022.3 压缩包:

https://www.intel.com/content/www/us/en/developer/tools/openvino-toolkit/download.html

然后,请读者手动新建 C:Program Files (x86)Intelopenvino_2022.3.0 文件夹,并把压缩包解压后的文件拷贝到 openvino_2022.3.0 文件夹中,完成OpenVINO Runtime 压缩包的下载和解压工作,如图 1-3 所示。

图 1-3  下载并解压 OpenVINO Runtime 压缩包

1.3 下载并解压 OpenCV

在端到端的 AI 推理计算流程中,OpenCV 库用于实现图像载入、数据前处理、推理结果后处理和数据可视化,如图1-4 所示。

图 1-4  端到端的 AI 推理计算流程

OpenCV 也是以压缩包的形式提供,从下方地址下载  Windows 平台上的压缩包:

https://opencv.org/releases/

首先,手动新建 C:opencv 文件夹;然后,把 OpenCV 解压后的 build 文件夹全部拷贝到 C:opencv 文件夹,如图 1-5 所示,完成 OpenCV 的下载并解压。

图 1-5  下载并解压 OpenCV

1.4 在 Visual Studio 中配置项目属性

在 Visual Studio 中配置项目属性,主要是告诉 C++ 编译器和链接器,OpenVINO™ 和 OpenCV 的头文件以及库文件在哪里。

第一步,打开 Visual Studio 2022 Community,在“文件(F)”菜单中选择“新建(N)→项目(P)”,新建一个 C++ 空项目。

第二步,在“文件(F)菜单”中选择“新建(N)→文件(F)”,新建一个 main.cpp 文件,并添加到项目管理器的源文件文件夹中。

第三步,在“解决方案资源管理器”中,右键单击项目名称,在右键菜单中选择“属性(R)”,启动“属性页”对话框。

在“配置(C)”栏选择“所有配置”,在“平台(P)”栏选择“所有平台”;

在“输出目录”输入

“$(SolutionDir)bin$(Platform)$(Configuration)”;

在“中间目录”输入

“$(SolutionDir)Intermediate$(Platform)$(Configuration)”

第四步,在“属性页”对话框中选中“C/C++→常规”;在“平台(P)”栏选择“x64”;在“附加包含目录”中输入:

C:Program Files (x86)Intelopenvino_2022.3.0runtimeinclude

C:opencvbuildinclude

第五步,在“属性页”对话框中选中“链接器→常规”;在“平台(P)”栏选择“x64”;在“附加库目录”中输入:

C:Program Files (x86)Intelopenvino_2022.3.0runtimelibintel64$(Configuration)

C:opencvbuildx64vc16lib

第六步,在“属性页”对话框中选中“链接器→输入”,在“配置(C)”栏选择“Debug”,在“平台(P)”栏选择“x64”,然后在“附加依赖项”中添加:

openvinod.lib;opencv_world470d.lib;

将“配置(C)”栏改为“Release”,然后在“附加依赖项”中添加:

openvino.lib;opencv_world470.lib;

到此,完成在 Visual Studio 中配置 OpenVINO C++ 推理计算项目属性。

1.5 运行 OpenVINO C++ 范例程序

测试开发环境

首先,请将下面的代码拷贝到 main.cpp 中,源代码下载地址:

https://gitee.com/ppov-nuc/yolov5_infer/blob/main/test_ov_opencv.cpp

#include <iostream>#include <string>#include <openvino/openvino.hpp> //openvino header file#include <opencv2/opencv.hpp>    //opencv header fileint main(int argc, char* argv[]) {    // -------- Get OpenVINO runtime version --------    std::cout << ov::get_openvino_version().description << ':' << ov::get_openvino_version().buildNumber << std::endl;    // -------- Step 1. Initialize OpenVINO Runtime Core --------    ov::Core core;    // -------- Step 2. Get list of available devices --------    std::vector<std::string> availableDevices = core.get_available_devices();    // -------- Step 3. Query and print supported metrics and config keys --------    std::cout << "Available devices: " << std::endl;    for (auto&& device : availableDevices) {        std::cout << device << std::endl;    }    // -------- Step 4. Read a picture file and show by OpenCV --------    cv::Mat img = cv::imread("zidane.jpg"); //Load a picture into memory    cv::imshow("Test OpenVINO & OpenCV IDE", img);    std::cout << "Image width: " << img.cols << " height: " << img.rows << std::endl;    cv::waitKey(0);    cv::destroyAllWindows();    return 0;}

然后,将 OpenCV 和 OpenVINO™ 动态链接库所在的位置,添加到path环境变量中。

C :Program Files(x86)Intelopenvino_2022 .3.0runtimebinintel64Release

C :Program Files(x86)Intelopenvino_2022 .3.0runtimebinintel64Debug

C :Program Files(x86)Intelopenvino_2022 .3.0runtime3rdpartytbbbin

C :opencvbuildx64vc16bin

最后,编译并运行上述代码,结果如下图所示:

1.6 总结

本文详述了从零开始在 Windows 上基于 Visual Studio 配置开发 OpenVINO C++ 推理程序的全过程,并给出了完整的测试程序代码 test_ov_opencv.cpp。环境配置成功后,就可以开始用 C++ 编写 OpenVINO™ 推理程序了。

英特尔

英特尔

英特尔在云计算、数据中心、物联网和电脑解决方案方面的创新,为我们所生活的智能互连的数字世界提供支持。

英特尔在云计算、数据中心、物联网和电脑解决方案方面的创新,为我们所生活的智能互连的数字世界提供支持。收起

查看更多

相关推荐

电子产业图谱

英特尔致力于加快智能设备的开发和部署,通过智能多层系统和端到端分析,在智能驾驶、智能零售、智能安防、智能制造等领域,推动企业业务转型,改善人们的生活和工作方式,英特尔驱动物联网变革。