YOLOX目标检测模型
旷视科技开源了内部目标检测模型-YOLOX,性能与速度全面超越YOLOv5早期版本!
如此神奇原因在于模型结构的修改,下图说明了改了什么地方:
把原来的耦合头部,通过1x1卷积解耦成两个并行的分支,经过一系列处理之后最终取得精度与速度双提升。实验对比结果如下:
论文与代码模型下载地址:
https://arxiv.org/pdf/2107.08430.pdf
https://github.com/Megvii-BaseDetection/YOLOX
ONNX格式模型转与部署
下载YOLOX的ONNX格式模型(github上可以下载)https://github.com/Megvii-BaseDetection/YOLOX/tree/main/demo/ONNXRuntime
https://github.com/Megvii-BaseDetection/YOLOX/releases/download/0.1.1rc0/yolox_s.onnx
下载ONNX格式模型,打开之后如图:
官方说明ONNX格式支持OpenVINO、ONNXRUNTIME、TensorRT三种方式,而且都提供源码,官方提供的源码参考如下:输入格式:1x3x640x640,默认BGR,无需归一化。
输出格式:1x8400x85
https://github.com/Megvii-BaseDetection/YOLOX/tree/main/demo
本人就是参考上述的代码然后一通猛改,分别封装成三个类,完成了统一接口,公用了后处理部分的代码,基于本人笔记本的硬件资源与软件版本:
在三个推理平台上测试结果如下:-GPU 3050Ti
-CPU i7 11代
-OS:Win10 64位
-OpenVINO2021.4
-ONNXRUNTIME:1.7-CPU
-OpenCV4.5.4
-Python3.6.5
-YOLOX
-TensorRT8.4.x
运行截图如下:onnxruntime推理
OpenVINO推理
TensorRT推理 - FP32
转威FP16
TensorRT推理 - FP16
总结
之前我写过一篇文章比较了YOLOv5最新版本在OpenVINO、ONNXRUNTIME、OpenCV DNN上的速度比较,现在加上本篇比较了YOLOX在TensorRT、OpenVINO、ONNXRUNTIME上推理部署速度比较,得到的结论就是:能不改代码,同时支持CPU跟GPU推理是ONNXRUNTIMEOpenCV DNN毫无意外的速度最慢(CPU/GPU)CPU上速度最快的是OpenVINO
GPU上速度最快的是TensorRT
原文标题:YOLOX在OpenVINO、ONNXRUNTIME、TensorRT上面推理部署与速度比较
文章出处:【微信公众号:OpenCV学堂】欢迎添加关注!文章转载请注明出处。
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。
举报投诉
-
模型
+关注
关注
1文章
2704浏览量
47678 -
目标检测
+关注
关注
0文章
185浏览量
15453 -
OpenCV
+关注
关注
29文章
611浏览量
40767
原文标题:YOLOX在OpenVINO、ONNXRUNTIME、TensorRT上面推理部署与速度比较
文章出处:【微信号:CVSCHOOL,微信公众号:OpenCV学堂】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
相关推荐
开发者手机 AI - 目标识别 demo
%。
Init、DeInit 为Native的初始化和去初始化实现,主要对模型进行创建、编译以及销毁。
Process为异步NAPI接口,主要完成目标识别的功能。实现包括前处理、推理和后处理3个部分。前处理主要
发表于 04-11 16:14
基于OpenCV DNN实现YOLOv8的模型部署与推理演示
基于OpenCV DNN实现YOLOv8推理的好处就是一套代码就可以部署在Windows10系统、乌班图系统、Jetson的Jetpack系统
HarmonyOS:使用MindSpore Lite引擎进行模型推理
场景介绍
MindSpore Lite 是一款 AI 引擎,它提供了面向不同硬件设备 AI 模型推理的功能,目前已经在图像分类、目标识别、人脸识别、文字识别等应用中广泛使用。
本文介绍
发表于 12-14 11:41
【爱芯派 Pro 开发板试用体验】模型部署(以mobilenetV2为例)
啊抱歉,上周得了一周的流感,人才活过来。。本来还想研究下sam它是怎么部署的,但是时间好像有点来不急,就讲个最简单的efficientNet吧。但是会仔细讲下使用模型部署,实际也就是推理
发表于 12-10 16:34
Hugging Face LLM部署大语言模型到亚马逊云科技Amazon SageMaker推理示例
本篇文章主要介绍如何使用新的Hugging Face LLM推理容器将开源LLMs,比如BLOOM大型语言模型部署到亚马逊云科技Amazon SageMaker进行推理的示例。我们将
基于OpenVINO Python API部署RT-DETR模型
RT-DETR 是在 DETR 模型基础上进行改进的,一种基于 DETR 架构的实时端到端检测器,它通过使用一系列新的技术和算法,实现了更高效的训练和推理,我们将在 Python、C++、C# 三个
如何使用Vitis-AI加速YOLOX模型实现视频中的目标检测
本文将介绍如何使用Vitis-AI加速YOLOX模型实现视频中的目标检测,并对相关源码进行解读。由于演示的示例程序源码是Vitis-AI开源项目提供的,本文演示之前会介绍所需要的准备工
【KV260视觉入门套件试用体验】Vitis-AI加速的YOLOX视频目标检测示例体验和原理解析
本文将介绍如何使用Vitis-AI加速YOLOX模型实现视频中的目标检测,并对相关源码进行解读。由于演示的示例程序源码是Vitis-AI开源项目提供的,本文演示之前会介绍所需要的准备工
发表于 10-06 23:32
AscendCL快速入门——模型推理篇(上)
一、概述本文介绍了AscendCL模型推理相关知识,介绍了AscendCL接口加载离线模型,为离线模型准备数据结构以及调用离线模型进行
发表于 08-24 11:04
如何提高YOLOv4模型的推理性能?
使用 PyTorch 对具有非方形图像的 YOLOv4 模型进行了训练。
将 权重转换为 ONNX 文件,然后转换为中间表示 (IR)。
无法确定如何获得更好的推理性能。
发表于 08-15 06:58
三种主流模型部署框架YOLOv8推理演示
部署。这里以YOLOv8为例,演示了YOLOv8对象检测模型在OpenVINO、ONNXRUNTIME、TensorRT三个主流框架上C++推理演示效果。
百度飞桨PP-YOLOE ONNX 在LabVIEW中的部署推理(含源码)
对于如何在LabVIEW中实现该模型的部署,笔者目前还没有看到相关介绍文章,所以笔者在实现PP-YOLOE ONNX 在LabVIEW中的部署推理后,决定和各位读者分享一下如何使用La
评论