技术分享 | 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——Visual,Inference,Neural Network and Optimization
1.1 OpenVINO誕生的背景
在OpenVINO誕生之前,部署高精度深度學習的方式主要為GPU和云端。然而GPU不方便攜帶,同時云端部署模型也存在需持續互聯網連接,等待API接口反饋等不便之處。由此,提出了OpenVINO這個部署在CPU上這個方式,既解決了GPU和云端的劣勢,也優化了使用CPU可能存在的運行速度慢等缺點。
1.2 OpenVINO的開發者使用
OpenVINO為開發者設計了建構,優化與部署的三大流程架構。
圖注:OpenVINO開發者使用三大流程
目前,OpenVINO開源工具套件已經可以支持絕大部分主流深度學習框架,如TensorFlow,PyTorch,Keras等等。在202.1的新版本中,PaddlePaddle也被OpenVINO全面支持兼容。同時,OpenVINO支持在多個硬件平臺上部署,如CPU,GPU,VPU,FPGA等,且無論是Windows,Linux還是macOS系統都可以兼容OpenVINO。
圖注:OpenVINO支持絕大部分主流深度學習框架
圖注:OpenVINO兼容了非常廣闊的庫
1.3 OpenVINO優化工具
開發者在建構好深度學習框架后,OpenVINO提供了MO(Model Optimizer)優化方式、POT(Post-Training Optimization Tool)優化工具和NNCF(Neural Network Compression Framework)優化框架。
圖注:MO優化邏輯(由初始框架優化為IR文件)
通過獲取開發者的深度學習框架,MO會自行進行算法的優化,并最后輸出為優化后的IR模型。而這整個優化操作僅需要以下一行代碼即能實現:
$ mo --input_model model.onnx--data_type FP32(也可以選擇FP16)IR模型是OpenVINO的Intermedia representation文件格式,內含兩個文件,分別代表模型的結構和模型的參數權重。通過這兩個文件,可以實現OpenVINO對模型基本的格式轉換、優化,并便利之后模型在不同平臺上部署與推理加速。
圖注:POT優化工具優化邏輯
POT提供了對模型進一步優化的解決方案。其操作流程相對更加復雜,分別對IR模型的結構文件和原始訓練數據集的一部分數據進行量化壓縮,優化為IR-INT8的模型文件,模型大小和模型的推理速度都會有明顯優化。
圖注: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,可以更加方便地進行多設備部署,根據實際情況自動選擇推理設備。
圖注:僅需六行代碼即能實現狗的圖像識別推理
1.6 動態輸入支持
圖注:新增的動態輸入支持可以為自然語言處理等深度學習算法服務
1.7 OpenVINO Notebooks
圖注:OpenVINO Notebooks代碼示例
2. EdgeX攝像頭管理和推理平臺
黃金法架構師在本次培訓中介紹了EdgeX新推出的ONVIF攝像頭接入和管理功能,本次培訓重點介紹新功能架構、技術和驗證測試方法等。
圖注:EVAM參考技術棧
DL(Deep Learning) Streamer是Intel開源的深度學習處理軟件平臺,也是服務于EdgeX視頻分析(EVAM)的核心處理平臺。
DL Streamer Pipeline Server獲取地址:
https://github.com/dlstreamer/pipeline-server
圖注:EVAM安裝與運行微服務
EdgeX官方提供了EVAM安裝與運行的微服務,軟件下載地址為:
https://software.intel.com/iot/edgesoftwarehub/download/home/ri/video_analytics
圖注:EVAM使用教程
開發者可以根據Intel官網提供的EVAM使用教程進行開源EVAM的應用,教程地址為:
https://www.intel.com/content/www/us/en/developer/articles/technical/video-analytics-service.html
通過EVAM開啟Pipeline需要設置下列參數:
- File Source
- IP Camera(RTSP Source)
- Web Camera
- Metadata
- File
- MQTT
- Kafka
- RTSP
- WebRTC
圖注:社區簡化版EVAM指令安裝
開發者也可以通過上圖中EdgeX簡化版的指令安裝方式進行EVAM的安裝,并通過下圖所示視頻分析Demo去安裝Demo APP。
圖注:Demo APP及支持設備的安裝方式
Demo APP安裝后,可以通過Demo APP查看攝像頭,開啟Pipeline。并通過EVAM查看推理后視頻信息,通過VLC查看推理后視頻,通過MQTT Broker(mosquitto)查看推理時間信息。
3. 直播答疑
| 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
總結
以上是生活随笔為你收集整理的技术分享 | OpenVINO及EdgeX摄像头管理和推理平台的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 80后的生存法则
- 下一篇: 走出计算机安全防范的六个误区