ONNXRUNTIME介紹
ONNX格式模型部署兼容性最強(qiáng)的框架 ONNXRUNTIME,基本上不會(huì)有算子不支持跟不兼容的情況出現(xiàn),只要能導(dǎo)出ONNX格式模型,它基本上都能成功加載,成功推理。雖然在CPU速度不及OpenVINO、GPU上速度不及TensorRT,但是勝在兼容性強(qiáng),支持不同硬件上推理部署包括:ARM、CPU、GPU、AMD等,
可以通過設(shè)置不同的推理后臺(tái)支持,包括:
支持語言也非常豐富,不止于Python跟C++語言,支持列表如下:
支持的操作系統(tǒng)包括Windows、Android、烏班圖、iOS等。
Python版本安裝與測試
Python版本安裝特別容易,一條命令行搞定 CPU版本
pip install onnxruntime
GPU版本
pip install onnxruntime-gpu通過下面的API函數(shù)可以查詢當(dāng)前支持推理Provider,代碼如下:
運(yùn)行結(jié)果如下:
C++版本安裝與測試
首先需要下載安裝包,以 microsoft.ml.onnxruntime.gpu.1.13.1為例。首先需要配置包含目錄
D:microsoft.ml.onnxruntime.gpu.1.13.1buildnativeinclude
然后配置庫目錄:
D:microsoft.ml.onnxruntime.gpu.1.13.1runtimeswin-x64native
最后配置鏈接器,我的是支持CUDA版本,配置如下:
onnxruntime_providers_shared.lib onnxruntime_providers_cuda.lib onnxruntime.lib
最后把DLL文件copy到編譯生成的可執(zhí)行文件同一個(gè)目錄下,直接運(yùn)行即可。C++推理,簡單說分為四步,首先引入包含文件支持,再初始化推理會(huì)話對象Session,預(yù)處理圖像,然后執(zhí)行推理,最后完成后處理即可。
以ResNet18模型為例,導(dǎo)出ONNX格式,基于ONNXRUNTIME推理效果如下:
責(zé)任編輯:彭菁
-
硬件
+關(guān)注
關(guān)注
11文章
3483瀏覽量
67486 -
框架
+關(guān)注
關(guān)注
0文章
404瀏覽量
17891 -
模型
+關(guān)注
關(guān)注
1文章
3519瀏覽量
50411
原文標(biāo)題:ONNX模型部署利器ONNXRUNTIME框架
文章出處:【微信號(hào):CVSCHOOL,微信公眾號(hào):OpenCV學(xué)堂】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
使用模型優(yōu)化器命令將ONNX模型轉(zhuǎn)換為OpenVINO? IR格式時(shí)出現(xiàn)“ReplacementID”錯(cuò)誤怎么解決?
系統(tǒng)的電磁兼容性分析模型及設(shè)計(jì)方法
ONNX的相關(guān)資料分享
EIQ onnx模型轉(zhuǎn)換為tf-lite失敗怎么解決?
OpenHarmony 小型系統(tǒng)兼容性測試指南
將TensorFlow Lite模型轉(zhuǎn)換為ONNX
嵌入式Linux平臺(tái)部署AI神經(jīng)網(wǎng)絡(luò)模型Inference的方案

YOLOX模型ONNX格式說明
Flex Logix InferX X1M邊緣推理加速器
如何使用TensorRT框架部署ONNX模型
TorchVision框架下模型導(dǎo)出并部署到ONNXRUNTIME C++全流程解析

通過新的ONNX導(dǎo)出器簡化模型導(dǎo)出流程

評論