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++
    +关注

    关注

    22

    文章

    2104

    浏览量

    73496
  • Visual
    +关注

    关注

    0

    文章

    252

    浏览量

    34223
  • Microsoft
    +关注

    关注

    0

    文章

    210

    浏览量

    6834

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

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

收藏 人收藏

    评论

    相关推荐

    Vector推出一套基于Visual Studio Code的免费插件

    汽车软件开发过程中,除使用MATLAB开发算法外,专业开发者也偏向使用Visual Studio
    的头像 发表于 11-24 14:15 104次阅读
    Vector推出一套基于<b class='flag-5'>Visual</b> <b class='flag-5'>Studio</b> Code的免费插件

    使用OpenVINO GenAI APIC++构建AI应用程序

    许多桌面应用程序是使用 C++ 开发的,而将生成式AI(GenAI)功能集成到这些应用程序可能会很具有挑战性,尤其是因为使用像 Hugging Face 这样的 Python 库的复杂性。C
    的头像 发表于 10-12 09:36 308次阅读
    使用<b class='flag-5'>OpenVINO</b> GenAI API<b class='flag-5'>在</b><b class='flag-5'>C++</b><b class='flag-5'>中</b>构建AI应用程序

    嵌入式学习-飞凌嵌入式ElfBoard ELF 1板卡-开发环境搭建之VScode的安装及使用

    (Simplified) Language Pack for Visual Studio Code:中文语音包 Code Runner:语音运行环境 Remote - SSH:远程服务协议 Compareit:文件对比
    发表于 10-09 15:44

    飞凌嵌入式ElfBoard ELF 1板卡-开发环境搭建之VScode的安装及使用

    for Visual Studio Code:中文语音包Code Runner:语音运行环境Remote - SSH:远程服务协议Compareit:文件对比插件Document This:快速注释
    发表于 09-30 09:40

    OpenVINO2024 C++推理使用技巧

    很多人都使用OpenVINO新版的C++ 或者Python的SDK,都觉得非常好用,OpenVINO2022之后的版本C++ SDK做了大量的优化与整理,已经是非常贴近
    的头像 发表于 07-26 09:20 790次阅读

    求助,用visual studio 2017开发esp32的问题求解

    各位好,esp32开发我这边用的是visual studio 2017+visual的形式,我在打开工程样例文件后,编译通过并成功烧录,但是右击“source Files”文件夹想添加
    发表于 06-25 07:07

    HarmonyOS开发:【基于命令行(开发环境)】

    嵌入式开发,很多开发者习惯于使用Windows进行代码的编辑,比如使用Windows
    的头像 发表于 04-25 17:54 1226次阅读
    HarmonyOS<b class='flag-5'>开发</b>:【基于命令行(<b class='flag-5'>开发</b><b class='flag-5'>环境</b>)】

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

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

    鸿蒙OpenHarmony【搭建Windows环境

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

    鸿蒙OS开发实例:【Native C++

    使用DevEco Studio创建一个Native C++应用。应用采用Native C++模板,实现使用NAPI调用C标准库的功能。使用C
    的头像 发表于 04-14 11:43 2506次阅读
    鸿蒙OS<b class='flag-5'>开发</b>实例:【Native <b class='flag-5'>C++</b>】

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

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

    Simplicity Studio 5扩增功能支持以VS Code开发

    应用程序开发的支持。此一功能扩展可让开发人员VSCode生态系统构建、刷新和调试。用户可以使用VS Code作为主要的IDE,同时仍然能够使用熟悉和喜爱的项目
    的头像 发表于 01-29 10:34 874次阅读
    Simplicity <b class='flag-5'>Studio</b> 5扩增功能支持以VS Code<b class='flag-5'>开发</b>

    常用的c语言开发环境有哪些

    )、文本编辑器和编译器等工具。 IDE(集成开发环境) IDE是一种集成了文本编辑器、编译器和调试工具等功能的开发环境,可以极大地提高开发
    的头像 发表于 11-27 16:14 5663次阅读

    visualc++怎么新建c语言文件

    Visual C++ 是一个集成开发环境(IDE),用于开发 C
    的头像 发表于 11-27 15:57 3594次阅读

    c++怎么开始编程

    应用程序、嵌入式系统和网络应用程序等各种领域。 开始编程之前,你需要安装C++的编程环境。首先,你需要下载并安装一个编译器,比如微软的Visual
    的头像 发表于 11-27 15:56 895次阅读