0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

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

英特尔物联网 来源:英特尔物联网 2023-01-12 15:44 次阅读

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

  1. 下载并安装 Visual Studio Community 版

  2. 下载并解压 OpenVINO Runtime

  3. 下载并解压 OpenCV

  4. 在 Visual Studio 中配置项目属性

  5. 运行 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/

518450e6-9244-11ed-bfe3-dac502259ad0.png

图 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文件夹

51c8089a-9244-11ed-bfe3-dac502259ad0.png

图 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 所示。

51eb31ee-9244-11ed-bfe3-dac502259ad0.png

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

1.3 下载并解压 OpenCV

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

520d59f4-9244-11ed-bfe3-dac502259ad0.png

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

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

https://opencv.org/releases/

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

5246649c-9244-11ed-bfe3-dac502259ad0.png

图 1-5 下载并解压 OpenCV

1.4 在 Visual Studio 中配置项目属性

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

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

52698a76-9244-11ed-bfe3-dac502259ad0.png

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

52a24992-9244-11ed-bfe3-dac502259ad0.png

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

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

  • 在“输出目录”输入

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

  • 在“中间目录”输入

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

52c3b1ea-9244-11ed-bfe3-dac502259ad0.png

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

  • C:Program Files (x86)Intelopenvino_2022.3.0 untimeinclude

  • C:opencvuildinclude

52db0048-9244-11ed-bfe3-dac502259ad0.png

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

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

  • C:opencvuildx64vc16lib

52f74e4c-9244-11ed-bfe3-dac502259ad0.png

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

  • openvinod.lib;opencv_world470d.lib;

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

  • openvino.lib;opencv_world470.lib;

53275db2-9244-11ed-bfe3-dac502259ad0.png

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

1.5 运行 OpenVINO C++ 范例程序

测试开发环境

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

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

#include 
#include 
#include  //openvino header file
#include   //opencv header file
int 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.0 untimeinintel64Release

  • C :Program Files(x86)Intelopenvino_2022 .3.0 untimeinintel64Debug

  • C :Program Files(x86)Intelopenvino_2022 .3.0 untime3rdparty bbin

  • C :opencvuildx64vc16in

5348caec-9244-11ed-bfe3-dac502259ad0.png

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

5384d136-9244-11ed-bfe3-dac502259ad0.png

1.6 总结

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


审核编辑 :李倩


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • C++
    C++
    +关注

    关注

    21

    文章

    2066

    浏览量

    72900
  • Visual
    +关注

    关注

    0

    文章

    252

    浏览量

    34012
  • Microsoft
    +关注

    关注

    0

    文章

    186

    浏览量

    6732

原文标题:在Windows中基于Visual Studio配置OpenVINO C++开发环境 | 开发者实战

文章出处:【微信号:英特尔物联网,微信公众号:英特尔物联网】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    STM32CubeMX如何在*.c源文件中使用c++特性?

    开发环境Visual Studio 2015 + VisualGDB (编译器为arm-eabi GCC 7.2.0)+ STM32CubeMX
    发表于 04-25 06:15

    鸿蒙OpenHarmony【搭建Windows环境

    在嵌入式开发中,很多开发者习惯于使用Windows进行代码的编辑,比如使用WindowsVisual
    的头像 发表于 04-19 15:42 162次阅读
    鸿蒙OpenHarmony【搭建<b class='flag-5'>Windows</b><b class='flag-5'>环境</b>】

    用Cubeprogrammer的API串口,Visual Studio环境设置按说明书配置的,编译有错误的原因?

    用Cubeprogrammer的API 串口,Visual Studio环境设置按说明书配置的,编译还是有错误,有知道问题的吗?
    发表于 03-29 08:46

    OpenVINO™ C# API详解与演示

    OpenVINO C# API 支持 NuGet 程序包安装方式,这与 OpenVINO C++ 库的安装过程相比,更加简单。如果使用 Visual
    的头像 发表于 10-13 16:39 394次阅读
    <b class='flag-5'>OpenVINO</b>™  C# API详解与演示

    opencv_videoio_ffmpeg_64.dll缺失,无法OpenVINO trade配置OpenCV怎么处理?

    ] global C:\\jenkins\\workspace\\OpenCV\\OpenVINO\\2021.4\\build\\windows\\opencv\\modules\\videoio
    发表于 08-15 08:24

    如何解决OpenVINO工具套件环境初始化过程遇到的错误?

    执行 setupvars.bat 脚本以初始化 Windows® 10 OpenVINO环境 收到错误: 输入线过长。命令的语法不正确。
    发表于 08-15 07:30

    永久设置OpenVINO trade Windows reg10的工具套件环境变量

    您可以 Windows® 10 手动设置OpenVINO环境变量。
    发表于 08-15 07:18

    执行setupvars.bat脚本以初始化Windows10OpenVINO环境时,提示未安装Python怎么解决?

    执行 setupvars.bat 脚本以初始化 Windows® 10 OpenVINO环境时,遇到以下错误消息: 未安装 Pytho
    发表于 08-15 06:52

    无法使用Microsoft Visual Studio 2017为Windows 10构建开源OpenVINO怎么解决?

    无法使用 Microsoft Visual Studio 2017 为 Windows 10 构建开源OpenVINO™。
    发表于 08-15 06:43

    如何在使用Inspector运行OpenVINO C++样本时避免内存泄露?

    运行OpenVINO™ 图像分类 Async C++示例带英特尔® Inspector用于检查内存问题。使用命令: $ pwd /home/centos
    发表于 08-15 06:18

    在Ubuntu上搭建OpenVINO C++程序开发环境

    这种集成开发环境,为了在 Ubuntu 上也能拥有类似 Visual Studio开发体验,笔者探索出基于 Anaconda 和 VS
    发表于 08-09 09:42 487次阅读
    在Ubuntu上搭建<b class='flag-5'>OpenVINO</b> <b class='flag-5'>C++</b>程序<b class='flag-5'>开发</b><b class='flag-5'>环境</b>

    如何使用Microsoft Visual Studio构建本机Windows on Arm库?

    SDL•像OpenSSL这样的加密库•Curl等网络库本指南介绍如何使用Microsoft Visual Studio构建本机Windows on Arm库。这个指南使用了流行的zlib库的特定示例,但
    发表于 08-02 08:26

    Arm Keil Studio Visual Studio代码扩展用户指南

    Keil Studio Visual Studio代码扩展包提供了一个全面的软件 基于Arm的嵌入式系统和物联网软件开发环境微控制器(MCU
    发表于 08-02 07:21

    OpenVINOC++ API编写YOLOv8-Seg实例分割模型推理程序

    本文章将介绍使用 OpenVINO 2023.0 C++ API 开发YOLOv8-Seg 实例分割(Instance Segmentation)模型的 AI 推理程序。本文 C++
    的头像 发表于 06-25 16:09 741次阅读
    用<b class='flag-5'>OpenVINO</b>™ <b class='flag-5'>C++</b> API编写YOLOv8-Seg实例分割模型推理程序

    使用visual studio制作上位机

    波特率 打开串口 关闭串口 5.发送数据 6.小结使用visual studio 制作上位机 在嵌入式开发的后期,客户往往需要调试一些参数,为减少与工程师的反复对接,反复更新程序,此时开发
    发表于 05-10 11:00 8次下载
    使用<b class='flag-5'>visual</b> <b class='flag-5'>studio</b>制作上位机