大数跨境
0
0

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

在Ubuntu上搭建OpenVINOTM C++ 程序开发环境 极市平台
2023-08-30
0
↑ 点击蓝字 关注极市平台
作者丨伍增 邓书梦 广东荣旭智能技术有限公司
编辑丨极市平台

目录

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

1 安装GCC编译器

2安装C/C++ Extension Pack插件

2.1 配置C++调试环境

3 安装OpenVINO^TM^ Runtime

4 为IntelliSense配置Include path

5 基于CMake编译和构建OpenVINO C++程序

6 总结

在应用Anomalib和OpenVINO实现瑕疵检测的过程中,经常会在Ubuntu下训练并部署AI模型。笔者一直在Windows上开发程序,比较喜欢Visual Studio这种集成开发环境,为了在Ubuntu上也能拥有类似Visual Studio的开发体验,笔者探索出基于Anaconda和VS Code,搭建OpenVINO^TM^ C++程序开发环境的方式。

在搭建C++程序开发环境前,请参考《英特尔开发者套件 + OpenVINO™ (Anomalib)搭建 AI 缺陷检测开发环境》安装Anaconda和VS Code。

整个搭建过程分为五步,本文依次介绍:

  1. 安装GCC编译器

  2. 安装C/C++ Extension Pack插件

  3. 安装OpenVINOTM Runtime

  4. 为IntelliSense配置Include path

  5. 基于CMake编译和构建OpenVINO C++程序

1 安装GCC编译器

GCC是Linux平台上广泛使用的C++编译器,请使用命令完成GCC安装:

sudo apt update

sudo apt install build-essential gdb

运行: gcc --version, 确认GCC已经安装成功,如图1-1所示。

图1-1 GCC已安装成功

2 安装C/C++ Extension Pack插件

C/C++ Extension Pack是微软官方发布的用于C/C++程序开发、编译和调试的VS Code插件,它包含C/C++, C/C++ Themes, CMake和CMake Tools四个插件。

首选切换到Extensions,然后搜索"C/C++",找到C/C++ Extension Pack插件后,点击"Install"按钮,完成安装,如图1-2所示。

图1-2 查找并安装C/C++插件

2.1 配置C++调试环境

第一步,请新建一个名叫ov_cpp的文件夹,并新建一个名叫hello_world.cpp文件,如图1-3所示。

图1-3 新建hello_world.cpp文件

第二步,在行号左边的空白处单击鼠标左键,添加一个断点,然后使用快捷键"F5"启动调试,若出现调试工具栏,并能单步运行程序,如图1-4所示,说明C++调试环境已由VS Code自动配置成功。

图1-4 启动调试

3 安装OpenVINO^TM^ Runtime

在Linux平台,OpenVINO^TM^ Runtime提供Conda方式便捷安装OpenVINO^TM^ Runtime,假设读者已按照《英特尔开发者套件 + OpenVINO™ (Anomalib)搭建 AI 缺陷检测开发环境》创建并激活了名叫ov虚拟环境,使用命令完成OpenVINO^TM^ Runtime安装,如图1-5所示:

conda update \--all

conda install -c conda-forge openvino
图1-5 安装OpenVINO^TM^ Runtime

4 为IntelliSense配置Include path

IntelliSense是VS Code中的代码自动补全工具,安装完OpenVINO^TM^ Runtime后,需要将OpenVINO Runtime的头文件路径填入"Include path",IntelliSense才能自动补全OpenVINO Runtime API函数。

首先,请用locate命令查看openvino.hpp和libopenvino.so的位置,如图1-6所示。

图1-6 查看openvino.hpp和libopenvino.so的位置

然后,将OpenVINO Runtime的头文件路径加入VS Code中"Include path",如图1-7所示。

图1-7 IntelliSense的搜索路径

使用快捷键"ctrl+shift+p"启动命令面板,然后搜索"c/c++ edit configuration(UI)",把"/home/ov/anaconda3/envs/ov/include"添加到"Include path",如图1-8所示。

图1-8 添加openvino runtime头文件路径到Include path

5 基于CMake编译和构建OpenVINO C++程序

在Linux平台上,用CMake来配置C++程序的编译和构建过程是最方便的。首先使用命令,安装cmake:

sudo apt update

sudo apt install cmake

参考《Get started with CMake Tools on Linux》,通过快捷键:Ctrl+Shift+P,启动命令面板,然后运行命令:CMake: Quick Start,快速创建一个带CMakeLists.txt和build文件夹的项目,并在CMakeLists.txt添加OpenVINO^TM^ Runtime库,如图1-9所示。

图1-9 在CMakeLists.txt中添加OpenVINO^TM^ Runtime库

接着,新建main.cpp文件,依次点击状态栏中的Build运行 完成OpenVINO C++程序的编译,可执行文件生成和运行,如图1-10所示。

程序清单 1-1 main.cpp

#include <iostream>
#include <openvino/openvino.hpp>
int main(int, char**){
    
    // -------- 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;
    }
}
图1-10 构建并运行OpenVINO C++程序

6 总结

本文详细介绍了在Ubuntu22.04 LTS下安装OpenVINO^TM^ Runtime、CMake和VS Code工具的全过程,并完成了OpenVINO^TM^ C++代码开发环境的搭建。通过VS Code和CMake工具,开发者可以快速实现OpenVINO^TM^ C++代码的编写、编译、调试和运行。读者有进一步的需求,欢迎随时联系我。

广东荣旭智能技术有限公司官网:https://www.gdrosmart.com/

公众号后台回复“数据集”获取100+深度学习各方向资源整理

极市干货

技术专栏:多模态大模型超详细解读专栏搞懂Tranformer系列ICCV2023论文解读极市直播
极视角动态欢迎高校师生申报极视角2023年教育部产学合作协同育人项目新视野+智慧脑,「无人机+AI」成为道路智能巡检好帮手!
技术综述:四万字详解Neural ODE:用神经网络去刻画非离散的状态变化transformer的细节到底是怎么样的?Transformer 连环18问!

点击阅读原文进入CV社区

收获更多技术干货

【声明】内容源于网络
0
0
极市平台
为计算机视觉开发者提供全流程算法开发训练平台,以及大咖技术分享、社区交流、竞赛实践等丰富的内容与服务。
内容 8155
粉丝 0
极市平台 为计算机视觉开发者提供全流程算法开发训练平台,以及大咖技术分享、社区交流、竞赛实践等丰富的内容与服务。
总阅读919
粉丝0
内容8.2k