本教程詳細記錄了在 ubuntu 上使用 openvino 進行推理的方法。
文章目錄
-
- 1、安裝 openvino 和 open_model_zoo
- 2、典型模型下載下傳
- 3、模型優化
- 4、模型推理
1、安裝 openvino 和 open_model_zoo
可以參考我這篇 《【模型推理】ubuntu 配置和使用 openvino》進行 openvino 的環境配置。
2、典型模型下載下傳
cd open_model_zoo/tools/downloader
## 下載下傳典型模型
./downloader.py --all -j8
完了會生成兩個檔案夾,intel 和 public,其中 public 中存放了各架構的預訓練模型檔案(包括 caffe、tf、pytorch、onnx、mxnets),intel 中是經過了 openvino model optimizer 後的對應的模型檔案
.xml
、
.bin
。
-
:表述了網絡的拓撲結構.xml
-
:包含了網絡的權重和偏置.bin
3、模型優化
第2步中下載下傳的 intel/* 中的是直接給你用的優化好的模型檔案,那麼如果手上隻有預訓練模型,怎麼進行模型優化并生成推理引擎能用的
.xml
和
.bin
呢。以 googlenet 為例,需要這樣:
執行完後在檔案夾
<ir_dir>
裡會生成
googlenet-v1.bin
、
googlenet-v1.xml
。
4、模型推理
openvino 整個模型推理的邏輯圖如下:
![](https://img.laitimes.com/img/_0nNw4CM6IyYiwiM6ICdiwiIyVGduV2YfNWawNyZuBnLwEmYzAzY4QDOyUGOjFTN4AjYxQjYlFGNlNDZ1QWY1Q2Lc52YucWbp5GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.png)
在編譯 openvino 的時候會同時編譯一些 C++ 推理的demo,源碼在
openvino/inference-engine/samples
,可以看看,和 TRT 等其他架構的推理流程都差不多。
同樣以 googlenet 為例,用分類的 demo 進行測試,如下:
cd <OPENVINO_DIR>/bin/intel64/Release
./classification_sample_async -i <OPENVINO_DIR>/scripts/demo/car.png -m <ir_dir>/googlenet.xml -d CPU
成功執行會生成如下日志:
收工~
掃描下方二維碼即可關注我的微信公衆号【極智視界】,擷取更多AI經驗分享,讓我們用極緻+極客的心态來迎接AI !