pytorch 42 C#使用onnxruntime部署内置nms的yolov8模型

在进行目标检测部署时,通常需要自行编码实现对模型预测结果的解码及与预测结果的nms操作。所幸现在的各种部署框架对算子的支持更为灵活,可以在模型内实现预测结果的解码,但仍然需要自行编码实现对预测结果的nms操作。其实在onnx opset===11版本以后,其已支持将nms操作嵌入到模型中,具体可以参考https://hpg123.blog.csdn.net/article/details/131585808,修改代码实现yolov8模型onnx下的无nms导出。本博文主要介绍基于onnxruntime在c#下部署含nms的yolov8模型。

1、运行环境安装

安装运行依赖opencv与onnxruntime
在nuget中安装onnxruntime与opencv,一一共安装以下4个库。

安装步骤参考
https://blog.csdn.net/qq_36694133/article/details/128209770
opencv安装步骤参考
https://blog.csdn.net/sinat_37281674/article/details/119987327
pytorch 42 C#使用onnxruntime部署内置nms的yolov8模型_第1张图片

2、部署模型

2.1 完整代码

代码中模型下载地址为:https://gitcode.net/a486259/model/-/blob/master/yolov8s_nms.onnx
也可以换成自己导出的模型。

using 

你可能感兴趣的:(pytorch工程实践,pytorch,c#,YOLO)