YOLOv10环境搭建推理测试

引子

两个多月前YOLOv9发布(感兴趣的童鞋可以移步YOLOv9环境搭建&推理测试_yolov9安装-CSDN博客),这才过去这么短的时间,YOLOv10就横空出世了。现在YOLO系列搞得就和追剧一样了。。。OK,那就让我们开始吧。

一、模型介绍

1、作者提出了一种新颖的一致性双重分配策略,用于无需NMS的YOLO。设计了一种双重标签分配方法,通过一对多分支在训练过程中提供丰富的监督信息,以及通过一对一分支在推理过程中实现高效率。此外,为了确保两个分支之间的和谐监督,作者创新性地提出了连贯匹配度量,这可以很好地减少理论上的监督差距,并带来性能的提升。

2、作者提出了一种整体效率-精度驱动的模型设计策略,用于YOLO的模型架构。作者展示了新型轻量级分类头、空间-通道解耦降采样和排名引导的块设计,这些设计大大减少了计算冗余并实现了高效率。作者进一步引入了大核卷积和创新的部分自注意力模块,这些模块在低成本的条件下有效地提升了性能。

3、基于上述方法,作者推出了YOLOv10,这是一个新的实时端到端目标检测器。广泛的实验表明,YOLOv10与其他先进检测器相比,在性能和效率权衡方面达到了最先进水平。局限性。 由于计算资源的限制,作者没有在大规模数据集上进行YOLOv10的预训练,例如Objects365 [47]。此外,尽管作者在无需NMS的训练下使用一对一 Head 可以获得具有竞争力的端到端性能,但与使用NMS的一对多训练相比,仍然存在性能差距,特别是在小型模型中更为明显。例如,在YOLOv10-N和YOLOv10-S中,使用NMS的一对多训练的性能比无需NMS的训练分别高出1.0% AP和0.5% AP。作者将在未来的工作中探索进一步缩小差距并实现更高性能的方法。

二、环境安装

代码仓库

GitHub - THU-MIG/yolov10: YOLOv10: Real-Time End-to-End Object Detection

环境安装

docker run --rm -it --gpus=all -v /datas/work/zzq:/workspace pytorch/pytorch:2.0.1-cuda11.7-cudnn8-devel bash

cd /workspace/YOLOv10/yolov10-main

pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple

pip install -e . -i https://pypi.tuna.tsinghua.edu.cn/simple

三、测试推理

(1)训练

yolo detect train data=coco.yaml model=yolov10n/s/m/b/l/x.yaml epochs=500 batch=256 imgsz=640 device=0,1,2,3,4,5,6,7

(2)评估

yolo val model=yolov10n/s/m/b/l/x.pt data=coco.yaml batch=256

(3)推理

模型下载

Release Update checkpoints with other attributes. · THU-MIG/yolov10 · GitHub

yolo predict model=yolov10x.pt

(4)模型转换

转onnx

yolo export model=yolov10x.pt format=onnx opset=13 simplify

测试onnx

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/847523.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

yolo-v8window环境运行

源码https://github.com/ultralytics/ultralytics 1.用pycharm打开YOLOv8文件夹,下载依赖项,依赖项已经以作者的名字来封装好,所以直接在终端输入:pip install ultralytics,安装好之后会默认安装的cpu版本的torch&am…

FENDI CLUB啤酒屋狂欢派对:夏日激情,精酿畅饮

在炎炎夏日,没有什么比一场啤酒屋的狂欢派对更能点燃人们的热情了。FENDI CLUB啤酒屋作为城市中的一颗璀璨明珠,以其独特的魅力吸引着无数啤酒爱好者前来畅享夏日激情。 一进入FENDI CLUB,仿佛就进入了一个充满活力和欢乐的海洋。五彩斑斓的…

rust的类型转换(四)

基础类型 使用 as 关键字:用于基本数值类型之间的转换,例如将 i32 转换为 u32。 例子:let x: i32 10; let y: u64 x as u64; 使用标准库中的转换方法:如 from() 和 into() 方法,这些方法通常用于无风险的转换&#…

ASPICE培训是深化软件过程改进的关键

在当今信息化、智能化的时代,软件行业的发展日新月异,对软件质量和过程管理的要求也越来越高。ASPICE(Automotive SPICE)作为一种专门针对汽车行业软件过程改进的评估模型,正逐渐成为行业内的重要标准。为了提升软件研…

结构赋值对象

先看代码 Object.prototype[Symbol.iterator] function () {// 使用 Object.values(this) 方法获取对象的所有值,并返回这些值的迭代器对象return Object.values(this)[Symbol.iterator]()// return Object.keys(this)[Symbol.iterator]() } const c {age: 18,na…

推荐ChatGPT4.0——Code Copilot辅助编程、Diagrams: Show Me绘制UML图、上传PDF并阅读分析

5月14日凌晨1点、太平洋时间的上午 10 点,OpenAI的GPT-4o的横空出世,再次巩固了其作为行业颠覆者的地位。GPT-4o的发布不仅仅是一个产品的揭晓,它更像是向世界宣告AI技术已迈入了一个全新的纪元,连OpenAI的领航者萨姆奥特曼也不禁…

先进工艺的DPT技术

“2.5GHz频率 hierarchy DVFS低功耗A72培训” 2.5GHz 12nm 景芯A72 upf DVFS 后端实战训练营!随到随学! 课程采用hierarchy/partition flow,先完成单核A72实战,然后完成A72 TOP实战!训练营简介: Instance&a…

23、matlab一维数据插值:interp1() 函数

1、一维数据插值:interp1() 函数 语法 语法1:vq = interp1(x,v,xq) 使用线性插值返回一维函数在特定查询点的插入值。 语法2:vq = interp1(x,v,xq,method) 指定备选插值方法 参数 x:样本点 v:对应值 xq:查询点的坐标 method:linear(线性插值)、nearest(最近邻…

币界今日选题

来源:币界原创 作者:636Marx 5步做自己文章的铁粉 在浅谈了如何《诱导读者点开文章的9引真经》,作者明白他们锁定读者的时间不到一秒,一个非同质化诱导读者打开文章的标题就是写作第一步,接下来笔者准备讨论更早和更…

JSP、Servlet的Session到底什么时候创建?登录与验证到底和Session有什么关系?

1 测试1[2024-5-23-9:00] 两次获取Session,第一次在查询到用户名密码是否与数据库数据匹配之前,即没有显式地getSession之前; 第二次在查询到用户名密码与数据库数据匹配,显式地getSession之后。 未通过登录验证的Session 通过…

【网络安全的神秘世界】VsCode直连虚拟机

🌝博客主页:泥菩萨 💖专栏:Linux探索之旅 | 网络安全的神秘世界 | 专接本 通过VsCode连接虚拟机,可以进行远程操作 在vscode里安装以下插件: Docker Dev Containers Remote Development Remote ssh 配…

Execl数据导入 EasyExcel实现

官网 1. 需求简介 读取下面表格数据 第一行和第二行是计划信息 第三行是计划详情的抬头信息,以下行是计划详情信息 总段包含多个分段,总段使用了单元格合并功能 2. 实现读取功能 2.1 引入easyexcel依赖 <dependency><groupId>com.alibaba</groupId><…

分享几个好用的网站、软件

1、果核剥壳 https://www.ghxi.com 果核剥壳是一家综合科技站点&#xff0c;看新闻&#xff0c;分享破解软件、绿色软件&#xff0c;Windows系统。守住互联网最后的一片净土。 2、小众软件 https://www.appinn.com 小众软件是一个分享免费、小巧、有趣、实用软件的网站&…

Hugo搭建博客和部署全流程—Congo主题和优化

欢迎来到我的全新博客&#xff1a;探索科研、创业和日常——Hugo搭建博客、部署和优化全流程 &#x1f30f; Demo site: https://sylvanding.online/ ⭐️ Repo: https://github.com/sylvanding/sylvanding.github.io 我的博客使用Hugo搭建&#xff0c;选择Congo主题&#xff0…

为什么25+胶原蛋白会流失?

随着年龄的增长&#xff0c;特别是当我们步入25岁之后&#xff0c;胶原蛋白的流失问题逐渐凸显&#xff0c;成为影响皮肤健康和外观的重要因素。以下将从几个方面详细解释胶原蛋白流失的原因&#xff1a; 一、年龄增长 胶原蛋白是皮肤的主要支撑结构&#xff0c;但随着年龄的增…

身边消失的超市越来越多!盒马、山姆也卷出历史新高度

不知不觉&#xff0c;身边不少老牌连锁超市都在忽然之间消失得无影无踪。 前不久&#xff0c;山姆又发布了长期降价清单&#xff0c;而随着山姆又一次降价&#xff0c;盒马也再一次被推上了风口浪尖。事实上&#xff0c;作为国内市场两大头部仓储会员超市&#xff0c;盒马与山…

数据挖掘与机器学习——分类算法

目录 机器学习算法最普通分类&#xff1a; 分类算法的定义&#xff1a; 分类算法的应用&#xff1a; 分类器实现分类&#xff1a; 分类器的构建标准&#xff1a; 概率模型&#xff1a; 贝叶斯公式&#xff1a; 朴素贝叶斯算法&#xff08;朴素贝叶斯分类器&#xff09;…

一文了解JavaScript 中数组所有API的使用

文章导读&#xff1a;AI 辅助学习前端&#xff0c;包含入门、进阶、高级部分前端系列内容&#xff0c;当前是 JavaScript 的部分&#xff0c;瑶琴会持续更新&#xff0c;适合零基础的朋友&#xff0c;已有前端工作经验的可以不看&#xff0c;也可以当作基础知识回顾。 这篇文章…

【八股】在Gradle和Maven之间抉择构建工具

在Java开发中&#xff0c;Gradle和Maven是两种常用的构建工具&#xff0c;它们在许多方面有不同的特点和使用场景。以下是它们之间的一些主要区别&#xff1a; 构建脚本 Maven&#xff1a;使用XML文件&#xff08;pom.xml&#xff09;来定义项目的构建配置。XML的语法严格且具…

【每日刷题】Day55

【每日刷题】Day55 &#x1f955;个人主页&#xff1a;开敲&#x1f349; &#x1f525;所属专栏&#xff1a;每日刷题&#x1f34d; &#x1f33c;文章目录&#x1f33c; 1. 441. 排列硬币 - 力扣&#xff08;LeetCode&#xff09; 2. 455. 分发饼干 - 力扣&#xff08;Leet…