C++:YOLOV5 OpenCV-DNN onnx模型实时推理

对YOLOV5官网推荐的DNN(C++版)推理代码的学习心得。

代码上传至

GitHub - zzbbzz626/yolov5-DNN-inferenceContribute to zzbbzz626/yolov5-DNN-inference development by creating an account on GitHub.https://github.com/zzbbzz626/yolov5-DNN-inferenceOpenCV version >= 4.5

C++:YOLOV5 OpenCV-DNN onnx模型实时推理_第1张图片

YOLO检测头的大小可以通过上图计算过程计算。

C++:YOLOV5 OpenCV-DNN onnx模型实时推理_第2张图片

检测头预测厚度为[x,y,w,h,conf,cls] cls=class number。当采用单分类时cls=1,因此图中的厚度为6。

在更改推理模型为自己训练的不同版本的YOLOV5推理出的onnx文件时,只需要更改程序的78、79行中的dimensions=自己训练模型的厚度,row=3x((img/8)^2+(img/16)^2+(img/32)^2)即可。

C++:YOLOV5 OpenCV-DNN onnx模型实时推理_第3张图片

 本文是将计算分析步骤分享出来,与大家一起进步学习!

源代码地址为:https://github.com/doleron/yolov5-opencv-cpp-python

你可能感兴趣的:(深度学习,计算机视觉)