在《英特爾銳炫 顯卡+ oneAPI 和 OpenVINO 實(shí)現(xiàn)英特爾 視頻 AI 計(jì)算盒訓(xùn)推一體-上篇》一文中,我們詳細(xì)介紹基于英特爾 獨(dú)立顯卡搭建 YOLOv7 模型的訓(xùn)練環(huán)境,并完成了 YOLOv7 模型訓(xùn)練,獲得了最佳精度的模型權(quán)重:
本文將繼續(xù)介紹使用 OpenVINO 優(yōu)化并部署已訓(xùn)練好的 YOLOv7 模型。
使用 OpenVINO 優(yōu)化并部署
訓(xùn)練好的YOLOv7 模型
我們可以進(jìn)一步使用 OpenVINO 來優(yōu)化經(jīng)過訓(xùn)練的 YOLOv7 模型,并將其部署到多個(gè)英特爾 硬件平臺,包括英特爾CPU、集成顯卡和獨(dú)立顯卡等。整個(gè)部署過程可以通過以下步驟來實(shí)現(xiàn):
檢查來自訓(xùn)練模型的推理結(jié)果
訓(xùn)練好的模型,推理效果究竟如何?可使用如下命令查看推理效果:
python -W ignore detect.py --weights ./ runs/train/yolov7_tiny_pothole_fixed_res/weights/best.pt --conf 0.25 --img-size 640 --source ../pothole_dataset/images/test/G0026953.jpg
向右滑動(dòng)查看完整代碼
同時(shí),可以利用如下命令打印出推理結(jié)果圖:
from PIL import Image # visualize prediction result Image.open('runs/detect/exp5/G0026953.jpg')
向右滑動(dòng)查看完整代碼
推理結(jié)果如下圖所示:
將模型導(dǎo)出為 ONNX 格式
使用如下命令將訓(xùn)練好的模型導(dǎo)出為 ONNX 格式:
python -W ignore export.py --weights ./ runs/train/yolov7_tiny_pothole_fixed_res/weights/best.pt --grid
向右滑動(dòng)查看完整代碼
將模型轉(zhuǎn)換為 OpenVINO IR 格式
使用 model conversion API 將模型轉(zhuǎn)為 OpenVINOIR 格式:
from openvino.tools import mo from openvino.runtime import serialize model = mo.convert_model('model_trained/best.onnx') # serialize model for saving IR serialize(model, 'model_trained/best.xml')
向右滑動(dòng)查看完整代碼
利用 OpenVINO runtime
在獨(dú)立顯卡上運(yùn)行推理
使用以下命令在英特爾GPU上使用 OpenVINO Runtime 運(yùn)行推理,因?yàn)槲业臋C(jī)器上有一個(gè)集成 GPU,所以 OpenVINO 的運(yùn)行時(shí)設(shè)備名稱需要設(shè)置為“GPU.1”。
from openvino.runtime import Core core = Core() # read converted model model = core.read_model('model_trained/best.xml') # load model on CPU device compiled_model = core.compile_model(model, 'GPU.1')
向右滑動(dòng)查看完整代碼
利用 226-yolov7-optimization 中定義的前處理及后處理函數(shù),我們可以將 OpenVINO 推理結(jié)果可視化,如下圖所示:
完整的YOLOv7推理代碼已開源到(請復(fù)制鏈接到瀏覽器):
https://github.com/openvinotoolkit/openvino_notebooks/notebooks/226-yolov7-optimization.ipynb
總結(jié)
到此,基于英特爾?視頻 AI 計(jì)算盒打造一個(gè)從模型訓(xùn)練到優(yōu)化部署的AI 訓(xùn)推一體流水線(Train & Inference pipeline)的完整過程已介紹完畢,所有代碼已開源到(請復(fù)制鏈接到瀏覽器):
https://github.com/zhuo-yoyowz/training-deployment-dGPU
歡迎大家將上述代碼克隆到本機(jī)并使用,遇到問題也歡迎到我的 GitHub Repo 上留言。
關(guān)于英特爾 OpenVINO 開源工具套件的詳細(xì)資料,包括其中我們提供的三百多個(gè)經(jīng)驗(yàn)證并優(yōu)化的預(yù)訓(xùn)練模型的詳細(xì)資料。
除此之外,為了方便大家了解并快速掌握 OpenVINO 的使用,我們還提供了一系列開源的 Jupyter notebook demo。運(yùn)行這些 notebook,就能快速了解在不同場景下如何利用 OpenVINO 實(shí)現(xiàn)一系列、包括計(jì)算機(jī)視覺、語音及自然語言處理任務(wù)。OpenVINO notebooks的資源可以在 Github 這里下載安裝(請復(fù)制鏈接到瀏覽器):
https://github.com/openvinotoolkit/openvino_notebooks
審核編輯:湯梓紅
-
英特爾
+關(guān)注
關(guān)注
60文章
9861瀏覽量
171291 -
顯卡
+關(guān)注
關(guān)注
16文章
2418瀏覽量
67391 -
AI
+關(guān)注
關(guān)注
87文章
29806瀏覽量
268106 -
模型
+關(guān)注
關(guān)注
1文章
3112瀏覽量
48660 -
OpenVINO
+關(guān)注
關(guān)注
0文章
83瀏覽量
168
原文標(biāo)題:英特爾銳炫? 顯卡 + oneAPI 和 OpenVINO? 實(shí)現(xiàn)視頻 AI 計(jì)算盒訓(xùn)推一體:下篇 | 開發(fā)者實(shí)戰(zhàn)
文章出處:【微信號:英特爾物聯(lián)網(wǎng),微信公眾號:英特爾物聯(lián)網(wǎng)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論