ONNXRUNTIME介绍
ONNX格式模型部署兼容性最强的框架 ONNXRUNTIME,基本上不会有算子不支持跟不兼容的情况出现,只要能导出ONNX格式模型,它基本上都能成功加载,成功推理。虽然在CPU速度不及OpenVINO、GPU上速度不及TensorRT,但是胜在兼容性强,支持不同硬件上推理部署包括:ARM、CPU、GPU、AMD等,
可以通过设置不同的推理后台支持,包括:
支持语言也非常丰富,不止于Python跟C++语言,支持列表如下:
支持的操作系统包括Windows、Android、乌班图、iOS等。
Python版本安装与测试
Python版本安装特别容易,一条命令行搞定 CPU版本
pip install onnxruntime
GPU版本
pip install onnxruntime-gpu通过下面的API函数可以查询当前支持推理Provider,代码如下:
运行结果如下:
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到编译生成的可执行文件同一个目录下,直接运行即可。C++推理,简单说分为四步,首先引入包含文件支持,再初始化推理会话对象Session,预处理图像,然后执行推理,最后完成后处理即可。
以ResNet18模型为例,导出ONNX格式,基于ONNXRUNTIME推理效果如下:
责任编辑:彭菁
-
硬件
+关注
关注
11文章
3491浏览量
67614 -
框架
+关注
关注
0文章
404浏览量
17945 -
模型
+关注
关注
1文章
3531浏览量
50566
原文标题:ONNX模型部署利器ONNXRUNTIME框架
文章出处:【微信号:CVSCHOOL,微信公众号:OpenCV学堂】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
使用模型优化器命令将ONNX模型转换为OpenVINO? IR格式时出现“ReplacementID”错误怎么解决?
系统的电磁兼容性分析模型及设计方法
EIQ onnx模型转换为tf-lite失败怎么解决?
OpenHarmony 小型系统兼容性测试指南
将TensorFlow Lite模型转换为ONNX
嵌入式Linux平台部署AI神经网络模型Inference的方案

YOLOX模型ONNX格式说明
Flex Logix InferX X1M边缘推理加速器
如何使用TensorRT框架部署ONNX模型
TorchVision框架下模型导出并部署到ONNXRUNTIME C++全流程解析

评论