当前位置:   article > 正文

C++ OnnxRuntime部署yolov8模型

C++ OnnxRuntime部署yolov8模型

本篇主要介绍yolov8检测和分割模型利用OnnxRuntime进行部署。

yolov8链接:YOLOV8

部署环境:VS2017

配置环境:OpenCV、OnnxRuntime

       -OpenCV:采用版本4.5.0以上,配置过程不多说了,网上搜搜吧。

       -OnnxRuntime安装:采用工具-Nuget包管理器 进行安装

 部分代码如下:

  1. #include <onnxruntime_cxx_api.h>
  2. #include <opencv2/opencv.hpp>
  3. #include <fstream>
  4. #include<random>
  5. using namespace cv;
  6. using namespace std;
  7. std::vector<std::string> labels;//全局变量
  8. std::vector<std::string> readClassNames(std::string file=std::string(""));
  9. bool DemoImg();
  10. bool predictImg(const std::string file);
  11. bool predictVid(const std::string file, const std::string modelfile = "yolov8n-seg.onnx");
  12. std::vector<cv::Scalar> colorInit(int n);
  13. float sigmoid(float x) {
  14. return 1 / (1 + exp(-x));
  15. }
  16. bool draw_masks(cv::Mat& inImg, cv::Mat& outImg, std::vector<int>& indexes,std::vector<cv::Rect>& boxes, std::vector<int>& classIds, std::vector<cv::Mat>& mask_maps, float mask_alpha=0.6);
  17. int main(int argc, char** argv) {
  18. 1. OpenCV测试
  19. //Mat img = imread("a.jpg");
  20. //cv::imshow("a.jpg", img);
  21. //waitKey(0);
  22. //DemoImg();
  23. //predictImg("b.jpg");
  24. predictVid("0", "yolov8n-seg.onnx");//"0""
  25. return 0;
  26. }

完整代码:(70条消息) C++OnnxRuntime部署yolov8模型资源-CSDN文库

实验结果:

 

声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号