> 文档中心 > 技术分享 | OpenVINO及EdgeX摄像头管理和推理平台

技术分享 | OpenVINO及EdgeX摄像头管理和推理平台

技术分享 | OpenVINO及EdgeX摄像头管理和推理平台
在这里插入图片描述
关于2022 EdgeX中国挑战赛
2022 EdgeX中国挑战赛暨中关村国际前沿科技创新大赛EdgeX专题赛正式拉开帷幕。大赛由北京市科委、中关村管委会指导,由Linux基金会主办,由阿里云、百度智能云、EMQ、GSMA 5G IN、英特尔、InnoSpace、中科创达、VMware、紫竹ET孵化器等联合承办单位共同支持,将在线上线下同步开赛。
本次大赛分设两大赛道:医疗、教育、消费行业赛道和能源、工业、供应链赛道。大赛致力于构建一个物联网及边缘计算的学习和分享平台,基于EdgeX Foundry,针对不同赛道的多个应用场景,以共享技术投资解决行业技术问题。除了40w+人民币总奖励,参赛者还可以获得技术、资本、市场等一系列参赛回报。

为帮助参赛选手更好地了解并运用相关技术,本次大赛将在7月至9月持续开展3轮技术培训,涵盖初、中、高不同层级,帮助开发者系统学习智能边缘系统知识。我们邀请到来自英特尔、VMware、阿里云等多家机构的技术专家进行分享。

中级培训第二场分为上下半场。

上半场,英特尔AI软件布道师武卓为我们带来的培训主题为:OpenVINO开源工具套件介绍。下半场,英特尔平台解决方案架构师黄金法为我们带来的培训主题为:EdgeX摄像头管理和推理平台。本篇推文是中级培训系列课程回顾的第二辑。(点击回顾:中级培训第一场EdgeX Deep Dive)

1. OpenVINO开源工具套件介绍

在这次培训中,武卓布道师介绍了如何利用英特尔开源工具套件OpenVINO,按照简单的三个步骤,即可先实现对深度学习模型的优化及推理加速,并可在多种边缘设备上快速部署,快速实现利用OpenVINO进行深度学习推理的实践。
技术分享 | OpenVINO及EdgeX摄像头管理和推理平台
图注:OpenVINO——Visual,Inference,Neural Network and Optimization

1.1 OpenVINO诞生的背景

在OpenVINO诞生之前,部署高精度深度学习的方式主要为GPU和云端。然而GPU不方便携带,同时云端部署模型也存在需持续互联网连接,等待API接口反馈等不便之处。由此,提出了OpenVINO这个部署在CPU上这个方式,既解决了GPU和云端的劣势,也优化了使用CPU可能存在的运行速度慢等缺点。

1.2 OpenVINO的开发者使用

OpenVINO为开发者设计了建构,优化与部署的三大流程架构。
技术分享 | OpenVINO及EdgeX摄像头管理和推理平台图注:OpenVINO开发者使用三大流程

目前,OpenVINO开源工具套件已经可以支持绝大部分主流深度学习框架,如TensorFlow,PyTorch,Keras等等。在202.1的新版本中,PaddlePaddle也被OpenVINO全面支持兼容。同时,OpenVINO支持在多个硬件平台上部署,如CPU,GPU,VPU,FPGA等,且无论是Windows,Linux还是macOS系统都可以兼容OpenVINO。

技术分享 | OpenVINO及EdgeX摄像头管理和推理平台
图注:OpenVINO支持绝大部分主流深度学习框架
技术分享 | OpenVINO及EdgeX摄像头管理和推理平台
图注:OpenVINO兼容了非常广阔的库

1.3 OpenVINO优化工具

开发者在建构好深度学习框架后,OpenVINO提供了MO(Model Optimizer)优化方式、POT(Post-Training Optimization Tool)优化工具和NNCF(Neural Network Compression Framework)优化框架。

图注:MO优化逻辑(由初始框架优化为IR文件)
图注:MO优化逻辑(由初始框架优化为IR文件)

通过获取开发者的深度学习框架,MO会自行进行算法的优化,并最后输出为优化后的IR模型。而这整个优化操作仅需要以下一行代码即能实现:

$ mo --input_model model.onnx     --data_type FP32(也可以选择FP16)

IR模型是OpenVINO的Intermedia representation文件格式,内含两个文件,分别代表模型的结构和模型的参数权重。通过这两个文件,可以实现OpenVINO对模型基本的格式转换、优化,并便利之后模型在不同平台上部署与推理加速。

技术分享 | OpenVINO及EdgeX摄像头管理和推理平台
图注:POT优化工具优化逻辑

POT提供了对模型进一步优化的解决方案。其操作流程相对更加复杂,分别对IR模型的结构文件和原始训练数据集的一部分数据进行量化压缩,优化为IR-INT8的模型文件,模型大小和模型的推理速度都会有明显优化。

技术分享 | OpenVINO及EdgeX摄像头管理和推理平台
图注:NNCF优化工具优化逻辑

NNCF能对我们基于TensorFlow或PyTorch得到的神经网络模型在程序面进行进一步压缩,在压缩的过程中把模型精度损失保持在最小。通过一系列量化方法工具,能帮助我们在使用NNCF的过程中对模型进行重训练,在重训练的过程中既能得到对模型的量化和压缩,同时又能尽可能降低压缩导致的模型精度损失。

三种优化工具比较:

  • 使用难度:NO > POT > NNCF
  • 压缩精度NO ≈ NNCF > POT
  • POT需要部分原始数据集的数据,NNCF需要利用原始模型进行重训练

1.4 OpenVINO安装方法

OpenVINO可以通过ubuntu,红帽,Python,anaconda等方式进行安装。大家可以扫描下方的二维码获取各平台OpenVINO安装流程。

1.5 OpenVINO推理逻辑

OpenVINO能极大程度简化深度学习与神经网络计算的推理逻辑,且支持众多类型的设备。

Compiled_model = core.compile_model(model = model, device_name = "CPU")
  • *CPU可以替换为GPU,MYRIAD,HETERO,MULTI等多种设备;也可以替换为AUTO,可以更加方便地进行多设备部署,根据实际情况自动选择推理设备。

技术分享 | OpenVINO及EdgeX摄像头管理和推理平台
图注:仅需六行代码即能实现狗的图像识别推理

1.6 动态输入支持

技术分享 | OpenVINO及EdgeX摄像头管理和推理平台
图注:新增的动态输入支持可以为自然语言处理等深度学习算法服务

1.7 OpenVINO Notebooks

技术分享 | OpenVINO及EdgeX摄像头管理和推理平台
图注:OpenVINO Notebooks代码示例

2. EdgeX摄像头管理和推理平台

黄金法架构师在本次培训中介绍了EdgeX新推出的ONVIF摄像头接入和管理功能,本次培训重点介绍新功能架构、技术和验证测试方法等。
技术分享 | OpenVINO及EdgeX摄像头管理和推理平台
图注:EVAM参考技术栈

DL(Deep Learning) Streamer是Intel开源的深度学习处理软件平台,也是服务于EdgeX视频分析(EVAM)的核心处理平台。
DL Streamer Pipeline Server获取地址:
https://github.com/dlstreamer/pipeline-server

技术分享 | OpenVINO及EdgeX摄像头管理和推理平台
图注:EVAM安装与运行微服务

EdgeX官方提供了EVAM安装与运行的微服务,软件下载地址为:
https://software.intel.com/iot/edgesoftwarehub/download/home/ri/video_analytics
技术分享 | OpenVINO及EdgeX摄像头管理和推理平台
图注:EVAM使用教程

开发者可以根据Intel官网提供的EVAM使用教程进行开源EVAM的应用,教程地址为:
https://www.intel.com/content/www/us/en/developer/articles/technical/video-analytics-service.html

通过EVAM开启Pipeline需要设置下列参数:

  1. Source
  • File Source
  • IP Camera(RTSP Source)
  • Web Camera
  1. Destination
  • Metadata
  • File
  • MQTT
  • Kafka
  1. Frame
  • RTSP
  • WebRTC
    技术分享 | OpenVINO及EdgeX摄像头管理和推理平台图注:社区简化版EVAM指令安装

开发者也可以通过上图中EdgeX简化版的指令安装方式进行EVAM的安装,并通过下图所示视频分析Demo去安装Demo APP。

技术分享 | OpenVINO及EdgeX摄像头管理和推理平台
图注:Demo APP及支持设备的安装方式

Demo APP安装后,可以通过Demo APP查看摄像头,开启Pipeline。并通过EVAM查看推理后视频信息,通过VLC查看推理后视频,通过MQTT Broker(mosquitto)查看推理时间信息。

3. 直播答疑

Question Answer
Intel的VPU似乎不做了,但其边缘计算的推理加速非常不错。请问有什么替代方案吗? OpenVINO就是专门为提高深度学习边缘计算的推理加速功能而设计的,大家可以尝试一下POT,NNCF这些压缩量化模型,把模型压缩为INT-8格式的文件,可以进一步提高推理加速能力。
我的macbook是M1版本,请问能支持运行吗? 我们目前的版本是支持运行的。

————————————————

最后,让我们一起来看看今天的练习题吧~ (答案于文章最后公布)
01(多选)OpenVINO在企业应用优势包括?
A、提升能耗、降低时延
B、数据保存在边缘端、保护用户隐私
C、可以有效利用企业现有基础设施,不用重新搭建
D、不同软件采用不同API调用,更加灵活

02(多选)OpenVINO支持在哪些Intel的硬件产品上部署?
A、CPU
B、IGPU
C、VPU
D、FPGA

03(多选)OpenVINO开源工具包主要的三步开发者旅程包括?
A、创建Build
B、训练Train
C、优化Optimize
D、部署Deploy

————————————————

2022 EdgeX中国挑战赛已于8月3日盛大开幕,EdgeX中文社区将在接下来的日子里为大家带来更多边缘计算讲座分享和赛事进度更新。在这个盛夏,让我们一起展现风采,从自身所学的领域出发,为物联网、边缘计算市场提供更多更好的解决方案,展望一个更好的科技未来。

第三届EdgeX中国挑战赛,邀您来赛

多场景落地前景可期
全链条助阵生态共建
阶梯式培训同期推进
大奖与荣誉虚位以待

2022EdgeX中国挑战赛正在火热报名中,报名时间:2022年8月3日00:00 - 9月5日24:00。参与大赛,共同推动万物互联,请即刻联系我们。

大赛官网:https://www.edgex-challenge.com/


————————————————
**答案:**1. ABC 2. ABCD 3. ACD

KTV音响网