YOLOv5】LabVIEW+OpenVINO讓你的YOLOv5在CPU上飛起來
前言
上一篇部落格給大家介紹了使用opencv載入YOLOv5的onnx模型,但我們發現使用CPU進行推理檢測確實有些慢,那難道在CPU上就不能愉快地進行物體識別了嗎?當然可以啦,這不LabVIEW和OpenVINO就來了嘛!今天就和大家一起看一下如何在CPU上也能感受絲滑的實時物體識別。
一、OpenVINO是什麼
OpenVINO是英特爾針對自家硬體平台開發的一套深度學習工具庫,用於快速部署應用和解決方案,包含推斷庫,模型優化等等一系列與深度學習模型部署相關的功能。
特點:
-
在邊緣啟用基於CNN的深度學習推理
-
支援通過英特爾®Movidius™VPU在英特爾®CPU,英特爾®集成顯示卡,英特爾®神經計算棒2和英特爾®視覺加速器設計之間進行異構執行
-
通過易於使用的電腦視覺功能庫和預先優化的內核加快上市時間
-
包括對電腦視覺標準(包括OpenCV *和OpenCL™)的優化調用
-
通俗易懂點說想要在intel-cpu或者嵌入式上部署深度學習模型,可以考慮考慮openvino
二、LabVIEW視覺工具包下載與配置
1、視覺工具包的下載安裝
可在如下鏈接中下載並安裝工具包://www.cnblogs.com/virobotics/p/16527821.html
2、OpenVINO toolkit下載安裝
下載地址:
2)選擇版本,選擇如下版本,並DownLoad:
3)下載後,運行安裝即可!
4)可以選擇安裝路徑,具體安裝可以參考官方文檔:
三、模型獲取
openvino工作流程,和其他的部署工具都差不多,訓練好模型,解析成openvino專用的.xml和.bin,隨後傳入Inference Engine中進行推理。這裡和上一篇部落格一樣可以使用export.py導出openvino模型:python export.py –weights yolov5s.pt –include openvino 當然這裡已經為大家轉換好了模型,大家可以直接下載,下載鏈接:
四、LabVIEW+OpenVINO調用Yolov5進行實時物體識別
1、實現過程
-
dnn模組調用IR模型(模型優化器)
-
設置計算後台與計算目標設備(推理引擎加速)
-
獲取輸出端的LayerName
-
影像預處理
-
推理
-
後處理
-
繪製檢測出的對象
2、程式源碼
3、識別結果
CPU模式下,使用openvino進行推理加速,實時檢測推理用時僅95ms/frame,是之前載入速度的三分之一
注意:readNetFromModelOptimizer.vi中IR模型路徑不可以包含中文
附加說明:電腦環境
-
作業系統:Windows10
-
python:3.6及以上
-
LabVIEW:2018及以上 64位版本
-
視覺工具包:techforce_lib_opencv_cpu-1.0.0.73.vip
-
OpenVINO:2021.4.2
以上就是今天要給大家分享的內容。
如需源碼,請關注微信公眾號VIRobotics,回復關鍵詞:yolov5_openvino。