DeploySharp平台能否部署YOLO全系列深度学习模型?

摘要:本文介绍了基于DeploySharp开发的深度学习模型部署测试平台的使用方法。该平台支持YOLO系列模型(v5-v13)及多种应用场景,提供OpenVINO和ONNX Runtime两种推理引擎,支持CPUGPUNPU等多种设备。文章详
1. 程序获取和下载   基于DeploySharp 开发的深度学习模型部署测试平台,提供了YOLO框架的主流系列模型,包括YOLOv5~v13,以及其系列下的Detection、Segmentation、Oriented Bounding Box、Human Pose Estimation等应用场景。模型部署引擎支持OpenVINO™、ONNX runtime,支持CPU、IGPU以及GPU多种设备推理。项目链接为: https://github.com/guojin-yan/DeploySharp/tree/DeploySharpV1.0/applications   如果你想快速使用该平台,可以加入QQ技术交流群通过群文件下载,或者通过GitHub在DeploySharp 项目中下载。 git clone https://github.com/guojin-yan/DeploySharp.git cd DeploySharp/applications   打开指定目录后,直接打开DeploySharp-Applications.sln解决方案即可。   打开解决方案后,资源管理器中有两个项目,一个是.NET 6.0框架,一个是.NET Framework 4.8框架,用户可以根据自己需求进行运行。   程序运行后页面如下图所示: 2. 平台介绍 2.1 支持的模型选项 基于DeploySharp 开发的深度学习模型部署测试平台所支持的模型列表与DeploySharp 库一致,后续会跟着DeploySharp 迭代进行同步更新,具体支持的模型: 开发者在使用时,可以根据自己需求进行选择,但在使用时,模型路径“Model Path”选择的模型类型,要和“Model Type保持一致,否者程序运行可能出差或者结果出现错误。 2.2 支持的推理引擎工具 基于DeploySharp 开发的深度学习模型部署测试平台所支持多种推理引擎,其中已经开发完成并已经支持的有OpenVINO和ONNX Runtime,其中TensorRT正在开发中,不日后会完成支持。 其中当推理设备选择ONNX Runtime时,还可以选择ONNX Runtime运行的推理引擎,支持的内容如下图所示: ​ ONNX Runtime支持的更多加速方式,需要用户自己进行代码构建,其构建流程与方式,参考官方教程即可,链接为: https://runtime.onnx.org.cn/docs/execution-providers/ 2.3 支持的推理设备 同时用户还可以选择不同的推理设备,包括AUTO、CPU、GPU0、GPU1、NPU,其中GPU0、GPU1表示的含义要在使用的推理引擎工具中确定。 3. 推理引擎和设备匹配使用 推理引擎 推理设备 ONNX加速 OpenVINO AUTO,CPU,GPU0(Intel 集显),GPU1(Intel 独显),NPU Default ONNX Runtime CPU Default ONNX Runtime AUTO,CPU,GPU0(Intel 集显),GPU1(Intel 独显),NPU OpenVINO ONNX Runtime GPU0(英伟达独显),GPU1(英伟达独显) Cuda ONNX Runtime GPU0,GPU1 DML 4. 程序运行示例 在对应的项目中,图像处理库已经安装,不同项目就是使用的不同图像处理库,下面演示使用不同的模型推理引擎使用流程。 4.1 OpenVINO推理 所下载的项目中已经配置好了OpenVINO环境,选择模型和图片后,直接运行即可。推理结果如下图所示: 如果使用的是.NET Framework 4.8框架,在程序运行前,请卸载并重新安装一下OpenVINO.runtime.win NuGet Package,重新生成项目后,进入到项目bin/Debug或者bin/Release目录,找到该目录下的文件夹dll/win-x64,在该目录下可以看到openvino_c.dll文件,然后将该目录下所有文件,复制到bin/Debug或者bin/Release目录下,重新再生成一下项目。
阅读全文