当前位置: 首页 > news >正文

常用图像分类、目标检测模型性能测试

说明

测试常用CV模型在单张图像上的识别速度,不包含图像读取时间,但包含图像预处理。可以在以后的应用中根据硬件配置选取合适的模型,达到最佳效果。其中推理速度为正常推理的速度,加速CPU使用openvino加速,GPU使用tensorrt加速。

CPU硬件: Intel i7 11700 16GB

GPU硬件: Nvidia rtx 3090 24GB

测试代码地址:https://github.com/lining808/cv_time_speed

CPU

目标检测

其中推理速度单位为秒,测试十张图像取平均值。mAP准确率在COCO数据集得到。旋转目标检测mAP在DOTAv1数据集得到。

模型推理速度加速mAP@50-95
yolov5nu0.1170.02334.3
yolov5su0.2620.04743.0
yolov5mu0.5850.0949.0
yolov5lu1.1650.17252.2
yolov8n0.1280.02437.3
yolov8s0.3230.05344.9
yolov8m0.6480.10850.2
yolov8l1.2520.23652.9
yolov9n0.1770.02938.3
yolov9s0.3720.0546.8
yolov9m0.8860.11551.4
yolov9l1.2390.14853.0
yolov10n0.1720.04338.5
yolov10s0.3650.07546.3
yolov10m0.8180.13851.1
yolov10l1.3740.24253.2
rtdetr-l1.2610.18253.0
rtdetr-x2.2320.32154.8
yolov8n-obb0.3110.05178.0
yolov8s-obb0.7170.15779.5
yolov8m-obb1.6350.27980.5
yolov8l-obb3.1391.12780.7

图像分类

其中推理速度单位为秒,测试十张图像取平均值。Top-1准确率在ImageNet数据集得到。

模型推理速度加速Top-1
yolov8n-cls0.0170.00569.0
yolov8s-cls0.0370.00773.8
yolov8m-cls0.0760.01176.8
yolov8l-cls0.1460.02976.8
yolov8x-cls0.2579.0
resnet180.30672.1
resnet340.41875.5
resnet500.90377.2
resnet1011.61478.3
mobilenet_v3_small0.09367.4
mobilenet_v3_large0.25275.2
efficientnet_v2_s0.98883.9
efficientnet_v2_m1.68485.1
swin_v2_t1.41281.6
swin_v2_b4.07484.1
convnext_tiny0.76682.9
convnext_base2.36385.8

GPU

目标检测

其中推理速度单位为秒,测试十张图像取平均值。mAP准确率在COCO数据集得到。旋转目标检测mAP在DOTAv1数据集得到。

模型推理速度加速mAP@50-95
yolov5nu0.0270.00834.3
yolov5su0.0280.00743.0
yolov5mu0.030.00949.0
yolov5lu0.0320.01552.2
yolov8n0.0250.00737.3
yolov8s0.0230.00844.9
yolov8m0.0260.01150.2
yolov8l0.0260.01552.9
yolov9n0.0330.00838.3
yolov9s0.0320.00846.8
yolov9m0.0380.01251.4
yolov9l0.0260.01353.0
yolov10n0.0180.00638.5
yolov10s0.0190.00746.3
yolov10m0.0250.00951.1
yolov10l0.0240.01353.2
rtdetr-l0.0453.0
rtdetr-x0.04554.8
yolov8n-obb0.0470.00678.0
yolov8s-obb0.030.00879.5
yolov8m-obb0.0390.01480.5
yolov8l-obb0.0410.02380.7

图像分类

其中推理速度单位为秒,测试十张图像取平均值。Top-1准确率在ImageNet数据集得到。

模型推理速度加速Top-1
yolov8n-cls0.0120.02169.0
yolov8s-cls0.0120.0273.8
yolov8m-cls0.0130.02776.8
yolov8l-cls0.0140.02976.8
yolov8x-cls0.0160.0379.0
resnet180.04272.1
resnet340.04675.5
resnet500.05577.2
resnet1010.06378.3
mobilenet_v3_small0.05467.4
mobilenet_v3_large0.05675.2
efficientnet_v2_s0.07483.9
efficientnet_v2_m0.07685.1
swin_v2_t0.12781.6
swin_v2_b0.14584.1
convnext_tiny0.04882.9
convnext_base0.06885.8

结论

总体来说YOLO不论是分类还是目标检测,基本上做到了速度和精度的均衡。
openvino加速可以比pt推理快6倍左右,但需要CPU是英特尔平台并且有集成显卡。精度有一定程度下降,平均下降2-3%。onnx推理精度几乎保持不变,速度提升约3倍。
tensorrt加速可以比pt推理快3倍左右,需要GPU为英伟达平台。精度基本保持不变,下降在1%内。

推荐模型

图像分类

速度均衡精度
CPUyolov8n-clsyolov8m-clsefficientnet_v2_m
GPUyolov8n-clsyolov8m-clsconvnext_base

目标检测

速度均衡精度
CPUyolov8nyolov8myolov9l
GPUyolov10nyolov10myolov10l

推理格式

CPU推理有集显使用openvino,无集显使用onnx。

GPU推理使用tensorrt

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • Spring自动装配
  • C# 4.0 等待线程结束
  • C++ 入门14:STL 容器之向量(vector)
  • C++基础(二)
  • SourceTree rebase(变基)的使用
  • Gooxi受邀参加第三届中国数据中心服务器与设备峰会
  • AGI 之 【Hugging Face】 的【问答系统】的 [评估并改进问答Pipeline] / [ 生成式问答 ] 的简单整理
  • django ninja get not allowed 能用 put delete
  • 2.The DispatcherServlet
  • GitHub连接超时问题 Recv failure: Connection was reset
  • MacOS 通过Docker安装宝塔面板搭建PHP开发环境
  • 输入网址到网页显示的过程
  • 如何在勒索软件攻击中幸存下来:最佳备份实践、勒索拦截方案
  • 【Visual Studio】Visual Studio使用技巧及报错解决合集
  • 软件测试——测试用例
  • [译]如何构建服务器端web组件,为何要构建?
  • 002-读书笔记-JavaScript高级程序设计 在HTML中使用JavaScript
  • 2017-09-12 前端日报
  • 230. Kth Smallest Element in a BST
  • Akka系列(七):Actor持久化之Akka persistence
  • AWS实战 - 利用IAM对S3做访问控制
  • eclipse(luna)创建web工程
  • Facebook AccountKit 接入的坑点
  • JS学习笔记——闭包
  • Kibana配置logstash,报表一体化
  • MyEclipse 8.0 GA 搭建 Struts2 + Spring2 + Hibernate3 (测试)
  • Spring-boot 启动时碰到的错误
  • 我与Jetbrains的这些年
  • 自定义函数
  • ​如何使用QGIS制作三维建筑
  • # 利刃出鞘_Tomcat 核心原理解析(七)
  • (2)从源码角度聊聊Jetpack Navigator的工作流程
  • (2/2) 为了理解 UWP 的启动流程,我从零开始创建了一个 UWP 程序
  • (solr系列:一)使用tomcat部署solr服务
  • (二)学习JVM —— 垃圾回收机制
  • (附源码)ssm基于微信小程序的疫苗管理系统 毕业设计 092354
  • (简单有案例)前端实现主题切换、动态换肤的两种简单方式
  • (九)信息融合方式简介
  • (十六)Flask之蓝图
  • .NET 4.0网络开发入门之旅-- 我在“网” 中央(下)
  • .NET COER+CONSUL微服务项目在CENTOS环境下的部署实践
  • .net core 3.0 linux,.NET Core 3.0 的新增功能
  • .NET Core6.0 MVC+layui+SqlSugar 简单增删改查
  • .NET Standard 的管理策略
  • .Net 垃圾回收机制原理(二)
  • .NET 设计模式—适配器模式(Adapter Pattern)
  • .NetCore 如何动态路由
  • /etc/sudoer文件配置简析
  • @31省区市高考时间表来了,祝考试成功
  • @Async注解的坑,小心
  • [2016.7 day.5] T2
  • [2669]2-2 Time类的定义
  • [BUAA软工]第一次博客作业---阅读《构建之法》
  • [Docker]六.Docker自动部署nodejs以及golang项目
  • [Golang] goroutine