1.导出ONNX模型
- 通过yolov5中的export.py导出ONNX模型。将export.py文件中的参数按训练的修改,如:‘–data’、‘–weights’、‘–imgsz’。点击运行。
2.C#调用yolo的
1. 下载C#运行YOLOv5的代码
1.github中有一个使用C#运行YOLOv5的代码:Yolov5Net
2. 安装程序包
- 安装如下第一个软件包。
需要安装以下库:
Microsoft.ML.OnnxRuntime.Gpu (ONNX运行时)
OpenCvSharp4.Extensions (输出图像框定对象使用)
OpenCvSharp4.Windows (输出图像框定对象使用)
3. 修改YoloCocoP6Model中的参数
- 我用yolov5-v6.1版本(yolov5-v5.0版本报超出索引,不知道为啥)。
- yolov5-v6.1版本需要用YoloCocoP6Model.cs,修改参数:
1)将图片宽高(Width/Height)改为与模型训练/测试的相同。
2)Dimensions为:标签种类+5。
3)将Labels函数中的参数改为自己的标签。
4.C#使用ONNX模型
- ONNX通过scorer调用,路径为绝对路径,使用的yolov5-v6.1版本。使用v5.0报错。
- 图片路径也为绝对路径。
- scorer = new YoloScorer(@“D:\skye\Yolov5Net-v1.0\Yolov5NetW\bin\best.onnx”, SessionOptions.MakeSessionOptionWithCudaProvider(0));—使用GPU检测。
参考文章:
参考文章